# Agrarian Development Roadmap

This roadmap converts the Agrarian master vision into a practical, trackable development plan. It is intentionally broad and granular so the project can grow from a small playable Unreal prototype into a long-term persistent civilization platform without losing the original direction.

## Project North Star

Agrarian is a persistent generational civilization simulator where players rebuild humanity through survival, stewardship, family, labor, trade, governance, and technological progress.

The guiding question is:

> What survives after you are gone?

Core commitments:

- [ ] Civilization is built, not spawned.
- [ ] Legacy matters more than levels.
- [ ] History is never erased.
- [ ] The frontier always exists somewhere.
- [ ] Knowledge is the true progression system.
- [ ] AGR has both in-game and real-world community value.
- [ ] No pay-to-win mechanics.
- [ ] No seasonal wipes.
- [ ] No loot boxes.
- [ ] No fragmented DLC model.
- [ ] Build the smallest strong survival foundation first.
- [ ] Keep every system compatible with long-term persistence and generations.
- [ ] Make family and community characters feel like living participants, not static quest NPCs.
- [ ] Keep NPC/community intelligence proprietary-first and server-authoritative; avoid external AI dependencies for core behavior or private world state.
- [ ] Build toward an Earth-scale world made from real-world terrain tiles.
- [ ] Keep travel paced by believable real-world movement, vehicles, terrain, and character condition.
- [ ] Treat terrain, bathymetry, biomes, resources, rivers, and mountains as data-driven long-term infrastructure, not one-off maps.
- [ ] Keep base world time grounded; the world should progress without feeling artificially sped up.
- [ ] Make player skill, tools, infrastructure, cooperation, and knowledge improve efficiency, yield, reliability, quality, and capacity rather than breaking natural biological time.
- [ ] Treat learning as a core play loop: knowledge unlocks understanding, practice builds competence, and infrastructure makes advanced work possible.
- [ ] Use real-world learning checks carefully; they should teach and confirm understanding without turning the game into mandatory homework.
- [ ] Let players choose depth: basic survival should be approachable, while advanced civilization, nuclear power, spaceflight, and colonization should reward real study, planning, and mastery.
- [ ] Avoid trivia-only gates; complex achievements require the right knowledge, repeated hands-on experience, tools, safety systems, materials, teams, and institutions.

## Time And Progression Philosophy

Baseline rule:

- [x] Use `4 real hours = 1 in-game day` as the MVP gameplay calendar target, while day/night presentation mimics the represented Earth region's local solar/weather context.

Design intent:

- [ ] The world does not get faster; the player gets better.
- [ ] Human-scale actions such as walking, gathering, chopping, fishing, hunting, hauling, crafting interaction time, and combat stay close to believable real-time pacing.
- [ ] Biological and seasonal systems such as crop growth, livestock maturity, pregnancy, spoilage, disease, healing, soil recovery, tree growth, and seasons use the Agrarian calendar.
- [ ] Skills should mostly improve efficiency, yield, quality, reliability, survival odds, and working capacity.
- [ ] Skills should rarely shorten natural biological time directly.
- [ ] Domesticated crops and livestock can require meaningful calendar time because hunting, gathering, fishing, scavenging, and primitive crafting remain available.
- [ ] Early survival should feel hands-on, difficult, inefficient, and somewhat fragile.
- [ ] Starting over should hurt because players lose knowledge, tools, stored food, seeds, livestock, shelter, infrastructure, claims, and local advantage.
- [ ] Progression should move players from hand-gathered survival to tools, storage, domestication, farms, logistics, labor systems, trade, and industrial-scale production.

## Current Known Project Location

Primary development repository:

```text
git@github.com:pacificao/AgrarianGameBuild.git
```

Primary local Codex/server checkout:

```text
/mnt/projects/AgrarianGameBulid
```

Ubuntu-Codex host:

```text
192.168.5.10
```

Unraid project share:

```text
\\DevBox\projects\AgrarianGameBulid
```

Windows build VM:

```text
Windows-Builder / 192.168.5.12
```

Codex headless editor build command:

```text
UNRAID_PASSWORD=<set in environment> /home/nathan/bin/agrarian-build-editor
```

Important tracked project root files/folders:

- [x] `AgrarianGame.uproject`
- [x] `Source/`
- [x] `Content/`
- [x] `Config/`
- [x] `Scripts/`
- [x] `.gitignore`
- [x] `.gitattributes`
- [x] Roadmap and vision docs

Important generated/local-only files/folders:

- [x] `Binaries/` ignored
- [x] `Intermediate/` ignored
- [x] `Saved/` ignored
- [x] `DerivedDataCache/` ignored
- [x] `.vs/` ignored
- [x] `*.sln` ignored and regenerated locally

## Roadmap Status Legend

Use these markers as the project progresses:

- `[ ]` Not started
- `[~]` In progress
- `[x]` Complete
- `[!]` Blocked or needs decision
- `[?]` Needs design decision

---

# Milestone Flow And Current Focus

Roadmap order is now:

1. Current milestone status and decision log.
2. Version 0.01 foundation and guardrails.
3. Version 0.1 foundational survival MVP.
4. Later version tracks for gameplay, civilization, technical, release, and community work.
5. Calendar, MVP definition of done, and earliest next actions.

Roadmap headings now use release-style milestone numbers. Subsections use lettered
labels such as `0.1.A`, `0.1.B`, and `0.1.C` so they do not look like
separate versions.

## Active Milestone - Version 0.01 Foundation Baseline

Status: completed.

Purpose: establish the project in GitHub, prove Windows builds from a clean
checkout, and create the first C++ gameplay foundation for survival, inventory,
crafting, building, persistence, admin testing, wildlife, and early terrain
pipeline planning.

Major version 0.01 work already completed:

- [x] Created GitHub repository `pacificao/AgrarianGameBuild`.
- [x] Imported the Unreal project into Git with Git LFS.
- [x] Added Unreal-safe `.gitignore` and `.gitattributes`.
- [x] Added Windows build and cleanup helper scripts.
- [x] Removed stale `VisualStudioTools` plugin reference.
- [x] Confirmed Windows build succeeds through `Scripts/BuildEditor-Windows.bat`.
- [x] Added replicated survival, inventory, interaction, crafting, building, persistence, admin/dev command, wildlife, time, and weather foundations.
- [x] Added item definition and recipe data asset classes.
- [x] Created first gameplay item and recipe assets.
- [x] Created first resource, campfire, primitive shelter, wildlife, foliage, stone, and freshwater Blueprints.
- [x] Built `AgrarianGameEditor Win64 Development` successfully on Windows-Builder.
- [x] Added Codex headless Windows build and Unreal Python automation lanes.
- [x] Confirmed the project loads through Unreal Editor command mode and the default test map passes map check.
- [x] Added `IA_Interact`, bound it to keyboard/gamepad, and assigned it to the character Blueprint.
- [x] Added smoke/automation coverage for gathering, crafting, placement, persistence, wildlife harvest, foliage, resources, and freshwater placement.
- [x] Selected Ground Zero MVP terrain tile and added the first tile registry schema.
- [x] Prototyped and imported real elevation data for the Ground Zero tile.
- [x] Verified the Ground Zero terrain test map is centered and spans 1 km x 1 km in Unreal.
- [x] Set the packaged investor demo default map to Ground Zero.
- [x] Added Agrarian Studio splash, startup movie, demo notice, motto, version, and copyright language.
- [x] Built and smoke-tested a Windows Development packaged demo.

Remaining version 0.01 cleanup before moving deeper into new gameplay:

- [x] Decide whether to keep current Unreal template variants or remove unused starter variants.
- [x] Decide whether to create/use a long-lived `dev` branch. Decision: do not use one yet; use `main` plus short-lived task branches until team size or release channels require a staging branch.
- [x] Finish branch naming conventions.
- [x] Finish commit message conventions.
- [x] Define GitHub/LFS free-tier storage guardrails.
- [x] Define backup expectations for NAS and repository.
- [x] Implement Linastorage incremental project backup job.
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
- [x] Create repeatable dedicated server build instructions.
- [x] Finish required plugin documentation.
- [x] Confirm the project opens cleanly from a fresh checkout, not just the current working share.
- [x] Organize `Content/Agrarian/` folders and move starter/prototype assets into clearly named locations.
- [x] Launch near-term MVP map-tile serving cloud VM.
- [x] Define MVP day/night length, survival pressure target, success loop, failure conditions, and closed-test readiness criteria.

# Version 0.01 - Project Foundation And Guardrails

Goal: Prepare the project so all future development is controlled, recoverable, documented, and aligned with the long-term vision.

## 0.01.A Repository And Source Control

- [x] Decide where the Unreal project repository will live.
- [x] Create or confirm GitHub repository for the Unreal project.
- [x] Decide whether large assets use Git LFS.
- [x] Add Git LFS for `.uasset`, `.umap`, large media, and binary assets if using Git.
- [x] Create `.gitignore` for Unreal Engine.
- [x] Ensure `Binaries/`, `Intermediate/`, `Saved/`, and `DerivedDataCache/` are excluded unless intentionally needed.
- [x] Commit clean baseline project.
- [x] Create `dev` branch if we want staging before main. Decision: do not create a long-lived `dev` branch yet.
- [x] Define branch naming conventions.
- [x] Define commit message conventions.
- [x] Define GitHub/LFS free-tier storage guardrails.
- [x] Define backup expectations for NAS and repo.
- [x] Confirm this roadmap file is committed or otherwise backed up.

## 0.01.B Engine And Tooling Decisions

- [x] Confirm Unreal Engine version.
- [x] Decide Blueprint-first, C++-first, or hybrid approach.
- [x] Decide whether Gameplay Ability System is needed now or later. Decision: defer GAS until after the version 0.1 MVP survival foundation; keep current explicit replicated components for survival, inventory, crafting, interaction, movement, time, weather, resources, and building. Revisit when skills, combat, injuries, medicine, equipment effects, professions, and long-term status modifiers create enough repeated ability/effect logic to justify GAS.
- [x] Decide networking model for MVP.
- [x] Decide dedicated server target platform.
- [x] Decide local development platforms.
- [x] Decide build machine strategy.
- [x] Create repeatable local build instructions.
- [x] Create repeatable packaged build instructions.
- [x] Create repeatable dedicated server build instructions.
- [x] Document required plugins.
- [x] Disable unneeded plugins.
- [x] Confirm project compiles from a clean checkout.
- [x] Confirm project opens from a clean checkout.

Current tooling decisions:

- Unreal Engine version: `5.7`.
- Development approach: hybrid C++ foundation with Blueprint/content assembly in the editor.
- Gameplay Ability System: deferred until after version 0.1. Current MVP gameplay remains in explicit replicated components, with a revisit planned when ability/effect complexity grows.
- Source control and daily coding: Ubuntu-Codex working against the Unraid `projects` share.
- Editor/build host: Windows-Builder VM with GPU passthrough.
- Headless build path for Codex: Unraid QEMU guest agent into Windows-Builder.
- Preferred interactive editor/gameplay connection: Parsec or similar real-GPU remote desktop, not RDP.
- Dedicated server target: Linux for multiplayer hosting.
- Windows compiler used by Unreal 5.7: VS 2022 Build Tools MSVC `14.44.35207`.
- Packaged Windows demo wrapper: `Scripts/PackageWindowsDevelopment.bat`.
- Current investor demo starts on the Ground Zero terrain map: `/Game/Agrarian/Maps/L_GroundZeroTerrain_Test`.
- Rendering baseline: the project remains DX12-first for future Unreal 5
  features, while packaged investor builds include a Windows compatibility
  override and launchers so demo machines can start reliably with DX11 if DX12
  startup fails.
- Investor-demo release rule: whenever all tracked roadmap items for a version
  milestone are complete, including minor versions like `.01` or `.6` and major
  versions like `1`, build and smoke-test a fresh Windows packaged executable
  for investor/demo review.

## 0.01.C Design Documentation

- [x] Create game design document.
- [x] Create technical design document.
- [x] Create multiplayer/networking design document.
- [x] Create persistence design document.
- [x] Create Earth-scale terrain/tile streaming design document.
- [x] Create tile registry/database design document.
- [x] Create real-world terrain source data evaluation document.
- [x] Create economy and AGR design document.
- [x] Create art direction document.
- [x] Create UX/HUD direction document.
- [x] Create content naming conventions.
- [x] Create folder conventions for Unreal assets.
- [x] Create coding standards.
- [x] Create Blueprint standards if using Blueprints.
- [x] Create data asset standards.
- [x] Create save/persistence standards.

## 0.01.D Project Structure

- [x] Organize `Content/Agrarian/` root folder.
- [x] Create folders for Characters.
- [x] Create folders for Environment.
- [x] Create folders for Items.
- [x] Create folders for UI.
- [x] Create folders for Systems.
- [x] Create folders for Maps.
- [x] Create folders for Materials.
- [x] Create folders for Audio.
- [x] Create folders for DataAssets.
- [x] Create folders for Prototypes.
- [x] Create folders for Developer-only test assets.
- [x] Create naming convention for assets.
- [x] Remove unused Combat, Platforming, and SideScrolling starter variant content.
- [x] Move any starter content into clear prototype folders. Decision: close the version 0.01 structure item by retaining the narrow `ThirdPerson` and `LevelPrototyping` dependencies in place until replacement work lands in version 0.1. Moving those assets now would break active player Blueprints, package maps, setup scripts, and automation. Remaining cleanup is tracked as explicit version 0.1 replacement work.

## 0.01.E MVP Definition

