Sea Battle
A Soviet periscope arcade machine in augmented reality: a tap on the floor deploys the sea, a tap fires a torpedo, and you have to lead your target.
- Status
- Running
- Type
- Game
- Platforms
- Mobile
- Capabilities
- Sound
- Technology
- 8th Wall · A-Frame · three.js · WebAudio
- Updated
- 11 September 2026
What it is
The third AR demo and the most complex one mechanically: a reinvention of the Soviet periscope arcade machine “Sea Battle” in augmented reality. The idea came after a museum of Soviet arcade machines — that is where the thing stuck in my memory.
How to play
- Tap the floor — deploy the sea in the room: the ships move along three lanes at different depths.
- Tap the sea — fire a torpedo. It launches from under the player’s feet rather than from the tap point, so you have to lead your target: the ship has time to move away while the torpedo flies.
- A game gives you ten launches. A hit is the torpedo’s point inside the ship’s bounding box; ten hits in a row unlock a bonus game with three extra torpedoes.
What is inside
The ships follow fixed lanes and do not react to the player, so the difficulty lies entirely in the lead and in the launch limit. A launch starts in front of the player and aiming follows the tap; a hit is counted against the ship’s bounding box with a small margin. The sound is built on WebAudio. The mechanic lives in src/sea-battle.js; the latest changes touched the phone HUD and launching torpedoes from the player rather than from the periscope.
Stack
- 8th Wall (SLAM, surfaces)
- A-Frame (scene and HUD)
- three.js (rendering)
- WebAudio (sound)