DAI 3.0 · COMPLETE GAME TRACK

AutoCraft MineShaft — Build the Complete Dungeon RPG

Build a complete data-only procedural dungeon campaign with a personal home, ten-floor progression, generated rooms, encounters, extraction and upgrade-safe recovery.

Build from scratchTest in MinecraftMultiplayer-safe by designDAI 3.0

Build philosophy

This track is not a miniature demo. Follow the milestones in order and keep the build playable after every milestone. Do not proceed when the current test gate fails.

Rule: physical world state + authoritative server state must agree. Every long transition needs a safe checkpoint and every release needs a local migration path.

Suggested working tree

Keep responsibilities separated from the beginning. This mirrors the real project namespace closely enough that later features do not collapse into one giant tick file.

data/dai_auto_rpg/
├─ dai_experiences/
├─ dai_worldgen/
├─ dai_title_screens/
├─ function/build/
├─ function/room/
├─ function/floor/
├─ function/encounter/
├─ function/player/
├─ function/inventory/
├─ function/migrate/
├─ logics/definitions/
└─ reactions/

Full build walkthrough

  1. Milestone 0 — Data-only experience shellCreate dai_auto_rpg/dai_experiences, dai_worldgen, title screen and load/tick functions. Spawn into one safe temporary room before generating anything else.
  2. Milestone 1 — Personal HomeBuild the permanent Home room and store owner/player state. Add survival mode at Home and a clear dungeon-entry interaction.
  3. Milestone 2 — Floor state machineCreate explicit floor, room, encounter and run-state scores. Document every legal transition: Home → Floor 1 → … → Floor 10 → Home.
  4. Milestone 3 — Room contractGive each room bounds, anchor, entrances/exits and a server placement function. A room must be valid by itself before it joins the generator.
  5. Milestone 4 — Deterministic generationSelect the next room from seeded/stateful logic, validate clear volume, place it, then register the connection. Never mark the room generated before physical placement succeeds.
  6. Milestone 5 — EncountersSpawn enemies after room completion, track only encounter-owned entities, unlock the exit when the encounter is truly clear.
  7. Milestone 6 — Loot and floor rewardsAdd deterministic reward tables and a floor-clear trophy/memento. Rewards happen once, server-side.
  8. Milestone 7 — Safety Rope / extractionImplement the real return item: use in dungeon → validate state → return to personal Home → survival mode → preserve run/floor state according to your design.
  9. Milestone 8 — Ten-floor campaignAdd difficulty/resource/room-pool changes by floor. The player should feel a campaign curve, not ten copies of Floor 1.
  10. Milestone 9 — Death and void recoveryRecord safe Home and current-room checkpoints. Death/void should recover locally without resetting the whole experience.
  11. Milestone 10 — Room integrity + migrationsVersion rooms and add local repair functions. An update repairs a broken doorway/room in place instead of regenerating the mine.
  12. Milestone 11 — MultiplayerEach player owns a Home/run state. Shared party play must explicitly choose whose run/instance owns generated room state.
  13. Milestone 12 — PerformanceThrottle HUD and recognition, build rooms in bounded batches and never force-load the entire future dungeon.
  14. Milestone 13 — Polish passAdd clear navigation language, floor intro/clear presentation, consistent sound cues and readable objective feedback without requiring a resource pack.
  15. Ship itFresh playthrough + death + rope + Floor 10 + save/reload + old-save migration + two-player test must all pass.

Release gate

AreaRequired proof
Fresh startNo commands needed; player reaches first objective safely.
Core loopComplete one full gameplay loop and receive a meaningful progression reward.
FailureDeath, void/water, disconnect and invalid input recover without corrupting progression.
PersistenceSave/reload returns to the correct physical location and phase.
MultiplayerTwo players at different stages do not share private state accidentally.
UpgradePrevious-version save migrates locally without a forced reset.
PerformanceNo giant synchronous build/scanning loop is required every tick.
PresentationHUD/models/FX communicate real state and never hide broken mechanics.