- [x] Define what qualifies as the 6-month MVP.
- [x] Define what will not be included in MVP.
- [x] Define target player count for MVP test.
- [x] Select the real-world "Ground Zero" 1 km x 1 km MVP tile.
- [x] Define target map size for MVP around the Ground Zero tile.
- [x] Define MVP biome.
- [x] Define acceptable real terrain accuracy for MVP.
- [x] Define acceptable real bathymetry/ocean-depth handling for MVP if Ground Zero is coastal.
- [x] Define acceptable first-pass biome/resource accuracy for MVP.
- [x] Define MVP day/night length.
- [x] Define survival pressure target.
- [x] Define basic success loop.
- [x] Define failure conditions.
- [x] Define first playable internal milestone.
- [x] Define closed test readiness criteria.

## 0.01.F Operational Infrastructure

- [x] Stand up Unraid `DevBox` as shared project storage.
- [x] Create and expose the `projects` SMB share.
- [x] Add LAN name resolution for `DevBox`.
- [x] Mount `\\DevBox\projects` on Ubuntu-Codex at `/mnt/projects`.
- [x] Clone `pacificao/AgrarianGameBuild` to `/mnt/projects/AgrarianGameBulid`.
- [x] Configure GitHub SSH access on Ubuntu-Codex for clone, pull, and push.
- [x] Set up Windows-Builder as the Unreal/Visual Studio build VM.
- [x] Install Unreal Engine 5.7 on Windows-Builder.
- [x] Install Visual Studio 2026 for interactive development tools.
- [x] Install VS 2022 Build Tools for Unreal 5.7 compiler compatibility.
- [x] Confirm Codex can launch Windows headless build commands without RDP.
- [x] Confirm headless editor target build succeeds.
- [x] Set up Parsec or equivalent real-GPU remote access for occasional Codex visual inspection. Sunshine is installed on Windows-Builder, paired with the GTX 1660 SUPER and a virtual 1920x1080 display for Moonlight-based LAN inspection; documented in `Docs/Ops/WindowsBuilderGpuRemoteAccess.md`.
- [x] Stabilize Windows-Builder network/RDP behavior under GPU passthrough. Confirmed fixed bridged VirtIO NIC on `br0` with MAC `52:54:00:17:ec:5d`, set Windows network profile to Private, made `TermService` automatic, confirmed RDP firewall/listener access, disabled sleep/hibernate, and documented recovery checks in `Docs/Ops/WindowsBuilderNetworkRdpStability.md`.
- [x] Decide and document VM snapshot cadence before major engine/tool changes.
- [x] Define Unraid share backup policy.
- [x] Implement Linastorage incremental project backup job with deleted-file retention.
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
- [x] Add recurring restore-test log for project and VM backups. Added `Docs/Ops/BackupRestoreTestLog.md`, linked it from the backup runbooks, and recorded initial blocked baseline entries for the project restic repository and VM snapshot directory so the first successful tests can be appended after snapshots are available.
- [x] Define GitHub branch protection and review rules. Documented the current free-tier/private-repo limitation, main-branch policy, PR review expectations, required validation, and future protected-main settings in `Docs/Ops/GitHubBranchProtectionAndReviewRules.md`; added `.github/PULL_REQUEST_TEMPLATE.md` for repeatable review checks.
- [x] Add a build log retention policy. Documented generated log locations, default retention windows, preserve-before-pruning rules, cadence, and dry-run/apply cleanup flow in `Docs/Ops/BuildLogRetentionPolicy.md`; added `Scripts/prune_build_logs.sh`.
- [x] Add a simple operational runbook for rebooting/recovering Windows-Builder, Ubuntu-Codex, and DevBox. Added `Docs/Ops/DevelopmentInfrastructureRecoveryRunbook.md` with triage checks, safe reboot order, Windows-Builder recovery, Ubuntu-Codex recovery, DevBox/SMB recovery, and post-recovery validation.

## 0.01.G Earth-Scale Terrain Architecture

Long-term goal: Agrarian can eventually expand toward an Earth-scale world made
from real terrain and ocean data. The intended unit is a 1 km x 1 km tile. At
full Earth scale this implies roughly 510-520 million possible tiles, added over
many years, streamed from servers, cached locally, scrubbed when unused, and
redownloaded when a player returns to a region.

- [x] Define canonical tile coordinate system for 1 km x 1 km world tiles.
- [x] Decide how latitude/longitude maps to Unreal coordinates and World Partition cells.
- [x] Decide how to handle projection distortion, poles, and dateline crossing.
- [x] Define authoritative tile manifest schema.
- [x] Define tile status states: unknown, queued, source-data-found, generated, validated, packaged, published, deprecated.
- [x] Define tile adjacency and stitching rules.
- [x] Define tile versioning rules so terrain can improve without corrupting player state.
- [x] Define server-side tile delivery protocol.
- [x] Launch a near-term MVP tile-serving VM on Ubuntu or another Linux distro.
- [x] Add repeatable static Ground Zero tile-delivery package and Ubuntu nginx bootstrap scripts.
- [x] Publish a tiny Ground Zero tile manifest and package from the tile server.
- [x] Prove client/server tile lookup, download, local cache, and redownload flow with the Ground Zero tile and immediate-neighbor metadata.
- [x] Add tile-serving server cost controls and shutdown/runbook notes so MVP testing stays free or near-free.
- [x] Move the MVP tile server into a dedicated `Agrarian-TileServer` VM on Unraid.
- [x] Decide whether public testing uses the LAN-hosted `Agrarian-TileServer` VM or an external cloud host.
- [x] Define client local tile cache layout.
- [x] Define local cache retention policy for old or unused tiles.
- [x] Define local cache redownload/revalidation behavior.
- [x] Define minimum metadata per tile: coordinates, biome, elevation range, water coverage, source datasets, generation version, neighbors, and publish status.
- [x] Evaluate real terrain/elevation data sources.
- [x] Evaluate bathymetry/ocean-depth data sources.
- [x] Evaluate river, lake, coastline, road, and land-cover data sources.
- [x] Define automated terrain import pipeline for a single 1 km tile.
- [x] Define automated biome and natural resource inference pipeline.
- [x] Define QA checks for terrain seams, water edges, slope extremes, and missing source data.
- [x] Build a small tile-tracking database prototype before scaling beyond MVP.
- [x] Build an MVP tile registry table for the Ground Zero tile and immediate neighbors.
- [x] Keep World Partition compatibility as a hard requirement for all terrain decisions.

# Version 0.1 - Foundational Survival MVP

Goal: Build a small playable multiplayer prototype that proves survival, weather, inventory, gathering, crafting, shelter, and basic persistence can work together.

Target deliverable: A small group can join a server, spawn into one biome, gather resources, survive weather, craft primitive tools, build simple shelter, manage hunger/thirst/injury, and return later to find basic world state preserved.

## 0.1.A Core Player Foundation

- [x] Create base player character class.
- [x] Create player controller.
- [x] Create camera setup.
- [x] Decide first-person, third-person, or hybrid camera. Decision: hybrid camera with third person as default and optional first-person toggle.
- [x] Implement first/third-person camera toggle.
- [x] Implement movement.
- [x] Implement sprinting.
- [x] Define real-world baseline walking speed. Decision: baseline adult walking speed is `1.4 m/s` (`140 Unreal units/s`), with MVP tuning allowance up to about `1.6 m/s` for brisk walking. Movement speed does not scale with the `4 real hours = 1 in-game day` calendar.
- [x] Define real-world baseline running speed. Decision: sustainable adult running target is `3.0 m/s` (`300 Unreal units/s`); MVP sprint is a short burst at `5.5 m/s` (`550 Unreal units/s`) with stamina limits. Movement speed does not scale with the calendar.
- [x] Connect movement speed to age, condition, strength, endurance, hunger, thirst, injury, carried weight, and terrain. Implemented with live survival/inventory modifiers plus replicated age, condition, strength, endurance, and terrain hooks.
- [x] Implement crouching and prone movement stances. Decision: `C` toggles crouch at `55%` movement speed and `Z` toggles prone at `25%` movement speed. Gamepad mappings are Right Shoulder for crouch and Left Shoulder for prone. Sprint is disabled while crouched or prone.
- [x] Implement jumping if needed.
- [x] Implement interaction trace.
- [x] Implement interact prompt. Implemented as a local trace-backed HUD prompt using each interactable's `GetInteractionText`, rendered as `[E] <action>` through the Agrarian HUD.
- [x] Implement basic animation blueprint. Verified `BP_AgrarianPlayerCharacter` uses `SKM_Quinn_Simple` with `/Game/Characters/Mannequins/Anims/Unarmed/ABP_Unarmed` for first-pass idle, locomotion, jump, fall, and landing presentation.
- [x] Implement placeholder character mesh.
- [x] Replace `ThirdPerson` template player Blueprint/game mode paths with Agrarian-native player, controller, and game mode assets once the MVP character selection flow is ready. Added `BP_AgrarianPlayerCharacter`, `BP_AgrarianPlayerController`, and `BP_AgrarianGameMode`; updated default game mode, packaging, automation, and docs to use the Agrarian-owned paths.
- [x] Add replication for player movement and core state. Explicitly enabled replicated character movement, replicated sprint/prone intent, replicated age/condition/strength/endurance/terrain movement state, OnRep speed refreshes, and server-authoritative stance/sprint/terrain update paths.
- [x] Add developer debug overlay for player status. Expanded `AgrarianDebugHUD` to show authority/local-control state, location, horizontal speed, movement mode, stance, sprint state, camera mode, movement multiplier, carry weight, age, condition, strength, endurance, and terrain movement modifier.

## 0.1.B Character Stats

- [x] Create stat component.
- [x] Add health.
- [x] Add stamina.
- [x] Add hunger.
- [x] Add thirst.
- [x] Add body temperature.
- [x] Add exhaustion. Added replicated `Exhaustion` to the survival snapshot, low-stamina exhaustion gain, gradual recovery when fed/hydrated/warm, sprint-related exhaustion gain, movement/sprint penalties at high exhaustion, debug HUD display, admin survival output, and admin heal recovery.
- [x] Add injury state.
- [x] Reserve long-term care history fields for nutrition, illness, injury, sleep, shelter, stress, workload, and treatment quality. Added replicated/save-ready `FAgrarianCareHistorySnapshot`, clamping, debug HUD visibility, save-game field reservation, and persistence documentation.
- [x] Add infection or sickness placeholder. Added replicated `SicknessSeverity`, server-authoritative add/reduce hooks, sickness recovery/damage rates, exhaustion and care-history illness burden effects, movement penalty, debug HUD/admin output, admin heal recovery, persistence documentation, and verification coverage.
- [x] Add stat regeneration rules.
- [x] Add stat decay rules.
- [x] Add stat replication.
- [x] Add stat save/load support. `SaveCurrentWorld` now captures live Agrarian player transform, survival snapshot, care history snapshot, and inventory; load commands restore matching player stats/care history/inventory through `RestorePlayers` before restoring world actors.
- [x] Add debug commands for modifying stats.
- [x] Add HUD display for critical stats. Added an always-on compact survival status panel for health, stamina, food, water, temperature, exhaustion, injury, and sickness, with warning/critical coloring separate from the developer debug overlay.

## 0.1.C Time, Weather, And Environment Pressure

