Experiment · Running

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)

Links

Original (Russian) →