WARBIRDS.IO Dev Log

← All posts

Big J: a battleship you can walk

There's a whole second game on the site now. At /battleship the USS New Jersey — Iowa class, BB-62 — floats in voxels at honest 1:1 scale, and you're aboard on foot. Not a menu that fires guns: a ship. The guns are three decks up and a five-minute walk from the engine room, which is the point.

1:1 or it doesn't count

The Big J is 270 meters long, and so is ours: one voxel per meter, greedy-meshed into a single hull you can climb over and through. Deck plans on M show the whole arrangement — hold and machinery, third deck, second deck, main deck, the superstructure stacked to the director platform 30 meters over the waterline. We didn't model every one of her nine hundred spaces; we modeled a representative instance of each thing a battleship is: bridge, CIC, main battery plot behind the armor, a 16-inch magazine and its projectile flat inside the barbette, an engine room and a fire room with the boilers in rows, a mess deck, berthing, sick bay, the brig, the wardroom — and the gedunk stand, because morale is a weapon system.

Scale does the storytelling. Walking from the fantail to the forecastle takes real minutes. The bridge ladder chain — main deck, 01, 02, 03, pilot house, then the trunk up to the director — is a commute. When the guns fire while you're on the fo'c'sle, the muzzle smoke rolls over you.

The 1944 loop, playable

The heart of the game is the main-battery fire control chain, run as an actual state machine you can watch on the HUD: DESIGNATE → TRACK → PLOT → READY → FIRE → SPOT. Pick the squadron up on the SG radar's PPI scope in CIC and designate a skunk. The Mk 38 director on the tower slews to the track; ride it at 12× and take coincidence rangefinder cuts — nudge the split image until the halves kiss, then MARK. Every cut, every minute of radar ranging, every steady moment of tracking feeds the Mk 8 rangekeeper down in plot, and its solution quality is not a decoration: it is literally the error term on your salvos. When the battery lights go green, F sends nine 16-inch shells down real drag-and-gravity arcs with real dispersion, a real 26-second time of flight — and then you spot the splashes and walk the corrections on. Straddles start landing hits; hits start fires; fires sink cruisers.

The enemy squadron plays the same game back. Their solutions improve the longer they track you, their shells arrive with a whistle, and the belt armor decides — with period-honest confidence — whether you get a SHELL BROKE UP message or a compartment fire.

A ship is people

Two dozen blocky sailors live aboard, pathfinding through the same passageways and ladders you use — drifting between the mess, their racks and the weather deck, running to stations at general quarters. Damage control is where they earn their pay: when a penetration starts a fire in the crew's mess, Repair Two physically runs there from DC Central and beats it out. You can watch the whole casualty on the DC status board — fires, flooding, list, counterflooding — or grab the plug yourself and hold E at the flames. And if the 16-inch magazine ever cooks, you have about seventy-five seconds to be the person who floods it.

Everything is a station

The helm and engine-order telegraph steer a 58,000-ton ship that answers like one. The throttle board in the engine room answers bells twice as fast with a human on it. Turret II has a local-control periscope if plot goes down — slower, cruder, yours. It's a toy, deliberately: one representative instance of everything, each one simplified until it's fun, none of it faked outright. The ballistics come from an integrated range table; the turrets respect their firing arcs; the rudder can jam.

It shares the flight game's three.js, its voxel language and its no-assets-synthesized-audio rule, but it's fully standalone — no server, no account, one URL. Report aboard: warbirds.io/battleship.