feat(simulation): add NPC name masking with role labels and color index
Server-side infrastructure for information asymmetry in dialogue. NPCs display role labels (Worker, Supervisor, Patron) instead of real names until the player explicitly learns them via KG lookup. NpcColorIndex (stable_id % 8) persists across name reveal. ConversationEvent and DialogueResponseEvent carry display names + color indices on the wire with serde(default) for compat. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -363,6 +363,8 @@ mod tests {
|
||||
line_id: "line_test".into(),
|
||||
text: "Welcome to the docks.".into(),
|
||||
speaker_entity_id: 100,
|
||||
speaker_color_index: 0,
|
||||
speaker_name: "Dock Worker".into(),
|
||||
});
|
||||
let text = format_snapshot_text(&snap);
|
||||
assert!(text.contains("Dialogue: [npc:100] \"Welcome to the docks.\""));
|
||||
|
||||
Reference in New Issue
Block a user