feat(copy): Sprint 14 — monologue architecture, line pools, voice guide, schema, overheard dialogue #51

Merged
jpmschweitzer merged 5 commits from copy into main 2026-02-20 19:31:28 +01:00
Showing only changes of commit 036e9dc5c6 - Show all commits
+8 -8
View File
@@ -117,12 +117,12 @@ fn load_real_transit_district() {
assert!(template_ids.contains(&"bar"));
assert!(template_ids.contains(&"smuggling-ring"));
// 20 NPC profiles: 17 NPCs + 2 PC-as-NPC + 1 extended NPC (nils-davan)
// Populated by #398 (wiki→YAML NPC conversion)
// 23 NPC profiles: 17 NPCs + 2 PC-as-NPC + 1 extended NPC (nils-davan) + 3 Sprint 14 additions
// Populated by #398 (wiki→YAML NPC conversion) and Sprint 14 content expansion
assert_eq!(
transit.npc_profiles.len(),
20,
"Expected 20 parseable NPC profiles (17 NPCs + 2 PCs + 1 extended)"
23,
"Expected 23 parseable NPC profiles"
);
}
@@ -338,8 +338,8 @@ fn spawn_real_content_with_relationships_and_secrets() {
let store = load_content(&root).expect("content loading should succeed");
let result = spawn_content(&mut world, &store);
// All 20 profiles should spawn
assert_eq!(result.npcs_spawned, 20);
// All 23 profiles should spawn
assert_eq!(result.npcs_spawned, 23);
assert!(result.npc_ids.contains_key("npc:kael-davan"));
assert!(result.npc_ids.contains_key("npc:voss"));
assert!(result.npc_ids.contains_key("npc:pc-smuggler"));
@@ -360,8 +360,8 @@ fn spawn_real_content_with_relationships_and_secrets() {
npcs_with_want += 1;
}
assert_eq!(
npcs_with_want, 20,
"All 20 NPCs should have Want components"
npcs_with_want, 23,
"All 23 NPCs should have Want components"
);
// Spot-check specific Want values