- [x] Create world time system.
- [x] Add day/night cycle.
- [x] Add configurable time scale.
- [x] Set default server time scale to `4 real hours = 1 in-game day`.
- [x] Add real local time-zone and sunrise/sunset lookup for Ground Zero by latitude/longitude. Added tile-aware solar metadata to `AAgrarianGameState`, Ground Zero Pacifica defaults, local sunrise/sunset/solar-noon/day-length approximation, replicated solar state, `IsNight` based on active tile solar bounds, and a repeatable registry-driven solar metadata generator that skips placeholder/unknown tiles.
- [x] Add Agrarian calendar conversion helpers for days, seasons, crop cycles, livestock maturity, spoilage, and long-running tasks. Added replicated year/day and absolute-day helpers, season/day-of-season lookup, `4 real hours = 1 in-game day` conversion helpers, long-task progress calculation, active tile growing-zone profile, crop maturity fit checks against frost-free/growing-season windows, and a repeatable growing-zone metadata generator that skips placeholder/unknown tiles.
- [x] Add temperature curve by time of day. Added replicated regional daily low/high temperatures, a sunrise-to-afternoon warming curve, overnight cooling, observed regional temperature blending for future real-weather adapters, weather modifiers, and deterministic fallback behavior when no provider data is available.
- [x] Add simple weather states.
- [x] Add clear weather.
- [x] Add rain.
- [x] Add cold/wind state.
- [x] Add storm placeholder.
- [x] Add weather transition rules.
- [x] Add weather replication.
- [x] Add real-world weather provider adapter for Ground Zero by latitude/longitude. Added a tile-driven Open-Meteo adapter subsystem that can request weather for any active tile by center latitude/longitude, map provider weather codes into Agrarian weather states, apply current temperature and daily low/high to `AAgrarianGameState`, and generate a source-backed tile weather manifest so future real tiles become weather-eligible automatically.
- [x] Use Open-Meteo as the first global MVP weather source. Added `Data/Weather/open_meteo_mvp_source.json` as the provider contract, documented the global tile lookup rule, and added `Scripts/verify_open_meteo_mvp_source.py` to validate the static contract plus live Open-Meteo responses for every source-backed tile in the generated weather manifest.
- [x] Add NOAA/NWS fallback or enrichment for US tiles where useful. Added a US/NWS-eligible coordinate check, NOAA/NWS points and forecast-grid request hooks, fallback parsing for gridded temperature, precipitation probability, and wind speed, `Data/Weather/noaa_nws_us_fallback.json`, and live/static verification for source-backed US tiles.
- [x] Cache real-weather snapshots server-side so clients never call public weather APIs directly. Added provider/tile-keyed server cache entries with TTL, cache reuse before Open-Meteo or NOAA/NWS requests, cache clearing/debug helpers, and documentation that clients consume only replicated game-state weather and temperature.
- [x] Map real weather inputs into Agrarian weather states: temperature, precipitation, wind, cloud cover, humidity, pressure, visibility, and weather code. Added replicated `FAgrarianMappedWeatherInputs`, provider snapshot mapping, Open-Meteo visibility derivation, NOAA/NWS grid enrichment for humidity/sky cover/pressure/visibility, and game-state application that preserves raw mapped inputs alongside the collapsed Agrarian weather state.
- [x] Add deterministic fallback weather simulation when external weather data is unavailable. Added tile/day-seeded fallback snapshots for temperature, daily low/high, cloud cover, humidity, wind, pressure, precipitation, visibility, provider code, and mapped Agrarian state; fallback snapshots use the normal server cache and apply through the same mapped-weather path as live providers.
- [x] Store weather source, provider timestamp, tile coordinate, and applied in-game weather state for debugging and persistence. Added tile ID/coordinate fields to mapped weather inputs, a replicated `FAgrarianWeatherDebugSnapshot` on game state, provider snapshot mapping into the debug path, and save fields for mapped inputs plus applied weather debug state.
- [x] Add weather save/load support. Added `LoadCurrentWorld` as the unified persistence load path, restored weather/time before players and world actors, updated the admin load command to use the combined path, and extended the persistence smoke test to prove provider-backed weather metadata survives save/load.
- [x] Connect weather to body temperature.
- [x] Connect shelter to weather protection. Survival now calculates the best overlapping shelter protection volume, replicates current weather protection, reduces ambient exposure and cold damage by shelter coverage, trends care-history shelter quality toward active protection, and shows shelter protection on the dev HUD.
- [x] Add first-pass sky and lighting. Added `AAgrarianSkyLightingController` with movable sun, skylight, and fog components driven by replicated time, local sunrise/sunset, weather state, and provider cloud cover; updated the Ground Zero setup script to place the controller and remove legacy static lighting actors.
- [x] Add audio cues for weather. Added `AAgrarianWeatherAudioController` with ambient, rain, wind, and storm audio components, assignable loop sound slots, weather/wind/night-driven volume fades, and Ground Zero map setup placement so placeholder or final loops can be assigned without changing gameplay code.

## 0.1.D Single Biome MVP Map

- [x] Choose Ground Zero real-world 1 km x 1 km MVP tile.
- [x] Choose MVP biome based on Ground Zero location.
- [x] Link Ground Zero tile coordinates to real-world weather lookup coordinates. Added explicit Ground Zero `weather_lookup_metadata` with tile-center latitude `37.5925`, longitude `-122.4995`, Open-Meteo primary routing, NOAA/NWS fallback eligibility, manifest generation support, registry/schema documentation, and a verifier so future source-backed tiles use declared lookup metadata instead of one-off hard-coded coordinates.
- [~] Create playable test map.
- [x] Add terrain base from real elevation data.
- [x] Add first-pass water depth/shoreline handling if applicable.
- [x] Add first-pass hill, mountain, river, stream, lake, and coastline handling if present in Ground Zero.
- [x] Add source metadata record for the MVP tile.
- [x] Add generated tile metadata record for the MVP tile.
- [x] Verify terrain scale is 1 km x 1 km in Unreal.
- [x] Verify terrain tile origin and centered Unreal bounds for the Ground Zero test map.
- [x] Verify neighboring tile edge coordinates against the registry before multi-tile stitching.
- [x] Add foliage pass.
- [~] Add resource nodes.
- [x] Add biome-appropriate natural resources based on Ground Zero.
- [x] Add water source.
- [x] Replace grey-box environment presentation with an MVP natural environment pass: terrain material, grass, shrubs, bushes, trees, water-source visuals, and clearer Ground Zero biome dressing. Added repeatable Ground Zero environment material generation, applied terrain/foliage/resource/water materials in the map setup, regenerated the demo map, documented the pass, and added verification for material assets plus map assignments.
- [x] Add first-pass environment asset variation so trees, bushes, grass, resource nodes, and water do not read as repeated placeholders. Added repeatable labeled variation actors for tree canopies/trunks, rounded bushes, grass mats, rock slabs, and a freshwater surface using multiple prototype mesh silhouettes, unique scales, rotations, and Ground Zero material families; extended the natural-environment verifier to require variation coverage.
- [x] Replace `LevelPrototyping` cube/cylinder mesh dependencies in Agrarian setup scripts and prototype Blueprints with Agrarian-native placeholder environment meshes. Added repeatable Agrarian-native placeholder mesh assets under `/Game/Agrarian/Environment/PlaceholderMeshes`, updated playable Blueprint and Ground Zero setup scripts to use those native paths, regenerated affected Blueprints/map content, and added verification that Blueprint, foliage, and variation meshes no longer point at template mesh paths.
- [x] Add weather exposure zones if needed. Added native `AAgrarianWeatherExposureZone` volumes with exposure multipliers and temperature offsets, wired survival to apply the strongest overlapping zone after shelter protection, exposed current zone effects on the dev HUD, placed three Ground Zero zones for ridge, coastal-wind, and drainage cooling cases, and added verification for zone placement plus docs.
- [x] Add landmark or ruin placeholder. Added a repeatable five-piece Ground Zero ruin cluster using Agrarian-native placeholder stone meshes for a visible MVP point of interest, regenerated the map, documented the pass, and added verification for actor count, native mesh paths, stone material assignment, distinct placement, and roadmap/doc coverage.
- [x] Add spawn area with validation that the player spawns above sea level, above terrain by a safe offset, away from water, away from steep slopes, away from dense resource clusters, and with a known safe fallback coordinate. Added safe spawn candidate/fallback selection to the Ground Zero setup script, validates elevation, slope, above-terrain Z offset, freshwater spacing, and resource-cluster spacing before map save, places `AGR_DemoPlayerStart` at the known safe fallback coordinate, and added verification so future terrain/resource/water changes cannot silently invalidate the spawn area.
- [x] Add performance profiling markers. Added `STATGROUP_Agrarian` cycle stats
  and Unreal Insights CPU scopes for authoritative game-state time/weather
  ticking, survival ticking, sky-light refresh, weather-audio refresh, foliage
  instance mutation, and weather-provider request/parse/fallback work.
- [x] Add navigation support for wildlife. Wildlife now auto-possesses an AI
  controller, samples reachable wander points, projects chase/flee targets onto
  navmesh, requests server-authoritative AI movement when nav data exists, and
  retains direct movement fallback for early maps without nav data.
- [x] Add map boundaries or soft limits. Added native
  `AAgrarianMapBoundaryVolume`, placed `AGR_GroundZeroMapBoundary` around the
  loaded 1 km Ground Zero tile, clamps server-authoritative player pawns back
  inside the tile with padding, and exposes a warning-zone hook for later UI.
- [x] Add developer travel command. Added server-authoritative
  `AgrarianTravel X Y Z` and `AgrarianTravelHome` exec commands on the Agrarian
  player controller, teleports the controlled pawn to explicit coordinates or
  the validated Ground Zero safe-spawn fallback, stops active movement after
  travel, and verifies the command wiring.

## 0.1.E Inventory System

- [x] Design inventory data model. Added `Docs/InventoryDataModel.md` to lock
  the MVP contract for stable item definitions, runtime/save-game item stacks,
  server-authoritative replicated inventory components, persistence, carry
  weight, and the pickup/drop/split/use/equipment/UI operations that will build
  on the existing code.
- [x] Create item definition data asset.
- [x] Create item stack structure.
- [x] Create inventory component.
- [x] Add item pickup. Added native `AAgrarianItemPickup` interactable world
  actor with definition-backed or inline stack data, server-authoritative
  inventory add, prompt text, and destroy-on-success behavior so failed pickups
  remain available.
- [x] Add item drop. Added server-authoritative `AgrarianDropItem ItemId
  Quantity`, inventory stack extraction that preserves dropped stack metadata,
  pickup spawning in front of the player, and restore-on-spawn-failure handling.
- [x] Add stack splitting. Added server-authoritative
  `SplitStackByIndex`/`AgrarianSplitStack StackIndex SplitQuantity` support that
  validates source slot, quantity, and free slot capacity, preserves stack
  metadata, creates a separate stack slot, and avoids immediate re-merge.
- [x] Add item use. Added server-authoritative
  `AgrarianUseItem ItemId Quantity` support for MVP consumables, with food
  hunger recovery, raw meat hunger recovery plus sickness risk, bandage injury
  treatment, and restore-on-unsupported-item behavior.
- [x] Add equipment slots if needed. Decision complete for MVP: dedicated
  equipment slots are deferred because current tools do not yet drive equipped
  state; tools remain inventory items until active hand, worn, backpack, armor,
  weapon, durability, animation, or mesh-attachment rules require replicated and
  persisted slot state.
- [x] Add weight or carry capacity placeholder. Locked MVP carry capacity to
  stack `UnitWeight`, inventory `GetTotalWeight`, character comfort/heavy carry
  thresholds, strength-scaled movement penalties, and a debug HUD carried
  weight readout. Later volume, backpack, awkward-object, and hard overload
  rules should extend this hook.
- [x] Add inventory UI. Added a compact MVP HUD inventory panel that is separate
  from the full developer HUD and shows occupied slots, total carried weight,
  and visible item stacks from the replicated inventory component.
- [x] Add replication for inventory changes.
- [x] Add persistence for inventory. Player save data stores
  `FAgrarianSavedPlayer::Inventory`, capture writes the inventory component's
  stack array, restore now goes through `RestoreSavedItems`, and inventory UI
  listeners are notified after load.
- [x] Add debug item spawn command.

## 0.1.F Gathering And Resources

- [x] Create resource node base class.
- [x] Add wood resource.
- [x] Add stone resource. Stone is defined as `DA_Item_Stone`, exposed through
  `BP_StoneResourceNode`, placed in the Ground Zero resource pass, and covered
  by focused stone-resource verification.
- [x] Add fiber resource.
- [x] Add edible plant resource. Added `BP_EdiblePlantResourceNode` as a
  gatherable food-yield node, placed deterministic Ground Zero forage nodes, and
  extended resource verification to cover edible plant harvest sources.
- [x] Add water gathering interaction. Confirmed `BP_FreshWaterSource` uses
  the shared interactable path, restores thirst through the replicated survival
  component on server authority, is placed in Ground Zero, and is covered by
  water-source and interaction verifiers.
- [x] Add resource depletion.
- [x] Add respawn rules for MVP. Added configurable resource-node respawn
  fields and timer logic: renewable surface resources respawn after MVP delays,
  while stone remains nonrenewable for the first survival loop.
- [x] Add tool requirement rules. Added inventory-based resource tool rules:
  current MVP nodes preserve bare-hand gathering, while a basic tool in
  inventory improves yields for wood, fiber, and stone.
- [x] Add bare-hand gathering fallback.
- [x] Add resource node persistence. Added save records for existing map/tile
  resource nodes keyed by stable node IDs, persistence capture/restore paths,
  and Ground Zero placement support so only loaded tiles with actual resource
  nodes contribute depletion state.
- [x] Add replicated gathering feedback.

## 0.1.G Primitive Crafting

- [x] Design recipe data model.
- [x] Create recipe data assets.
- [x] Implement recipe validation.
- [x] Implement crafting queue or instant crafting.
- [x] Add primitive tool recipe.
- [x] Add campfire recipe.
- [x] Add shelter recipe.
- [x] Add recipes or gather paths for primitive shelter structure parts.
- [x] Add simple container recipe. Added `simple_container` item and recipe
  data assets, using wood, fiber, and hide as MVP ingredients for later
  placed-storage/container systems.
- [x] Add bandage or basic treatment recipe.
- [x] Add crafting UI. Added a compact crafting HUD panel that lists known MVP
  recipes, shows current ingredient counts, highlights craftable rows, and
  preloads the Agrarian player Blueprint with primitive recipe assets.
- [x] Add multiplayer authority checks.
- [x] Add crafting debug tools. Added `AgrarianCraftStatus` and
  `AgrarianCraft <RecipeId>` exec commands for listing known recipes,
  inspecting craftability, and triggering server-authoritative craft requests
  during smoke tests and demo rehearsal.

## 0.1.H Fire System

- [x] Create fire actor.
- [x] Add fuel amount.
- [x] Add ignition interaction.
- [x] Add extinguish logic. Added native campfire extinguish support that
  clears fuel, turns off replicated lit state, and reuses the fire visual
  update path used by natural fuel depletion.
- [x] Add warmth radius.
- [x] Add light source.
- [x] Add cooking placeholder if needed. Added replicated campfire cooking
  placeholder state, a native cookability check, and progress ratio helpers so
  later recipe UI and food systems have a stable hook.
- [x] Add smoke/visual effect placeholder. Added a native campfire smoke
  particle component placeholder that activates and hides with replicated fire
  state, leaving final visual assets assignable later.
- [x] Add replication.
- [x] Add persistence. Added campfire persistent actor support for transform,
  lit state, fuel seconds, and cooking placeholder progress using the shared
  world-actor persistence path.
