Files
settled-reach/docs/sprints/sprint-25/copy.md
T
jpmschweitzerandClaude Sonnet 4.6 7d7aec9cec chore(meta): plan Sprint 25: Emerge
Generator spike sprint. 5 tickets across copy and server teams:
- #609 zone identity spec (copy)
- #610 Krenn culture profile (copy)
- #611 NpcBlueprint struct design (server)
- #612 Template assembly generator (server)
- #613 NPC generation pipeline (server)

Sprint proof: throwaway render — rural Krenn village from minimal
input (zone type + culture profile, no per-location spec).

Closed #586 (tile data model epic — child #594 done).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 19:59:24 +01:00

3.8 KiB

Sprint 25: Emerge — Copy Tasks

Goal: Prove the generator can extrapolate from minimal input — a rural Krenn village from zone type and culture profile alone, no per-location spec.

Branch: copy Agents: Miri (worldbuilding lead), Mellanie (voice/dialogue review)

New Tickets

# Title Blocked by
#609 Zone identity spec —
#610 Krenn culture profile —

Use tooling/db/ticket show <id> for full details.

Key Decisions

  • decisions/scope.md — D-114 (generator-first proof-of-life), D-119 (generator spike critical path)
  • decisions/content.md — D-121 (voice is culture-driven, job as modifier), D-122 (all NPCs generated), D-128 (culture implicit in starting location), D-129 (NPC personality: traits + behavior first)
  • decisions/architecture.md — D-012 (chunk-based map, borderless generation future)

Notes

#609 — Zone identity spec

  • Output: a YAML or Markdown document defining zone type taxonomy for the Settled Reach's social vocabulary.
  • What each zone TYPE means (not a specific location): urban residential, rural agricultural, industrial transit, informal/fringe, commercial, etc. What does each feel like? Who lives or works there? What emotional register does it carry? What is the density, pace, noise level?
  • This is a general taxonomy — NOT a spec for a specific village. The generator needs the zone types as input parameters so it can extrapolate any location.
  • Downstream consumers: Tyre (generator zone template parameters for #611/#612), Araminta (zone visual grammar), Mellanie (culture-primary voice cards).
  • File location: content/global/zone-identity-spec.md (or YAML if preferred — coordinate with Tyre on what format #611 needs to ingest).
  • Krenn System context: check decisions/content.md D-036 amendment and D-128. Station Sova's districts (D-093) are an example of zone types in action but the spec must generalize beyond Sova.

#610 — Krenn culture profile

  • Output: one full culture profile for Krenn System / Station Sova, usable as generator input constraints and AI content templating prompt seeds.
  • Must encode: naming conventions and phonemes, speech patterns and registers (formal/informal), economic values and class markers, attitudes toward work/leisure/authority, sensory palette (what Krenn space looks/smells/sounds like), social norms and taboos, dress and appearance codes.
  • D-128: culture is implicit in starting location. This profile IS the cultural context for every generated NPC in the Krenn System — not just flavor text.
  • D-121: voice is culture-driven, job modifies. The culture profile must be specific enough that Tyre can use it to constrain generated NPC voice parameters.
  • D-123: this profile feeds the AI content templating pipeline. Culture vectors = prompt constraints. The profile must be concrete enough to function as a constraint, not just atmospheric description.
  • File location: content/global/culture-krenn.md (or YAML — coordinate with Tyre).
  • Existing Sova atmosphere notes live in decisions/content.md D-036 (amended post-workshop). Pull from those but go deeper on cultural mechanics.

Dependency Chain

#609 (zone identity spec) ──┐
                            ├──> server #611 (NpcBlueprint struct)
#610 (Krenn culture profile)┘        └──> #612 (template gen) ──> #613 (NPC pipeline)

Copy deliverables (#609, #610) are prerequisites for all server work in this sprint. Both can be written in parallel — they are independent of each other.

PR Workflow

When ready to submit, create a PR with tea CLI. All flags are required to avoid TTY prompts (see CLAUDE.md "Gitea access" section):

tea pr create --repo jpmschweitzer/settled-reach --login schweitz --title "feat(copy): zone identity spec and Krenn culture profile" --description "body" --base main --head copy