The big one is the "zombies teleporting" and "minigun killing nothing" bug from the 40 person LV759 round on the 7th. That round had 6400 mobs alive at once and it broke the way the server sends crowded chunks to you, so three rounds of netcode work landed to fix it. Beside that: helicopters now collide with terrain, each other and parked hulls, pilots have their own AVIATION class list with a UH-1H and an AH-6J pilot, land mines are at the ATM, M18 red and green marking smokes exist, every rifleman carries a screening smoke, you can reload a magazine inside an open belt without taking it out, walls you build two thick are one demo job for the EAST engineers, and anyone who punches a site guard gets executed.
Netcode
- The "zombies teleporting" and "minigun showing no kills" bug from the 7th was not lag and not the server being slow, the sim was running fine. Each chunk of the map has a budget for how much change it can send you per tick, and that budget was designed for squads of soldiers, not 250 zombies in one chunk under a minigun. Once a chunk went over, the server sent you a whole snapshot of the chunk instead, rate limited so it arrived seconds late and everything snapped into place. On top of that every zombie hit was charged at 6 times its real size, which crowded out the gunshots and tracers first. That is why the minigun looked like it did nothing.
- First pass: the server now costs every health update at the exact bytes it writes and only falls back to a snapshot when a chunk is genuinely over the limit, the snapshot lane got 4 times the bandwidth, and the client's memory of which zombies have died or left no longer overflows (it was overflowing 50,000 times a round and could bring dead zombies back).
- Second pass: zombies, xenos and the anomaly creatures no longer send the full human health block (84 bytes of limb detail nobody draws), they send an 18 byte version, and only when something you could actually see changed. A zombie taking its tenth hit in the same wound stage sends nothing.
- Third pass: gunshots, tracers, impacts and speech bubbles ride their own lane now instead of queuing behind the position updates, so a crowded chunk under fire still shows you every shot.
- Measured like for like on an 11,000 zombie horde: chunks forced to snapshot went from every few ticks to 8 per round, and gunshot cue loss went from 10 percent to 0.2 percent.
- This is a really big deal and it only got found because 40 of you turned up and pushed the game somewhere it had never been. Every one of these multiplayer problems looks like "lag" from the outside and is something architectural underneath, and I can only find them with real people in real rounds. Before I open things up further all of these need to be stamped out, so keep playing, keep reporting what you saw and roughly when, and bring people. The more pop we get the faster these fall.
Helicopters
- Helicopters have real hull collision now. Each aircraft has a collision shape per heading and you hit terrain, other flying helicopters and parked hulls with it, damage scaled by closing speed. Clipping the tail rotor on something loses it, which puts the aircraft into a spin, the TAIL lamp flashes red, turning stops working and a LOSS OF CONTROL ghost event fires. A completed stack weld on the hull puts the rotor back.
- A turn (Q and E) always completes and strikes whatever it swings into, including parked hulls, and a hull sitting overlapped with terrain grinds damage into itself every tick until it gets out.
- Landing a tail rotor on something solid loses it, landing the fuselage on something solid damages the hull. The tail rotor art disappears when it's gone.
- Crash wrecks face the way you were flying when you went in. Both horizontal wreck sprites existed in one direction only, so an East or West crash always left the wreck facing backwards.
- New GAMEPLAY settings tab between CONTROLS and GRAPHICS. Heading relative vehicle keys, PREDICT OWN MOVEMENT and ALWAYS X-RAY VEHICLE ROOF moved there from INTERFACE, and there's a new VEHICLE LOOK-AHEAD toggle, on by default. With it on the camera leans ahead of the helicopter along its direction of travel, up to 5 tiles at full speed.
- The AH-6J's minigun fires the normal rifle round now and uses the XM27 magazine (1000 at the ATM). The brass lands on the ground under the hull instead of vanishing.
- The Hydra 70 rocket flies nose first on the new artist sprite. Hydras are 50 at the ATM, down from 100.
- MH-6J and AH-6J carry nav lights and a tail strobe like the Huey. The MH-6J copilot seat was not usable. The AH-6J hardpoint planks sit symmetric on an East or West heading now, and the mag swap on the mounts is 1 second, down from 3.
- Tripod guns (sentry, M2, Mk19) were smoking like a damaged helicopter engine when hit. They have their own thinner smoke now.
Loadouts
- Pilots are split into UH-1H Pilot and AH-6J Pilot, 2 of each per round, in their own AVIATION section of the class list under MILITARY. The generic Pilot loadout is gone.
- The shoulder holster holds the M1911 plus six magazines, up from two, and every pilot spawns with it full.
- Both marine rifleman loadouts swap the third M15 in the webbing for an M40 screening smoke, the Anomaly rifleman carries one in the vest.
Explosives
- Land mines. 100 each at the ATM, or a box of 25 for 1000. Place one through the construction cursor like a barricade. A step, a push, a vault, a bullet or a fire sets it off, a dead body never does, and mines never chain off each other's blasts. Only a Sapper can pick one up again (the MINE DISARM trait chip), and the blast can take legs.
- New grenade sheet from the artist with armed states for every grenade.
- M40 HSDP is now called the M40 screening smoke grenade and lasts 60 seconds. M18 red and green marking smokes are new, they plume for 120 seconds and mark a spot without screening anything. Packets of each at the ATM (screening 100, marking 50) and cartons of 25 (500 each).
Inventory
- You can load a magazine inside an open belt without taking it out. Drag a handful of rounds onto the magazine in the belt and it loads in place. The belt has to be open and on you. People asked for this, repacking a belt meant juggling every magazine out and back.
- An ATM crate that drops by parachute now lists what's inside it under the SHIPS ALONE line, instead of nothing.
- Helmet visors show raised and lowered art on the item when you flip them, and the ATM shows the raised one.
EAST
- A wall you built two or more thick is one demo job for the EAST engineers now. They breach the first row then move inward until they're through, and a PAVN charge inside a thick wall devastates two rows and leaves a girder on the third.
- Engineer squads cap at 8, up from 5. A 48 person round wanted 11 and the cap of 5 was leaving 13 wall jobs unclaimed with squads standing idle.
- The EAST corpsman and the site medic were running their defib flat after fifteen shocks and dropping it, even though their supplies are meant to be unlimited.
Xenos
- The first two nightfalls on LV759 placed 5 of 42 and then 1 of 54 facehuggers. The night burst was drawing random spots in a small box around the nest that 155 xenos already filled and giving up half way. It now walks the whole box within 24 tiles of the nest, and once that's full the rest spawn at the other hive anchors, so camping the nest sends the burst somewhere else instead of deleting it.
- Anyone who holds one spot for long enough draws a scout. The hive sends a drone to look at the room, and it only learns where you are if the scout actually sees you.
Site guards
- Punching or meleeing a site guard gets you tagged, re-teamed EAST for the rest of the round, and the guards aim for your head and take it off. Every West NPC, sentry and guard treats you as hostile from then on, and killing you credits nobody's body count.
Ghosts
- A ghost riding a flying helicopter was sealed in. You can walk off any edge of the cabin now and land on the map below.
Sound
- Every shot now starts its own tail on top of the report and stops the previous one, so the tail Chaz designed sits on every shot. It was ringing out detached after a pause.