- [x] Connect fire to body temperature.
- [x] Connect rain/weather to fire behavior. Campfires now read replicated
  game-state weather, burn fuel faster in rain and storms, and deterministically
  extinguish when wet weather pushes remaining fuel below the low-fuel threshold.

## 0.1.I Shelter Building

- [x] Decide MVP building style. MVP shelter building uses a crafted-kit style:
  players gather natural materials, craft primitive frame/wall/roof panel
  parts, combine them into one placeable primitive shelter, and place that
  shelter through the server-authoritative placement component. Fully modular
  wall-by-wall building stays deferred to `0.2.E Permanent Structures`.
- [x] Create build placement mode.
- [x] Add ghost preview. The building placement component now exposes preview
  validity/transform state and draws an assetless green/red wireframe ghost
  footprint at the snapped placement location for MVP development builds.
- [x] Add placement validation.
- [x] Add basic shelter piece.
- [x] Add wall piece if needed. For the kit-based MVP style, the wall piece is
  the craftable `primitive_wall_panel` inventory construction part consumed by
  the primitive shelter recipe; separately placeable modular walls remain
  deferred to `0.2.E Permanent Structures`.
- [x] Add roof piece if needed. For the kit-based MVP style, the roof piece is
  the craftable `primitive_roof_panel` inventory construction part consumed by
  the primitive shelter recipe; separately placeable modular roofs remain
  deferred to `0.2.E Permanent Structures`.
- [x] Add door/opening if needed. MVP primitive shelters use an open entrance
  with no interactive door; door actors, locks, permissions, and modular
  openings remain deferred to `0.2.E Permanent Structures`.
- [x] Add resource cost validation.
- [x] Add construction interaction.
- [x] Add shelter protection volume.
- [x] Add shelter persistence.
- [x] Add shelter replication.
- [x] Add deconstruction or damage placeholder. Primitive shelters now have
  replicated structure health, authority-only damage/repair/deconstruct hooks,
  TakeDamage integration, depletion destroy behavior, and save/load support for
  current/max structure health.

## 0.1.J Injury And Basic Survival Consequences

- [x] Add generic injury state.
- [x] Add bleeding placeholder. Survival now tracks replicated
  `BleedingSeverity`, applies lightweight health/exhaustion pressure while
  bleeding, adds bleeding from generic injuries, exposes add/reduce hooks, and
  shows bleeding in debug HUD and console survival output.
- [x] Add sprain or movement penalty placeholder. Survival now tracks replicated
  `SprainSeverity`, generic injuries can seed sprain severity, active sprains
  add light exhaustion pressure, movement speed includes an explicit sprain
  multiplier, and debug HUD/console output display sprain state.
- [x] Add cold exposure damage.
- [x] Add starvation damage.
- [x] Add dehydration damage.
- [x] Add treatment item. The existing craftable `bandage` medicine item is
  now the MVP treatment item: item use reduces injury, bleeding, and sprain
  severity with a small health bump, using the existing server-authoritative
  `AgrarianUseItem` path.
- [x] Add death state. Survival now has replicated `bIsDead` and
  `LastDeathReason` state, health depletion latches death, ordinary healing
  cannot revive a dead character, `Revive` provides an explicit respawn/admin
  hook, and debug HUD/console survival output show alive/dead state.
- [x] Add respawn rules for MVP. Added server-authoritative
  `AgrarianRespawn`, available only after death, that returns the character to
  the Ground Zero MVP spawn/home location, revives with partial health,
  stabilizes hunger/thirst/body temperature, clears acute injury conditions,
  and leaves family/inheritance respawn for later generational milestones.
- [x] Add corpse/backpack placeholder if needed. Decision: no physical
  corpse/backpack actor is needed for the 0.1.J MVP respawn loop because death
  inventory loss is not active yet. Future corpse/backpack recovery is reserved
  as a persistent, server-owned, interaction-gated death-recovery record once
  inventory loss and decay rules exist.
- [x] Add replicated death feedback. Survival now exposes
  `OnDeathStateChanged` for UI/audio/animation hooks when replicated
  alive/dead state or death reason changes, and the debug HUD shows the
  replicated death reason while dead.

## 0.1.K Wildlife Prototype

- [x] Choose MVP wildlife species.
- [x] Create wildlife base pawn.
- [x] Add simple AI wander.
- [x] Add flee behavior.
- [x] Add aggression behavior if needed.
- [x] Add health.
- [x] Add damage.
- [x] Add harvesting interaction.
- [x] Add meat/hide resources.
- [x] Add spawn manager. Added a replicated, server-authoritative wildlife
  spawn manager actor with configurable wildlife class, initial spawn count,
  max active population, spawn radius, respawn interval, and optional navigation
  projection for MVP wildlife population control.
- [x] Add replication.
- [x] Add performance limits. Wildlife now has MVP server-side performance
  throttling: nearby wildlife updates normally, far wildlife batches server
  thinking on a slower interval, dead wildlife stops ticking, and spawn-manager
  max active population remains the first population cap.

## 0.1.L Basic Multiplayer

- [x] Confirm listen server vs dedicated server for MVP. Decision: listen server is acceptable for quick internal testing, but dedicated server is the preferred closed-test target.
- [x] Create dedicated server build target if needed. Confirmed the
  `AgrarianGameServer` Linux server target and Windows cross-compile package
  script already exist, then added a reusable Ubuntu gameplay-server bootstrap
  script and standardized the MVP endpoint as `play.agrariangame.com` on
  `7777/udp`.
- [x] Add server travel flow. Added an allowlisted `AgrarianServerTravel
  GroundZero` admin/dev command that routes through server authority and travels
  to `/Game/Agrarian/Maps/L_GroundZeroTerrain_Test?listen` for repeatable MVP
  listen-server and dedicated-server tests.
- [x] Define server authority over streamed terrain tiles.
- [x] Define server response when a client requests a missing tile.
- [x] Add player join flow.
- [x] Add player spawn flow.
- [x] Add replicated player stats.
- [x] Add replicated inventory.
- [x] Add replicated world time.
- [x] Add replicated weather.
- [x] Add replicated resource nodes.
- [x] Add replicated build pieces.
- [x] Add network relevancy rules. Added explicit MVP net cull distances for
  pickups, resources, campfires, shelters, wildlife, water sources, weather
  exposure zones, and wildlife spawn managers, with the matching relevancy
  strategy documented for Ground Zero multiplayer tests.
- [x] Add basic latency testing. Added an MVP latency test plan with clean LAN,
  mild WAN, and rough WAN Unreal packet-simulation profiles plus a Windows
  helper script for the test console commands.
- [x] Add disconnect/reconnect handling. Added MVP player reconnect snapshots:
  logout saves transform, survival, care history, and inventory for the player,
  and restart/spawn restores the matching snapshot when the same player returns.

## 0.1.M Persistence MVP

- [x] Decide MVP persistence scope.
- [x] Decide what tile metadata is stored in save data vs external tile registry.
- [x] Save player identity. Player save records now keep a
  backwards-compatible `PlayerId` plus `FAgrarianSavedPlayerIdentity`, prefer a
  valid `APlayerState` network ID when available, and retain safe display/pawn
  metadata without storing credentials.
- [x] Save player stats. Player save records capture
  `FAgrarianSavedPlayer::Survival`, including health, stamina, exhaustion,
  hunger, thirst, body temperature, injury, bleeding, sprain, sickness, death
  state, and death reason, then restore through `ApplySavedState`.
- [x] Save long-term character care history placeholders without applying
  aging gameplay yet. Player saves now persist `FAgrarianSavedPlayer::CareHistory`
  for nutrition, illness, injury, sleep, shelter, stress, workload, and
  treatment quality placeholders, while aging/generational effects remain
  deferred.
- [x] Save player inventory. Player saves already persist
  `FAgrarianSavedPlayer::Inventory` from `UAgrarianInventoryComponent::Items`
  and restore through `RestoreSavedItems`, so inventory listeners and derived
  carry weight refresh after load.
- [x] Save placed structures.
- [x] Save resource depletion state if needed. Active loaded resource nodes
  persist stable `ResourceNodeId`, remaining harvest count, and MVP respawn
  flag through `FAgrarianSavedResourceNode`, then restore depletion to matching
  map-authored nodes on load.
- [x] Save world time. World saves persist `UAgrarianSaveGame::WorldHours`
  from `AAgrarianGameState::WorldHours` and restore it on server authority
  during world load.
- [x] Save weather seed/state. World saves persist fallback
  `UAgrarianSaveGame::Weather`, provider `WeatherInputs`, and `WeatherDebug`,
  then restore mapped provider inputs when present or the saved enum weather
  otherwise.
- [x] Save containers. The save schema now reserves
  `FAgrarianSavedContainer` records with stable container ID, type, transform,
  item stacks, and owner player ID; 0.1.M has no placed container actor yet, so
  the current craftable `simple_container` remains covered by player inventory
  persistence until placed containers arrive.
- [x] Add server-side save interval. `AAgrarianGameGameMode` now starts an
  authoritative repeating autosave timer from `ServerAutoSaveIntervalSeconds`
  and calls `SaveCurrentWorld`, with `0` disabling the MVP timer.
- [x] Add manual admin save command.
- [x] Add load-on-server-start. `AAgrarianGameGameMode` now registers MVP
  persistent actor classes and, when `bLoadWorldOnServerStart` is enabled,
  loads the current world on authoritative `BeginPlay` if a save exists.
- [x] Add initial tile registry persistence for Ground Zero. Saves now include
  `FAgrarianSavedTileRegistryState` with the active Ground Zero tile ID,
  registry path, schema version, generation version, and package version while
  keeping the authoritative registry in `Data/Tiles/ground_zero_tiles.json`.
- [x] Add backup-before-save option. `UAgrarianPersistenceSubsystem` now has
  `bBackupBeforeSave` enabled by default; before overwriting an existing slot,
  `WriteSave` copies the current `.sav` into `Saved/SaveGames/Backups` with a
  UTC timestamp.
- [x] Add recovery plan for corrupted save. Added
  `Docs/Ops/PersistenceSaveRecoveryPlan.md` covering suspect-save symptoms,
  backup restore steps, failed-backup fallback, and current MVP limitations.
- [x] Document persistence limitations. Added an MVP limitations section to
  `Docs/PersistenceDesignDocument.md` covering file-based saves, missing
  database/account binding, migration limits, corrupted-save validation,
  container actor capture, offline simulation, cross-server persistence,
  external backup replication, UI, and pre-MVP save compatibility.

## 0.1.N MVP UI And UX

- [x] Add main menu placeholder. Added native `UAgrarianMvpFrontendWidget` with a scalable painted main menu panel and local player-controller spawning so the MVP frontend has an owned placeholder instead of relying on template UI.
- [x] After splash/startup screens, land on an MVP character selection landing page. The local player controller now opens the MVP frontend on `CharacterSelection`, and the native frontend widget paints a scalable character-selection landing page before gameplay.
- [x] Let players choose a realistic young adult male or female character with average proportions for the MVP. Added a selectable MVP character archetype enum, visible selected state, keyboard selection, and `AgrarianSelectCharacter male|female` dev command while keeping both choices on the same MVP survival baseline until real character art arrives.
- [x] Add join server screen. Added a native `JoinServer` frontend screen showing the selected character and `play.agrariangame.com:7777`, with keyboard flow from character selection and a dev command to display the screen directly.
- [x] Add loading screen. Added a native `Loading` frontend screen with Ground Zero preparation copy, selected character/server context, a deterministic placeholder progress bar, and join-screen keyboard flow into loading.
- [x] Add HUD. Completed the MVP HUD pass with a separate `bShowMvpHudFrame` top status frame showing Ground Zero context, alive/dead state, health, food, water, and body temperature, while keeping the deeper developer overlay separately toggleable.
- [ ] Add inventory UI.
- [ ] Add crafting UI.
- [ ] Add interaction prompts.
- [ ] Add death/respawn UI.
- [ ] Add debug/dev menu.
- [ ] Add accessibility basics.
- [ ] Ensure UI scales on common resolutions.

## 0.1.O MVP Audio And Atmosphere

- [ ] Add ambient biome audio.
- [ ] Add footstep placeholders.
- [ ] Add gathering sounds.
- [ ] Add fire sounds.
- [ ] Add unattended and poorly maintained fire risk for campfires and other open-flame sources.
- [ ] Add grass and forest ignition checks from irresponsible fire placement, wind/weather, dry fuel, nearby vegetation, and burn duration.
- [ ] Add shelter/structure ignition risk when fires are placed too close to primitive shelters, wood piles, flammable crafting stations, or settlement objects.
- [ ] Add server-authoritative fire spread rules for grass, brush, trees, shelters, and other burnable actors, including fuel, distance, wind, weather, and suppression hooks.
- [ ] Add fire maintenance gameplay so watched, cleared, contained, or extinguished fires are safe, while neglected fires can become dangerous.
- [ ] Add fire suppression hooks for rain, water carrying, dirt/sand, cleared firebreaks, and future firefighting tools.
- [ ] Persist active grass, forest, and structure fires across save/load without corrupting world state.
- [ ] Add QA coverage for safe campfires, unsafe campfires, vegetation spread, shelter ignition, suppression, and save/load recovery.
- [ ] Add weather sounds.
- [ ] Add wildlife sounds.
- [ ] Add UI sounds.
- [ ] Add mix settings.
- [ ] Add volume sliders.

## 0.1.P MVP QA Gates

