Files
Soul_Game/README.md
T
mmcghen 0ba5341f0e Move design docs into the repo (docs/DESIGN.md, docs/SPEC.md)
The why-document and production spec now live and version alongside the
code they govern, instead of loose in the Unity POC folder — which is how
the original design docs got lost.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 12:58:32 -04:00

1.8 KiB
Raw Blame History

Soul World Sim — MVP

Godot 4.7 (.NET / C#) world simulation for the soul reincarnation game.

  • Design rationale: docs/DESIGN.md (the why)
  • Production spec: docs/SPEC.md (the what, with 2026-07-21 amendments)
  • Experiment log: FINDINGS.md (the four soak runs and what they proved)
  • Mechanics reference: the Unity POC at H:\Projects\Game\Game (separate repo; soul/debris/imprint systems, proven Feb 2026)

MVP goal

Prove constrained emergence + soul philosophy with one town: 15 nature-souled NPCs dropped into a 256×256 world with no scripted layout. Success is behavioral (SPEC §11): no over-harvesting, voluntary cooperation, an organic community cluster, stable resource bands — then the contrast test (3 selfish NPCs dropped in) to prove weights alone change the society.

Structure

File Role
scripts/GameManager.cs main loop, tick system (1 tick = 1 in-game minute), day/night
scripts/World.cs 256×256 grid, resource nodes, sustainable harvest, daily regen
scripts/NPC.cs NPC data + 5-state machine (gather/build/trade/rest/socialize)
scripts/SoulProfile.cs soul types, behavior weights, imprint triad (SPEC §2 amendment)
scripts/Building.cs modular, physically-sequential, multi-NPC construction
scripts/TradeSystem.cs generous no-currency exchange, imprint consequences
scripts/Visualization.cs top-down debug view (designer sees all meters; the player never will)
scripts/SaveSystem.cs world-state JSON round-trip (persistence is first-class)

Build weeks (SPEC §12)

  1. World gen + NPC base + state machine ← scaffold is here
  2. Building system
  3. Trade + soul-imprint-weighted decisions
  4. Testing protocol + save round-trip + debug UI