Devlog · Engine & Netcode
Strider-local netcode worked for one moving city. Reference-Frame Authority generalizes that same logic to every moving frame in the game, on the same day the disc's real-world scale finally got locked.
The earlier Strider Reference Frame system solved one specific problem: characters replicate correctly inside a moving Strider. Reference-Frame Authority takes that same idea and generalizes it — authority, relevancy, lag compensation, quantization, and persistence, all organized around any moving reference frame instead of hardcoded to one.
Pass 1 built the pure logic layer — function libraries for authority, relevancy, quantization, and frame handling, with no dependency on replicated actors yet. That layer validated 32 for 32 against its own Python mirror before a line of the real UE5.8 C++ was trusted.
Pass 2a added the parts that make it actually usable in a live game: a transition state machine, a rewind ring buffer, and a snapshot cadence scheduler. That layer validated 38 for 38 in the same session. A third pass — wrapping the whole thing in replicated Actor Components — is scoped and waiting on real SRF headers to build against.
Why two passes instead of one: the pure-logic layer can be tested exhaustively without a running server. Wiring it into actual replicated actors is where subtle bugs hide. Proving the logic first means any bug found in Pass 2 is a wiring bug, not a math bug — a much smaller space to debug in.
The module compiled on Shadow PC against actual UE5.8, which meant it hit actual UE5.8 problems: a missing IMPLEMENT_MODULE entry point, an engine API that moved in 5.6 (CppCompileWarningSettings), a stale intermediate build causing an access violation crash, and a required upgrade to BuildSettingsVersion.V7. None of these are exotic. All of them are the kind of thing that only shows up once code actually meets the compiler.
Separately, but the same day: the gameplay disc's diameter locked at 2,500km, up from an earlier 600km, holding a 13.4:1 compression ratio against the lore disc's roughly 20,800-mile scale. Every Strider class's speed locked alongside it — Grindwalker and Vector at 14 km/h, Scavenger at 11, Juggernaut at 8, Blackjack at 10.
A new terrain heightmap generator produced a 2017×2017 16-bit UE5.8-ready heightmap plus five biome weightmaps — snow-mountain, badlands, plains, wetlands, ocean — validated 19 for 19 against the same discipline as everything else this project ships.
Blackjack and Grindwalker interiors got pulled off the Alpha-blocking list — the Drifter alone already proves walkable-interior technology, so a second and third full interior aren't required to validate the same risk twice. Meridian Maritime Academy got added instead, reachable by any Strider class in greybox-walkable mode with no art assets required.
The actual principle: Alpha scope exists to prove the project's central risks, not to look like a finished game. Cutting a second interior that would prove the same thing twice, in favor of a location that proves something new, is the right trade even though it means less content in the build.
Proving the same risk twice isn't progress. Proving a new one is.
← All Devlog Posts