Go down with the ship
The bug report was one sentence: “I thought we added sinking to killed ships, but in my death replay I just see an oil slick and my ship disappears.” Both halves of that sentence turned out to be true. We did add sinking to killed ships — just not to yours.
Two navies, one funeral
There are two kinds of warship in the naval theater, and they die through different code. The anchored armada — the carrier groups that hold each team's flank — got the full treatment months ago: a gun-killed hull settles and lists over eight seconds, a torpedoed one jackknifes and breaks in half, and the stream's founder cam rides every one of them under. But the ship you drive is a different animal: a crewed hull in the shared vehicle pipeline. When one of those dies, the server pays the killer, paints the oil slick… and sweeps the wreck from the world on the next tick. The client keeps rendering a hull it no longer hears about for exactly 1.5 seconds — the stale-row cleanup — and then deletes the mesh. No settle, no list, no steam. A 200-meter battleship, gone between frames.
The old post about the break-up even confessed it in the outro, if you read it kindly: “the player-crewed hulls still settle.” They did not still settle. They blinked.
Nine and a half seconds of oil slick
The death replay made it worse, because the replay is built to linger. The timeline of a naval death, in numbers: the hull vanishes from the world at ~1.5 s after the killing salvo. The killcam clip ships at 2.5 s and plays the fatal moment back, then swings into a slow orbit of the death position until ~11 s. That's nine and a half seconds of camera time pointed at the exact spot where a warship should be dying — framing open water and a fresh oil slick. And the orbit itself was tuned for planes: a 62-meter ring, which for a battleship death is a camera inside the superstructure.
The founder, for everyone this time
The root cause was one missing sentence on the wire. A crewed hull's death emitted only the driver's kill event — the one that names you in the feed — and never the vehicle-kill event that tells every client “this hull is gone.” The AI warship next to you emitted it; you didn't. So the fix starts there: a crewed warship death now sends the vehkill too, marked crewed in the event's spare text field (the same trick the sink event uses to carry its cause) so the client knows the killer's banner and score were already paid by the kill event and this message exists for one purpose only: sink the ship.
On the client, a killed hull now leaves the live roster and becomes a founder: over thirteen seconds she settles — slowly at first, then the slide accelerates — heels 0.45 radians onto one rail (picked at random, because ships don't read a script), trims down by the stern, and boils white steam and spray along the waterline until the masts go under. Her turrets, which normally train in world space, get frozen into the hull's frame at the moment of death so the guns heel over with the deck instead of hovering level above a tilting ship. Thirteen seconds is not a random number: it's the killcam timeline plus a beat, so the last thing your replay frames is the masts disappearing. The wreck orbit itself learned the difference between a plane and a ship — a driver's death pulls the ring out to 150 meters and 55 up, hull-sized instead of cockpit-sized.
And the stream gets the same honesty contract the armada has: a player hull going down now triggers the founder cam, and the highlight reel only logs the sinking if that cut actually took the frame.
Re-run the probe
The house rule: a fix isn't a fix until the same playtest that found the bug films the after. A headless destroyer joined the fleet action, steamed straight at the enemy line, and took the shelling she was asking for. Before: hull deleted at 1.5 s, replay orbiting an oil slick. After: the wreck enters the scene the moment she dies and rides down for the full thirteen — settling from the waterline to 34 meters under, heel building to its full 0.45 and holding — while the replay camera circles ~160 meters off the hull the entire way. The spectate probe caught an AI hull going down the same way, so both navies now hold the same funeral.
The confession
The first version of this fix animated beautifully and did nothing. We built the whole founder client-side, keyed off the vehicle-kill event, watched an AI warship sink in the spectate probe, and called it working — then ran the real test, the one from the bug report: join, die, watch your own replay. No wreck. The event the animation listened for was never sent for player-crewed hulls at all; the server code returned early on the “crewed” branch and only AI hulls ever said goodbye. The animation was never the bug. The silence was. If we'd only tested the code we wrote — the animation — instead of the death the player reported, we'd have shipped a sinking that no player would ever see.
Torpedoed player hulls still keep the settle-and-list rather than the armada's jackknife — the damage pipeline doesn't yet tell the death which weapon holed her. That's the next sentence to add to the wire. But go down in a destroyer tonight and you'll get what the sea owes you: a long look back at your own ship, guns to the rail, going under with the killcam watching.