- [ ] Can launch packaged client.
- [ ] Can launch server.
- [ ] Can connect two clients.
- [ ] Can gather resources.
- [ ] Can craft a fire.
- [ ] Can craft a shelter.
- [ ] Can survive one full day/night cycle.
- [ ] Can die from survival pressure.
- [ ] Can reconnect and retain state.
- [ ] Can restart server and retain placed shelter.
- [ ] No critical log spam during 30-minute test.
- [ ] Server remains stable with target test player count.

## 0.1.Q Knowledge And Skill Foundation

- [ ] Define the MVP separation between knowledge, practical experience, physical stats, tools, and infrastructure.
- [ ] Add a first-pass skill taxonomy for survival, gathering, tool use, crafting, fire, shelter, navigation, first aid, food safety, and weather awareness.
- [ ] Define how knowledge affects survival actions: fewer mistakes, safer attempts, better yields, lower injury risk, and more reliable outcomes.
- [ ] Define how practical experience grows through use, repetition, mistakes, and recovery from failure.
- [ ] Add first contextual learning prompts for fire safety, potable water, exposure, shelter placement, injury care, and resource identification.
- [ ] Design optional knowledge checks that appear when relevant to the action instead of interrupting basic play.
- [ ] Add player-facing feedback that explains why an action failed or produced poor results.
- [ ] Define accessibility rules for the learning system: hints, retries, readable wording, no hard lockout from basic survival, and non-punitive practice paths.
- [ ] Define the first subject content format: topic, concepts, difficulty tier, prerequisite concepts, in-game effect, practice action, and source note.
- [ ] Add a small MVP question bank for elementary survival knowledge.
- [ ] Define when deeper questions should matter: quality improvements, safer work, complex crafting, teaching others, and advanced branches.
- [ ] Add design notes for avoiding exploit farming and rote memorization.
- [ ] Add persistence requirements for knowledge, skill experience, learned concepts, failed attempts, and tutorial state.
- [ ] Add multiplayer rules for teaching, observation, shared work, and group skill benefits.

---

# Version 0.2 - Persistent Homesteading

Goal: Transition from temporary survival into lasting settlement and land stewardship.

## 0.2.A Land And Claiming

- [ ] Design land claim philosophy.
- [ ] Define claim size limits.
- [ ] Define claim cost or effort.
- [ ] Implement claim marker.
- [ ] Implement claim ownership.
- [ ] Implement claim permissions.
- [ ] Add claim UI.
- [ ] Add claim persistence.
- [ ] Add claim conflict rules.
- [ ] Add abandoned claim decay rules.

## 0.2.B Farming

- [ ] Design soil model.
- [ ] Add basic soil quality.
- [ ] Add moisture.
- [ ] Add crop data assets.
- [ ] Add planting interaction.
- [ ] Add growth stages.
- [ ] Add watering or rainfall impact.
- [ ] Add harvest interaction.
- [ ] Add crop yield rules.
- [ ] Add crop failure rules.
- [ ] Add seed recovery.
- [ ] Add crop persistence.
- [ ] Add farming knowledge topics for soil texture, soil fertility, composting, crop rotation, planting depth, spacing, irrigation, frost risk, and harvest timing.
- [ ] Add seed selection and plant breeding foundation concepts.
- [ ] Add crop disease, pest pressure, and weed management knowledge hooks.
- [ ] Add weather and seasonal planning effects on planting and yield reliability.

## 0.2.C Domestication

- [ ] Choose first domestic animal.
- [ ] Add taming concept.
- [ ] Add feeding.
- [ ] Add containment.
- [ ] Add animal health.
- [ ] Add breeding placeholder.
- [ ] Add animal products.
- [ ] Add ownership.
- [ ] Add persistence.
- [ ] Add animal handling knowledge for approach, containment, stress, feeding, hydration, shelter, and humane care.
- [ ] Add livestock reproduction knowledge for breeding windows, gestation, offspring care, genetic traits, and recordkeeping.
- [ ] Add animal disease, sanitation, quarantine, parasite, and nutrition knowledge hooks.

## 0.2.D Storage And Preservation

- [ ] Add storage containers.
- [ ] Add container permissions.
- [ ] Add spoilage timer.
- [ ] Add preserved food item.
- [ ] Add drying/smoking/salting placeholder.
- [ ] Add storage persistence.
- [ ] Add storage UI.
- [ ] Add food preservation knowledge for drying, smoking, salting, fermenting, canning later, cold storage, spoilage, pests, and contamination risk.
- [ ] Add material storage knowledge for moisture, rot, rust, pests, fire risk, and inventory rotation.

## 0.2.E Permanent Structures

- [ ] Expand building pieces.
- [ ] Add foundation.
- [ ] Add walls.
- [ ] Add roof.
- [ ] Add door.
- [ ] Add basic furniture.
- [ ] Add structure health.
- [ ] Add repair.
- [ ] Add decay rules.
- [ ] Add permissions.
- [ ] Add persistence optimizations.

## 0.2.F Simple Economy

- [ ] Add barter container.
- [ ] Add simple trade UI.
- [ ] Add ownership transfer.
- [ ] Add local price notes if needed.
- [x] Add AGR placeholder integration planning.
- [ ] Add transaction logging.
- [ ] Add early business knowledge for bookkeeping, inventory, profit/loss, fair trade, basic credit, risk, and customer trust.
- [ ] Add simple workshop/business ownership rules for homestead-scale production.

## 0.2.G Homesteading Knowledge Progression

- [ ] Define early profession paths: farmer, herder, carpenter, mason, cook, medic, hunter, fisher, trapper, trader, and scout.
- [ ] Add learning-by-doing bonuses for routine homestead work without letting repetition replace core understanding.
- [ ] Add simple manuals, oral tips, and settlement notes as discoverable teaching objects.
- [ ] Add household teaching rules for passing practical knowledge to family or trusted settlement members.
- [ ] Define how poor knowledge creates believable outcomes: spoiled food, sick animals, failed crops, weak structures, wasted materials, and avoidable injury.
- [ ] Define how good knowledge improves resilience without making nature instant or effortless.

## 0.2.H Household Task And Helper Foundations

- [ ] Define the first household helper data model: identity, relationship to player, home location, needs, trust, simple role, allowed work radius, and safe storage access.
- [ ] Add task reservation records for gather, haul, store, cook, tend fire, repair, watch, and rest so future NPCs do useful work without duplicating player actions.
- [ ] Add safe-zone and danger-zone concepts for where family/helper characters may act without direct supervision.
- [ ] Add server-authoritative household task selection using utility scores for hunger, thirst, fatigue, weather, danger, available tools, local resources, and household priorities.
- [ ] Add simple helper work reports so players can see what was gathered, consumed, protected, repaired, or failed while they were away.
- [ ] Add guardrails so helpers cannot create resources from nothing, bypass crafting costs, ignore carry limits, or operate outside reachable storage and terrain.

---

# Version 0.3 - Social Civilization Systems

Goal: Let player communities form organically through trade, trust, conflict, law, and local coordination.

## 0.3.A Identity And Reputation

- [ ] Add player display identity.
- [ ] Add household/family name placeholder.
- [ ] Add reputation records.
- [ ] Add local reputation display.
- [ ] Add reputation event logging.
- [ ] Add positive reputation events.
- [ ] Add negative reputation events.
- [ ] Add reputation decay or locality rules.

## 0.3.B Trade And Contracts

- [ ] Design direct trade flow.
- [ ] Add secure trade window.
- [ ] Add barter offer records.
- [ ] Add basic contract data model.
- [ ] Add delivery contract.
- [ ] Add labor contract.
- [ ] Add rental contract placeholder.
- [ ] Add contract completion rules.
- [ ] Add dispute placeholder.

## 0.3.C Crime And Consequences

- [ ] Define theft rules.
- [ ] Define trespassing rules.
- [ ] Define property damage rules.
- [ ] Add crime event logs.
- [ ] Add witness/local knowledge concept.
- [ ] Add basic lock system.
- [ ] Add punishment placeholder.
- [ ] Add moderation/admin review tools.

## 0.3.D Local Governance

- [ ] Add group/settlement entity.
- [ ] Add membership.
- [ ] Add roles.
- [ ] Add permissions.
- [ ] Add voting placeholder.
- [ ] Add tax placeholder.
- [ ] Add shared storage.
- [ ] Add settlement notice board.

## 0.3.E Migration And Frontier

- [ ] Design migration pressure model.
- [ ] Add spawn region variation.
- [ ] Add new frontier spawn logic.
- [ ] Add abandoned settlement discovery.
- [ ] Add map hints for settlement density.
- [ ] Add travel risk/reward systems.

## 0.3.F Apprenticeships, Schools, And Local Expertise

- [ ] Add apprenticeship agreements between players, families, guilds, or settlements.
- [ ] Add mentor effectiveness based on knowledge depth, practical experience, communication skill, reputation, and available tools.
- [ ] Add local expert roles for healers, builders, farmers, smiths, navigators, teachers, and administrators.
- [ ] Add settlement knowledge records for who can teach which topics.
- [ ] Add skill reputation and proof-of-work records for contracts and leadership roles.
- [ ] Add basic literacy, numeracy, recordkeeping, and measurement knowledge as civilization multipliers.
- [ ] Add trade school and guild hall design concepts.
- [ ] Add rules for misinformation, poor teaching, outdated methods, and dangerous shortcuts.

## 0.3.G Community NPC Behavior Foundation

- [ ] Define community NPC archetypes for family members, settlers, apprentices, specialists, travelers, traders, guards, healers, teachers, and dependents.
- [ ] Add shared behavior inputs for physical needs, emotional state, social trust, fear, grief, loyalty, fatigue, skill confidence, danger, weather, hunger, and shelter quality.
- [ ] Add relationship-aware interactions between NPCs and players: greeting, helping, refusing, teaching, asking for aid, trading, warning, reporting danger, and seeking shelter.
- [ ] Add local memory records for important events: helped, harmed, rescued, taught, betrayed, fed, abandoned, injured, protected, or witnessed.
- [ ] Add community role assignment rules so NPCs choose useful work based on ability, need, reputation, household permission, tools, and settlement priorities.
- [ ] Add conflict and cooperation hooks so NPCs can avoid dangerous people, support trusted people, and report serious community problems without becoming omniscient.
- [ ] Add deterministic simulation tests for NPC task choice so behavior remains debuggable and fair before any advanced AI layer is considered.

---

# Version 0.4 - Generational Gameplay

Goal: Introduce mortality, inheritance, lineage, family knowledge, and the emotional heart of Agrarian.

## 0.4.A Aging And Lifespan

- [ ] Define time scale for aging.
- [ ] Add character age.
- [ ] Add age categories.
- [ ] Add stat changes by age.
- [ ] Add skill efficiency changes by age.
- [ ] Define lifetime care quality model for nutrition, hydration, injury recovery, illness, sleep, shelter, stress, workload, hygiene, and medical treatment.
- [ ] Track lifetime care quality history.
- [ ] Apply lifetime care quality to baseline health, stamina, strength, endurance, recovery rate, disease resistance, injury risk, and old-age decline.
- [ ] Add childhood/development care effects if descendants or children become playable.
- [ ] Add long-term consequences for repeated starvation, dehydration, untreated injury, sickness, exposure, exhaustion, and hard labor.
- [ ] Add long-term benefits for stable food, clean water, rest, shelter, medicine, lower stress, and safer work.
- [ ] Add mortality rules.
- [ ] Add death by old age.
- [ ] Add UI for age and legacy.

## 0.4.B Family And Relationships

- [ ] Add relationship model.
- [ ] Add household model.
- [ ] Add spouse/partner placeholder.
- [ ] Add children system design.
- [ ] Add NPC vs player descendant decision.
- [ ] Add family tree UI.
- [ ] Add family persistence.

## 0.4.C Knowledge Inheritance

- [ ] Define knowledge categories.
- [ ] Add knowledge acquisition.
- [ ] Add teaching interaction.
- [ ] Add apprenticeship.
- [ ] Add inherited knowledge rules.
- [ ] Add knowledge loss if lineage collapses.
- [ ] Add written records or books.
- [ ] Add library/archives concept.
- [ ] Define knowledge levels by subject: awareness, basic literacy, working competence, advanced practice, expert, master, and research frontier.
- [ ] Define knowledge proof types: contextual question checks, observed practice, completed projects, mentorship endorsements, written exams, and institutional certification.
- [ ] Define how knowledge affects unlocks, error rates, safety, quality, design options, diagnosis, planning, teaching, and research speed.
- [ ] Define how knowledge decay works when characters do not practice or preserve records.
- [ ] Add children and descendant learning model if childhood systems become playable.
- [ ] Add intergenerational teaching bonuses for stable families, apprenticeships, schools, libraries, and preserved notebooks.
- [ ] Add knowledge inheritance limits so descendants receive a head start, not a full replacement for study and practice.
- [ ] Add knowledge catastrophe rules for burned libraries, dead specialists, migration, war, famine, or settlement collapse.
- [ ] Add player-authored notes, manuals, diagrams, recipes, blueprints, and lesson plans.
- [ ] Add content review rules for real-world educational questions and source quality.
- [ ] Add difficulty tiers from elementary concepts through advanced professional and research-level material.
- [ ] Define how players can opt into deeper learning while casual survival players remain viable at lower technology levels.

## 0.4.D Inheritance

- [ ] Add estate model.
- [ ] Add property inheritance rules.
- [ ] Add item inheritance rules.
- [ ] Add claim inheritance.
- [ ] Add settlement role inheritance.
- [ ] Add will/testament placeholder.
- [ ] Add no-heir fallback rules.

