Get notified

Dev Log  · 

The Taxman opens branch offices, and a wall learns to be walked around

The last entry ended on a heat map: villagers steer perfectly well across open farmland and get stuck where the player has built. This one starts with the fix. A wedged villager now follows the face of whatever is blocking it — pick a side, walk the wall, round the corner — and the detail that mattered took four measured attempts to find: the villager has to commit to a side for the whole episode. Let it re-choose on every bump and it oscillates around the middle of the wall forever, very busily going nowhere. With commitment in, the walled stress test dropped from roughly five emergency rescues a day to under three, and the heat map’s solid stripe along the wall dissolved into scattered singles. The honest residue is crowds queueing at the same choke point — a different problem, and a later one.

A second pathing idea was tried the same week and reverted, and the reason it is in this log is the reason it was reverted: numbers. Teaching collectors to detour around obstacles sounded obviously right, and in three ten-seed measurement bands every variant of it made things worse — more stuck actors, not fewer, because packs and scattered trees loop a follower that a straight line walks past. The revert kept the receipt. An idea that survives contact with ten seeds is a feature; one that does not is a story.

Then the question a playtester asked that the game could not answer: where do the enemies come from? Now it answers it in architecture. The morning a new attack lane opens, an Authority field office stands at its mouth — a grey booth with the tie-red seal on the front and the collectors’ own briefcase, landmark-sized, up on a sign post. It walks outward with the field’s edge each dawn, so it is always at the treeline where the trouble starts, and from your defence line the briefcase silhouette names its road with no text at all.

The emergency rescues got a costume while all this was open. When a watchdog frees a genuinely stuck actor it now pops a little block-puff at both ends of the move — paperwork-grey for a collector storming off in administrative disgust, leaf-green for a villager stomping home. Same mechanics, but a teleport with a costume reads as a character moment instead of a bug.

Two quieter fixes matter more than they sound. The packaged game had been writing a crash report before its first frame, on every single launch — twenty-four crash folders on one machine — because a build-time workaround pointed the engine at a class the shipped game never contains. It is gone, and three consecutive packaged launches wrote nothing. And the exit crash from the last entry is now proven clean on the real executable: it turns out the launcher hands off to a second process, so the earlier “clean closes” were measuring the wrong program — two of those “closed” games were still running hours later. Measured properly, the path a player actually takes out of the game is clean.

Housekeeping with teeth, to finish: the front door now wears a small version stamp, so every screenshot names the build it came from, and the game keeps an action journal — one crash-safe line per player action, so a bug report can say exactly what happened rather than what someone remembers happening.

CropCorp screenshot — Where villagers got stuck before the fix
Where villagers got stuck before the fix
CropCorp screenshot — The same test after: the stripe is gone
The same test after: the stripe is gone
CropCorp screenshot — The Authority field office, up close
The Authority field office, up close
CropCorp screenshot — The briefcase names its road from the defence line
The briefcase names its road from the defence line
CropCorp screenshot — A rescue in its costume
A rescue in its costume
CropCorp screenshot — The build stamps its name now
The build stamps its name now

Recruitment

Get the next entry by email

One email when the Steam page opens, one when there is something playable. Nothing else.