ALFTANET
← All guides

Designing a game you can't see

Most games treat darkness as an obstacle to overcome — find the torch, upgrade the lamp. An echo-location game treats it as the medium. Here's what changes when seeing becomes something you spend rather than something you have.

Sonar is the only game we've made that starts with a blank screen and stays that way. You're in a flooded cavern with no light at all. Press the ping button and a pulse ripples outward from your submersible, briefly lighting whatever it touches — rock walls, pearls, the gate that leads deeper, and the things waiting in the dark — before everything fades back to black.

That's the entire visual model. And the moment you build a game this way, a set of design problems appear that simply don't exist in a game with a camera.

Seeing as a resource

In an ordinary game, visibility is free and continuous. You always know where the walls are, so the challenge has to come from somewhere else — reflexes, aim, planning. Make visibility cost something and it becomes the challenge all on its own.

The critical decision in Sonar was giving the ping a downside. If pinging were free you'd simply hold the button, the cavern would be permanently lit, and you'd have an ordinary swimming game with a strange art style. So: every ping wakes the lurkers near you, and they home in on where the sound came from.

That one rule generates the whole game. Now every pulse is a genuine trade — you can't navigate without information, and gathering information tells something dangerous exactly where you are. Players don't need this explained. They ping three times in a panic, get swarmed, and understand immediately.

The echo has to travel

An implementation detail that turned out to be a design decision: the pulse isn't instantaneous. It expands outward at a fixed speed, so a nearby wall lights up immediately and a distant one lights a moment later.

We could have flashed everything within a radius at once. It would have been simpler and it would have felt completely dead. The travelling wavefront does two things that matter. It gives you distance information for free — you learn how far away something is from when it appears, not just where. And it makes the reveal feel like a physical event rather than a lighting toggle, which is most of the atmosphere the game has.

It also creates a small, lovely moment that we didn't design and can't take credit for: a ping into open water shows you nothing for an uncomfortably long beat, and that silence is how you learn the room is big.

Memory becomes the real skill

Because everything fades, the game is played substantially in the player's head. What you're actually navigating is your recollection of a room you saw a second and a half ago.

This is why "keep moving between pings" is the single most useful piece of advice for the game, and it took us a while to notice it was even true. A pulse tells a lurker where you were. If you drift on while the echo fades, the thing that comes hunting arrives at empty water. Players who ping and then sit still to study the image are the ones who die, which is a nice inversion of the usual instinct to stop and look.

Good players end up pinging in a rhythm rather than on demand — a steady beat that keeps a rough model of the room alive in their head without ever lighting up the whole neighbourhood. Bad runs are almost always arrhythmic: nothing, nothing, nothing, then four pings in a second when something goes wrong.

Two clocks, and why one of them heals

A game where information is scarce needs a reason to keep moving, or the safest strategy is to creep. Sonar's is air, which drains the entire time you're down there.

The neat part is what refills it. Pearls — the things you collect for points — also give back a little air, and reaching the gate to the next cavern refills the tank completely. So your scoring line and your oxygen line are the same line. Being greedy and being safe point in the same direction most of the time, and diverge exactly when it's interesting: late in a cavern, low on air, with a pearl sitting somewhere you'd rather not go.

Meanwhile the hull is a separate, non-renewable clock. Lurkers cost you a segment, and there are only three. Bumping into rock in the dark doesn't damage you, but it wastes air and makes noise — a quietly vicious little rule, because the mistake you make when you can't see is the same mistake that tells the cavern where you are.

The dark is genuinely better with headphones. Dive into Sonar →

What we got wrong first

Two things, both about generosity.

The first build had a faint ambient glow so the player was never in total darkness. It seemed kind. It was actually ruinous: with a permanent dim outline of the walls, the ping stopped being necessary for navigation and became a decoration you used to find pearls. We took the glow out and the game appeared.

The second was the ping cooldown, which we initially set very short because being unable to ping felt frustrating in testing. But a short cooldown means panic-pinging is viable, and panic-pinging is the strategy the whole design exists to punish. Lengthening it made the game harder and much better — the cooldown is what forces you to make each pulse count, and "frustrating in a five-minute test" turned out to be "tense across a whole run".

The general lesson we took from both: in a game built around scarcity, every kindness you add is a hole in the design. The thing that feels bad in isolation is often the thing generating the tension you liked.

Where else this works

Echo-location is a specific gimmick, but the underlying move — make perception a resource with a cost — is broadly reusable and badly underused. Any mechanic that reveals information while creating risk gets you the same structure: a flare that lights the room and marks your position, a scan that shows enemies and alerts them, a map that costs time to consult.

The test is whether the player ever wants to stay ignorant. If the answer is no, the reveal is free and you've just added a button. If there are moments where a good player deliberately chooses not to look — that's when you've got something.