## 0.4.E Character Visual Aging And Condition

- [ ] Define visual age stages for child, young adult, adult, mature adult, elder, and late elder if those stages are playable.
- [ ] Define skin aging rules: wrinkles, texture changes, sun/weather exposure, scars, illness marks, and complexion changes.
- [ ] Define hair aging rules: graying, thinning, facial hair changes, and style constraints by era/culture.
- [ ] Define body/posture aging rules: muscle mass, weight, gait, posture, frailty, and injury compensation.
- [ ] Define visual condition rules based on lifetime care quality, including hard living vs well-cared-for characters.
- [ ] Decide MetaHuman/material/mesh strategy for runtime or staged visual aging.
- [ ] Add character material parameters or morph targets for age and condition.
- [ ] Replicate character visual age and condition state.
- [ ] Persist character visual age and condition state.
- [ ] Add UI/profile presentation for age, condition, and visible legacy.

## 0.4.F Family Agency And Emotional Life

- [ ] Define family-member autonomy levels: dependent, helper, apprentice, adult contributor, elder advisor, and incapacitated.
- [ ] Add family daily rhythm rules for eating, sleeping, sheltering, learning, working, socializing, resting, and responding to danger.
- [ ] Add emotional state model for safety, grief, fear, attachment, resentment, pride, loneliness, confidence, and hope, driven by actual game events.
- [ ] Add family memory continuity across generations so children and descendants remember major household events, losses, teachers, migrations, disasters, and achievements.
- [ ] Add teach/learn interactions between player characters, family members, apprentices, and elders, including practical demonstration and oral instruction.
- [ ] Add household contribution rules for gathering food, carrying water, tending animals, repairing shelter, crafting simple goods, warning of danger, and helping vulnerable relatives.
- [ ] Add family-member refusal and stress behavior when workload, danger, hunger, neglect, grief, illness, or distrust makes a task unreasonable.
- [ ] Add family and relationship UI showing current needs, emotional state, recent memories, current role, useful skills, and recent contributions.
- [ ] Add persistence and replication for family agency, task state, memories, emotional state, relationships, and teaching history.

## 0.4.G Offline Character Stewardship

- [ ] Define logged-off player stewardship rules for a persistent real-time world.
- [ ] Let logged-off player characters contribute defensively and domestically from their last valid location, home, claim, or assigned settlement post without advancing exploration position.
- [ ] Allow limited offline actions such as watching a camp, helping defend a shelter, tending assigned fires, hauling nearby stored goods, basic repairs, and helping with routine household work.
- [ ] Prevent offline characters from discovering new map areas, learning new skills, completing major projects, making strategic choices, accepting risky travel, or gaining unfair progression.
- [ ] Add offline risk exposure so logged-off characters can still suffer from hunger, thirst, weather, fire, attack, neglect, disease, or unsafe orders if their household is poorly prepared.
- [ ] Add offline activity logs that explain what happened while the player was away, including work performed, supplies consumed, injuries, threats, and unresolved decisions.
- [ ] Add consent and safety settings for offline stewardship scope so players understand what their character may do while logged off.
- [ ] Add server reconciliation tests for disconnect, reconnect, server restart, and long absence cases.

---

# Version 0.5 - Governments And Civilization

Goal: Enable cities, citizenship, taxation, diplomacy, organized law, warfare, and territorial control.

## 0.5.A Settlements To Cities

- [ ] Add settlement progression metrics.
- [ ] Add population tracking.
- [ ] Add infrastructure tracking.
- [ ] Add settlement services.
- [ ] Add city designation.
- [ ] Add city management UI.

## 0.5.B Citizenship And Law

- [ ] Add citizenship model.
- [ ] Add legal code records.
- [ ] Add local laws.
- [ ] Add permissions by law.
- [ ] Add court/dispute placeholder.
- [ ] Add fines or penalties.

## 0.5.C Taxation And Public Works

- [ ] Add treasury model.
- [ ] Add tax rules.
- [ ] Add public storage.
- [ ] Add road funding.
- [ ] Add public building funding.
- [ ] Add treasury audit logs.

## 0.5.D Diplomacy

- [ ] Add settlement relations.
- [ ] Add alliances.
- [ ] Add trade agreements.
- [ ] Add non-aggression pacts.
- [ ] Add war declaration.
- [ ] Add treaty records.

## 0.5.E Warfare

- [ ] Define combat scale.
- [ ] Add weapon progression.
- [ ] Add armor progression.
- [ ] Add siege placeholder.
- [ ] Add territory conflict rules.
- [ ] Add war consequences.
- [ ] Add anti-griefing protections.

## 0.5.F Public Education, Professions, And Certification

- [ ] Add public schools, academies, guilds, universities, libraries, laboratories, hospitals, workshops, and proving grounds as settlement institutions.
- [ ] Add licensing/certification systems for high-risk roles such as doctor, engineer, pilot, heavy equipment operator, power operator, explosives handler, and public official.
- [ ] Add standardized curricula controlled by settlements or governments.
- [ ] Add professional ethics, malpractice, negligence, and public safety consequences.
- [ ] Add civil engineering knowledge for roads, bridges, water systems, sanitation, drainage, public buildings, and urban planning.
- [ ] Add administration knowledge for law, tax records, logistics, auditing, diplomacy, emergency management, and public works.
- [ ] Add political science and civic knowledge for constitutions, representation, elections, legitimacy, civil rights, bureaucracy, corruption control, and peaceful transfer of power.
- [ ] Add legal studies knowledge for property law, contracts, criminal law, courts, evidence, due process, appeals, and enforcement limits.
- [ ] Add economics knowledge for scarcity, labor, markets, money, credit, taxation, inflation, public goods, trade policy, and resource allocation.
- [ ] Add business administration knowledge for accounting, payroll, purchasing, contracts, operations, pricing, management, insurance, and risk controls.
- [ ] Add finance knowledge for banking, loans, collateral, investment, bonds, equity, reserves, audits, bankruptcy, and financial regulation.
- [ ] Add sociology and anthropology knowledge for culture, social trust, institutions, migration, inequality, conflict, education, and community resilience.
- [ ] Add ethics and philosophy knowledge for public risk, medical consent, animal welfare, war conduct, research limits, stewardship, and governance legitimacy.
- [ ] Add military training knowledge for tactics, logistics, fortification, command, communications, and rules of engagement.
- [ ] Add public research funding, grants, patents or open knowledge policies, and institutional prestige.

## 0.5.G Settlement Labor, Care, And Community Schedules

- [ ] Add settlement work boards for assigning recurring jobs to families, NPCs, apprentices, and logged-off player characters within explicit permissions.
- [ ] Add community schedules for planting, harvesting, cooking, watch duty, maintenance, schooling, medical care, public works, and emergency response.
- [ ] Add dependent-care systems for children, elders, injured characters, sick characters, and disabled characters.
- [ ] Add labor fairness and morale rules so communities that overwork or neglect people lose trust, productivity, and stability.
- [ ] Add player and NPC leadership tools for prioritizing work without micromanaging every individual.
- [ ] Add settlement contribution logs for food gathered, structures repaired, lessons taught, patients treated, threats reported, and resources consumed.
- [ ] Add public safety response hooks so NPCs can react to fire, attack, injury, starvation, exposure, theft, collapse, or severe weather.
- [ ] Add community AI profiling so large settlements can simulate many characters cheaply while keeping nearby characters fully realized.

---

# Version 0.6 - Dynamic Civilization Cycles

Goal: Keep the world alive for future generations through change, decay, scarcity, collapse, and renewal.

## 0.6.A Environmental Sustainability

- [ ] Add soil exhaustion.
- [ ] Add crop rotation benefits.
- [ ] Add deforestation tracking.
- [ ] Add wildlife population tracking.
- [ ] Add water stress.
- [ ] Add resource depletion.
- [ ] Add environmental recovery.

## 0.6.B Disease And Hardship

- [ ] Add disease model.
- [ ] Add spread rules.
- [ ] Add sanitation concept.
- [ ] Add medicine progression.
- [ ] Add famine conditions.
- [ ] Add disaster events.

## 0.6.C Infrastructure Decay

- [ ] Add road decay.
- [ ] Add building decay.
- [ ] Add bridge decay.
- [ ] Add maintenance actions.
- [ ] Add ruin state.
- [ ] Add rediscovery value for ruins.

## 0.6.D Collapse And Frontier Renewal

- [ ] Add settlement instability metrics.
- [ ] Add migration waves.
- [ ] Add abandoned settlement transformation.
- [ ] Add frontier emergence rules.
- [ ] Add new player frontier assignment.

## 0.6.E Medicine, Ecology, And Resilience Knowledge

- [ ] Add public health knowledge for sanitation, clean water, waste handling, quarantine, nutrition, vaccination if era-appropriate, and disease surveillance.
- [ ] Add medical science progression from first aid and herbal care through anatomy, physiology, pathology, clinical diagnosis, surgery support, pharmacology, epidemiology, mental health, rehabilitation, and hospital operations.
- [ ] Add nursing, emergency medicine, veterinary medicine, dentistry, maternal care, pediatrics, geriatrics, occupational health, and medical logistics knowledge.
- [ ] Add ecology knowledge for soil recovery, watershed health, forest management, habitat restoration, carrying capacity, and sustainable harvesting.
- [ ] Add disaster preparedness knowledge for fire, flood, drought, storm, famine, disease outbreak, infrastructure failure, and evacuation planning.
- [ ] Add failure analysis knowledge so settlements can diagnose why crops, animals, machines, structures, or public systems failed.
- [ ] Add archive recovery and rediscovery mechanics for collapsed settlements and ruins.
- [ ] Add resilience planning bonuses for settlements that preserve specialists, records, redundant systems, and training pipelines.

## 0.6.F NPC Hardship, Adaptation, And Recovery

- [ ] Add long-term stress and trauma responses for famine, violence, disease, death, abandonment, disaster, forced migration, and repeated unsafe work.
- [ ] Add recovery pathways through safety, food security, family care, medicine, rest, ritual, community trust, education, and meaningful work.
- [ ] Add crisis behavior such as fleeing, sheltering, hoarding, helping, freezing, panicking, bargaining, or seeking leadership based on personality, training, trust, and danger.
- [ ] Add community memory of major crises so future decisions, migration pressure, family stories, and institutional priorities reflect lived history.
- [ ] Add generational effects from hardship and stability without making characters deterministic or permanently ruined.
- [ ] Add social recovery systems for rebuilding trust after theft, neglect, violence, failed leadership, or preventable disaster.

---

# Version 0.7 - Earth-Scale Expansion

Goal: Expand from a small test world toward a huge, regionally diverse, persistent world that can eventually approach Earth scale through staged 1 km x 1 km real-terrain tiles.

## 0.7.A Terrain And World Partition

- [ ] Evaluate Unreal World Partition.
- [ ] Define real terrain generation pipeline.
- [ ] Define real bathymetry/ocean-depth generation pipeline.
- [ ] Define hand-authored vs procedural balance.
- [ ] Define 1 km tile package format.
- [ ] Define 1 km tile World Partition placement rules.
- [ ] Define tile edge stitching and seam repair pipeline.
- [ ] Define terrain vertical scale policy for mountains, hills, and ocean depth.
- [ ] Define river, lake, coastline, and wetland generation rules.
- [ ] Define missing/low-quality source data fallback rules.
- [ ] Add streaming tests.
- [~] Add server-delivered tile streaming prototype. Near-term MVP proof is tracked in version 0.01.G.
- [~] Add client local tile cache prototype. Near-term MVP proof is tracked in version 0.01.G.
- [ ] Add stale tile scrubber prototype.
- [ ] Add tile redownload and version update prototype.
- [ ] Add biome boundaries.
- [ ] Add region metadata.
- [ ] Add server scaling plan.

## 0.7.B Biome Diversity

- [ ] Derive biome candidates from real-world land-cover, climate, elevation, and water data.
- [ ] Add forest biome.
- [ ] Add plains biome.
- [ ] Add mountain biome.
- [ ] Add wetland biome.
- [ ] Add desert/dryland biome.
- [ ] Add cold biome.
- [ ] Add biome-specific resources.
- [ ] Map natural resources to likely real-world geology, flora, water, and climate.
- [ ] Add biome-specific survival pressure.

## 0.7.C Logistics And Transportation

- [ ] Keep walking and running speeds close to real-world human pace.
- [ ] Keep animal travel speeds close to real-world animal pace.
- [ ] Define terrain slope, vegetation, mud, snow, water, injury, fatigue, age, strength, endurance, hunger, thirst, and carried weight modifiers for travel speed.
- [ ] Add roads.
- [ ] Add carts.
- [ ] Add pack animals.
- [ ] Add horses.
- [ ] Add tractors.
- [ ] Add cars.
- [ ] Add boats.
- [ ] Add shipping routes.
- [ ] Add regional trade value.
- [ ] Add distance-based economy pressure.
- [ ] Add practical navigation knowledge for landmarks, maps, compass use, celestial navigation, terrain reading, river travel, sea travel, and weather routing.
- [ ] Add vehicle operation knowledge for carts, animal teams, bicycles if used, boats, cars, trucks, tractors, trains, aircraft, and heavy equipment.
- [ ] Add maintenance knowledge for wheels, axles, harnesses, engines, hulls, tires, fuel systems, batteries, brakes, and spare parts.

## 0.7.D Continental Economy

