The Submarine — Cold War Silent Hunter, Real Sonar Trade-offs
Three workstations: helm, sonar, periscope. Hunt a destroyer in the dark deep. Active ping reveals everything but reveals you. Run silent or eat depth charges.
What this is
You're inside a Cold War submarine. Switch with number keys: 1 helm (depth, heading, throttle, pitch — W/S throttle, A/D rudder, Q/E pitch), 2 sonar (huge green CRT canvas with radial 6 RPM sweep and persistent 10% fade trails — own sub at center, enemy destroyer as bright blip, fish schools as ambient clutter; press P for active ping which reveals everything but also dumps 0.7 onto destroyer's awareness), 3 periscope (low-light optical view of surface — only at periscope depth ≤ 18m, fire torpedoes from here). The destroyer hunts you back. Awareness threshold of 0.55 triggers depth-charge runs — cabin lights kill, red alert lamps pulse, screen washes red, charges rain down with delayed speed-of-sound boom audio.
Why this is mind-blowing
Silent Hunter shipped six numbered sequels because the loop is that good. This nails it in 1129 lines. The sonar trade-off — information vs exposure — is the entire genre's appeal in one mechanic. The model understood that.
First-person submarine command. Three workstations: helm (depth, heading,
throttle), sonar (radial sweep with returns), periscope (low-light optical
view). Hunt a destroyer that's also hunting you. Active sonar ping
reveals everything but also reveals YOU. Run silent (low throttle) to
be hard to detect. Run deep to evade depth charges. Win: torpedo hits
destroyer hull.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- Awareness meter as an explicit number (driven by throttle noise + depth + ping events) makes stealth visible. The player can feel each decision's cost.
- Active sonar that costs detection — pinging spikes both your detection chance AND the destroyer's awareness — is a trade-off mechanic that turns information into a resource.
- Sonar implementation is just a 1024² canvas with persistent 10% trail fade and a rotating wedge. Looks like a Cold War CRT in 30 lines.