Top-line numbers
Source files
1,347
.h + .cpp across all modules
Total LOC
137,734
all source code
Non-test LOC
106,371
production code
Test LOC
31,363
23% of total — strong coverage
Modules
7
Build.cs targets
Subsystems
21
UE *Subsystem classes
Console cheats
161
distinct axon.* commands
Submitted CLs
747
since project start
Tickets
357
retroactive at submit
Scenarios
3
M0 only — Phase-1 acceptance scenarios retired
Design docs
62
22,560 lines markdown
Phase status
A–K shipped
UI redesign Phase A 5/13
UI redesign Phase A 5/13
post Phase 1 + UX rebuild in flight
Modules (Build.cs targets)
| Module | Files | LOC | Role |
|---|---|---|---|
AxonRushCore | 817 | 57,373 | Foundation — gameplay context, providers, reactions, triggers, scenario, hotpatch, debug overlay, perf HUD |
AxonRush | 216 | 43,299 | Core gameplay — match flow, world, units, combat, economy, projects, dormancy, visibility, AI, leader system |
AxonRushEditor | 68 | 19,312 | Editor extensions — InstancedStruct graph customization, Hotpatch inject queue, TaskTracker UI |
AxonRushUI | 127 | 8,897 | In-match HUD + frontend lobby UI + theme subsystem (UI redesign Phase A live) |
AxonRushEventRouter | 98 | 6,674 | Generic event bus (verb system) |
AxonRushOnline | 17 | 1,882 | PlayFab anonymous CustomID auth + matchmaking REST |
AxonRushUIEditor | 4 | 297 | UI module's editor-only helpers |
Foundation layer breakdown (the 817-file Core)
85% of
AxonRushCore's file count is foundation-layer scaffolding (per-type providers + tests). Only ~10K LOC is unique logic.
| Foundation area | Files | LOC | Notes |
|---|---|---|---|
Gameplay/Providers/ | 269 | 10,540 | 15 typed providers × 8 universal subproviders (Bool/Int32/Double/Vector/Rotator/Transform/Name/Text/LinearColor/GameplayTag/Tag-container/Actor/Class/Object/SoftObjectPtr) |
Tests/ | 231 | 28,907 | Foundation-layer test scaffolding (provider round-trips, trigger fixtures, scenario steps) |
Gameplay/Triggers/ | 29 | 2,270 | Verb framework — gates, source triggers (Tick/Delay/BP), wrappers (All/Any/Counted/None/Sequence/TimeOfDay/TrackedDelta), subsystem |
Gameplay/Reactions/ | 3 | 142 | Reaction-base + variants |
Hotpatch / Scenario / PerfHUD / DebugOverlay / Cheats / EventRouter | ~30 | ~3,000 | Dev-side tooling subsystems (asset injection, scenario runner, perf HUD provider, debug overlay widget, cheat manager, generic event bus) |
Gameplay-module breakdown (the 43,299-line AxonRush)
| Subsystem area | Files | LOC | Status |
|---|---|---|---|
| World — grid, tiles, mapgen, paths | 50 | 9,067 | Real |
| Game — mode, state, player controller, OneShot dispatch | 16 | 4,720 | Real |
| Combat — cascade, edge combat, ticker framework | 9 | 4,597 | Real |
| DevTools — cheats catalog (161 commands) | 18 | 3,936 | Real |
| Match — lifecycle, lobby, tracker, overlay | 17 | 1,391 | Real |
| Units — 5 unit types + visualizer + query service + tuning | 13 | 1,411 | Real + tuning hooks |
| Hooks — 14 trigger payloads + bridges | 23 | 1,168 | Real |
| Replication — Iris filter groups, push-based, team-bubble | 8 | 709 | Real (post A-3) |
| AI — StubCpu + Personality + Names | 5 | 649 | Stub behaviour Real input shape |
| Economy — gather pickup + dropoff subsystems | 4 | 648 | Real |
| HUD / UI surface (in-match HUD live; UI redesign Phase A foundation infra in flight) | 127 | 8,897 | Real (redesign in flight) |
Major gameplay systems
20 production systems in real / spec-faithful status, plus 2 active stubs. Leader system shipped during Phase D close-out (CL ~660+); per-stack unit Level shipped in Phase H. UI redesign foundation infra (Phase A: theme tokens / FactionTint / theme subsystem / theme asset / pre-submit literal validator) shipped CLs 743–747 — A-1 through A-5 closed, A-6 through A-13 in flight.
Production-design (Real) — 20
- 1Match lifecycle state machine (Lobby → Countdown → InMatch → MatchEnd)Real
- 2Hex grid + axial coordinate worldReal
- 3Authoritative grid state TMap (server-only)Real
- 49-rule tile axis (PassThrough, 5 Spawn-X, ResourceProducer, Upgrade, Tower, HomeBase)Real
- 5Tile-type axis (Generic + Trap)Real
- 6Procedural map generator (region+corridor, Lloyd-relaxation spawns)Real
- 7Mass entity unit framework (5 types, fragments, walking, path-trees)Real
- 8Per-type path-tree system (Army/Gather/Engineer/Defender; Scout direct-control)Real
- 9Combat cascade (Defender → Army → ClaimHP, edge combat, scout immunity)Real
- 10Per-tile combat ticker framework (6 ref-counted reasons)Real
- 11Resource economy (4 slots, stockpile, loose pile, gather pickup/dropoff/decay)Real
- 12Engineer projects (queue, work-seconds attribution, 3-tier costs)Real
- 13Dormancy (decay + occupation timer + contestation)Real
- 146-source visibility service (5 of 6 sources real)Real
- 15Iris-based replication architecture (3 channels: tile / Mass entity / paths)Real
- 16Single boundary RPC (Server_SubmitInputState) + OneShot dispatchReal
- 17Faction system (data assets, bootstrap)Real
- 18Hooks-for-UI trigger bus (14 trigger payloads)Real
- 19Leader system (AAxonLeader, abilities, aura, supply, XP, respawn — full Phase D)Real
- 20Per-stack unit Level + per-faction resource display names (Phase H/J)Real
Stub or partial — 2
- 1AI brain — UAxonStubCpuSubsystem ticks, draws random expansion paths; only ThoughtSpeedHz personality stat consumedStub
- 2Nexus tile-type effect (placement works; mechanic TBD per Decision #5)Hook
Subsystems (the 21)
Match / Online (5)
AxonMatchLifecycleSubsystem · AxonMatchTrackerSubsystem · AxonAuthSubsystem · AxonMatchmakingSubsystem · AxonInjectQueueSubsystem
World (1)
AxonGridSubsystem
Combat / Mechanics (3)
AxonCombatSubsystem · AxonCombatTickerFramework · AxonTileMechanicsSubsystem
Economy (2)
AxonGatherPickupSubsystem · AxonGatherDropoffSubsystem
Units / Replication (2)
AxonMassReplicationSetupSubsystem · AxonTeamUnitBubbleSubsystem
AI (1)
AxonStubCpuSubsystem
Foundation / Dev (5)
AxonTriggerSubsystem · AxonHotpatchSubsystem · AxonScenarioSubsystem · AxonDebugOverlaySubsystem · AxonPerfHUDSubsystem
UI (2)
AxonInMatchUISubsystem · AxonUIThemeSubsystem (theme accessor + faction-tint resolver, CL 745)
Other (1)
EventRouterSubsystem (generic verb dispatcher)
Cheat surface (161 distinct commands)
| Namespace | Count | What they touch |
|---|---|---|
axon.leader.* | 28 | Spawn / move / kill / heal / xp / aura / ability / supply / respawn — full Phase D leader system |
axon.tile.* | 27 | Set rule / level / type / owner / stockpile / loose-pile / dormant / occupy / walls / decay / cascade |
axon.combat.* | 15 | List / skip / comeback / dump / tile-defense / claim-regen / ticker-smoke / trace-buffs |
axon.path.* | 9 | Set / clear / dump per (source, type) — Phase J per-type path-tree work |
axon.unit.* | 8 | Spawn / spawn-typed / kill / kill-all / list / list-levels / list-speed / set-hp |
axon.ui.* | 7 | Show / pop / dump-stack / select-tile / deselect / help / faction_info |
axon.match.* | 7 | Start / end / restart / rebuild / skip-countdown / tile-counts / set-map-seed |
axon.ai.* | 6 | Enable / disable / set-difficulty / add-brain / dump-personality / dump-name |
axon.spawn.* | 5 | Enable / disable / burst / count / enabled |
axon.mm.* | 5 | PlayFab matchmaking helpers |
axon.inject.* | 4 | AxonInject queue: status / scan_now / pause / resume |
axon.asset.* | 4 | Inject / inject_file / save / dump (synchronous JSON injection alternates) |
axon.faction.* / axon.tv.* / axon.time.* / axon.walk.* / axon.mapgen.* / axon.hotpatch.* | 3 each | Faction apply/choose; team-view dump/recompute; pause/scale/unpause; walk enable/disable/enabled; mapgen smokes; hotpatch list/reload/dump |
axon.scout.* / axon.defender.* / axon.scenario.* / axon.perf.* / axon.debug.* / axon.trace.* | 2 each | Scout list/move; defender list/set-stationed; scenario list/load; perf dump/toggle; debug overlay list/toggle; trace claim/walk |
| Single-cheat namespaces | 10 | axon.{auth,console,dump,engineer,gather,triggers}.* + a handful of one-offs |
Documentation
| Location | Files | Lines |
|---|---|---|
Claude/ total |
62 | 22,560 |
| Pillar docs (GDD, ArchitecturePath, PostArchitecture, tech-decisions, prearchitecture, mdMap) | 6 | ~6,500 |
| Biome docs (15 biomes) | 15 | ~3,000 |
| UI redesign series (Vision / IA / Interaction / Visual / Layouts / ImplementationGuide / ImplementationPhases — Docs 1–7 of 7, CLs 736–742) | 7 | ~3,500 |
| Phase / impl plans (Tile-UI-Handoff, DevToolsCatalog, M6-M7-Implementation-Plan, AutonomousRun_continuation, retired UX-pass docs, etc.) | ~16 | ~5,500 |
| Website pages (overview / tech / roadmap / leader / combat / paths / map / match / economy / ideas / monetization / presskit / team / tiles / deferred / index + this audit) | ~17 | ~3,000 |
| Misc (recruitment, trailer brief, onboarding) | ~3 | ~1,200 |
Velocity context
CL range submitted in this lineage: CL 1 → CL 747. +152 CLs since the previous audit snapshot at CL 595. Sub-slice-per-CL discipline holds — most CLs are 5–50 LOC of code change + retroactive ticket + doc update.
Coverage CL 595 → 747 (in declared phase order):
What's next: UI redesign Phase A close-out (sub-slices A-6 through A-13: LICENSE-ATTRIB.md schema + license hook, Google Fonts, Lucide icons, AxonButton WBP, FocusRing WBP, Tooltip + KeyGlyph WBPs). After Phase A: phases B (Frontend), C (Lobby), D (In-match HUD), F (Modals) parallelizable; then E (Tile-selection panel), G (Pre-match countdown), H (Spectator readout), I (License finalization). PL Phase 1 acceptance resumes after the redesign closes.
Coverage CL 595 → 747 (in declared phase order):
- Phase H closed (per-stack unit Level, scout direct-control, post-Phase-1 visibility cleanup)
- Phase I closed (PvP listen-server lobby, slot-driven map config, lobby seed/size selection — sub-slices PI-1 through PI-7)
- Two-CL replication / log-warning cleanup (CLs 699, 700)
- Phase J closed (per-type path tabs, used/budget readout, per-faction resource display names — PJ-1 through PJ-3)
- Phase K closed (press-kit + website refresh)
- Regression-fix block (CLs 710–717): unified Start Match / 4-AI scenarios / phrogz 24-color owner palette swap
- Lobby placeholder-UI fixes (CLs 718–735) — superseded by the redesign but still in depot
- Major scope shift: UX-pass retired CL 736. Replaced by ground-up UI redesign — 7-doc design series (Vision / InformationArchitecture / Interaction / Visual / Layouts / ImplementationGuide / ImplementationPhases) shipped CLs 736–742 = doc series complete
- UI redesign Phase A foundation infra implementation: A-1 theme tokens (CL 743), A-2 FactionTint UPROPERTY + Vanguard / Industrial asset patches (CL 744), A-3 UAxonUIThemeSubsystem lazy-loader + ResolveLocalPlayerFactionTint accessor (CL 745), A-4 DA_AxonUITheme_Default.uasset author (CL 746), A-5 pre-submit theme-token literal validator (CL 747). End-to-end pipeline A-1 → A-2 → A-3 → A-4 verified live.
What's next: UI redesign Phase A close-out (sub-slices A-6 through A-13: LICENSE-ATTRIB.md schema + license hook, Google Fonts, Lucide icons, AxonButton WBP, FocusRing WBP, Tooltip + KeyGlyph WBPs). After Phase A: phases B (Frontend), C (Lobby), D (In-match HUD), F (Modals) parallelizable; then E (Tile-selection panel), G (Pre-match countdown), H (Spectator readout), I (License finalization). PL Phase 1 acceptance resumes after the redesign closes.