MXO // MISSION CONTROL

updated 2026-08-29 · rev 4

Two projects, one goal: keep The Matrix Online alive — the original server preserved and playable, and the city reborn in Unreal Engine 5.

MXO-HD

preservation · live service · reference implementation
LIVE
Now

Awaiting router port-forwards for public player access LAN play fully operational · nightly DB backups + log rotation · deploys are one command

Tracks
A · Live service75%
B · Gameplay completion10%
C · Code health40%
D · Reference & docs (feeds UE5)5%
Done — 2026-08-29
  • 08-29Nightly DB backups live: validated dumps, 7d/4w rotation, off-box pull
  • 08-29ServerLog rotation live; deploys archive the log instead of deleting it
  • 08-29Source resurrected: .NET Core 3.1 → .NET 8, zero code changes to build
  • 08-29Fixed EF Core 5 crash that silently broke all logins on modern .NET
  • 08-29Fixed silent spawn-hang (districtId 0) and repaired affected characters
  • 08-29Fixed character creation (never persisted) + crash-proofed margin thread
  • 08-29Migrated to VPS: WinSW service, MariaDB, DNS at mxo.residual.city
  • 08-29Hardened: client-reachable SQL parameterized, ?commands admin-gated
  • 08-29AccountTool ships real RSA keypairs (byte order proven empirically)
  • 08-29First real client login, walkabout, and in-client character creation

MXO-UE5

recreation · unreal engine 5 · ue5-native server
PHASE 1
Now

M0 REACHED — real MXO props extracted, converted, rendering in glTF .mga format cracked (32-byte vertex records, self-derivable counts) · 9/10 oracle validation · UE 5.8 pinned

Phases
P0 · Foundations100%
P1 · Data liberation (client extraction)60%
P2 · World assembly0%
P3–P5 · Character / Systems / Online0%
Milestones
  • M0One extracted prop renders in a glTF viewer (10 do — 2026-08-29)
  • M2Full Slums district streamed at 60fps
  • M3Character creator with real clothing data (38,040 items)
  • M4Packaged build walkable start-to-finish
  • M5Two clients meet on UE5 dedicated server (VPS)
  • M6Combat vertical slice from original ability data
Inputs held
  • Plain-text packmap manifest: 119,485 entries across 217 .pkb archives (5.8 GB)
  • 1,736 community-converted FBX models — a correctness oracle for our parsers
  • 2,863,040 placed world objects (3 districts, validated by live server)
  • 9,973 abilities · 44,406 object defs · combat formulas in server source

BLOCKERS

OWNER ACTION Router port-forwards

TCP 11000, TCP 10000, UDP 10000 → the game host. Gates external players only; everything else proceeds.

OPEN QUESTION UE5 editor GPU

VPS is GPU-less (Hyper-V). Editor runs on dev machine; DDA passthrough possible if host gains a GPU.

AGENT DISPATCH LOG

  • re-01.mga format cracked; 10 props → .glb, 9/10 oracle match
  • slicer-01pkb_slicer.py built; WAV validation 6/6, oracle pairs staged
  • conv-01CONVENTIONS.md + CATALOG-SCHEMA.md written
  • wksp-01Extraction workspaces up on dev + VPS
  • survey-01cortana-python surveyed: sector files only, no geometry code
  • survey-02Rajkosto+Lithtech tooling: dead links, but FBX oracle found
  • invent-01Client inventoried: 217 .pkb + plain-text manifest
  • ops-01DB backups + log rotation scheduled on VPS
  • docs-01Governance docs drafted + committed
  • secur-01SQL parameterized + admin gate, deployed
  • acct-01AccountTool built, RSA selftest passing
  • commis-01Server commissioned as WinSW service
  • provis-01VPS provisioned: .NET 8, MariaDB, firewall
  • audit-01Linux portability audit → docs/LINUX-PORT-NOTES.md

NEXT UP

  • MXO-UE5 · P1.txa → PNG texture converter, then the asset catalog builder
  • MXO-UE5 · P1Finish .prop (SIMP) linkage — embedded SMSH geometry already decoded
  • MXO-HD · ATwo-player visibility test (first since 2009-era code) once ports open
  • MXO-HD · AUptime monitoring: service-down + port-unreachable alerts
  • MXO-HD · BMob combat fix: mobs never attack back (CombatFormulas.cs)