Skip to content

Developer Guide

For people working on the engine, the server or the tools.

Start with Development to get a build, then Architecture for the layering rules every change has to respect.

Building and contributing

Page What it covers
Development Prerequisites per platform, CMake presets, tests, coverage, fuzzing
Project management Issue types, epics, labels, milestones, and the release process
Roadmap Phase schedule, critical path, per-phase acceptance criteria
Design · Prior art The product's pillars, and the landscape it sits in
References Upstream documentation for every dependency

Engine internals

Page What it covers
Architecture Layered model, module-boundary policy, content-pack system
Network protocol The wire format: message table, quantized records, extension tags
Replay format .flrep — versioning rules for a format that outlives its build
AI architecture Provider seam, world-state API, event stream, agent surface
GNS backend GameNetworkingSockets integration notes
Voice Radio-net model, relay, jitter buffer
Haptics The IInput haptic API and the rumble event catalogue
Rendering Pass order, GPU layouts, the camera-relative invariant, HUD, quality tiers
Audio SFX/music/warning-tone managers, byte-stable builtin PCM, headless testing

Tools and instruments

Page What it covers
Tools Every CLI binary and script in tools/
Debug console Console commands and the developer key map
Debug console Console commands, the performance overlay, and visual verification
Load testing bot_swarm, the scale gate, the reference environment
Demo recording Headless cinematic capture for phase demos

Decision records

Frozen spike resolutions — why things are the way they are. Not maintained against current behaviour, deliberately.