5.8 KiB
5.8 KiB
Codebase Readiness Review
Date: 2026-05-21
Scope: source code, build scripts, verification scripts, config files, and the
roadmap after completion of 0.1.S and migration to the Ubuntu Unreal build
VM.
2026-05-21 Restart Audit Summary
- Active game checkout is clean on
mainat/home/nathan/UnrealProjects/AgrarianGame. - Active remote is self-hosted Gitea:
http://192.168.5.21:3000/nathan/agrarian-game.git. - Repository currently tracks 723 files, including 300 Git LFS assets.
git lfs fsckpasses.- Ignored Unreal-generated folders exist locally from verification builds:
Binaries/,Intermediate/,Saved/, andDerivedDataCache/. - Those generated folders are ignored by
.gitignoreand are not part of the repository state. - Unreal Engine
5.7.4-releaseis built from source at/opt/UnrealEngine-5.7. AgrarianGameEditor Linux Developmentbuilds successfully on the Ubuntu VM; the latest incremental check reportedTarget is up to dateandResult: Succeeded.- Headless project load through the Linux source-built editor succeeds in
NullRHImode with0 error(s). - The old roadmap project-location block was stale and has been reset to the Ubuntu Unreal VM plus Gitea workflow.
- The next coding phase should begin with exactly
0.2.0 Investor Visual Credibility Baseline, then move to0.2.A Land And Claimingafter the investor-facing world no longer reads as placeholder-heavy.
0.1 Completion Check
All 0.1.A through 0.1.S roadmap checkboxes are complete. The remaining
unchecked roadmap items before Version 0.2 are North Star and philosophy
statements, not incomplete 0.1 implementation tasks.
Current Strengths
- Core gameplay systems are separated into recognizable Unreal classes: character, controller, game state, survival, inventory, crafting, building, persistence, weather, resource nodes, wildlife, shelter, campfire, water, UI, and automation.
- Server-authoritative paths are already present for core multiplayer actions such as crafting, item use/drop/splitting, travel, save/load, respawn, fire, resource depletion, wildlife state, world actors, and weather state.
- Persistence has a central subsystem and explicit world actor/resource/player capture paths, which is the right base for 0.2 homesteading.
- The project now has broad verifier coverage for roadmap promises and MVP guardrails. This is useful for preventing accidental regression while the team moves into larger systems.
- The Windows build pipeline, package script, visual QA gate, and Linux server target are established enough to keep milestone work shippable.
- The Ubuntu source-built Unreal lane now gives Codex a headless, local-disk development path that is better suited to automated C++ work than the old mapped-drive Windows workflow.
Cleanup Findings
AgrarianEditorAutomationLibrary.cppis doing too much. It contains map import, gameplay smoke tests, persistence tests, and setup helpers in one large file. It should be split by responsibility before 0.2 adds claiming, farming, storage, and household tests.- The MVP frontend is still implemented as runtime-created widget trees. This has been effective for fast iteration, but 0.2 should move toward reusable UMG widgets, shared styling, and a cleaner input/navigation model.
- Placeholder/proxy meshes are intentionally still present for resources, shelters, campfires, water, wildlife, and characters. 0.2 should replace the highest-impact placeholders with durable realistic assets while preserving data-driven class behavior.
- Several systems use hard-coded Ground Zero, MVP, and automation constants. These are acceptable for 0.1 but should move toward data assets, config, or tile metadata as 0.2 introduces claims, crops, animals, storage, and homestead state.
- Admin/dev console commands currently share runtime controller paths. Before broader testing, privileged commands need a clearer authority, role, and audit boundary so tester tools do not become gameplay exploits.
- Verifier scripts are useful but numerous. 0.2 should add a grouped verifier runner so milestone verification is one command with explicit categories.
- Some status docs predate the automated setup passes and should be treated as historical unless their claims are repeated in the main roadmap or this readiness review.
ripgrepis not installed on the Ubuntu Unreal VM. This is not blocking, but adding it would make future audits and code search faster.
Low-Risk Cleanup Applied
- Removed duplicate
SavingAndQuitbranch logic from the MVP frontend continue flow. Behavior is unchanged, but the control path is now easier to read.
0.2 Engineering Priorities
- Start with
0.2.0 Investor Visual Credibility Baseline: terrain material, grasses/shrubs/trees, water, character bodies/clothing, resource objects, fire/smoke, shelter pieces, and wildlife, in that order. - Then finish
0.2.A Land And Claimingbefore moving to farming, domestication, storage, or economy work. - Keep land claims, farming, storage, household tasks, and future economy state server-authoritative from the first implementation pass.
- Add schema/version fields when introducing new persistent records.
- Use data assets for claim rules, crop definitions, animal definitions, storage container definitions, and early profession/knowledge topics.
- Create focused automation helpers by domain instead of expanding the current monolithic editor automation file.
- Replace placeholder visuals in the order investors and testers notice them: terrain material, grasses/shrubs/trees, water, character bodies/clothing, resource objects, fire/smoke, shelter pieces, and wildlife.
- Keep ray tracing optional. The default non-ray-traced path must remain the baseline for demo readability and remote testing.