Fog you actually want to look at

Fog of war landed. Hiding the map was the easy half. Making the hidden half worth looking at took three attempts.

The map is 765 by 765 tiles. That’s 585,225 of them, and until this month you could see every one from the first frame.

Bad opening. A colony sim earns its first hour out of not knowing, and I’d given the whole map away before anyone had placed a wall.

Three states, not two

Most of the work went into refusing the obvious model. Seen and unseen isn’t enough for a colony game, because the useful state is the one in the middle.

  • Hidden. Never walked. You get nothing, and the game won’t let you build, dig or designate there.
  • Explored. Walked once. You see the terrain as you left it, not as it is.
  • Live. Inside somebody’s vision right now.

That middle state is what makes planning feel like planning. Your map is a memory, and memories go stale. A herd that wandered into your old quarry isn’t on your map until somebody goes and looks.

I got the look wrong twice

The first version painted hidden tiles flat grey. It worked, it read clearly, and it made the game look like a spreadsheet with a hole in it.

The second tried a blur, and the cost turned up immediately. A full-map sweep at 585,225 tiles isn’t something you get to do casually. Every per-frame pass in this engine has to cull to what’s on screen, or the sprite buffer quietly drops the tail and entities start vanishing off the bottom of the map. Good bug to chase at one in the morning.

What shipped is closer to ink than to darkness. Unexplored ground reads as unmarked chart rather than as absence, and the boundary between what you know and what you don’t is drawn rather than faded. It looks deliberate, which is the whole point. The player should feel the edge of their knowledge, not the edge of the renderer.

And a lever for me

There’s a hide_fog debug flag that lifts the veil without lifting the rules. Terrain shows through, but the build gates still refuse ground the colony has never walked.

It exists because I spent most of an afternoon correcting a colour that was never wrong. The veil desaturates everything outside live vision, and I’d been judging the art through it.

Next: what the map looks like when you zoom all the way out. That one turned into an art problem.