diff --git a/.claude/skills/start-sprint/SKILL.md b/.claude/skills/start-sprint/SKILL.md index 1cd236ec9..e0be94911 100644 --- a/.claude/skills/start-sprint/SKILL.md +++ b/.claude/skills/start-sprint/SKILL.md @@ -51,6 +51,12 @@ Note the sprint number (N) from the output. The project version scheme is `v0.1.{sprint_number}`. After closing sprint N, the version is `v0.1.N`. +Update `project.yaml`: +- Set the `version` field to `0.1.N` (this is the source of truth). + +Update `server/Cargo.toml`: +- Set `version = "0.1.N"` in `[package]`. + Update `CHANGELOG.md`: - Move all entries under `## [Unreleased]` into a new section `## [v0.1.N] — YYYY-MM-DD` (using today's date). @@ -60,7 +66,7 @@ Update `CHANGELOG.md`: ### M3. Commit the release -Stage and commit `CHANGELOG.md`: +Stage and commit `project.yaml`, `server/Cargo.toml`, and `CHANGELOG.md`: ``` chore(meta): release v0.1.N ``` diff --git a/CLAUDE.md b/CLAUDE.md index 364a9866e..e98de60c5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -3,7 +3,8 @@ A top-down immersive sim — occlusion-based detective game with combat elements, set in an original science fiction universe. Single-character perspective, asymmetric information as core mechanic, Rimworld-style storyteller. Godot 4 client + Rust/bevy_ecs simulation server via subprocess/IPC (D-020). **Official Title:** The Settled Reach (D-021) -**Repository name:** commonwealth (historical code name, retained for path stability) +**Repository name:** settled-reach (formerly commonwealth, renamed for clarity) +**Version source of truth:** `project.yaml` (root `version` field, scheme: `0.1.{sprint_number}`) ## Project Structure diff --git a/project.yaml b/project.yaml new file mode 100644 index 000000000..6405b2b2b --- /dev/null +++ b/project.yaml @@ -0,0 +1,37 @@ +name: The Settled Reach +version: 0.1.9 +repository: settled-reach +codename: commonwealth + +description: > + Top-down immersive sim with occlusion-based detection mechanics and + combat elements. Single-character perspective where asymmetric information + is the core gameplay mechanic. A Rimworld-style storyteller drives + emergent narrative across a detective-smuggler dual-lens campaign. + +setting: > + Original science fiction universe — the Settled Reach, a network of + star systems connected by Founder Gates. Neural lattice technology + enables soft immortality, forking, and re-embodiment. The v0.1 + vertical slice takes place in Sova Transit District, Krenn System. + +architecture: + client: Godot 4 (GDScript) + server: Rust with bevy_ecs (simulation server) + transport: subprocess/IPC via TCP with MessagePack serialization + protocol: length-prefixed MessagePack frames (4-byte big-endian) + determinism: ChaCha20 seeded RNG, deterministic tick processing + +simulation: + tick_rate: 10 ticks per game-minute + time_model: 4 day phases (Morning, Afternoon, Evening, Night) + grid: dual-scale (0.5m simulation tiles, 1m visual tiles) + visibility: symmetric shadowcasting + forward/peripheral/blind vision cone + knowledge: per-entity knowledge graphs with confidence decay + +content: + format: YAML with JSON Schema validation + structure: campaigns/systems/stations/districts hierarchy + npcs: 10-axis model (7 essential + 3 supporting) with CombatCapability + dialogue: tagged line pools with 4-layer relational filtering + population: 30% flat / 50% mundane triangles / 20% intrigue-entangled diff --git a/server/Cargo.toml b/server/Cargo.toml index 5d7da1f66..137cc916b 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "settled-reach-server" -version = "0.1.0" +version = "0.1.9" edition = "2021" [dependencies]