Fifty Percent, Every Frame
Written later and filed to this date, as part of filling in every day of the year.
What broke. In the browser survivor game the fleet builds, one boss arrives as a pair. When one twin dies the survivor is meant to go berserk: its contact damage rises by half, once, and the player gets a harder second act. Instead, the moment the first twin fell, the player died. Not from a visible attack. The run simply ended.
When it was noticed. It presented as a random death, the kind of thing that gets filed as a bug with no mechanic behind it. Nothing on screen connected the death to the surviving twin, because the twin had not done anything new: it had touched the player once, as it always does.
The cause. The berserk branch ran on every frame the partner stayed dead, and on every frame it multiplied the twin’s base damage by 1.5. From a catalog base of twenty, contact damage passed 8,700 within a quarter of a second and reached the ceiling of a 32-bit float inside two. The one thing that might have masked it was the distance throttle, which skips the AI of far-away enemies to save frames; the throttle applies only to enemy types below a numeric threshold, and both twins sit above it, so they ran on every frame at any distance.
The fix. The transition is now latched in a state slot the enemy already carries, one the spawn path zeroes and the save already round-trips. The multiplication runs once, when the slot flips, and a reload cannot run it again because the slot comes back flipped. Fourteen lines in the twin’s file. No new component field, no new storage key, no save-format version bump.
What guards it. A test file for the twin that did not exist before, sixty-three lines and three cases named plainly: a twin whose partner died is buffed once, however long it survives; a linked pair is never buffed; a restored berserk twin is not buffed a second time. Above the new constant, a comment records the two numbers a reader needs so the branch is never rewritten back: any survivable value in a quarter second, Infinity inside two.
The bug was severe enough to stop looking like itself. A damage multiplier that misbehaves by a little looks like a balance problem. One that reaches Infinity looks like a crash, and a crash is what you go looking for.