Reopening a world shouldn’t rebuild the whole world

← All field notes

When the first plants entered The Long Watch, they brought a quiet new requirement with them: a world you reopen has to put your plants back where you left them. That sounds like reading a list off disk — and it should have been. For a short while, it was the most expensive thing the engine can do, and we very nearly didn’t notice.

What the reopen had to do

The first plant layer was the project’s first living content that had to survive a save — the foundation everything green in the game later grew from. We proved the whole thing end to end with a single, humble species: one ground-hugging grass, scattered across a test world a couple of thousand plants thick. The promise was small and exact. Save a world, and its plants are written down as plain data. Reopen it, and that data is read back — not re-rolled from scratch, but restored, the same plants in the same places you left them.

Two pieces had to land for that to work, and both did, cleanly. The save learned to carry the list of plants you’d placed. And the loader learned to recognize an older save — one made before plants existed — and quietly bring it forward to the new shape rather than refuse it. Open an old world, and it upgrades. Open a new one, and it round-trips your plants exactly. That part was undramatic, which is how foundation work is supposed to feel.

The interesting part was hiding at the very end, in how the reopen actually fetched that list.

The heavy door

To restore your plants on reopen, the game was calling the full open a world routine — the same one that runs when you first sit down with a fresh world. And that routine does not merely read your saved file. It rebuilds the entire terrain from scratch: the whole landscape, hill by hill, the most expensive single thing the engine ever does.

So every time you reopened a world, the game was constructing a complete world’s worth of ground — just to reach past it and pull one saved list of plants off disk. Then it threw that freshly-built terrain away. The live world you were already standing in was the only terrain that mattered; the one the reopen had just labored to build was scaffolding, discarded the moment the list was in hand.

A soft voxel valley at golden hour shown twice: once fully built with rounded hills and a river, and once dissolving away, with only low grass remaining.Concept art · pre‑alpha
A whole valley raised and razed on every reopen — just to fetch the grass that was already saved.

The list was the only thing it actually wanted. The heavy world-build around it was pure waste — a whole valley raised and razed to fetch a single page of notes.

What makes this an honest engineering story rather than a careless one is why it happened. The original plan had assumed reopening was a cheap file read — grab the saved state, hand it back, done. That assumption was reasonable on paper and completely wrong about the machine. Reaching the saved state through the open a world door meant paying that door’s full price, every time, whether you wanted the terrain or not. The cost wasn’t in the line we wrote; it was in the routine we reused.

We hadn’t written an expensive operation. We had asked a heavy machine to do a light job, just because it happened to be standing there.

The light door

The fix was to add a second way in: a lightweight read that grabs only the saved state and stops there. It reads your world’s data off disk and, if the save is an older one, still quietly brings it forward to the current shape — the upgrade behaviour was load-bearing, so it had to come along. But it deliberately builds no terrain. It re-derives nothing. It does the one small thing the reopen actually needed and not a stroke more.

With that path in place, reopening uses the light door. It gets back the exact same saved plant list it always would have — same plants, same places — and skips the world-build entirely. Correctness was untouched: a world with saved plants resumes them; a brand-new world still places its plants fresh in a repeatable way; and the restored scene renders exactly as it did before. We didn’t change what reopening produces. We changed how much it burns to produce it.

It’s worth being precise about what that “light door” is and isn’t, because the world genuinely has two different paths on open, and conflating them is its own kind of bug. A world you’ve never tended is generated from its seed. A world you have tended has drifted from its seed — you’ve changed it, things have lived and grown — so it must be restored from what was saved, never regenerated. The deeper architecture of restoring-rather-than-rebuilding the things a world remembers — deeds, not states — has its own home. The slice that belongs here is narrower and more embarrassing: even once you’ve chosen to restore, you can still restore the wrong way, by hauling in the whole heavy machine to fetch a list a light read could have handed you for almost nothing.


Why a light reopen matters at all

None of this would matter if reopening were a rare, special event. It isn’t. The Long Watch is built around a single, persistent world you return to across many evenings — you’ll cross the close-and-reopen seam more than almost any other in the game. (And because a closed world is frozen exactly as you left it — it doesn’t age while you’re away — reopening is a resume, not a fast-forward, which only sharpens the point: it should feel like opening a door, not rebuilding the house behind it.) A seam you’ll walk a thousand times deserves to be cheap.

This was also the first time the reopen path carried living content, and it set a habit we kept. As more kinds of life arrived — creatures, the richness of the soil, everything a world accumulates while you tend it — the same discipline held: read back what was saved, restore only what you need, and don’t summon the heaviest routine in the engine to do a light errand. The plants were the first to test it. They were the reason we went looking, found a whole world being built and binned on every reopen, and learned to reach for the lighter door.

You don’t win here. You tend — one world, over and over, opened and closed and opened again. The least we owe that ritual is to not rebuild the world every time you walk back into it.

Keep reading

Concept art · pre‑alpha