73 lines
3.7 KiB
Markdown
73 lines
3.7 KiB
Markdown
# Codebase Readiness Review
|
|
|
|
Date: 2026-05-19
|
|
|
|
Scope: source code, build scripts, verification scripts, config files, and the
|
|
roadmap after completion of `0.1.R`.
|
|
|
|
## 0.1 Completion Check
|
|
|
|
All `0.1.A` through `0.1.R` 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.
|
|
|
|
## Cleanup Findings
|
|
|
|
- `AgrarianEditorAutomationLibrary.cpp` is 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.
|
|
|
|
## Low-Risk Cleanup Applied
|
|
|
|
- Removed duplicate `SavingAndQuit` branch logic from the MVP frontend continue
|
|
flow. Behavior is unchanged, but the control path is now easier to read.
|
|
|
|
## 0.2 Engineering Priorities
|
|
|
|
- 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.
|