The plan has 14 phases. Cards (tasks.json, 261 of them) are what the local model runs; manual steps are for you (the model cannot install Unreal, click in the editor or compile). Each phase ends with a check you do before starting the next, because a 14B model writes C++ that needs a compile-and-fix pass.
| Step | What | Who | Done when |
|---|---|---|---|
| M0 | Install Unreal Engine 5.6 (Epic launcher), Visual Studio 2022 with "Game development with C++". Create a C++ project EmbersOfOlympus (Blank, C++, no starter content, no raytracing). Copy Source/EmbersOfOlympusTests skeleton and enable plugins: Enhanced Input, Common UI, Niagara, Python Editor Script Plugin, Editor Scripting Utilities, Automation Test Framework. | you | the empty project builds and opens |
| M0b | Add the module boilerplate (EmbersOfOlympus.Build.cs with Core, CoreUObject, Engine, InputCore, EnhancedInput, UMG, Slate, SlateCore, CommonUI, AIModule, NavigationSystem, GameplayTasks, Json, JsonUtilities, Niagara; EmbersOfOlympus.h declaring LogEmbers and the UEmbersUnits constants) | you, from templates/ | builds |
| P01 | Core, Stats, Localisation: pure logic and data types | model, 14 cards | compiles; the P12 tests for Core/Stats/Localization pass |
| P02 | Combat core: health, damage formula, status effects, targeting | model, 17 cards | compiles; Combat tests pass |
| P03 | Items, inventory, loot | model, 28 cards | compiles; Items/Inventory/Loot tests pass |
| Milestone A | Logic core in Unreal: everything that needs no level, and its ported tests green | Automation RunTests EmbersOfOlympus. passes | |
| P04 | Player character, input, third-person camera | model, 15 cards | you can run around a flat test map and the camera behaves like Unity's (drag to look, scroll to zoom, spring arm) |
| P05 | Skills and the three classes (Hoplite, Huntress, Oracle) | model, 28 cards | skills cast, cool down and deal damage on test dummies |
| P06 | Enemies: brain, spawner, elites, rewards | model, 14 cards | the four Act 1 enemy types fight and drop loot on the test map |
| Milestone B | Combat sandbox: a test map where a class fights enemies and loot drops | ||
| P07 | Bosses: Polydegmon phases, telegraphs, adds, the Pull | model, 8 cards | the fairness contract holds (every lethal hit telegraphed, no one-shot) |
| P08 | Quests, dialogue, save | model, 21 cards | a save written and loaded; Chapter 1 quest chain advances from events |
| P09 | World: interactables, waypoints, portals, shrines, gates, travel | model, 25 cards | a travel between two test maps keeps state |
| P10 | Audio | model, 7 cards | sounds play by id |
| Milestone C | Systems complete, no art: all gameplay in Unreal on grey-box maps | ||
| D1 | Data import: run tools/import_data.py inside the editor (task P13-001 writes it) to turn export/data/**.json into data assets | model writes it, you run it | 372 data assets exist and the P01 to P09 classes load them |
| L1 | Levels: import the five scene exports (terrain RAW, object list) and rebuild each zone as an Unreal map (task P13-010 to P13-014) | model writes, you run | Eleusis, Zone A, Zone B, the boss arena open and match the Unity layout |
| A1 | Art: batch import of FBX/PNG/audio (task P13-020), master materials (P13-021), characters and animation retarget (P13-022) | you with the scripts | zones look like the Unity build |
| P11 | UI: one UMG widget class per Unity window | model, 30 cards, then you lay out in the editor | HUD, inventory, skill tree, map, dialogue work with a mouse |
| P12 | Port the 48 Unity test files to Unreal automation tests | model, 48 cards | all green (they exist from P01, run them as you go) |
| Milestone D | Playable parity: Chapter 1 to 5 playable in Unreal | ||
| P13 | Polish and the loose ends (see 03-data-and-levels.md cards), lighting (Lumen), post-processing, Niagara effects, performance | you + model | 60 fps on the target PC |
| P14 | Packaging: Windows build, a smoke test of the whole act, cleanup | you | a build that plays |
The loop for every phase (so a 14B model gets C++ that compiles)
python tools/run_plan.py --ue <project> --only P03(the model writes the files).- Build in Visual Studio or
Build.bat EmbersOfOlympusEditor Win64 Development ... -logand save the output to a file. python tools/fix_build.py --ue <project> --log <build.log>(groups the compiler errors by file and asks the model to fix each file; repeat until the build is clean, usually 2 to 4 rounds).- Run the ported tests for that phase in the editor (Session Frontend, Automation tab) or
UnrealEditor-Cmd.exe <project> -ExecCmds="Automation RunTests EmbersOfOlympus; Quit" -unattended -nullrhi. - Commit to git (
git add Source Config; git commit). Only then the next phase.
Rough effort (so you know what to expect)
- The runner: about 261 cards at 1 to 4 minutes each on a 14B model (about 50 tokens a second): roughly 6 to 12 hours of model time in total for the first pass, run overnight in phase-sized batches.
- Compile-and-fix: this is the real cost. Expect 3 to 6 rounds per phase and a few files per phase that the model cannot fix: you (or Claude) fix those by hand. Budget a few days of your own time for P05, P07 and P11, the largest and trickiest.
- Everything that is not code (levels, art, UMG layout, lighting) is editor work for you, with scripts the model writes.