Contents

Elite on the C64: The Universe in 32K

Braben and Bell shipped the instructions for a galaxy and let the machine build the rest

Contents

The version I grew up with is the wrong one, and I’ve made my peace with that. Elite was born on the BBC Micro in September 1984, written by David Braben and Ian Bell, published by Acornsoft, and the machine it was built for had thirty-two kilobytes of RAM in total — screen memory included. The Commodore 64 conversion arrived the year after, in 1985, from Firebird, and that’s the one that turned up in my house on a cassette with a plastic lens taped to the box. The C64 had twice the memory. It made no difference to the shape of the thing, because the shape had already been decided by a machine that couldn’t afford it.

That’s the story worth telling about Elite, and it’s a design story rather than a nostalgia one. Almost every open-world game shipped since has been solving the problem Elite solved, usually with a thousand times the resources and a noticeably worse answer.

The problem

Advertisement

Braben and Bell wanted eight galaxies of 256 planets each. Two thousand and forty-eight worlds, each with a name, a position, an economy, a government, a technology level, a population, a productivity figure and a line of description.

Store that as data and do the arithmetic. Even at a miserly dozen bytes a planet you’re looking at twenty-odd kilobytes for the star map alone, on a machine where the entire game — 3D renderer, flight model, combat, trading, the lot — had roughly twenty-two kilobytes to live in. The tape drive wasn’t going to save you either; streaming a galaxy off cassette at 1,200 baud is a way of asking your player to go and make a cup of tea between star systems.

So they stored none of it. What ships on the tape is a seed and an algorithm. Each system’s entire identity — the name Lave, its position, its status as an agricultural planet under a dictatorship, the fact that it’s famous for its vast rain forests and its tree grub — falls out of a short sequence of numbers being churned through a Fibonacci-style iteration. Feed the machine the seed, turn the handle 256 times, and a galaxy assembles itself in front of you, identical every single time, on every single copy, without a byte of it having been written down.

The elegance goes further than the memory saving. Iterate the sequence far enough and it cycles back to where it started, which means the galaxy closes on itself naturally — 256 systems, no more, no fewer, no special-case code to stop the generator running off the end. Multiply the seeds and you get the next galaxy; do it eight times and you’re back at the first one. Eight galaxies falls out of the arithmetic as a property of it. The original ambition ran to 2^48 of them, and Acornsoft’s reasonable observation was that nobody was ever going to visit the trillionth.

The descriptions work the same way. There’s a small grammar in there — a set of sentence skeletons and word lists that the same seeded generator fills in. It produces “the planet is most notable for its inhabitants’ eccentric shyness” and it produces “the planet is a dull little world” and roughly one time in fifty it produces something genuinely funny, and because the seed is fixed, the joke is in the same place for everyone. Two boys in different towns comparing notes about Reorte’s mud-hockey were reading identical text generated independently on two machines that never met.

What the constraint bought

Here’s the part that gets missed when people file Elite under “clever technical trick”. The achievement sits one step past the compression: it’s what the freed memory then got spent on.

Because the universe costs nothing, the flight model gets to be good. Elite’s combat is full six-degree-of-freedom wireframe 3D on an eight-bit CPU, with real inertia, a working radar scanner that shows relative height as well as bearing, and enemy ships that roll and yaw and try to line you up. The Cobra Mk III has weight. Pitching hard while a Krait crosses your nose, watching the stars slide and having to lead the shot, is a thing the machine could not have afforded if two thousand planets had been sitting in RAM taking up the room.

And because the universe is procedurally identical rather than randomly generated fresh, the economy holds. This is the bit people underrate. A galaxy generated at random would have no structure — no reason for a run to exist. Elite’s generator correlates economy with government with tech level in a way that produces actual trade routes. Rich industrial worlds want food and want it badly; poor agricultural worlds sell it cheap and can’t get computers. The famous early loop — haul food and textiles out of Lave, come back with machinery — exists because the mathematics produced a gradient, and the gradient produced a milk run, and the milk run produced the money for a fuel scoop.

Then the design does the cruel, excellent thing: it makes the milk run boring on purpose. The margins on legal cargo are thin. The margins on narcotics and firearms are not, and the systems that pay for them are Anarchies, and Anarchies are full of pirates. The entire risk curve of the game is a spreadsheet cell. There’s no morality system anywhere in Elite. There’s a price list, and it’s more persuasive than most morality systems shipped since.

