WARDOGCOMMS
Cross-squad radio nets for WARDOGS. The game gives you squad voice and proximity and nothing else, so the supply run, the air net and the command net have nowhere to live. Here they get nine frequencies that each sound different.
In development TypeScript Node Tauri SQLite Earshot
What it does
Nine nets, on one radio
Command, assault, air, armor, artillery, logistics, medical, recon and staging. Your in-game role tunes you to the matching one by default — roles are defaults, not doors, so anyone may join or leave any net.
Each net sounds like itself
Every frequency carries its own audio character, so with three of them live you know which one is talking before you have parsed the words. A fire mission cuts through a supply run; only command ducks it.
The join code is the product
A squad that forms in a voice room still has to arrive on the same server, so the code gets the top panel — with how long it has been stable, because it rotates whenever the server restarts.
A server list sorted for the gap
The live WARDOGS server list, sorted by populated and joinable rather than by headcount. Community servers are bimodal — barely one percent sit between ten and fifty players — and that band is the whole point.
A map on the audio's partition
The shared board is keyed on server and faction, exactly as the voice is, because a marker reading "two tanks behind the ridge" is worth more to the enemy. Anyone may draw; marks expire after thirty minutes.
Firing solutions that admit what they know
Bearing and range are trigonometry and exact. Elevation is a lookup anchored to readings players took, so every solution is labelled verified or interpolated rather than printed in one confident typeface.
How it's built
A TypeScript control plane on Node decides membership at the moment a player joins, and the client cannot change it afterwards. Voice runs on Earshot: a net is a rule with a partition, a priority and a ducking behaviour, so two factions being unable to hear each other is a property of the rule set rather than of how the media server happens to be deployed. The web client is TypeScript and Vite, and the desktop build wraps that same bundle in a Tauri window that sits over the game — a browser only receives key events while it has focus, so push-to-talk needs a real window rather than a tab. It draws nothing into the game and hooks nothing, which is deliberate in a title that could add anti-cheat in any patch.
Nothing verifies which faction a player is actually on; WARDOGS has no SDK to ask. So membership is marked self-reported in the interface rather than quietly implying a check that does not exist — a room that says what it can promise is better than one that overstates it.
- Voice engine
- Earshot — nets as partitioned rules, with priority and ducking
- Server
- TypeScript, Node, SQLite, server-sent events for the map
- Web client
- TypeScript, Vite
- Desktop
- Tauri — a frameless, always-on-top window for global push-to-talk
- Map and artillery
- The game's own kilometre grid and coordinate readout; solutions labelled verified or interpolated
- Server list
- Live WARDOGS servers from wardogservers.com
- Affiliation
- An unofficial community project. Not affiliated with or endorsed by the developers of WARDOGS
- Status
- Early. The rule set is written and tested and the server and clients are being built; nothing is deployed and nobody has used it yet
Questions about this build?
Happy to go deeper on any part of it — the frequency plan, the ballistics, the rest.
Get in touch