docs(wiki): rename Hael to Naia Tamm, apply canonical full names, standardize shortcodes
Wave 0 wiki maintenance for Sprint 3: - #372: Rename Hael → Naia Tamm across 16 living wiki files (phonetic collision fix) - #371: Apply canonical full names to 11 single-name NPC headers and roster table - #375: Replace hub_m_ → terminal_m_ shortcodes, add shortcode reference table, situation overlap rules, and mood exclusivity rules to monologue guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -11,6 +11,60 @@ How to write tagged monologue and dialogue content for The Settled Reach. Read t
|
||||
|
||||
---
|
||||
|
||||
## Location Shortcodes
|
||||
|
||||
Canonical shortcodes for v0.1 Sova Transit District. Used in line IDs (`{shortcode}_{type}_{###}`) and file naming.
|
||||
|
||||
| Shortcode | Location | Full Name | D-036 Reference |
|
||||
|-----------|----------|-----------|-----------------|
|
||||
| `terminal` | Logistics Hub | The Terminal | Primary workplace social site |
|
||||
| `bar` | The Last Shift | Lera's (informal) | Social venue |
|
||||
| `corridor` | Maintenance corridors | Corridor B-7 (primary) | Smuggling/service spaces |
|
||||
|
||||
**File naming convention:** `{shortcode}-{character}.yaml` (e.g., `terminal-smuggler.yaml`, `bar-detective.yaml`)
|
||||
|
||||
**Line ID format:** `{shortcode}_{d|m|e}_{###}` where `d`=dialogue, `m`=monologue, `e`=environmental
|
||||
|
||||
---
|
||||
|
||||
## Situation Overlap Rules
|
||||
|
||||
A line can have multiple situations in its `situation` list. These rules define valid combinations.
|
||||
|
||||
**Mutually exclusive** (never co-occur):
|
||||
- `arrival` and `shift_end` — you can't be both arriving and leaving
|
||||
- `alone` and `social` — by definition
|
||||
- `emergency` and `routine` — emergency overrides routine
|
||||
- `confrontation` and `social` — confrontation replaces social context
|
||||
|
||||
**Common valid overlaps:**
|
||||
- `shift_start` + `routine` — beginning-of-shift routine observations
|
||||
- `bar_evening` + `social` — social interaction at the bar
|
||||
- `observation` + any non-exclusive situation — observation layers on top of context
|
||||
- `investigation` + `observation` — investigating by watching
|
||||
|
||||
**Default if empty:** `routine` (engine assumes routine context)
|
||||
|
||||
---
|
||||
|
||||
## Mood Exclusivity Rules
|
||||
|
||||
A line can have multiple moods, but some combinations are contradictory.
|
||||
|
||||
**Mutually exclusive** (never co-occur):
|
||||
- `fond` and `suspicious` — these are opposing orientations toward someone
|
||||
- `comfortable` and `worried` — opposing emotional states
|
||||
- `relieved` and `concerned` — resolved vs. unresolved tension
|
||||
|
||||
**Common valid overlaps:**
|
||||
- `analytical` + any mood — analytical is a cognitive mode that coexists with emotion
|
||||
- `conflicted` + `fond` or `concerned` — conflicted implies mixed feelings
|
||||
- `worried` + `suspicious` — worry about someone's behavior shading into suspicion
|
||||
|
||||
**Default if empty:** `comfortable` (engine assumes neutral emotional baseline)
|
||||
|
||||
---
|
||||
|
||||
## Core Principle
|
||||
|
||||
Internal monologue is **hard-partitioned by playable character** (D-032). The smuggler and detective have completely separate monologue pools. No shared lines. Same trigger, different pool. This is how mirror moments work without either pool knowing about the other.
|
||||
@@ -81,7 +135,7 @@ The `trigger` tag determines WHEN a monologue line fires. Each type maps to a ga
|
||||
Fires when the player enters a named area.
|
||||
|
||||
```yaml
|
||||
- id: hub_m_010
|
||||
- id: terminal_m_010
|
||||
text: "Morning shift. Recycled air and cargo lubricant. Home sweet home."
|
||||
character: smuggler
|
||||
trigger: enter_location
|
||||
@@ -91,7 +145,7 @@ Fires when the player enters a named area.
|
||||
```
|
||||
|
||||
```yaml
|
||||
- id: hub_m_011
|
||||
- id: terminal_m_011
|
||||
text: "Logistics hub. Standard prefab, heavy foot traffic. Let's see what the shift change tells me."
|
||||
character: detective
|
||||
trigger: enter_location
|
||||
@@ -111,7 +165,7 @@ Use for first impressions, atmosphere, returning-to-familiar-ground observations
|
||||
Fires when a known entity enters the player's line of sight.
|
||||
|
||||
```yaml
|
||||
- id: hub_m_020
|
||||
- id: terminal_m_020
|
||||
text: "Kael's here. Good — I was starting to worry."
|
||||
character: smuggler
|
||||
trigger: observe_npc
|
||||
@@ -122,7 +176,7 @@ Fires when a known entity enters the player's line of sight.
|
||||
```
|
||||
|
||||
```yaml
|
||||
- id: hub_m_021
|
||||
- id: terminal_m_021
|
||||
text: "Dock worker from the case file. Davan, K. Unremarkable on paper."
|
||||
character: detective
|
||||
trigger: observe_npc
|
||||
@@ -169,7 +223,7 @@ Audio triggers fire less frequently than visual ones. Make them count.
|
||||
Fires when the player observes something that contradicts expected state — a container in the wrong place, an NPC where they shouldn't be, a door that should be locked.
|
||||
|
||||
```yaml
|
||||
- id: hub_m_040
|
||||
- id: terminal_m_040
|
||||
text: "Kael's checking his lattice again. Third time in ten minutes. That's not normal."
|
||||
character: smuggler
|
||||
trigger: observe_anomaly
|
||||
@@ -180,7 +234,7 @@ Fires when the player observes something that contradicts expected state — a c
|
||||
```
|
||||
|
||||
```yaml
|
||||
- id: hub_m_041
|
||||
- id: terminal_m_041
|
||||
text: "Dock worker Davan — lattice activity spiked. Expecting a message? Or checking for surveillance?"
|
||||
character: detective
|
||||
trigger: observe_anomaly
|
||||
@@ -231,7 +285,7 @@ This is where character voice shines — the detective analyzes, the smuggler wo
|
||||
Fires when the player finds physical evidence — a document, object, or data point.
|
||||
|
||||
```yaml
|
||||
- id: hub_m_060
|
||||
- id: terminal_m_060
|
||||
text: "Container 4471. Manifest says 240 kilos. That crate is closer to 310."
|
||||
character: detective
|
||||
trigger: discover_evidence
|
||||
@@ -242,7 +296,7 @@ Fires when the player finds physical evidence — a document, object, or data po
|
||||
```
|
||||
|
||||
```yaml
|
||||
- id: hub_m_061
|
||||
- id: terminal_m_061
|
||||
text: "4471's still in temp. Kael routed it there during transition. Standard. Nothing to worry about."
|
||||
character: smuggler
|
||||
trigger: discover_evidence
|
||||
@@ -506,7 +560,7 @@ How each character relates to key NPCs:
|
||||
| Sera (THE FRIEND) | `public` (Commission, wary) | `peer` → `authority` (post-contradiction) |
|
||||
| Voss | `insider` (colleague) | `authority` |
|
||||
| Lera | `insider` (bar regular) | `public` → `peer` (repeat visits) |
|
||||
| Hael | `peer` (through Kael) | `public` → `peer` (through Sera) |
|
||||
| Naia | `peer` (through Kael) | `public` → `peer` (through Sera) |
|
||||
| Torek | `insider` or `peer` | `public` |
|
||||
| Maret | `insider` (hub colleague) | `authority` |
|
||||
| Drin | `insider` (hub colleague) | `authority` |
|
||||
@@ -526,7 +580,7 @@ A tell observation monologue line should:
|
||||
3. **Map to an attribute** — note in `notes` which `known_attributes` key updates
|
||||
|
||||
```yaml
|
||||
- id: hub_m_100
|
||||
- id: terminal_m_100
|
||||
text: "Kael keeps checking his lattice. Waiting for something."
|
||||
character: smuggler
|
||||
trigger: observe_anomaly
|
||||
@@ -539,7 +593,7 @@ A tell observation monologue line should:
|
||||
```
|
||||
|
||||
```yaml
|
||||
- id: hub_m_101
|
||||
- id: terminal_m_101
|
||||
text: "Dock worker Davan — lattice activity spiked. Three pings in two minutes. Expecting a message? Or checking for surveillance?"
|
||||
character: detective
|
||||
trigger: observe_anomaly
|
||||
|
||||
Reference in New Issue
Block a user