# Roadmap OpenRA3 is a very large undertaking. This roadmap is deliberately honest about scope: reconstructing a 2008 RTS engine from a decompiler plus a related open engine is a multi-year, multi-person effort. The milestones below are ordered so that each one produces something that builds and runs. ## Done - [x] **v0.0.1 — skeleton + minimal skirmish.** C++26 modules, GCC 16, CMake/Ninja, Docker `dev`/`deploy`, GitLab CI. Reads `BIG4`/RefPack data from a local install, recovers map start waypoints, and runs a deterministic headless two-player skirmish to a decision. ## Next - [ ] **v0.1.0 — complete map parsing.** Parse `MPPositionList` for maps that do not use `Player_N_Start` waypoints; recover map dimensions, terrain heightmap and placement grid; place real starting structures/units. - [ ] **v0.2.0 — data & file formats.** Parse compiled gameplay assets (`GameObject`, `WeaponTemplate`, `ArmorTemplate`, `LocomotorTemplate`) so units use the real balance numbers instead of OpenRA3's stand-ins. - [ ] **v0.3.0 — deterministic simulation.** Real update modules, locomotor movement, weapons/damage/armour resolution, build queues and the tech tree, pathfinding and shroud. - [ ] **v0.4.0 — AI.** Skirmish AI: build states, team composition, attack waves (the reference tree's `AI*` modules). - [ ] **v0.5.0 — renderer.** A W3D/D3D9 (or portable Vulkan/OpenGL) client backend implementing `ra3::client::display`, plus input. - [ ] **v0.6.0 — content.** Load real maps, units, powers and strings; play a skirmish end-to-end with a UI. ## Cross-cutting tracks - **RE depth** — keep recovering retail layouts (see [`REVERSE_ENGINEERING.md`](REVERSE_ENGINEERING.md)); every structure gets an address citation and a test. - **Determinism & replay** — the logic random stream and frame ordering must be reproducible; replay format and a golden-replay test suite. - **Offline only** — no online mode. Multiplayer, if pursued, is LAN lockstep on the message stream, never an online service.