Heredity before anything could inherit it
The first thing we built for creatures was not a creature that moves, eats, or breeds. It was the genome itself, and the one decision that mattered most was the shape we gave it — a flat list of numbers built so that something could one day inherit it, long before anything in the world could be born to do the inheriting.
This was the opening move of the whole creature chapter. We could have started anywhere — with hunger, with movement, with the body. We started with the substrate, because the substrate is the thing that’s expensive to change later and cheap to get right early. The bet was plain: build the foundation general and correct now, before there’s anything riding on it, and the years of creature work to come stay cheap.
The shape that has to be passable
Every individual creature got its own genome: a flat list of trait values, each one normalised to sit between 0 and 1. Some of those numbers describe the body you can see — size, colour, speed, what it leans toward eating, how social it is, how hardy. The rest are inner drive weights, the seeds of urges that will one day steer behaviour. At this stage none of them did anything. We weren’t building behaviour. We were building the thing behaviour and heredity would later flow through.
Heredity is possible at all only because each creature privately owns its genome rather than sharing one species definition the way every plant does — a point that’s its own story in The first creatures. What this post is about is the shape we chose for that owned nature, and why that shape was the whole bet. A flat list of normalised numbers is the simplest possible thing for a future system to work with — the cleanest input for blending two parents into a child and nudging the result with a little mutation. The genome wasn’t shaped for what it does today. It was shaped for the operation it would have to support later.
A flat list of normalised numbers is the simplest shape there is to blend between two parents and drift a little — so we built the genome that way before there was a single parent in the world.
Numbers that don’t carry meaning — on purpose
Keeping every trait as a bare value between 0 and 1 sounds almost too abstract to be useful. A genome that says 0.6 doesn’t know whether that’s a size, a temperament, or a temperature tolerance, and it certainly doesn’t know how big a creature that makes. That vagueness is the point.
The normalised number is the genome’s job; turning it into something species-meaningful is a separate one. The mapping from a 0-to-1 value to a real, in-world range lives apart from the code, as tunable balance data. So the same genome shape can mean one thing for a rabbit and something else entirely for a creature we haven’t built yet — the same 0.6 reading as one size band here and another there. The genome stays a clean, general carrier; all the species-specific meaning lives in data we can tune without touching the structure that makes inheritance work.
The same instinct shows up in how the set can grow. We arranged it so a new trait can be added later with a sensible default, and an older saved world — one written before that trait existed — still loads cleanly, just reading the default where the new number would be. The cost of a richer creature, years from now, is one entry and a default. It never becomes a reason an existing world won’t open.
Generated the same way every time
The Long Watch is reproducible to the byte — the same seed grows the same world — and creatures had to join that discipline from their first breath. So every founding creature’s genome is drawn from the world’s own seeded source of randomness, never from anything ad hoc. Give the same seed and you get the same starter creatures, run after run, machine after machine.
That reproducibility rests on how the seeded randomness is split into isolated, named channels — the engineering of that is its own story in Deterministic chaos. The part that matters here is the dividend it pays the genome: because where a creature is placed and what genome it gets come off independent channels, the genome is safely extensible. Add a new trait later and it can’t accidentally move where anything spawns; change the placement and it can’t scramble anyone’s genome. The two concerns stay strangers, which is exactly what lets us touch one without disturbing the other.
Making the invisible visible
A genome is, on its face, an abstract data structure — a row of numbers no one can see. The risk with foundations like this is that you build them blind, trust they’re right, and only discover the variation isn’t actually varying much later, once something depends on it. So from the very first plain-cube creatures we wired size and colour straight to the genome, so different genomes render as different sizes and hues — the player-facing side of that, individuals you can read apart at a glance, is told in The first creatures. For us the point was narrower: that visible variation is a constant, free proof that the substrate underneath is doing its job, long before anything means anything.

A loop that runs but does nothing
The last piece of the foundation was a place for behaviour to eventually live. We scaffolded the creature update loop with two cadences: a fast pass for creatures near the player and a slower pass for the ones far away. For now it runs the timing and nothing else — an empty frame on two clocks, waiting for movement and hunger and fear to be filled in. Standing up the rhythm early, hollow, meant that when behaviour did arrive it had somewhere to slot rather than a structure to invent under pressure.
And saved worlds came along for free. A world from before creatures existed loads cleanly into the new creature-aware format — it simply has no creatures — with its plants and its soil left exactly as they were, untouched. Adding a whole new domain to the simulation didn’t cost anyone their existing world.
The payoff, paid out later
None of the interesting creature work shipped here. No breeding, no movement, no foraging, no final body shapes — all deferred. What shipped was a genome, proven end-to-end with one trivial starter species, and shaped so that the things to come would be cheap.
The proof that we shaped it right came a little later, when reproduction finally arrived and a child’s traits were formed by blending its two parents and adding a small mutation. That mechanic — the moment heredity stops being potential and starts being real — is its own story, told in The first births. The quiet point for us was that it slotted onto the genome with no rework to the underlying structure. The flat normalised list we’d chosen blocks of work earlier was exactly the input that operation wanted. That clean fit was the whole bet, paid out.
It’s a strange feeling to build heredity for a world with no parents in it, no offspring, nothing that can hand a single trait to anyone. But that’s the discipline a long game asks for. In The Long Watch a lineage is one-of-one and loss is permanent, so a family’s nature descending through generations — visible in the body, legible across a meadow — is the emotional centre of the whole thing. For any of that to ever be true, every creature had to quietly carry, from its very first build, a nature that was already ready to be passed on.



