feat(content): add FRIEND packs and PC-as-NPC content (#297, #298, #401)

Kael Davan FRIEND pack (86 lines): 3 dialogue files across terminal,
bar, and corridors. 5-phase relationship arc with contradiction scene.

Sera Venn FRIEND pack (75 lines): full dialogue at The Last Shift with
trust-gated gossip, avoidance contradiction, and contaminated trust arc.

PC-as-NPC content (70 items): smuggler and detective as NPCs with
public-tier dialogue, tell-observation monologue, and bar variants.
Enables D-039 wow moment #4 (divergence reveal).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-13 17:51:54 +01:00
co-authored by Claude Opus 4.6
parent adaaebbe71
commit 99550ed0f5
10 changed files with 1773 additions and 0 deletions
@@ -0,0 +1,128 @@
# Kael Davan — THE FRIEND (Smuggler)
# Dialogue at Maintenance Corridors (Restricted Access)
# Ticket: #297 | Sprint: 5 | Tier 1 FRIEND NPC
# Voice: direct, practical, short sentences, first names, warm to trusted people
# Context: restricted maintenance corridors. High-stakes, operational, no warmth.
# This is where the contradiction surfaces (Phase 3-4 of the FRIEND arc).
location: maintenance-corridors
role: dock-worker
lines:
# ========================================
# RING OPERATIONS — corridor handoffs
# ========================================
- id: maintenance-corridors_d_001
text: "Package is in the junction locker. Renn picks it up in ten."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
mood: [focused]
topic: [cargo]
tags: [kael, ring-ops, renn, operational]
- id: maintenance-corridors_d_002
text: "B-7 is clear. Camera cycles in forty seconds — move fast."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
topic: [cargo, danger]
tags: [kael, ring-ops, operational]
knowledge_grant:
fact_id: investigation.surveillance_gaps
confidence: knows_details
- id: maintenance-corridors_d_003
text: "Chalk marks are fresh. Renn came through already. We're on schedule."
role: dock-worker
access: [insider]
trust: real
situation: [routine]
mood: [comfortable]
topic: [cargo]
tags: [kael, ring-ops, renn, operational]
- id: maintenance-corridors_d_004
text: "Don't use the C-section hatch tonight. Maintenance crew's working late."
role: dock-worker
access: [insider]
trust: real
situation: [routine]
mood: [concerned]
topic: [danger, cargo]
tags: [kael, ring-ops, operational, caution]
# ========================================
# CAUGHT — contradiction scene (Phase 3-4)
# When the smuggler finds Kael with the unknown contact
# ========================================
- id: maintenance-corridors_d_005
text: "What are you — wait. How long have you been standing there?"
role: dock-worker
access: [insider]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [danger]
tags: [kael, contradiction, phase-3]
- id: maintenance-corridors_d_006
text: "That was nobody. Maintenance contact. It's handled."
role: dock-worker
access: [insider]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [routine]
tags: [kael, deflection, lying, phase-4]
- id: maintenance-corridors_d_007
text: "I don't have to explain every conversation I have. Drop it."
role: dock-worker
access: [insider]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [trust]
tags: [kael, deflection, hostile-path, phase-4]
# ========================================
# SECRET — corridor confessions
# ========================================
- id: maintenance-corridors_d_008
text: "I'm trying to get out. That's all. I just want out."
role: dock-worker
access: [insider]
trust: secret
situation: [confrontation, alone]
mood: [conflicted]
topic: [personal, trust]
tags: [kael, confession, phase-5]
- id: maintenance-corridors_d_009
text: "Nils will kill me if he finds out. You know that. You know him."
role: dock-worker
access: [insider]
trust: secret
situation: [confrontation, alone]
mood: [worried]
topic: [danger, trust]
tags: [kael, confession, nils, phase-5]
- id: maintenance-corridors_d_010
text: "I found someone who can get me new papers. Off-station. Clean break."
role: dock-worker
access: [insider]
trust: secret
situation: [alone]
mood: [conflicted]
topic: [personal]
tags: [kael, confession, phase-5]
knowledge_grant:
fact_id: knowledge.kael_exit_plan
confidence: knows_details
@@ -0,0 +1,181 @@
# Kael Davan — THE FRIEND (Smuggler)
# Dialogue at The Last Shift (District Bar)
# Ticket: #297 | Sprint: 5 | Tier 1 FRIEND NPC
# Voice: direct, practical, short sentences, first names, warm to trusted people
# Context: off-shift social space. Kael is looser here — still guarded, but warmer.
location: the-last-shift
role: dock-worker
lines:
# ========================================
# SOCIAL — off-shift casual
# ========================================
- id: the-last-shift_d_001
text: "Saved you a seat. Lera's got the spiced rice tonight."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social, arrival]
mood: [fond]
topic: [personal, colleague]
tags: [kael, greeting, phase-1]
- id: the-last-shift_d_002
text: "First round's mine. Don't argue — you covered me last week."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [fond]
topic: [personal]
tags: [kael, social, phase-1]
- id: the-last-shift_d_003
text: "Voss tried to dock my overtime again. Lera told him off. Wish I'd seen it."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [comfortable]
topic: [colleague, routine]
tags: [kael, humor, voss, lera]
- id: the-last-shift_d_004
text: "Torek's holding court at the bar again. How does he afford to drink like that?"
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [comfortable]
topic: [colleague]
tags: [kael, observational, torek]
knowledge_grant:
fact_id: investigation.torek_spending_pattern
confidence: suspects
- id: the-last-shift_d_005
text: "Quiet night. I like these ones. No drama, just people winding down."
role: dock-worker
access: [peer]
trust: surface
situation: [bar_evening, social]
mood: [comfortable]
topic: [personal]
tags: [kael, atmospheric]
- id: the-last-shift_d_006
text: "Lera asked about my overtime schedule. Told her I'm trying to cut back."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [comfortable]
topic: [personal, routine]
tags: [kael, casual, lera]
# ========================================
# NAIA REFERENCES — personal, unprompted
# ========================================
- id: the-last-shift_d_007
text: "Naia's meeting me here after her shift. Try not to embarrass me."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [fond]
topic: [personal]
tags: [kael, unprompted, naia-reference]
- id: the-last-shift_d_008
text: "Naia wants to plan a trip. Off-station. Somewhere with actual sky. Sounds expensive."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [fond]
topic: [personal]
tags: [kael, unprompted, naia-reference]
- id: the-last-shift_d_009
text: "She worries. I tell her it's just dock work. She doesn't buy it anymore."
role: dock-worker
access: [insider]
trust: real
situation: [bar_evening, social, alone]
mood: [conflicted]
topic: [personal, trust]
tags: [kael, naia-reference, vulnerability]
# ========================================
# RING OPS — bar context, trust-gated
# ========================================
- id: the-last-shift_d_010
text: "Nils wants to talk. Tomorrow, bay side. Said it's about volume."
role: dock-worker
access: [insider]
trust: real
situation: [bar_evening, social]
mood: [concerned]
topic: [danger]
tags: [kael, ring-ops, nils]
- id: the-last-shift_d_011
text: "Keep it light tonight. Torek's listening and he doesn't know when to stop."
role: dock-worker
access: [insider]
trust: real
situation: [bar_evening, social]
mood: [concerned]
topic: [danger, colleague]
tags: [kael, ring-ops, torek, caution]
- id: the-last-shift_d_012
text: "Lera knows more than she lets on. She won't say anything — but don't test it."
role: dock-worker
access: [insider]
trust: real
situation: [bar_evening, social, alone]
mood: [concerned]
topic: [colleague, danger]
tags: [kael, ring-ops, lera, caution]
knowledge_grant:
fact_id: knowledge.bar_ring_awareness
confidence: suspects
# ========================================
# POST-CONTRADICTION — at the bar, damaged trust
# ========================================
- id: the-last-shift_d_013
text: "I saved your seat. ...Force of habit."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [bar_evening, social]
mood: [conflicted]
topic: [personal]
tags: [kael, contaminated-trust, phase-5]
- id: the-last-shift_d_014
text: "Naia keeps asking why I'm quiet. I told her work stress. Not wrong."
role: dock-worker
access: [insider]
trust: real
situation: [bar_evening, social]
mood: [conflicted]
topic: [personal]
tags: [kael, contaminated-trust, naia-reference, phase-5]
- id: the-last-shift_d_015
text: "We're good, right? You and me. We're still good."
role: dock-worker
access: [insider]
trust: surface
situation: [bar_evening, social]
mood: [worried]
topic: [trust, personal]
tags: [kael, vulnerability, phase-5]
@@ -0,0 +1,38 @@
# PC-as-NPC: The Detective (NPC mode, seen by smuggler player)
# Dialogue at The Last Shift (District Bar)
# Ticket: #401 | Sprint: 5 | PC-as-NPC content
# Voice: professional, measured, slightly less formal in social setting
# Context: public-tier only. The detective-NPC is off-duty, sitting with Sera.
# Slightly more human than at the hub, but still institutional.
location: the-last-shift
role: commission-liaison
lines:
- id: the-last-shift_d_204
text: "Good evening. Off the clock, more or less. Enjoying the local hospitality."
role: commission-liaison
access: [public]
trust: surface
situation: [bar_evening, greeting]
mood: [comfortable]
topic: [personal]
tags: [pc-detective, greeting, public-tier]
- id: the-last-shift_d_205
text: "Ms. Venn recommended the ale. She was right. This district has its charms."
role: commission-liaison
access: [public]
trust: surface
situation: [bar_evening, social]
topic: [routine, colleague]
tags: [pc-detective, social, public-tier, sera]
- id: the-last-shift_d_206
text: "Just unwinding. The review can wait until morning. Have a good evening."
role: commission-liaison
access: [public]
trust: surface
situation: [bar_evening, confrontation]
topic: [routine]
tags: [pc-detective, deflection, public-tier]
@@ -0,0 +1,39 @@
# PC-as-NPC: The Smuggler (NPC mode, seen by detective player)
# Dialogue at The Last Shift (District Bar)
# Ticket: #401 | Sprint: 5 | PC-as-NPC content
# Voice: casual, guarded, short sentences, contractions always
# Context: public-tier only. The smuggler-NPC is off-shift, drinking with Kael.
# More relaxed than at the hub, but still guarded around Commission.
location: the-last-shift
role: dock-worker
lines:
- id: the-last-shift_d_201
text: "Evening. Just having a drink with friends. Can I help you?"
role: dock-worker
access: [public]
trust: surface
situation: [bar_evening, greeting]
mood: [comfortable]
topic: [personal]
tags: [pc-smuggler, greeting, public-tier]
- id: the-last-shift_d_202
text: "Lera's ale is the one good thing about a ten-hour shift. Don't let anyone tell you different."
role: dock-worker
access: [public]
trust: surface
situation: [bar_evening, social]
mood: [comfortable]
topic: [routine]
tags: [pc-smuggler, social, public-tier]
- id: the-last-shift_d_203
text: "Off the clock, thanks. Whatever it is, it can wait until morning."
role: dock-worker
access: [authority]
trust: surface
situation: [bar_evening, confrontation]
topic: [routine]
tags: [pc-smuggler, deflection, public-tier]
@@ -0,0 +1,642 @@
# FRIEND Content Pack: Sera Venn — Detective's FRIEND
# Ticket: #298 | Sprint: 5
# Author: Paula (profile + relationship arc), Mellanie (voice validation)
# Pattern: FRIEND + WITNESS | Bonded: detective
# Location: The Last Shift (bar)
# Arc: trust > background data > pattern > question > contaminated trust
#
# Content breakdown (dialogue — this file):
# Greeting pool: 8 lines
# Routine/social dialogue: 10 lines
# Trust-gated dialogue: 18 lines (6 surface, 7 real, 5 secret)
# Unprompted disclosure: 6 lines
# Contradiction/deflection: 8 lines
# Post-discovery dialogue: 5 lines
# Subtotal: 55 dialogue lines
#
# Monologue (in monologue/detective/the-last-shift.yaml, _m_d_031-042):
# Detective tell observations: 4 lines
# Detective post-conversation reflections: 3 lines
# Detective arc phase transitions: 3 lines
# Detective contaminated trust reactions: 2 lines
# Subtotal: 12 detective monologue lines
#
# Monologue (in monologue/smuggler/the-last-shift.yaml, _m_s_031-038):
# Smuggler dual-lens observations: 8 lines
# Subtotal: 8 smuggler monologue lines
#
# FRIEND pack total: 75 authored lines
location: the-last-shift
role: bar-regular
lines:
# ============================================================
# GREETING POOL (8 lines)
# Phase 1-2: warm, welcoming, peer-level
# Phase 3-5: same warmth, but the detective is now watching
# ============================================================
- id: the-last-shift_d_101
text: "There you are. Grab a seat -- Lera's doing that thing with the grain spirit again. Don't ask, just trust me and order the ale."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [personal]
mood: [fond, comfortable]
tags: [greeting, phase-1, establishes-warmth]
- id: the-last-shift_d_102
text: "Corner booth's free. I saved it -- force of habit."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, arrival]
topic: [personal]
mood: [fond]
tags: [greeting, phase-1, spatial-anchor]
- id: the-last-shift_d_103
text: "You look like you've been reading manifests all day. Sit. I'll get you something that isn't recycled air."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [personal, routine]
mood: [fond, comfortable]
tags: [greeting, phase-1-2]
- id: the-last-shift_d_104
text: "Evening. Same booth, same drink?"
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, arrival]
topic: [routine]
mood: [comfortable]
tags: [greeting, phase-2-5, repeatable]
- id: the-last-shift_d_105
text: "Good timing. Naia was here earlier -- you just missed her."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [colleague, personal]
mood: [comfortable]
tags: [greeting, phase-2, naia-reference]
- id: the-last-shift_d_106
text: "Grab a seat. Quiet night so far -- Lera's in a good mood, which means the ale's fresh."
role: bar-regular
access: [peer, public]
trust: surface
situation: [bar_evening, social]
topic: [routine]
mood: [comfortable]
tags: [greeting, phase-1-3]
- id: the-last-shift_d_107
text: "Hey. Long day?"
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, arrival]
topic: [personal]
mood: [concerned]
tags: [greeting, phase-3-5, post-pattern, shorter]
- id: the-last-shift_d_108
text: "Same time, same place. You're becoming a regular."
role: bar-regular
access: [peer, public]
trust: surface
situation: [bar_evening, arrival]
topic: [routine, personal]
mood: [comfortable]
tags: [greeting, phase-2-3]
# ============================================================
# ROUTINE / SOCIAL DIALOGUE (10 lines)
# What Sera says during normal bar evenings
# ============================================================
- id: the-last-shift_d_110
text: "The Last Shift. Official name. Everyone calls it Lera's, though. Eighteen years behind that counter."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [routine, colleague]
mood: [comfortable]
tags: [orientation, district-background]
- id: the-last-shift_d_111
text: "See the card game in the corner? That's Harek's table. Security officer, off-duty. Harmless -- just loud."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [colleague]
mood: [comfortable]
tags: [orientation, npc-introduction]
- id: the-last-shift_d_112
text: "Most of the after-shift crowd comes from the Terminal. Dock workers, scheduler types. They drink hard and leave early."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [routine, colleague]
mood: [comfortable]
tags: [orientation, district-background]
- id: the-last-shift_d_113
text: "Sova's not bad, once you know the rhythms. Shift change is when things move. Between shifts is when you can breathe."
role: bar-regular
access: [peer]
trust: surface
situation: [social]
topic: [routine]
mood: [comfortable]
tags: [setting-atmosphere]
- id: the-last-shift_d_114
text: "I do lattice calibration, mostly. Commission-standard equipment checks. Relay nodes, terminal diagnostics. Exciting stuff."
role: bar-regular
access: [peer]
trust: surface
situation: [social]
topic: [routine, institution]
mood: [comfortable]
tags: [self-introduction, institutional-background]
- id: the-last-shift_d_115
text: "I transferred here fourteen months ago. Border-system relay posting before this. Sova was supposed to be the quiet one."
role: bar-regular
access: [peer]
trust: surface
situation: [social]
topic: [personal, institution]
mood: [comfortable]
tags: [backstory, phase-1]
- id: the-last-shift_d_116
text: "Lera remembers every regular's order. Eighteen years of that. Don't ask how she does it -- she'll just pour you one and prove it."
role: bar-regular
access: [peer, public]
trust: surface
situation: [bar_evening, social]
topic: [colleague]
mood: [fond]
tags: [community-texture]
- id: the-last-shift_d_117
text: "The shift crowd clears out by 19:00. After that it's just us -- regulars, a few stragglers. The good hours."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening]
topic: [routine]
mood: [comfortable]
tags: [setting-atmosphere, routine]
- id: the-last-shift_d_118
text: "You adapting to station gravity yet? Point-nine-three standard takes a week to stop noticing."
role: bar-regular
access: [peer]
trust: surface
situation: [social]
topic: [personal]
mood: [comfortable]
tags: [setting-detail, phase-1]
- id: the-last-shift_d_119
text: "I like this booth. Corner. You can see the door and the bar. Force of institutional habit, I suppose."
role: bar-regular
access: [peer]
trust: surface
situation: [social, bar_evening]
topic: [personal]
mood: [comfortable]
tags: [spatial-anchor, character-detail]
# ============================================================
# TRUST-GATED DIALOGUE (18 lines)
# Surface (6): what Sera tells acquaintances
# Real (7): what Sera shares with trusted friends
# Secret (5): the concealment, the evidence, the desperation
# ============================================================
# --- Surface trust ---
- id: the-last-shift_d_120
text: "The Commission runs maintenance checks quarterly. I handle the field side -- equipment calibration, relay diagnostics. Standard."
role: bar-regular
access: [peer, authority]
trust: surface
situation: [social]
topic: [institution, routine]
mood: [comfortable]
tags: [institutional-background]
- id: the-last-shift_d_121
text: "Naia teaches the station kids. Primary education, mostly. She's good at it -- patient. The kids adore her."
role: bar-regular
access: [peer]
trust: surface
situation: [social, bar_evening]
topic: [colleague, personal]
mood: [fond]
tags: [naia-reference, phase-2]
- id: the-last-shift_d_122
text: "The district runs on freight. Terminal handles most of it -- container processing, manifest filing. Bread and butter."
role: bar-regular
access: [peer, public]
trust: surface
situation: [social]
topic: [routine]
mood: [comfortable]
tags: [district-context]
- id: the-last-shift_d_123
text: "I don't know the dock workers well. I'm Commission, they're logistics. Different worlds, same station."
role: bar-regular
access: [peer, authority]
trust: surface
situation: [social, investigation]
topic: [colleague, institution]
mood: [comfortable]
tags: [deflection-surface, distance-from-hub]
- id: the-last-shift_d_124
text: "Most people here are decent. Working shifts, paying bills, coming to Lera's. It's a community."
role: bar-regular
access: [peer, public]
trust: surface
situation: [social]
topic: [colleague, personal]
mood: [comfortable]
tags: [community-framing]
- id: the-last-shift_d_125
text: "I can look things up if you need. Commission terminals access compliance records, shift logs, equipment histories. Part of the job."
role: bar-regular
access: [peer, authority]
trust: surface
situation: [social]
topic: [institution]
mood: [comfortable]
tags: [information-offer, phase-2, overcompensation-seed]
# --- Real trust ---
- id: the-last-shift_d_130
text: "Naia's been worried lately. About Kael -- her partner. He's a dock worker at the Terminal. Late nights, evasive answers. She confided in me."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [colleague, personal, trust]
mood: [concerned]
tags: [naia-kael-link, phase-2, critical-information]
knowledge_grant:
fact_id: "relationship.kael_naia_connection"
confidence: "knows_of"
- id: the-last-shift_d_131
text: "The Commission kiosk on Level 3 logs every compliance check. If someone ran an unauthorized scan, it would show up there. Hypothetically."
role: bar-regular
access: [peer, authority]
trust: real
situation: [social]
topic: [institution, investigation]
mood: [analytical]
tags: [institutional-access, phase-2-3, self-incriminating-hint]
- id: the-last-shift_d_132
text: "I worry about Naia. She doesn't deserve whatever's happening. She just wants Kael to come home at a reasonable hour."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [personal, trust]
mood: [concerned, conflicted]
tags: [motivation-reveal, phase-2-3]
- id: the-last-shift_d_133
text: "Compliance data goes back eighteen months on the Commission systems. Anyone with field-tech access could cross-reference shift records with manifest filings."
role: bar-regular
access: [peer, authority]
trust: real
situation: [social]
topic: [institution, investigation]
mood: [analytical]
tags: [institutional-capability, overcompensation, phase-3-4]
knowledge_grant:
fact_id: "investigation.manifest_discrepancy"
confidence: "suspects"
- id: the-last-shift_d_134
text: "I'm not an investigator. I calibrate equipment and file reports. But I notice things. Patterns in the data, mostly."
role: bar-regular
access: [peer]
trust: real
situation: [social]
topic: [institution, personal]
mood: [analytical]
tags: [self-awareness, capability-reveal]
- id: the-last-shift_d_135
text: "You know me. I wouldn't sit on something if I thought it mattered. But not everything that looks irregular IS irregular."
role: bar-regular
access: [peer]
trust: real
situation: [social, investigation]
topic: [trust]
mood: [conflicted]
tags: [deflection-real-tier, phase-4, the-lie]
- id: the-last-shift_d_136
text: "Some of the regulars here have hard lives. Grey economy, tight margins. I'm not judging. I'm just a field tech who likes the ale."
role: bar-regular
access: [peer]
trust: real
situation: [bar_evening, social]
topic: [money, personal]
mood: [conflicted]
tags: [moral-position, community-loyalty]
# --- Secret trust ---
- id: the-last-shift_d_140
text: "I ran a compliance check. Unauthorized. Six weeks ago. Naia was so worried about Kael -- I thought I could help. I found manifest discrepancies tied to his shifts."
role: bar-regular
access: [peer]
trust: secret
situation: [alone, social]
topic: [investigation, trust, personal]
mood: [conflicted]
tags: [confession, phase-5, critical-reveal]
knowledge_grant:
fact_id: "investigation.manifest_discrepancy"
confidence: "knows_details"
- id: the-last-shift_d_141
text: "If I report it, Naia's life falls apart. Kael gets investigated. Maybe arrested. She didn't ask me to find this. I did it on my own."
role: bar-regular
access: [peer]
trust: secret
situation: [alone, social]
topic: [personal, trust, institution]
mood: [conflicted]
tags: [motivation-confession, phase-5]
- id: the-last-shift_d_142
text: "The irregularities correlate with Torek Lintar's inspection shifts. That's why I can't -- I can't be near him. He doesn't know I know."
role: bar-regular
access: [peer]
trust: secret
situation: [alone]
topic: [investigation, danger]
mood: [worried, conflicted]
tags: [torek-link, avoidance-explanation, phase-5]
knowledge_grant:
fact_id: "investigation.shift_mismatch"
confidence: "knows_details"
- id: the-last-shift_d_143
text: "I don't know what you're looking for. I told you everything I know. If you're asking whether I'm hiding something -- I'm a field tech, not an analyst."
role: bar-regular
access: [peer, authority]
trust: secret
situation: [investigation, confrontation]
topic: [trust, investigation]
mood: [suspicious, conflicted]
tags: [denial-under-pressure, phase-4-5, the-wall]
- id: the-last-shift_d_144
text: "Every tip I gave you was real. The district background, the shift patterns, the regulars. I didn't steer you wrong. I just... didn't give you everything."
role: bar-regular
access: [peer]
trust: secret
situation: [alone, social]
topic: [trust, personal]
mood: [conflicted]
tags: [retrospective-confession, phase-5, emotional-payload]
# ============================================================
# UNPROMPTED DISCLOSURE (6 lines)
# Trust + mood weighted — Sera volunteers information
# Phase 1-2: genuinely helpful. Phase 3-5: overcompensation.
# ============================================================
- id: the-last-shift_d_150
text: "Oh -- before I forget. The dock scheduler, Maret? She's sharp. If you need freight records context, she's the one to ask."
role: bar-regular
access: [peer]
trust: surface
situation: [social, bar_evening]
topic: [colleague, investigation]
mood: [comfortable]
tags: [unprompted, genuine-help, phase-1-2]
knowledge_grant:
fact_id: "relationship.trust_network"
confidence: "suspects"
- id: the-last-shift_d_151
text: "I checked the relay calibration logs for the Terminal this morning. Nothing flagged. But the data throughput was higher than standard -- more manifests processed than usual."
role: bar-regular
access: [peer, authority]
trust: real
situation: [social]
topic: [institution, cargo]
mood: [analytical]
tags: [unprompted, overcompensation, phase-3-4]
- id: the-last-shift_d_152
text: "I asked around -- quietly -- about the shift rotation schedule. Voss has been adjusting it more than usual this cycle. Might mean nothing."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [routine, investigation]
mood: [analytical, concerned]
tags: [unprompted, overcompensation, phase-3-4]
- id: the-last-shift_d_153
text: "The maintenance corridor access logs are Commission-maintained. I can pull them if you need. Just say the word."
role: bar-regular
access: [peer, authority]
trust: real
situation: [social]
topic: [institution, investigation]
mood: [comfortable]
tags: [unprompted, information-offer, overcompensation, phase-3-5]
- id: the-last-shift_d_154
text: "Naia mentioned Kael came home late again last night. Third time this week. She's trying not to make it a thing."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [personal, colleague]
mood: [concerned]
tags: [unprompted, naia-worry, phase-2-3]
knowledge_grant:
fact_id: "relationship.kael_naia_connection"
confidence: "knows_details"
- id: the-last-shift_d_155
text: "You should know -- Lera watches out for her regulars. If people have been asking about you, she'd know. She just won't volunteer it."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [colleague, trust, danger]
mood: [concerned]
tags: [unprompted, genuine-help, phase-2-3]
# ============================================================
# CONTRADICTION / DEFLECTION DIALOGUE (8 lines)
# Phase 3-4: avoidance excuses, topic deflection, controlled evasion
# ============================================================
- id: the-last-shift_d_160
text: "Actually, I should head out. Early shift tomorrow -- calibration rounds start at 07:30."
role: bar-regular
access: [peer, public]
trust: surface
situation: [bar_evening]
topic: [routine]
mood: [comfortable]
tags: [avoidance-excuse-1, torek-trigger, phase-3]
- id: the-last-shift_d_161
text: "Sorry -- headache coming on. Station air does that sometimes. I'll catch you tomorrow."
role: bar-regular
access: [peer, public]
trust: surface
situation: [bar_evening]
topic: [personal]
mood: [comfortable]
tags: [avoidance-excuse-2, torek-trigger, phase-3]
- id: the-last-shift_d_162
text: "I need to check something at the Commission kiosk. Forgot to file a diagnostic report. I'll be quick -- or not. You know how the system is."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening]
topic: [institution, routine]
mood: [comfortable]
tags: [avoidance-excuse-3, torek-trigger, phase-3]
- id: the-last-shift_d_163
text: "Torek? He's just loud. I don't love loud drunks. Nothing personal -- I just like a quieter evening."
role: bar-regular
access: [peer]
trust: surface
situation: [social, investigation]
topic: [colleague]
mood: [comfortable]
tags: [torek-deflection, phase-4, the-deflection]
- id: the-last-shift_d_164
text: "Manifests? I wouldn't know -- I'm on the equipment side, not the freight side. Different department entirely."
role: bar-regular
access: [peer, authority]
trust: surface
situation: [investigation, social]
topic: [cargo, institution]
mood: [comfortable]
tags: [topic-deflection, cargo-avoidance, phase-3-5]
- id: the-last-shift_d_165
text: "Anyway -- did you try the ale? Lera got a new supply run in. Much better than last week's batch."
role: bar-regular
access: [peer]
trust: surface
situation: [social, bar_evening]
topic: [routine]
mood: [comfortable]
tags: [redirect, warmth-recovery, phase-4]
- id: the-last-shift_d_166
text: "I'm just a field tech. I maintain equipment. I don't track people or shipments -- that's your department."
role: bar-regular
access: [peer, authority]
trust: surface
situation: [investigation]
topic: [institution]
mood: [suspicious]
tags: [deflection-firm, phase-4-5, the-wall]
- id: the-last-shift_d_167
text: "Let's talk about something else. How's the investigation going -- generally? Making progress?"
role: bar-regular
access: [peer]
trust: real
situation: [social, investigation]
topic: [investigation, trust]
mood: [conflicted]
tags: [redirect-to-detective, controlled-recovery, phase-4]
# ============================================================
# POST-DISCOVERY DIALOGUE (5 lines)
# Phase 5: after the detective knows something is off
# Same surface warmth, but calibrated. Trust is contaminated.
# ============================================================
- id: the-last-shift_d_170
text: "Same booth. Drink's on me tonight."
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, arrival]
topic: [personal]
mood: [fond]
tags: [post-discovery, surface-warmth, phase-5]
- id: the-last-shift_d_171
text: "I pulled the relay diagnostic data you asked about. Clean. No anomalies in the terminal equipment this quarter."
role: bar-regular
access: [peer, authority]
trust: real
situation: [social]
topic: [institution]
mood: [comfortable]
tags: [post-discovery, overcompensation, phase-5]
- id: the-last-shift_d_172
text: "You've been quiet tonight. Everything all right with the case?"
role: bar-regular
access: [peer]
trust: surface
situation: [bar_evening, social]
topic: [personal, investigation]
mood: [concerned]
tags: [post-discovery, awareness, phase-5]
- id: the-last-shift_d_173
text: "I know you're good at what you do. That's why I'm glad you're here. This district needed someone thorough."
role: bar-regular
access: [peer]
trust: real
situation: [social]
topic: [trust, personal]
mood: [fond, conflicted]
tags: [post-discovery, genuine-but-contaminated, phase-5]
- id: the-last-shift_d_174
text: "If there's anything I can help with -- anything at all -- you just ask. You know that."
role: bar-regular
access: [peer]
trust: real
situation: [social, bar_evening]
topic: [trust, personal]
mood: [fond, concerned]
tags: [post-discovery, overcompensation, phase-5, closing-line]
@@ -0,0 +1,424 @@
# Kael Davan — THE FRIEND (Smuggler)
# Dialogue at The Terminal (Logistics Hub)
# Ticket: #297 | Sprint: 5 | Tier 1 FRIEND NPC
# Voice: direct, practical, short sentences, first names, warm to trusted people
# Tell: looks left before answering when lying
location: the-terminal
role: dock-worker
lines:
# ========================================
# GREETINGS — Phase 1: Comfort (0-10 min)
# ========================================
- id: the-terminal_d_001
text: "There you are. Good — I was starting to wonder."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [arrival, shift_start]
mood: [fond]
topic: [colleague]
tags: [kael, greeting, phase-1]
- id: the-terminal_d_002
text: "Morning. Freight's stacked clean today. Should be a smooth one."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_start]
mood: [comfortable]
topic: [routine]
tags: [kael, greeting, phase-1]
- id: the-terminal_d_003
text: "Voss has the schedule posted already. Keen today. That's suspicious."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_start]
mood: [comfortable]
topic: [colleague, routine]
tags: [kael, greeting, humor]
- id: the-terminal_d_004
text: "Hey. Grab a coffee before Voss finds something to complain about."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_start, social]
mood: [fond]
topic: [colleague]
tags: [kael, greeting, phase-1]
- id: the-terminal_d_005
text: "You look like you slept about as well as I did."
role: dock-worker
access: [peer]
trust: surface
situation: [arrival, social]
mood: [comfortable]
topic: [personal]
tags: [kael, greeting, casual]
# Public greeting for detective / outsiders
- id: the-terminal_d_006
text: "Can I help you? If you're looking for the supervisor, Voss is by the schedule board."
role: dock-worker
access: [public, authority]
trust: surface
situation: [arrival]
mood: [comfortable]
topic: [routine]
tags: [kael, greeting, outsider]
# ========================================
# SHIFT TALK — routine dialogue
# ========================================
- id: the-terminal_d_007
text: "Bay three's running behind. If we don't clear it by shift end, Voss is going to lose it."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [routine, shift_start]
mood: [comfortable]
topic: [routine, cargo]
tags: [kael, operational]
- id: the-terminal_d_008
text: "Manifest says this one's forty kilos over. Logging error, probably."
role: dock-worker
access: [public, peer]
trust: surface
situation: [routine]
mood: [comfortable]
topic: [cargo, routine]
tags: [kael, operational]
knowledge_grant:
fact_id: investigation.manifest_discrepancy
confidence: suspects
- id: the-terminal_d_009
text: "Night shift left the dock in decent shape for once. Miracles happen."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_start]
mood: [comfortable]
topic: [routine]
tags: [kael, humor]
- id: the-terminal_d_010
text: "Loading arm three's been grinding all week. Someone should file a maintenance ticket."
role: dock-worker
access: [public, peer]
trust: surface
situation: [routine]
mood: [comfortable]
topic: [routine]
tags: [kael, environmental]
- id: the-terminal_d_011
text: "Maret rerouted the bay four queue. Tight schedule today."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [routine]
mood: [comfortable]
topic: [cargo, colleague]
tags: [kael, operational, maret]
- id: the-terminal_d_012
text: "Shift transition in twenty. After that it's Drin's problem."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_end, shift_transition]
mood: [comfortable]
topic: [routine]
tags: [kael, operational]
- id: the-terminal_d_013
text: "Naia's got a school event tonight. I'm heading home straight after shift."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [social, routine]
mood: [fond]
topic: [personal]
tags: [kael, naia-reference, casual]
- id: the-terminal_d_014
text: "New hire started on bay seven. Keen. Reminds me of my first week."
role: dock-worker
access: [public, peer]
trust: surface
situation: [routine, social]
topic: [colleague]
tags: [kael, observational]
# ========================================
# RING COORDINATION — insider, real trust
# ========================================
- id: the-terminal_d_015
text: "Container 4471 is flagged. I'll reroute it during shift transition."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
mood: [focused]
topic: [cargo]
tags: [kael, ring-ops, operational, phase-2]
- id: the-terminal_d_016
text: "Voss kept the window clear. Twenty minutes, maybe twenty-five."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
mood: [focused]
topic: [cargo, routine]
tags: [kael, ring-ops, operational, phase-2]
- id: the-terminal_d_017
text: "Renn's on the corridor side. Package moves when I give the signal."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
mood: [focused]
topic: [cargo]
tags: [kael, ring-ops, renn, phase-2]
- id: the-terminal_d_018
text: "Manifest's clean on my end. Maret processed it without questions."
role: dock-worker
access: [insider]
trust: real
situation: [routine]
mood: [comfortable]
topic: [cargo]
tags: [kael, ring-ops, maret, phase-2]
- id: the-terminal_d_019
text: "Nils wants higher volume next cycle. I told him we're already tight."
role: dock-worker
access: [insider]
trust: real
situation: [social]
mood: [concerned]
topic: [danger, trust]
tags: [kael, ring-ops, nils, tension, phase-2]
- id: the-terminal_d_020
text: "Drin waved through bay four without checking. At least he's reliable."
role: dock-worker
access: [insider]
trust: real
situation: [routine]
topic: [colleague]
tags: [kael, ring-ops, drin, phase-2]
knowledge_grant:
fact_id: investigation.drin_inspection_pattern
confidence: knows_details
- id: the-terminal_d_021
text: "Keep an eye on Maret. She's been looking at the manifests longer than usual."
role: dock-worker
access: [insider]
trust: real
situation: [routine, social]
mood: [worried]
topic: [colleague, danger]
tags: [kael, ring-ops, maret, caution, phase-2]
- id: the-terminal_d_022
text: "There's a sealed one in the batch tonight. Nils says components. Don't open it."
role: dock-worker
access: [insider]
trust: real
situation: [shift_transition]
mood: [concerned]
topic: [cargo, danger]
tags: [kael, ring-ops, contraband, phase-2]
# ========================================
# TRUST-GATED — deep trust, secret tier
# ========================================
- id: the-terminal_d_023
text: "Some days I wonder how long we can keep this up."
role: dock-worker
access: [insider]
trust: secret
situation: [social, alone]
mood: [conflicted]
topic: [trust, personal]
tags: [kael, vulnerability, friend-arc]
- id: the-terminal_d_024
text: "Naia asked me again last night. Where I go. Why I'm late. I hate lying to her."
role: dock-worker
access: [insider]
trust: secret
situation: [social, alone]
mood: [conflicted]
topic: [personal, trust]
tags: [kael, naia-reference, vulnerability]
- id: the-terminal_d_025
text: "If something happens to me — look out for Naia. Promise me that."
role: dock-worker
access: [insider]
trust: secret
situation: [alone]
mood: [worried]
topic: [personal, trust]
tags: [kael, naia-reference, vulnerability, friend-arc]
# ========================================
# UNPROMPTED — Kael volunteers or warns
# ========================================
- id: the-terminal_d_026
text: "Heads up — Voss is in a mood. Keep your head down this shift."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_start]
mood: [concerned]
topic: [colleague, danger]
tags: [kael, unprompted, warning]
- id: the-terminal_d_027
text: "I'm buying at Lera's after shift. You're coming. No arguments."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [shift_end, social]
mood: [fond]
topic: [personal, colleague]
tags: [kael, unprompted, social]
- id: the-terminal_d_028
text: "Torek's been running his mouth at the bar. You might want to have a word."
role: dock-worker
access: [insider]
trust: real
situation: [social]
mood: [worried]
topic: [danger, colleague]
tags: [kael, unprompted, torek, caution]
# ========================================
# DEFLECTION — Phase 2-4: Post-contradiction
# ========================================
- id: the-terminal_d_029
text: "It's nothing. Just work stuff."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [confrontation, social]
mood: [concerned]
topic: [personal]
tags: [kael, deflection, phase-4]
- id: the-terminal_d_030
text: "Don't worry about it. I've got it handled."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [personal, trust]
tags: [kael, deflection, phase-4]
- id: the-terminal_d_031
text: "I was checking on a maintenance issue. That's all."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [routine]
tags: [kael, deflection, lying, phase-4]
- id: the-terminal_d_032
text: "You're reading too much into it. Come on — shift's starting."
role: dock-worker
access: [insider, peer]
trust: surface
situation: [confrontation, shift_start]
mood: [concerned]
topic: [routine, trust]
tags: [kael, deflection, subject-change, phase-4]
- id: the-terminal_d_033
text: "Can we not do this here? Voss is watching."
role: dock-worker
access: [insider]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [danger]
tags: [kael, deflection, phase-4]
# ========================================
# CONFRONTATION RESPONSES — Phase 4-5
# ========================================
# Path A: Gentle confrontation
- id: the-terminal_d_034
text: "I... yeah. I need to tell you something. But not here."
role: dock-worker
access: [insider]
trust: real
situation: [confrontation, alone]
mood: [conflicted]
topic: [trust, personal]
tags: [kael, confession-path, phase-5]
# Path B: Harsh pressure
- id: the-terminal_d_035
text: "You want to report me? Go ahead. See what Nils does to both of us."
role: dock-worker
access: [insider]
trust: surface
situation: [confrontation]
mood: [concerned]
topic: [danger, trust]
tags: [kael, hostile-path, phase-5]
# If smuggler pushes further (gentle)
- id: the-terminal_d_036
text: "Naia can't keep living like this. Neither can I. I'm looking for a way out."
role: dock-worker
access: [insider]
trust: secret
situation: [confrontation, alone]
mood: [conflicted]
topic: [personal, trust]
tags: [kael, confession, naia-reference, phase-5]
# If detective confronts (authority path)
- id: the-terminal_d_037
text: "I don't know what you're talking about. I load containers. That's my job."
role: dock-worker
access: [public, authority]
trust: surface
situation: [confrontation, investigation]
topic: [routine]
tags: [kael, deflection, detective-path]
- id: the-terminal_d_038
text: "You want to ask questions, talk to Voss. He runs the schedule."
role: dock-worker
access: [public, authority]
trust: surface
situation: [confrontation, investigation]
topic: [colleague, routine]
tags: [kael, deflection, detective-path, voss]
@@ -0,0 +1,64 @@
# PC-as-NPC: The Detective (NPC mode, seen by smuggler player)
# Dialogue at The Terminal (Logistics Hub)
# Ticket: #401 | Sprint: 5 | PC-as-NPC content
# Voice: professional, measured, complete sentences, formal. Surnames for strangers.
# Context: public-tier only. The detective-NPC responds to the smuggler with
# institutional blandness — standard compliance officer, nothing to see here.
# Agency: NEUTRAL PATH. No confrontations, no evidence reveals.
location: the-terminal
role: commission-liaison
lines:
# ========================================
# PUBLIC-TIER — smuggler approaches detective-NPC
# These are the only lines the smuggler can trigger.
# First playthrough: institutional threat.
# Second playthrough: "That's me."
# ========================================
- id: the-terminal_d_044
text: "Good morning. Commission Liaison Office. I'm conducting a routine compliance review."
role: commission-liaison
access: [public]
trust: surface
situation: [arrival, greeting]
mood: [comfortable]
topic: [routine]
tags: [pc-detective, greeting, public-tier]
- id: the-terminal_d_045
text: "Standard review. Manifest reconciliation, scheduling compliance. Nothing unusual."
role: commission-liaison
access: [public]
trust: surface
situation: [social]
topic: [routine]
tags: [pc-detective, purpose-question, public-tier]
- id: the-terminal_d_046
text: "Only been here a few days. Seems like a well-run operation."
role: commission-liaison
access: [public]
trust: surface
situation: [social]
topic: [routine]
tags: [pc-detective, district-question, public-tier]
- id: the-terminal_d_047
text: "Ms. Venn? Colleague. We've worked in the same division."
role: commission-liaison
access: [public]
trust: surface
situation: [social]
topic: [colleague]
tags: [pc-detective, sera-question, public-tier]
- id: the-terminal_d_048
text: "I appreciate the interest, but I'm sure you have cargo to route. I won't keep you."
role: commission-liaison
access: [public, authority]
trust: surface
situation: [confrontation]
topic: [routine]
tags: [pc-detective, deflection, public-tier]
@@ -0,0 +1,64 @@
# PC-as-NPC: The Smuggler (NPC mode, seen by detective player)
# Dialogue at The Terminal (Logistics Hub)
# Ticket: #401 | Sprint: 5 | PC-as-NPC content
# Voice: casual, guarded, short sentences, contractions always
# Context: public-tier only. The smuggler-NPC responds to the detective with
# polite minimum — standard dock worker who doesn't want Commission attention.
# Agency: NEUTRAL PATH. No dramatic choices, no revelations.
location: the-terminal
role: dock-worker
lines:
# ========================================
# PUBLIC-TIER — detective approaches smuggler-NPC
# These are the only lines the detective can trigger.
# First playthrough: unremarkable dock worker.
# Second playthrough: "That's me."
# ========================================
- id: the-terminal_d_039
text: "Morning. Can I help you with something?"
role: dock-worker
access: [public]
trust: surface
situation: [arrival, greeting]
mood: [comfortable]
topic: [routine]
tags: [pc-smuggler, greeting, public-tier]
- id: the-terminal_d_040
text: "Cargo routing. Containers come in, I process them out. Standard stuff."
role: dock-worker
access: [public, authority]
trust: surface
situation: [investigation, social]
topic: [routine, cargo]
tags: [pc-smuggler, work-question, public-tier]
- id: the-terminal_d_041
text: "It's a freight hub. Busy during shifts, quiet after. Same as anywhere."
role: dock-worker
access: [public]
trust: surface
situation: [social]
topic: [routine]
tags: [pc-smuggler, hub-question, public-tier]
- id: the-terminal_d_042
text: "Good crew. We do our shifts, go home. Nothing exciting."
role: dock-worker
access: [public, authority]
trust: surface
situation: [investigation, social]
topic: [colleague, routine]
tags: [pc-smuggler, colleagues-question, public-tier]
- id: the-terminal_d_043
text: "Look, I just move containers. You'd want to talk to Voss about scheduling."
role: dock-worker
access: [authority]
trust: surface
situation: [confrontation, investigation]
topic: [routine, colleague]
tags: [pc-smuggler, deflection, public-tier, voss]
@@ -0,0 +1,101 @@
# Detective monologue: observing the Smuggler-as-NPC
# PC-as-NPC tell-inversion content (D-039 Wow Moment #4)
# Ticket: #401 | Sprint: 5
# Voice: analytical, complete sentences, observation → deduction
# Context: the detective watches the smuggler-NPC's behavioral tells.
# First playthrough: "This dock worker is interesting."
# Second playthrough: "That's MY corridor check. That's MY habit."
character: detective
location: general
lines:
# --- Tell Observations (5 core tells from pc-as-npc-spec.md section 8) ---
- id: general_m_d_011
text: "That dock worker checks the corridor before turning. Habitual. Military? Or just careful."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-smuggler
state: known
tags: [npc, pc-smuggler, tell, corridor-check]
- id: general_m_d_012
text: "Movement pattern changed at shift change. More direct. Less idle. Interesting."
trigger: observe_anomaly
prerequisites:
relationship:
target: npc:pc-smuggler
state: known
tags: [npc, pc-smuggler, tell, shift-transition]
- id: general_m_d_013
text: "Slight acceleration past the checkpoint. Most people do it. But this one does it every time."
trigger: observe_anomaly
prerequisites:
relationship:
target: npc:pc-smuggler
state: known
tags: [npc, pc-smuggler, tell, security-proximity]
- id: general_m_d_014
text: "Same three people at the same table. Every shift. Consistent social group."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-smuggler
state: known
tags: [npc, pc-smuggler, tell, social-clustering]
- id: general_m_d_015
text: "That worker checked container 4471 twice. The same container that's in my manifest discrepancy file."
trigger: observe_anomaly
prerequisites:
facts:
- fact_id: investigation.manifest_discrepancy
min_confidence: knows_of
relationship:
target: npc:pc-smuggler
state: known
priority: 8
tags: [npc, pc-smuggler, tell, cargo-attention, investigation]
# --- Accumulated Observation (gates on multiple tell sightings) ---
- id: general_m_d_016
text: "Three behavioral flags on one dock worker. Corridor awareness, shift-transition alertness, cargo fixation. That's a pattern."
trigger: time_idle
prerequisites:
entity_attributes:
- entity: npc:pc-smuggler
key: behavior_flags
value: multiple_tells_observed
priority: 7
tags: [npc, pc-smuggler, investigation, analytical, pattern-recognition]
- id: general_m_d_017
text: "Cross-referencing the dock worker's shift schedule with manifest anomalies. Correlation: moderate."
trigger: time_idle
prerequisites:
facts:
- fact_id: investigation.manifest_discrepancy
min_confidence: knows_of
relationship:
target: npc:pc-smuggler
state: person_of_interest
priority: 8
tags: [npc, pc-smuggler, investigation, evidence]
- id: general_m_d_018
text: "The dock worker and Davan eat together every shift. Same courier joins them. Tight operational cluster."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-smuggler
state: known
entity_attributes:
- entity: npc:kael-davan
key: behavior_flags
value: social_clustering
tags: [npc, pc-smuggler, kael, renn, social-clustering, investigation]
@@ -0,0 +1,92 @@
# Smuggler monologue: observing the Detective-as-NPC
# PC-as-NPC tell-inversion content (D-039 Wow Moment #4)
# Ticket: #401 | Sprint: 5
# Voice: terse, operational, worried, short sentences, contractions always
# Context: the smuggler watches the detective-NPC's behavioral tells.
# First playthrough: "Commission threat. Stay clear."
# Second playthrough: "That's MY note-taking. That's MY method."
character: smuggler
location: general
lines:
# --- Tell Observations (5 core tells from pc-as-npc-spec.md section 8) ---
- id: general_m_s_011
text: "Commission officer just stood there after talking to Voss. Making notes. Not good."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-detective
state: known
tags: [npc, pc-detective, tell, note-taking, caution]
- id: general_m_s_012
text: "That investigator is working the hub section by section. Not browsing. Searching."
trigger: observe_anomaly
prerequisites:
relationship:
target: npc:pc-detective
state: known
tags: [npc, pc-detective, tell, systematic-movement, caution]
- id: general_m_s_013
text: "Commission's parked at the manifest terminal again. Third time today."
trigger: observe_anomaly
prerequisites:
relationship:
target: npc:pc-detective
state: known
tags: [npc, pc-detective, tell, manifest-fixation, caution]
- id: general_m_s_014
text: "They're watching. From the corner, where they can see the whole dock floor. Professional."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-detective
state: known
tags: [npc, pc-detective, tell, observation-positioning, caution]
- id: general_m_s_015
text: "The investigator and Sera again. Old friends? Or is Sera reporting to them?"
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-detective
state: known
relationship:
target: npc:sera-venn
state: known
tags: [npc, pc-detective, sera, tell, sera-proximity, suspicion]
# --- Operational Awareness (smuggler's threat assessment) ---
- id: general_m_s_016
text: "New Commission face at the hub. Keep your head down. Don't give them anything."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-detective
state: known
priority: 8
tags: [npc, pc-detective, operational, caution, first-sighting]
- id: general_m_s_017
text: "That investigator's been here all morning. Nobody stays that long for a routine check."
trigger: time_idle
prerequisites:
relationship:
target: npc:pc-detective
state: known
priority: 6
tags: [npc, pc-detective, suspicion, operational]
- id: general_m_s_018
text: "Commission's at the bar. Sitting with Sera. Watching the room like they own it."
trigger: observe_npc
prerequisites:
relationship:
target: npc:pc-detective
state: known
tags: [npc, pc-detective, sera, bar, caution]