The ranks and the lie of the flat screen

Advertisement

Elite’s other structural decision was to withhold a goal. There’s no plot. There’s a rank readout in the corner, and it starts at Harmless — a Hitchhiker’s joke that lands harder when you realise Mostly Harmless is a promotion — and it climbs through Poor, Average, Above Average, Competent, Dangerous, Deadly, and then, for the roughly 6,400 kills it takes, Elite. That’s the whole reward structure.

I want to defend this properly, because “no objectives, make your own fun” is a line that has excused an enormous amount of lazy design in the four decades since. Elite gets away with it for one reason: the rank ladder is calibrated to the combat, and the combat is the best thing in the game. The game asks you to get good at a specific, legible skill, on a curve that takes months, with a public number attached. It’s closer to a rhythm game’s grade than to a sandbox’s shrug.

The docking is the same idea in miniature and it’s the reason half the country gave up. The space station rotates. The slot is a rectangle. You must match its roll, line up, and slide in, and if you clip the edge you die instantly with no appeal. It’s a skill test with a fatal fail state placed at the entrance to every single safe harbour in the game, which is either a design atrocity or the most efficient tutorial ever built, depending on whether you eventually got it. When you finally buy the docking computer, the game plays you the Blue Danube while it parks itself, and the joke — that you have paid actual money to stop being tested — is one of the sharpest gags in eighties software.

The bits that are genuinely worse now

I’m not going to pretend. Witchspace is a nasty piece of work: your hyperspace misfires, you drop into interstellar nothing, and Thargoids arrive. The first time it’s the best moment in the game. The fourth time you’re aware that the game has decided to kill you and you have no counterplay worth the name.

The Lenslok on the C64 version was an act of violence against paying customers. A ridged plastic lens, held against the screen at the right distance, resolving a distorted two-letter code you had to type before playing. It worked properly on approximately one television, and it wasn’t yours. I have watched an adult man hold that thing at arm’s length in a darkened lounge like a jeweller, and Firebird did that to legitimate buyers while the pirates typed nothing at all.

And the save system is a tape. Which means the run that took you to Deadly lives on a cassette, and cassettes go wrong.

Where it actually leads

The through-line from here is direct and Braben drew it himself. Frontier: Elite II took the same generator and pointed it at real astronomy — Newtonian orbits, actual star catalogues, a solar system you could land in — and discovered that the more real the simulation got, the more the game leaked out of it. Elite’s fake galaxy is more playable than Frontier’s semi-real one, and that’s a lesson the industry keeps having to relearn every time somebody announces a planet count.

The other descendant is stranger and closer to home. The Sentinel landed on the same machines a year later, generated ten thousand landscapes from a seed by the same logic, and used them for something with no trading and no combat at all — proof that Braben and Bell had found a general technique rather than a space-game trick. Rescue on Fractalus was doing the same arithmetic to a mountain range at roughly the same moment.

Play it on whatever you have. The C64 version is fine and it’s the one with the missions; the BBC original is the historically pure object; there are faithful modern rebuilds that keep the maths and fix the tape. All of them contain the same Lave, because Lave was never really in any of them.

Spoilers below

The Constrictor mission is the one bit of authored content in the whole game, and it’s instructive precisely because it’s so thin.

Some way into your rise through the ranks, the station’s message board tells you a prototype ship has been stolen. You’re asked to hunt it. It’s somewhere in a specific system a few jumps out, it’s faster and tougher than anything you’ve met, and killing it earns you a military laser you cannot otherwise buy.

Twenty seconds of text and one hard fight. That’s the entire narrative payload of the most influential space game ever written, and it is more than enough, because it arrives after twenty hours during which the game has said nothing to you at all. The silence is what gives the message weight. A modern open world would have put a quest marker on it, a two-minute cutscene in front of it and a companion character to comment on it afterwards, and it would have meant a fraction as much.

The generator built the universe. The one handwritten sentence in it landed because everything around it was maths.

Advertisement
Advertisement
Jay
Written by Jay

vo.rs's games critic. Jay covers the medium as a system rather than a spectacle — this month's release, the indie nobody bought, and the Amiga game it's quietly descended from — asking what a mechanic makes you feel and why the loop holds. Learned to wait through a C64 tape load, never stopped playing since, and still finishes the odd 60-hour RPG out of spite. Expect argued verdicts, no score ever, spoilers below the line, and a running list of older games worth your weekend.