Repository navigation
v12: Sound duels and new models
Play this version: v12
Download the build: v12.zip
Sound duels: two phones on a table play a 1v1 skirmish against each other with no network at all, sending their orders to each other as sound. Plus a cinematic camera for AI vs AI matches, and new Flak Crawler and Mortar models.
- Sound duels 🔊: tap Duel a friend (sound) on the Skirmish tab. One phone taps Host (its map and mutators), the other Join. Both phones run the whole game in lockstep, and only the players' orders cross the air, carried by an acoustic modem. Each phone sends in its own band (around 9.5–12.5 kHz and 16–19 kHz), with a lower band to fall back on. Lay the phones flat 10–30 cm apart: the lobby shows how well each phone hears the other, then both pick an opener. Pausing on one phone shows "Friend paused" on the other, and you can resign from the pause menu. The report has a Sound duel section with link quality and a check that both phones saw the same battle, plus Rematch (which swaps sides) and Save battle. Duels keep their own win/loss record and don't earn XP, medals or stars. The button only shows in browsers that can run the modem (an AudioWorklet and a microphone, over HTTPS). It's been tested end to end in simulation and in the browser, but only a little on real phones so far. The full design is in SOUND-DUEL.md, and the research behind it is in reports/. PR #31
- Cinematic camera 🎥: AI vs AI matches now direct their own camera, on by default. It follows the busiest fight, cuts between the two armies when things are quiet, and jumps straight to surprises: a calldown, a Goliath rolling out or falling, the first shot at an HQ, an Uplink changing hands, a veteran dying. It zooms in for tight fights and out for spread-out ones. Pan or zoom yourself and it hands you the camera, taking it back 8 seconds after you stop. Toggle it with the 🎥 button above ⚡ or the C key. PR #32
- New Flak Crawler and Mortar models: both were too easy to mistake for tanks at play zoom. The Flak Crawler is now a spider tank on six walking legs with four guns pitched at the sky, and the Mortar is a siege mortar on four big wheels with one huge banded barrel. Their HUD portraits are reshot to match. Stats and sizes are unchanged. PR #29
- Stuck touches on iOS fixed: iOS Safari can end a touch without telling the page, for example after an abandoned edge swipe. The game then counted that finger as down for the rest of the match, so tapping to select, box selection and orders all stopped working. It now notices a finger that is no longer on the screen and forgets it. PR #30
- Smaller changes: radio-probe.html measures a phone-to-phone sound link,
?side=redplays a skirmish as red, andtools/vite-https.config.tsserves the dev build over HTTPS for testing duels on phones.