- [ ] Add regional scarcity.
- [ ] Add market hubs.
- [ ] Add transport contracts.
- [ ] Add tariffs or taxes.
- [ ] Add price history.
- [ ] Add economic dashboards.
- [ ] Add interregional and global trade knowledge for comparative advantage, shipping routes, ports, rail hubs, customs, tariffs, sanctions, trade agreements, currency exchange, and supply-chain disruption.
- [ ] Add commercial logistics knowledge for warehousing, freight forwarding, fleet management, cold chains, bulk commodities, manifests, insurance, and customs documents.
- [ ] Add business scaling rules for sole proprietors, partnerships, cooperatives, corporations, franchises, guild enterprises, and state-owned enterprises.
- [ ] Add market infrastructure for commodity exchanges, long-term contracts, futures/forward agreements if appropriate, credit risk, and price discovery.

## 0.7.E Tile Operations At Scale

- [ ] Define tile generation queue.
- [ ] Define tile publish queue.
- [ ] Define tile validation dashboard.
- [ ] Define operator tools for seeing generated, missing, stale, and failed tiles.
- [ ] Define player-demand driven tile prioritization.
- [ ] Define prefetch rules around active player regions.
- [ ] Define storage and CDN strategy for millions of generated tile packages.
- [ ] Define cost controls for serving and regenerating terrain content.
- [ ] Define long-term archival strategy for superseded tile versions.

## 0.7.F Earth-Scale Field Science And Resource Knowledge

- [ ] Add surveying and cartography knowledge for accurate coordinates, tile boundaries, elevation, slope, hydrology, and route planning.
- [ ] Add geology knowledge for likely mineral resources, soil parent material, rock types, groundwater, caves, hazards, and mining prospects.
- [ ] Add hydrology knowledge for rivers, wetlands, aquifers, floodplains, irrigation, erosion, and drinking water risk.
- [ ] Add climatology and meteorology knowledge for regional weather, seasons, wind, storms, drought, snowpack, and agricultural planning.
- [ ] Add botany, forestry, and ecology knowledge for biome-specific plants, timber, wild foods, medicinal plants, invasive pressure, and regeneration.
- [ ] Add zoology and wildlife management knowledge for animal behavior, migration, hunting pressure, domestication candidates, and ecosystem balance.
- [ ] Add GIS/data-literacy progression for interpreting real-world terrain, climate, land-cover, and resource datasets.
- [ ] Add in-game field notebooks and sample collection to connect player exploration with world knowledge.

---

# Version 0.8 - Industrial And Automation Era

Goal: Let player civilizations advance into mechanization, energy, automation, and large-scale production.

## 0.8.A Industrial Materials

- [ ] Add mining progression.
- [ ] Add ore processing.
- [ ] Add metallurgy.
- [ ] Add machine parts.
- [ ] Add fuel types.
- [ ] Add industrial storage.
- [ ] Add mining, geology, metallurgy, chemistry, ceramics, glass, concrete, polymers, and materials testing knowledge.
- [ ] Add iron and steel progression for charcoal iron, coke, blast furnaces, basic oxygen or electric arc steelmaking, alloying, heat treatment, rolling, casting, forging, and quality testing.
- [ ] Add industrial material standards for grades, tolerances, traceability, certification, failure reports, and safety-critical use.
- [ ] Add workplace safety knowledge for mines, furnaces, pressure vessels, chemicals, dust, noise, burns, crush risk, and confined spaces.

## 0.8.B Power Systems

- [ ] Add mechanical power.
- [ ] Add water power.
- [ ] Add steam power.
- [ ] Add electrical power.
- [ ] Add power grid rules.
- [ ] Add maintenance/failure.
- [ ] Add power generation knowledge for mechanical advantage, water wheels, wind, steam, combustion, generators, batteries, transformers, grid stability, and load management.
- [ ] Add electrical safety knowledge for grounding, insulation, overcurrent protection, arc risk, maintenance lockout, and public distribution hazards.

## 0.8.C Production Chains

- [ ] Add workshops.
- [ ] Add factories.
- [ ] Add production queues.
- [ ] Add labor requirements.
- [ ] Add logistics bottlenecks.
- [ ] Add quality tiers.
- [ ] Add manufacturing knowledge for measurement, tolerances, machining, welding, casting, quality control, process flow, and supply-chain planning.
- [ ] Add chemistry/process knowledge for fuels, fertilizers, medicines, solvents, plastics, explosives where appropriate, and pollution control.
- [ ] Add industrialism knowledge for division of labor, interchangeable parts, standardization, assembly lines, factory layout, worker training, shift planning, maintenance schedules, and industrial relations.
- [ ] Add manufacturing business systems for procurement, bills of materials, production planning, inventory turns, cost accounting, quality audits, recalls, warranties, and supplier qualification.
- [ ] Add heavy industry chains for steel, cement, glass, chemicals, machine tools, engines, electrical equipment, vehicles, ships, rail, and construction equipment.
- [ ] Add industrial environmental controls for emissions, waste treatment, water use, occupational exposure, cleanup liability, and community impact.

## 0.8.D Automation And Robotics

- [ ] Add automation control concept.
- [ ] Add basic machine workers.
- [ ] Add robotics progression.
- [ ] Add AI-assisted labor.
- [ ] Add safety/failure risks.
- [ ] Add control systems knowledge for sensors, actuators, feedback loops, programmable logic, robotics, telemetry, fail-safes, and maintenance diagnostics.
- [ ] Add computing and communications knowledge for basic electronics, radio, wired networks, data storage, software, cybersecurity, and automation monitoring.

## 0.8.E Proprietary AI Simulation Research

- [ ] Define an AI privacy policy for gameplay: no private world state, player history, unreleased design, or proprietary economy data leaves controlled infrastructure for core behavior.
- [ ] Research local or self-hosted model options for optional narrative flavor, summarization, dialogue variation, tutoring, and planning assistance without depending on third-party inference.
- [ ] Keep core NPC decisions deterministic and inspectable through utility AI, behavior trees, state trees, planners, or GOAP-style task systems before adding model-generated flavor.
- [ ] Define model boundaries: AI may suggest dialogue, summaries, and candidate plans, but server rules decide legal actions, resource use, movement, safety, combat, learning, and economy outcomes.
- [ ] Add an AI memory compression design that turns raw events into compact private character memories, family stories, settlement history, and teaching notes.
- [ ] Add evaluation tests for hallucination, unsafe advice, lore drift, repetitive behavior, privacy leakage, bias, griefing vectors, and performance cost.
- [ ] Define fallback behavior so NPCs remain functional if model inference is disabled, unavailable, too expensive, or rejected for privacy reasons.
- [ ] Define content moderation and audit tools for AI-generated dialogue, lessons, public notices, and player-authored material.

## 0.8.F Advanced Engineering And Energy Education

- [ ] Add engineering education paths for mechanical, civil, electrical, chemical, industrial, environmental, agricultural, biomedical, nuclear, aerospace, software, and systems engineering.
- [ ] Add design-review mechanics for complex machines, structures, power plants, factories, medical systems, transportation networks, and public infrastructure.
- [ ] Add failure investigation loops where players learn from breakdowns, accidents, low yield, overload, corrosion, fatigue, contamination, and operator error.
- [ ] Add team competency requirements for high-risk builds so major infrastructure depends on multiple trained characters, not one unlocked recipe.
- [ ] Add early nuclear science literacy as a long-term branch: atoms, radiation, shielding, fission basics, reactor safety, waste handling, and regulatory controls.

---

# Version 0.9 - Orbital Foundations

Goal: Make space feel earned by centuries of civilization, science, industry, and infrastructure.

## 0.9.A Astronomy And Knowledge

- [ ] Add astronomy observations.
- [ ] Add observatory building.
- [ ] Add star charts.
- [ ] Add orbital mechanics knowledge.
- [ ] Add education requirements.
- [ ] Add mathematics progression for algebra, geometry, trigonometry, calculus concepts, statistics, and numerical modeling as prerequisites for advanced engineering.
- [ ] Add physics progression for mechanics, thermodynamics, electromagnetism, fluids, materials, radiation, and high-energy safety.
- [ ] Add astronomy and space science learning for celestial observation, timekeeping, navigation, orbital periods, launch windows, and planetary environments.

## 0.9.B Launch Infrastructure

- [ ] Add advanced materials.
- [ ] Add fuel production.
- [ ] Add launch site construction.
- [ ] Add rocket components.
- [ ] Add launch preparation.
- [ ] Add launch failure risk.
- [ ] Add rocketry knowledge for propulsion, staging, thrust-to-weight, mass fraction, aerodynamics, guidance, navigation, control, telemetry, and range safety.
- [ ] Add aerospace manufacturing knowledge for precision machining, composites, avionics, cryogenics, pressure systems, clean handling, and test procedures.
- [ ] Add nuclear and advanced energy knowledge for reactors, radioisotope systems, shielding, radiation monitoring, emergency response, and long-term waste stewardship.
- [ ] Add pilot, mission controller, engineer, and safety officer training paths.

## 0.9.C Orbital Gameplay

- [ ] Add orbital object model.
- [ ] Add satellites.
- [ ] Add communications benefits.
- [ ] Add navigation benefits.
- [ ] Add orbital maintenance.

## 0.9.D Research Institutions And Advanced Science

- [ ] Add observatories, universities, laboratories, proving grounds, launch ranges, wind tunnels, reactors or simulator facilities, and mission control centers.
- [ ] Add research programs that require funding, specialists, instruments, materials, power, safety approvals, tests, failures, and published findings.
- [ ] Add advanced question banks and practical exams for orbital mechanics, rocket science, nuclear physics, materials science, avionics, life support, and mission planning.
- [ ] Add simulation and prototype testing so players can learn before risking major resources or lives.
- [ ] Add ethical and safety governance for dangerous research, weapons-adjacent technology, radiation, launch debris, and public risk.

---

# Version 1.0 - Interplanetary Frontier

Goal: Expand civilization beyond Earth while keeping Earth emotionally and mechanically central.

## 1.0.A Interplanetary Travel

- [ ] Add spacecraft design.
- [ ] Add fuel logistics.
- [ ] Add life support.
- [ ] Add navigation.
- [ ] Add travel windows.
- [ ] Add travel risk.

## 1.0.B Colony Logistics

- [ ] Add colony founding.
- [ ] Add supply chains.
- [ ] Add habitat construction.
- [ ] Add resource extraction.
- [ ] Add communication delay if desired.
- [ ] Add political connection to Earth.

## 1.0.C Multi-World Persistence

- [ ] Add planetary world records.
- [ ] Add orbital economy.
- [ ] Add interplanetary trade.
- [ ] Add settlement history across worlds.
- [ ] Add long-term expansion governance.

## 1.0.D Offworld Knowledge And Colonization Science

- [ ] Add life support knowledge for atmosphere, pressure, oxygen, carbon dioxide removal, water recycling, food loops, waste processing, and emergency repair.
- [ ] Add space medicine knowledge for radiation, low gravity, isolation, injury care, nutrition, infection control, and long-duration health.
- [ ] Add closed-loop agriculture knowledge for hydroponics, aeroponics, soil substitutes, lighting, pollination, nutrient balance, and genetic diversity.
- [ ] Add planetary geology and resource utilization knowledge for prospecting, mining, refining, construction materials, ice extraction, and in-situ fuel production.
- [ ] Add offworld construction knowledge for habitats, shielding, pressure vessels, thermal control, foundations, dust management, and maintenance.
- [ ] Add interplanetary navigation knowledge for transfer windows, orbital insertion, fuel margins, communication delay, rescue planning, and mission risk.
- [ ] Add colony governance and culture knowledge for law, education, medical standards, emergency authority, succession, archives, and Earth relationship.
- [ ] Add long-term knowledge preservation systems for isolated colonies, including redundant archives, local schools, apprenticeships, and disaster recovery plans.
- [ ] Add late-game research frontiers for terraforming studies, advanced propulsion, planetary-scale ecology, deep-space industry, and multi-generation settlement planning.

---

# Cross-Cutting Technical Tracks

These tracks run across all phases and must not be left as afterthoughts.

## A. Networking

- [ ] Define server authority rules.
- [ ] Define replication ownership rules.
- [ ] Define relevancy strategy.
- [ ] Define bandwidth budget.
- [ ] Create multiplayer test maps.
- [ ] Add network profiling routine.
- [ ] Add replication tests for each gameplay system.
- [ ] Add disconnect/reconnect tests.
- [ ] Add high latency tests.
- [ ] Add server crash recovery tests.

## B. Persistence And Database

- [ ] Define what lives in Unreal save files.
- [ ] Define what lives in external database.
- [ ] Define player account model.
- [ ] Define world state model.
- [x] Define global tile registry data model for roughly 510-520 million potential 1 km tiles.
- [x] Define tile coordinate primary key strategy.
- [x] Define tile metadata tables.
- [x] Define tile generation job tables.
- [x] Define tile package/version tables.
- [ ] Define player/world-state anchoring to tile coordinates.
- [ ] Define terrain tile state vs player-made world state separation.
- [ ] Define backup policy.
- [ ] Define rollback policy.
- [ ] Define migration policy.
- [ ] Add automated save validation.
- [ ] Add schema/version tracking.
- [ ] Add admin restore workflow.
- [ ] Define knowledge database schema for subjects, topics, concepts, prerequisites, question banks, practice records, certifications, teaching records, source notes, and localization.
- [ ] Define audit/version rules for educational content updates so question changes do not corrupt character progression.
- [ ] Define privacy-safe analytics for which concepts confuse players or create excessive friction.

## C. Accounts And Authentication

