DRIFTLANDS co-op survival on drifting tides — studio progress

Gate 0 — Provisional Pass

Date: 2026-09-11
Decided by: Jeroen Teeuwen (user, acting lead) — explicit decision, presented with the alternatives "keep the gate, wait for the friend" and "single-player first"
Verdict: PASSED — confirmed GO 2026-09-11 by the two-machine friend playtest (Jeroen host, Eric client, real internet over Unity Relay; evidence production/playtests/gate-0-2026-09-11/). The provisional pass below is history; the five netcode ADRs (0008–0012) are Accepted without qualification.
Note carried to the register: Eric reported occasional stutter of the remote body at ≈ 150–180 ms RTT (0 warps counted on his side, 3 on the host's) — an interpolation tuning item (ADR-0009 §6), not a model concern.


What the gate asked

"Does dash-and-strike co-op combat feel instant for the local player at 40–80 ms real internet latency?" — two real machines, real RTT and jitter, a second person's spoken verdict.

Evidence on hand (why "provisional" is defensible)

Source What it showed What it did not show
2026-08-25 localhost prototype (prototypes/combat-netcode-feel-concept/REPORT.md)Owner-authoritative movement + host-authoritative damage with local-only prediction: dash starts on the pressed frame on both host and client; hit→stagger connected at ~70 ms simulated RTTReal jitter; real Relay hop
2026-09-11 two-instance run over Unity Relay (build c197115, europe-west4)The whole Relay path works end to end: anonymous sign-in, allocation, join code, host + client session, enemies spawned, hits registered on the client; RTT logged per second to CSVA second person; a clean link — this Mac's baseline ping to Cloudflare anycast averaged 154 ms (spikes to 263), so the in-game 249 ms RTT and the visible warps are the link, not the model
Headless Relay self-test (RelaySession -gate0-selftest)Link + Relay enablement proven on every build shipped—

The model the ADRs will codify is the one both runs used. Nothing measured contradicts it; what is missing is the feel verdict at a normal home connection, which only the friend session can give.

Revisit clause (binding on ADR-0008–0012)

Each of the five ADRs carries, in its Status line: "Accepted 2026-09-11 under the Gate 0 provisional pass — revisit on the friend playtest verdict."

What this unblocks

NetcodeSession (Foundation), PlayerMovement, Inventory replication half, Combat wire, Crafting, BaseBuilding, EnemyAI, presentation-ui-hud-screens, tide story 010, land story 009. The order stays the one in production/epics/index.md § Suggested order.

What is still owed, and by whom

Confirmation — 2026-09-11

Friend playtest run the same day the ADRs were written. Measured on Eric's client: RTT ≈ 150–180 ms via Relay (europe-west4), hit→stagger avg 161–179 ms over 14–20 hits, warps 0 (largest 0.00 u); host side counted 3 warps of Eric's body over the session. Verdict GO, agreed aloud. Own actions instant on both sides; hits landed where the client saw the enemy; occasional remote stutter noted → docs/tech-debt-register.md.