- [ ] Decide account provider.
- [ ] Decide Steam account integration timing.
- [ ] Add local dev auth placeholder.
- [ ] Add account identity model.
- [ ] Add character ownership model.
- [ ] Add ban/moderation hooks.
- [ ] Add privacy policy requirements.

## D. AGR Integration

- [x] Define what AGR does in MVP.
- [x] Define what AGR does not do in MVP.
- [x] Decide custodial vs non-custodial game wallet approach.
- [x] Define testnet/devnet flow.
- [x] Define transaction confirmation rules.
- [x] Define in-game ledger rules.
- [x] Define anti-fraud rules.
- [x] Define market transaction logs.
- [x] Define bridge between web wallet and game account.
- [x] Define legal/compliance review points.

## E. Admin And Moderation

- [ ] Add admin login/auth.
- [ ] Add server console commands.
- [ ] Add teleport command.
- [ ] Add item grant command.
- [ ] Add player kick/ban command.
- [ ] Add world save command.
- [ ] Add world rollback command.
- [ ] Add player report system.
- [ ] Add audit logs.
- [ ] Add moderation dashboard plan.

## F. Security And Abuse Prevention

- [ ] Define trust boundaries.
- [ ] Keep server authoritative.
- [ ] Validate all client requests.
- [ ] Add rate limits where needed.
- [ ] Add anti-cheat research track.
- [ ] Add exploit report workflow.
- [ ] Add log retention policy.
- [ ] Add account recovery policy.
- [ ] Add economy abuse monitoring.
- [ ] Add anti-cheat rules for knowledge checks, certifications, teaching records, and externally-assisted answer farming.
- [ ] Add moderation workflow for player-authored notes, books, schools, and public educational content.

## G. Performance

- [ ] Define minimum target hardware.
- [ ] Define client FPS targets.
- [ ] Define server tick targets.
- [ ] Define memory budgets.
- [ ] Define actor count budgets.
- [ ] Define World Partition streaming budgets.
- [ ] Define tile download bandwidth budget.
- [ ] Define local tile cache size budget.
- [ ] Define cache cleanup rules for unused terrain tiles.
- [ ] Add profiling checklist.
- [ ] Add asset size budgets.
- [ ] Add LOD strategy.
- [ ] Add foliage performance strategy.
- [ ] Add save/load performance benchmarks.

## H. Art Direction

- [ ] Define visual tone as grounded realism first: believable terrain, foliage, human characters, materials, lighting, weathering, and survival objects rather than stylized placeholder art.
- [ ] Define investor and tester rendering tiers: compatibility/default, recommended, and cinematic.
- [ ] Support ray tracing as an optional cinematic/high-end mode for lighting, shadows, reflections, and atmosphere, but never require it for baseline gameplay or visual readability.
- [ ] Ensure the non-ray-traced default renderer remains visually credible on common investor, tester, and remote-session hardware.
- [ ] Prioritize authentic real-world biome materials, terrain color, vegetation density, water, fire, smoke, weather, shelters, tools, and resource assets when replacing placeholders.
- [ ] Avoid cosmetic-only art passes that conflict with long-term realism or will need to be discarded; replace placeholders with assets and materials that can survive into MVP production when practical.
- [ ] Define early survival era look.
- [ ] Define old-world ruin look.
- [ ] Define agrarian settlement look.
- [ ] Define UI visual language.
- [ ] Define color palette.
- [ ] Define material style.
- [ ] Define lighting style.
- [ ] Define character style.
- [ ] Define icon style.

## I. Audio Direction

- [ ] Define ambient audio style.
- [ ] Define weather audio style.
- [ ] Define wildlife audio style.
- [ ] Define UI sound style.
- [ ] Define music philosophy.
- [ ] Define silence/space usage.
- [ ] Define settlement soundscape.
- [ ] Define industrial era sound progression.

## J. QA And Testing

- [ ] Create smoke test checklist.
- [ ] Create multiplayer test checklist.
- [ ] Create persistence test checklist.
- [ ] Create terrain tile import QA checklist.
- [ ] Create terrain seam QA checklist.
- [ ] Create biome/resource plausibility QA checklist.
- [ ] Create tile cache/download QA checklist.
- [ ] Create performance test checklist.
- [ ] Create release candidate checklist.
- [ ] Add bug triage workflow.
- [ ] Add crash reporting plan.
- [ ] Add automated build validation.
- [ ] Add test server reset process.
- [ ] Add educational content QA checklist for accuracy, clarity, difficulty tiering, accessibility, and source review.
- [ ] Add balance tests to ensure knowledge checks improve depth without pushing players out of the survival loop.

## K. Build And Release Pipeline

- [x] Define dev editor build process.
- [x] Define internal test build process.
- [x] Add repository storage policy and local storage audit script.
- [ ] Define closed alpha build process.
- [ ] Define dedicated server packaging. Replace the MVP
  `play.agrariangame.com:7777` headless Linux game/listen-server fallback with
  a true `AgrarianGameServer` Linux dedicated server package once we have a
  source-built or otherwise server-capable Unreal Engine distribution; keep the
  current fallback documented and usable until that packaging path is validated.
- [ ] Define patch distribution.
- [ ] Define version numbering.
- [ ] Define changelog format.
- [ ] Define rollback process.
- [ ] Define release approval checklist.
- [x] Add one-command Codex build wrapper for `AgrarianGameEditor`.
- [x] Store editor build logs under `Saved/BuildLogs/BuildEditor-Windows.log`.
- [x] Add one-command packaged client build wrapper.
- [x] Add one-command Linux dedicated server build wrapper.
- [x] Define investor-demo build trigger at version milestone completion.
- [x] Add smoke-test command for build artifacts.
- [ ] Enable protected `main` branch once revenue or a paid GitHub plan justifies the cost.

## L. Storefront Development Distribution

- [ ] Decide Steam development launch timing.
- [ ] Decide Epic Games Store development launch timing.
- [ ] Create Steamworks partner setup checklist.
- [ ] Create Epic Developer Portal setup checklist.
- [ ] Define internal, investor, closed tester, and public playtest build channels.
- [ ] Decide whether early development versions use Steam Playtest, Epic private artifacts, direct installer delivery, or a combination.
- [ ] Define store build upload/package process.
- [ ] Define store branch naming: internal, investor-demo, closed-alpha, public-demo, release-candidate.
- [ ] Define build metadata requirements for store uploads: version, changelog, commit, map, server compatibility, and known issues.
- [ ] Define entitlement/account linking requirements before external tester distribution.
- [ ] Add legal/storefront checklist: company name, tax/payment setup, privacy policy, EULA, content rating, screenshots, trailer, capsule art, and support email.
- [ ] Decide when agrariangame.com links to Steam/Epic pages.
- [ ] Add release checklist for pushing a development build to Steam or Epic.

## M. Community And Marketing

- [ ] Keep agrariangame.com updated.
- [ ] Publish development updates.
- [ ] Collect launch list signups.
- [ ] Create Discord plan.
- [ ] Create devlog schedule.
- [ ] Create Steam page checklist.
- [ ] Create press kit.
- [ ] Create creator outreach list.
- [ ] Create early tester application.
- [ ] Create public roadmap page later.

## N. NPC, Family, And Offline Simulation Intelligence

- [ ] Define NPC intelligence architecture around server-authoritative utility scoring, behavior/state trees, task reservations, memory records, and deterministic simulation before any generative AI layer.
- [ ] Define a character memory schema for event facts, emotional weight, relationship impact, teaching history, trauma/recovery markers, obligations, promises, debts, and family stories.
- [ ] Define family and community simulation LOD: full behavior for nearby visible characters, reduced task simulation for settlement members, and ledger-based offline simulation for distant or logged-off characters.
- [ ] Define offline player simulation rules that allow local contribution and protection without exploration movement, major decision-making, unfair learning, or hidden progression.
- [ ] Define debug tools for explaining why an NPC chose a task, refused an order, helped someone, fled danger, taught a lesson, or consumed supplies.
- [ ] Add automated tests for NPC task selection, resource accounting, relationship changes, emotional state transitions, teaching outcomes, offline stewardship, and reconnect reconciliation.
- [ ] Define proprietary-first AI rules: core behavior must work without third-party services, external AI cannot receive private unreleased world/player data, and any model layer must be replaceable.
- [ ] Define local/self-hosted AI research lane for optional dialogue variation, event summarization, tutoring, memory compression, and settlement reports.
- [ ] Define performance budgets for thousands of family/community characters across persistent settlements.
- [ ] Define abuse protections so players cannot exploit NPC labor, offline characters, family members, or AI-generated instructions to bypass survival, economy, travel, combat, or learning constraints.

---

# Six-Month MVP Calendar

## Month 1 - Foundation

- [~] Clean project structure.
- [x] Confirm engine version.
- [x] Set source control.
- [x] Create base character.
- [x] Create interaction system.
- [ ] Create first test map.
- [x] Create stat component.
- [x] Create inventory prototype.
- [x] Create networking baseline.
- [x] Create build instructions.
- [x] Create operational build lane for Codex.
- [x] Choose Ground Zero candidate tile.
- [x] Define first tile registry schema.

## Month 2 - Survival Loop

- [x] Add hunger.
- [x] Add thirst.
- [x] Add health.
- [x] Add stamina.
- [x] Add weather.
- [x] Add body temperature.
- [~] Add gatherable resources.
- [x] Add campfire.
- [x] Add basic crafting.
- [~] Add basic HUD.
- [ ] Import first real terrain MVP tile if feasible.

## Month 3 - Shelter And Persistence

- [x] Add building placement.
- [x] Add primitive shelter.
- [ ] Add storage container.
- [ ] Add save/load for players.
- [x] Add save/load for structures.
- [ ] Add save/load for containers.
- [ ] Add server restart persistence test.
- [ ] Add one full day/night survival test.
- [ ] Persist MVP tile metadata and generated package version.

## Month 4 - Multiplayer And Wildlife

- [ ] Add dedicated server build.
- [ ] Add join flow.
- [ ] Add replicated inventory validation.
- [ ] Add replicated building validation.
- [x] Add wildlife prototype.
- [x] Add harvesting.
- [ ] Add injury placeholder.
- [ ] Add reconnect test.
- [ ] Add 2-4 player internal test.

## Month 5 - Homestead Seeds And Economy Planning

- [ ] Add land claim prototype.
- [ ] Add farming prototype if feasible.
- [ ] Add simple barter placeholder if feasible.
- [x] Define AGR integration design.
- [x] Define account/wallet bridge design.
- [x] Add admin commands.
- [ ] Add test feedback form/process.
- [ ] Improve UI clarity.

## Month 6 - Closed MVP Readiness

- [ ] Stabilize server.
- [ ] Fix critical bugs.
- [ ] Optimize core map.
- [ ] Improve first 30 minutes of play.
- [ ] Add onboarding prompts.
- [ ] Add settings menu.
- [ ] Package client build.
- [ ] Package server build.
- [ ] Run closed internal test.
- [ ] Prepare external tester plan.
- [ ] Update website with progress.

---

# Definition Of Done For The First Playable MVP

The first playable MVP is not complete until:

- [ ] Two or more players can join the same server.
- [ ] Players can gather resources.
- [ ] Players can craft at least one tool.
- [ ] Players can create fire.
- [ ] Players can build a primitive shelter.
- [ ] Weather and time affect survival.
- [ ] Day/night presentation follows the real local solar/light context of the represented map tile while the MVP gameplay day remains `4 real hours = 1 in-game day`.
- [ ] Hunger and thirst matter.
- [ ] Injury or damage can create meaningful risk.
- [~] At least one wildlife system exists.
- [ ] Inventory works and replicates.
- [ ] Startup flow reaches a character selection landing page after splash/startup screens.
- [ ] Player can select a realistic young adult male or female character with average proportions before entering the MVP world.
- [ ] Server restart preserves core state.
- [ ] The game communicates what to do without hand-holding too much.
- [ ] The experience feels like the beginning of Agrarian, not a generic survival template.

---

# Near-Term Next Actions

Use this list to restart from the top of the roadmap before continuing into
newer gameplay and weather work.

Current version: `0.1 Foundational Survival MVP`

Earliest incomplete foundation items:

- [x] Decide whether to create/use a long-lived `dev` branch. Decision: no long-lived `dev` branch yet.
- [x] Finish branch naming conventions.
- [x] Finish commit message conventions.
- [x] Define GitHub/LFS free-tier storage guardrails.
- [x] Define backup expectations for NAS and repository.
- [x] Implement Linastorage incremental project backup job.
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
- [x] Create repeatable dedicated server build instructions.
- [x] Finish required plugin documentation.
- [x] Confirm project opens cleanly from a fresh checkout.
- [x] Create the core design document.
- [x] Create the technical design document.
- [x] Create the multiplayer/networking design document.
- [x] Create the persistence design document.
- [x] Create the Earth-scale terrain/tile streaming design document.
- [x] Launch near-term MVP map-tile serving cloud VM and prove Ground Zero tile lookup/download/cache flow.
- [x] Create economy and AGR design document.
- [x] Create art direction, UX/HUD direction, coding standards, Blueprint standards, and asset/folder naming standards.
- [x] Organize `Content/Agrarian/` root folder and remove unused starter variant content.
- [x] Define what qualifies as the 6-month MVP and what is explicitly excluded.
- [x] Define MVP day/night length, survival pressure target, success loop, failure conditions, first playable internal milestone, and closed-test readiness criteria.

Immediate next item:

- [ ] Implement basic animation blueprint.
