feat(copy): Sprint 12 Wave 1 — flat NPCs, environmental text, insert flavor
Completes three unblocked Sprint 12 copy tickets: #307 — Flat NPC memorable trait pass (3 NPCs) - npcs/pael.yaml: maintenance tech, NOBODY/CIVILIAN tier 3 - npcs/ren.yaml: drifter, NOBODY/CIVILIAN tier 3 - npcs/tev.yaml: transit worker (looks like lookout), NOBODY/CIVILIAN tier 3 - dialogue/the-terminal/maintenance-tech.yaml: Pael's 6 lines incl. "seems important but isn't" B-7 seal complaint (the-terminal_d_040-045) - dialogue/the-last-shift/day-worker.yaml: Ren's 6 lines incl. night-rotation job-seeking line (the-last-shift_d_001-006) - dialogue/maintenance-corridors/transit-worker.yaml: Tev's 5 lines incl. corridor-watching-but-waiting-for-partner line (maintenance-corridors_d_001-005) #262 — Environmental text content - environmental/the-terminal.yaml: 7 items — shift board, manifest terminal (4471 discrepancy), maintenance clipboard (Pael's B-7 log), compliance notice, Drin/Maret work order note, safety placard, bay status board - environmental/the-last-shift.yaml: 7 items — drink menu, Lera's rules (Torek named), notice board (Vessels Tamm missing), graffiti (bathroom), specials board, lattice-free zone notice, cargo workers' association flyer - environmental/maintenance-corridors.yaml: 6 items — access restriction, Meridian scan schedule (14:20-14:45 window documented), maintenance log (Pael's anomaly report), routing diagram (pencil annotation), air quality notice, C-4 temporary storage log (container 4471 thread) #331 — Diegetic insert flavor text - insert/smuggler.yaml: POI labels (first-name, state-dependent), operational notifications (Meridian window, drop point, ring check-in, Commission patrol), system status strings, examination labels - insert/detective.yaml: POI labels (surname-first, first-name shift for allies is the relationship marker), Commission/case-file notifications, field logging strings, examination labels Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+77
@@ -0,0 +1,77 @@
|
||||
# Dialogue: transit-worker at Maintenance Corridors
|
||||
# NPC: Tev Osel (Tier 3, NOBODY/CIVILIAN)
|
||||
# Voice: patient, mildly distracted, confused why anyone is asking him anything.
|
||||
# KEY LINE: maintenance-corridors_d_001 — sounds like surveillance positioning inquiry
|
||||
# Actually: Tev missed Kosse at the corridor junction and is looking for them
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
location: maintenance-corridors
|
||||
role: transit-worker
|
||||
lines:
|
||||
|
||||
# ==========================================
|
||||
# "SEEMS IMPORTANT BUT ISN'T" LINE
|
||||
# Sounds like Tev is checking who came through a surveillance point.
|
||||
# Actually: Tev missed his partner at the regular meeting spot.
|
||||
# ==========================================
|
||||
|
||||
- id: maintenance-corridors_d_001
|
||||
text: "You see which way Kosse went? Should've been through here twenty minutes ago."
|
||||
role: transit-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine, observation]
|
||||
topic: [colleague, personal]
|
||||
mood: [comfortable]
|
||||
tags: [tev, seems-important-but-isnt, waiting, kosse]
|
||||
dual_lens:
|
||||
smuggler: "Someone asking who came through the corridor. Tev. Harmless — checking for a partner."
|
||||
detective: "NPC at corridor junction, tracking who passed through. Possible lookout. Follow up: who is Kosse?"
|
||||
notes: >
|
||||
THE key flat NPC line for Tev. Sounds like Tev monitors corridor traffic
|
||||
for operational reasons. Is someone who missed a meeting time with their
|
||||
partner. The detective's suspicion is reasonable; it resolves to nothing.
|
||||
|
||||
# ==========================================
|
||||
# ROUTINE LINES
|
||||
# ==========================================
|
||||
|
||||
- id: maintenance-corridors_d_002
|
||||
text: "They shifted the freight route again. Always forget which junction."
|
||||
role: transit-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine, cargo]
|
||||
mood: [comfortable]
|
||||
tags: [tev, atmospheric]
|
||||
|
||||
- id: maintenance-corridors_d_003
|
||||
text: "Just on break. Out of your way in a minute."
|
||||
role: transit-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [tev, incidental]
|
||||
|
||||
- id: maintenance-corridors_d_004
|
||||
text: "Late freight route runs long. Can't do anything about it."
|
||||
role: transit-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine, night_shift]
|
||||
topic: [routine, cargo]
|
||||
mood: [comfortable]
|
||||
tags: [tev, atmospheric]
|
||||
|
||||
- id: maintenance-corridors_d_005
|
||||
text: "Waiting for someone. Shouldn't be long."
|
||||
role: transit-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine, observation]
|
||||
topic: [personal]
|
||||
mood: [comfortable]
|
||||
tags: [tev, waiting]
|
||||
+90
@@ -0,0 +1,90 @@
|
||||
# Dialogue: day-worker at The Last Shift
|
||||
# NPC: Ren Tosse (Tier 3, NOBODY/CIVILIAN)
|
||||
# Voice: casual-observant, asks questions without social friction. Just drifting.
|
||||
# KEY LINE: the-last-shift_d_001 — sounds like intel gathering on night operations
|
||||
# Actually: asking about after-hours freight work availability
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
location: the-last-shift
|
||||
role: day-worker
|
||||
lines:
|
||||
|
||||
# ==========================================
|
||||
# "SEEMS IMPORTANT BUT ISN'T" LINE
|
||||
# Sounds like Ren is casing night shift operations.
|
||||
# Actually: asking if there's paid after-hours freight work available.
|
||||
# ==========================================
|
||||
|
||||
- id: the-last-shift_d_001
|
||||
text: "Night rotation still short-handed? Heard the after-hours freight pays decent."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [bar_evening, social]
|
||||
topic: [money, cargo]
|
||||
mood: [comfortable]
|
||||
tags: [ren, seems-important-but-isnt, job-seeking, night-shift]
|
||||
dual_lens:
|
||||
smuggler: "Someone asking about the night rotation. Probably nothing. Watch them anyway."
|
||||
detective: "Interest in night shift freight operations. Drifter, irregular schedule. Logging."
|
||||
notes: >
|
||||
THE key flat NPC line for Ren. Sounds like Ren is interested in the
|
||||
night operation window for operational reasons. Is standard day-worker
|
||||
job-seeking: which shift has openings, which shift pays best.
|
||||
|
||||
# ==========================================
|
||||
# ROUTINE LINES
|
||||
# ==========================================
|
||||
|
||||
- id: the-last-shift_d_002
|
||||
text: "Bay seven any better this cycle? The super was a problem last time."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [social, bar_evening]
|
||||
topic: [routine, colleague]
|
||||
mood: [comfortable]
|
||||
tags: [ren, job-seeking]
|
||||
|
||||
- id: the-last-shift_d_003
|
||||
text: "Sova's decent. Station layout makes sense once you learn it."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [social, bar_evening]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [ren, atmospheric]
|
||||
|
||||
- id: the-last-shift_d_004
|
||||
text: "Just passing through. Maybe not. Depends on the work."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [social]
|
||||
topic: [personal, routine]
|
||||
mood: [comfortable]
|
||||
tags: [ren, drifter]
|
||||
|
||||
- id: the-last-shift_d_005
|
||||
text: "Cheap drink here's better than most stations I've stopped at."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [bar_evening, social]
|
||||
topic: [personal]
|
||||
mood: [comfortable]
|
||||
tags: [ren, atmospheric]
|
||||
|
||||
- id: the-last-shift_d_006
|
||||
text: "Any idea when the manifest deadline runs? Trying to time when the work window opens."
|
||||
role: day-worker
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [social, bar_evening]
|
||||
topic: [cargo, routine]
|
||||
mood: [comfortable]
|
||||
tags: [ren, seems-important-but-isnt, job-seeking]
|
||||
notes: >
|
||||
Second "seems important" line. Asking about manifest deadlines sounds
|
||||
like operational intelligence. Is logistics scheduling for day work.
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
# Dialogue: maintenance-tech at The Terminal
|
||||
# NPC: Pael Varren (Tier 3, NOBODY/CIVILIAN)
|
||||
# Voice: tired-competent, minimal, dry. Knows the infrastructure. Knows nothing else.
|
||||
# KEY LINE: the-terminal_d_040 — sounds like surveillance knowledge, is a maintenance complaint
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
location: the-terminal
|
||||
role: maintenance-tech
|
||||
lines:
|
||||
|
||||
# ==========================================
|
||||
# "SEEMS IMPORTANT BUT ISN'T" LINE
|
||||
# Sounds like Pael monitors corridor traffic for a reason.
|
||||
# Actually: the B-7 seal fails when people use the corridor too much. Pael notices load.
|
||||
# ==========================================
|
||||
|
||||
- id: the-terminal_d_040
|
||||
text: "B-7's had three seal failures this cycle. Someone's been through there more than they should."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, seems-important-but-isnt, maintenance, b7]
|
||||
dual_lens:
|
||||
smuggler: "Pael knows the corridor's been used. But Pael knows nothing — this is an HVAC complaint."
|
||||
detective: "Corridor B-7 traffic. A maintenance tech noticing irregular use. Unreliable but worth noting."
|
||||
notes: >
|
||||
THE key flat NPC line for Pael. Sounds like environmental intelligence.
|
||||
Is a complaint about a recurring seal failure caused by foot traffic.
|
||||
Pael doesn't know what the traffic is from. Never will.
|
||||
|
||||
# ==========================================
|
||||
# ROUTINE LINES
|
||||
# ==========================================
|
||||
|
||||
- id: the-terminal_d_041
|
||||
text: "Air recycler's running hot again. Third deferred ticket this week."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, atmospheric]
|
||||
|
||||
- id: the-terminal_d_042
|
||||
text: "Loading arm three's been on my list for a month. Management keeps deferring it."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, atmospheric]
|
||||
|
||||
- id: the-terminal_d_043
|
||||
text: "If the gate tone shifts, stay clear of bay six. She needs recalibration."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, warning, helpful]
|
||||
|
||||
- id: the-terminal_d_044
|
||||
text: "Not me. I just fix them."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine, social]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, response]
|
||||
|
||||
- id: the-terminal_d_045
|
||||
text: "Gate hum's been three cycles off-spec. Nobody cares until it stops completely."
|
||||
role: maintenance-tech
|
||||
access: [public]
|
||||
trust: surface
|
||||
situation: [routine]
|
||||
topic: [routine]
|
||||
mood: [comfortable]
|
||||
tags: [pael, atmospheric]
|
||||
+195
@@ -0,0 +1,195 @@
|
||||
# Environmental Text: Maintenance Corridors
|
||||
# Signs, terminals, documents, readable objects.
|
||||
# Investigation-heavy. This is where the operational evidence lives.
|
||||
# Ticket: #262 | Sprint: 12
|
||||
|
||||
location: maintenance-corridors
|
||||
items:
|
||||
|
||||
# ==========================================
|
||||
# ACCESS RESTRICTION SIGN — corridor entrance
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_001
|
||||
type: sign
|
||||
label: "Restricted Access Notice"
|
||||
visibility: always
|
||||
text: >
|
||||
RESTRICTED ACCESS — MAINTENANCE PERSONNEL ONLY
|
||||
|
||||
B-CORRIDOR SECTOR — AUTHORIZED ENTRY REQUIRED
|
||||
|
||||
Unauthorized entry subject to Sova Station Authority review.
|
||||
Commission Order 7741-B applies.
|
||||
|
||||
Report unauthorized personnel to: Station Security (Lattice: SovaStation/Security)
|
||||
dual_lens:
|
||||
smuggler: "Nobody calls Station Security for corridor access. Everyone goes through here."
|
||||
detective: >
|
||||
Restricted zone, active posting. Unauthorized entry is a violation
|
||||
of Commission Order 7741-B. If the ring is using this corridor,
|
||||
they're committing a documented infraction on every run.
|
||||
tags: [atmospheric, b7-corridor]
|
||||
|
||||
# ==========================================
|
||||
# MERIDIAN COVERAGE SCHEDULE — posted on corridor wall
|
||||
# Most investigation-relevant item in the game.
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_002
|
||||
type: document
|
||||
label: "Meridian Scan Schedule"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
MERIDIAN SURVEILLANCE COVERAGE — SOVA TRANSIT DISTRICT
|
||||
MAINTENANCE CORRIDOR SECTOR — CURRENT CYCLE
|
||||
|
||||
Active coverage windows (full corridor monitoring):
|
||||
06:00-07:30 | 10:00-11:00 | 14:00-15:30 | 22:00-23:00
|
||||
|
||||
Reduced coverage (perimeter only):
|
||||
07:30-10:00 | 11:00-14:00 | 15:30-22:00 | 23:00-06:00
|
||||
|
||||
NOTE: Span gate maintenance cycles create signal interference.
|
||||
Coverage gaps during gate calibration: approx 14:20-14:45.
|
||||
|
||||
Posted by: Sova Meridian Network Maintenance Division
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
14:20-14:45. That's the window. Twenty-five minutes of clean dead zone
|
||||
during the shift transition. The ring didn't find this. It's posted.
|
||||
detective: >
|
||||
Posted surveillance schedule with documented gap. 14:20-14:45 during
|
||||
shift transition. The ring isn't sophisticated — they're using
|
||||
publicly posted maintenance data. That means anyone could have
|
||||
identified this gap.
|
||||
tags: [investigation-relevant, meridian, surveillance-gap, critical]
|
||||
knowledge_grant:
|
||||
fact_id: "location.surveillance_gaps"
|
||||
confidence: knows_details
|
||||
|
||||
# ==========================================
|
||||
# MAINTENANCE LOG SHEET — handwritten clipboard at corridor junction
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_003
|
||||
type: document
|
||||
label: "Maintenance Log (B-7 Corridor)"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
B-7 CORRIDOR — MAINTENANCE LOG
|
||||
Logged by: Pael Varren
|
||||
|
||||
[Month 11, Day 4]
|
||||
Air scrubber pressure variance. Reset. Source unclear.
|
||||
|
||||
[Month 11, Day 12]
|
||||
Seal failure B-7 junction. Third occurrence. Replaced again.
|
||||
Noted: floor wear pattern inconsistent with posted traffic.
|
||||
Possible deferred maintenance backlog creating additional load.
|
||||
|
||||
[Month 11, Day 22]
|
||||
Recurring seal failure. Escalated to deferred queue.
|
||||
NOTE: Pressure sensors reading elevated load during 14:00-15:00
|
||||
window. Does not match shift transition foot traffic.
|
||||
Filed maintenance anomaly report — awaiting management review.
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
Pael's logged the pressure anomaly. It'll sit in the queue.
|
||||
Management never reviews the anomaly reports.
|
||||
detective: >
|
||||
Maintenance anomaly report filed, awaiting management review.
|
||||
The report documents irregular pressure load during exact operation
|
||||
window. If management reviews it, the window closes.
|
||||
tags: [investigation-relevant, b7-corridor, pael, critical]
|
||||
knowledge_grant:
|
||||
fact_id: "location.corridor_b7_restricted"
|
||||
confidence: knows_of
|
||||
|
||||
# ==========================================
|
||||
# ROUTING DIAGRAM — cargo flow map posted at junction
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_004
|
||||
type: sign
|
||||
label: "Cargo Routing Diagram"
|
||||
visibility: always
|
||||
text: >
|
||||
SOVA TRANSIT — MAINTENANCE CORRIDOR ROUTING
|
||||
[Technical diagram showing freight flow paths]
|
||||
|
||||
Standard freight path: Bay > Terminal > Surface Storage
|
||||
Emergency reroute: Bay > B-corridor > Temporary Hold (C-4)
|
||||
Maintenance access: B-corridor > Service Lift > Environmental Systems
|
||||
|
||||
[Someone has drawn a thin pencil line from Bay 4 to C-4 to
|
||||
the service lift, bypassing the standard terminal route]
|
||||
dual_lens:
|
||||
smuggler: "Someone mapped the reroute. That's not how we were shown it. That's cleaner."
|
||||
detective: >
|
||||
Pencil annotation on the official diagram. Whoever added it knows
|
||||
the layout and took time to trace an alternative route. Not vandalism.
|
||||
Operational planning.
|
||||
tags: [investigation-relevant, b7-corridor, smuggling-route]
|
||||
knowledge_grant:
|
||||
fact_id: "location.smuggling_route"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# ENVIRONMENTAL WARNING — recycled air quality
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_005
|
||||
type: sign
|
||||
label: "Environmental Quality Notice"
|
||||
visibility: always
|
||||
text: >
|
||||
CORRIDOR ENVIRONMENTAL STATUS — CURRENT READINGS
|
||||
|
||||
CO2: 0.12% [ACCEPTABLE — upper threshold 0.15%]
|
||||
Particulate: ELEVATED — see maintenance queue
|
||||
Temperature: 19.4°C [nominal]
|
||||
Recycled air freshness: 73% [minimum recommended: 80%]
|
||||
|
||||
If recycled air quality falls below 70%, report to maintenance.
|
||||
Current status: Monitor.
|
||||
dual_lens:
|
||||
smuggler: "Recycled air's worse than the terminal. You get used to it."
|
||||
detective: "Air quality below recommended. Maintenance deferred. Nobody's prioritizing this corridor."
|
||||
tags: [atmospheric, environmental]
|
||||
|
||||
# ==========================================
|
||||
# TEMPORARY STORAGE MANIFEST SHEET
|
||||
# At the C-4 temporary hold point
|
||||
# ==========================================
|
||||
|
||||
- id: env_corridor_006
|
||||
type: document
|
||||
label: "Temporary Storage Log (C-4)"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
C-4 TEMPORARY HOLD — CONTENTS LOG
|
||||
[Printed manifest, partial, two pages visible]
|
||||
|
||||
Container 4466 — Cleared — removed Month 11 Day 1
|
||||
Container 4467 — Cleared — removed Month 11 Day 3
|
||||
Container 4468 — Cleared — removed Month 11 Day 3
|
||||
Container 4469 — [NO ENTRY]
|
||||
Container 4470 — Cleared — removed Month 11 Day 8
|
||||
Container 4471 — [PENDING — entered Month 11 Day 15, no removal logged]
|
||||
Container 4472 — Cleared — removed Month 11 Day 18
|
||||
|
||||
[Gap in numbering between 4469-4470 has no explanation column]
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
4471 is still logged as pending. It should have been moved during
|
||||
last transition. Either it wasn't, or the log wasn't updated.
|
||||
Either is a problem.
|
||||
detective: >
|
||||
Container 4471 in the C-4 hold log, entered Month 11, no removal
|
||||
logged. Same container flagged in the terminal manifest. And 4469
|
||||
is a gap with no explanation. This is the thread.
|
||||
tags: [investigation-relevant, container-4471, critical]
|
||||
knowledge_grant:
|
||||
fact_id: "investigation.cargo_anomaly"
|
||||
confidence: knows_of
|
||||
+209
@@ -0,0 +1,209 @@
|
||||
# Environmental Text: The Last Shift (Bar)
|
||||
# Signs, terminals, documents, readable objects.
|
||||
# Atmosphere-heavy. Some investigation relevance through social texture.
|
||||
# Ticket: #262 | Sprint: 12
|
||||
|
||||
location: the-last-shift
|
||||
items:
|
||||
|
||||
# ==========================================
|
||||
# DRINK MENU — handwritten, scratched-out prices
|
||||
# Above the bar. Visible to anyone.
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_001
|
||||
type: sign
|
||||
label: "Drink Menu"
|
||||
visibility: always
|
||||
text: >
|
||||
THE LAST SHIFT
|
||||
(Lera's)
|
||||
|
||||
Krenn grain spirit — 4c
|
||||
Pale station brew — 3c ~~2c~~
|
||||
Dark station brew — 3c
|
||||
Import (off-station) — 8c
|
||||
Sova standard water — 1c
|
||||
Meal (hot, whatever's running) — 6c
|
||||
|
||||
No tabs. No Commission business at the bar.
|
||||
House rules posted.
|
||||
dual_lens:
|
||||
smuggler: "Import's doubled since last year. Everything's tighter."
|
||||
detective: >
|
||||
"No Commission business at the bar." That's Lera's personal policy.
|
||||
She'll have opinions about why.
|
||||
tags: [atmospheric]
|
||||
|
||||
# ==========================================
|
||||
# LERA'S RULES — above the bar
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_002
|
||||
type: sign
|
||||
label: "House Rules"
|
||||
visibility: always
|
||||
text: >
|
||||
LERA'S — HOUSE RULES
|
||||
|
||||
1. Pay before you're too drunk to remember.
|
||||
2. Arguments outside. Always.
|
||||
3. What's said at the bar stays at the bar.
|
||||
4. No job talk after 20:00.
|
||||
5. Torek Lintar runs his own tab. Don't ask.
|
||||
dual_lens:
|
||||
smuggler: "Rule 5. Lera's been running Torek's tab for years. Old arrangement."
|
||||
detective: >
|
||||
Rule 5 is specific. Named. Torek Lintar has a standing arrangement
|
||||
here. That's the third time his name has come up without context.
|
||||
tags: [investigation-relevant, torek-lintar, lera]
|
||||
knowledge_grant:
|
||||
fact_id: "relationship.torek_bar_arrangement"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# NOTICE BOARD — general community notices
|
||||
# Examine to read individual notices.
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_003
|
||||
type: readable_object
|
||||
label: "Notice Board"
|
||||
visibility: always
|
||||
text: >
|
||||
[NOTICE BOARD — various papers pinned over each other]
|
||||
|
||||
MISSING: Vessels Tamm, last seen Sova Transit District, Month 11.
|
||||
Contact: Lattice Commission Sova liaison or speak to Lera.
|
||||
|
||||
CARGO WORKERS' ASSOCIATION — Monthly meeting, back room, Month 12,
|
||||
evening shift. All Sova Transit workers welcome. Bring your own.
|
||||
|
||||
ROOM AVAILABLE: Residential pod B-3, lower level. Quiet. Short-term.
|
||||
Speak to Harek at the bar.
|
||||
|
||||
[handwritten, pinned over the others:]
|
||||
ANYONE KNOW WHO LEFT A TRANSIT BAG IN THE STORAGE ROOM?
|
||||
IT'S BEEN THREE WEEKS.
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
Vessels Tamm. Missing person notice. That name's from the Tamm family —
|
||||
Naia's connection? Or coincidence. Probably coincidence.
|
||||
detective: >
|
||||
Missing persons notice. Vessels Tamm. Sova Transit District. Cross-reference
|
||||
Tamm with case file — possible Naia Tamm relation. Flag for follow-up.
|
||||
tags: [investigation-relevant, naia-tamm-adjacent, harek]
|
||||
knowledge_grant:
|
||||
fact_id: "relationship.tamm_family"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# GRAFFITI — bathroom wall
|
||||
# Examine to read.
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_004
|
||||
type: readable_object
|
||||
label: "Graffiti (Bathroom Wall)"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
[scratched into the wall surface over several years]
|
||||
|
||||
Voss doesn't check bay 4. Never has. Never will.
|
||||
|
||||
The Commission sees what it wants to see.
|
||||
|
||||
Lera knows.
|
||||
|
||||
[someone added in different handwriting:]
|
||||
Lera doesn't know anything. She just sells drinks.
|
||||
|
||||
[original hand, below:]
|
||||
Keep telling yourself that.
|
||||
dual_lens:
|
||||
smuggler: "Graffiti's been here since before I started. The Voss line is right, though."
|
||||
detective: >
|
||||
"Lera knows." Someone believes the bar owner has information.
|
||||
Someone else pushes back. The debate is years old.
|
||||
tags: [atmospheric, voss, lera, investigation-adjacent]
|
||||
|
||||
# ==========================================
|
||||
# TONIGHT'S SPECIALS — chalkboard near the kitchen
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_005
|
||||
type: sign
|
||||
label: "Tonight's Specials"
|
||||
visibility: always
|
||||
text: >
|
||||
TONIGHT:
|
||||
Hot grain porridge (Velen style) — 5c
|
||||
Station fish fry — 7c
|
||||
|
||||
Ask Lera what Velen style means.
|
||||
She'll tell you about it for twenty minutes.
|
||||
dual_lens:
|
||||
smuggler: "Lera's from Velen originally. She makes everyone ask."
|
||||
detective: "Lera Sessik. Originally from Velen surface. Personal detail noted."
|
||||
tags: [atmospheric, lera-backstory]
|
||||
|
||||
# ==========================================
|
||||
# LATTICE-FREE ZONE SIGN — near the entrance
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_006
|
||||
type: sign
|
||||
label: "Lattice-Free Zone Notice"
|
||||
visibility: always
|
||||
text: >
|
||||
VOLUNTARY LATTICE-FREE ZONE
|
||||
|
||||
By Lera's request: please disable active lattice scanning
|
||||
and recording functions while at the bar.
|
||||
|
||||
Conversation here is conversation. Not data.
|
||||
|
||||
This is not a Commission-recognized designation.
|
||||
Lera doesn't care.
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
Everyone honors this. It's one of the reasons the bar works for
|
||||
what it works for.
|
||||
detective: >
|
||||
Not legally enforceable. But anyone who honors it voluntarily is
|
||||
actively choosing to reduce their surveillance footprint here.
|
||||
Who honors it and who doesn't is worth noting.
|
||||
tags: [investigation-relevant, lera, lattice-free]
|
||||
|
||||
# ==========================================
|
||||
# CARGO WORKERS' ASSOCIATION FLYER — pinned to the bar
|
||||
# ==========================================
|
||||
|
||||
- id: env_bar_007
|
||||
type: document
|
||||
label: "Association Meeting Flyer"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
SOVA TRANSIT CARGO WORKERS' ASSOCIATION
|
||||
Monthly Meeting
|
||||
|
||||
Topic: Shift change protocols — the thirty-minute handoff window
|
||||
and why it isn't long enough.
|
||||
|
||||
Also on agenda: Updated manifest compliance requirements from
|
||||
the Commission (new reporting window: 6 hours, down from 8).
|
||||
|
||||
Back room. Evening shift. All welcome.
|
||||
Bring your concerns, bring a drink.
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
Commission shortened the reporting window to six hours. That's
|
||||
tighter than the eight-hour buffer. Someone noticed the gap.
|
||||
detective: >
|
||||
Agenda item: thirty-minute handoff window. Workers complaining
|
||||
about it publicly means the window is known beyond the ring.
|
||||
Or is being discussed for reasons that are less innocent.
|
||||
tags: [investigation-relevant, shift-transition, commission]
|
||||
knowledge_grant:
|
||||
fact_id: "world.shift_schedule"
|
||||
confidence: knows_of
|
||||
+199
@@ -0,0 +1,199 @@
|
||||
# Environmental Text: The Terminal (Logistics Hub)
|
||||
# Signs, terminals, documents, readable objects.
|
||||
# Both characters can examine these. Interpretation differs.
|
||||
# Ticket: #262 | Sprint: 12
|
||||
|
||||
location: the-terminal
|
||||
items:
|
||||
|
||||
# ==========================================
|
||||
# SHIFT BOARD — posted schedule
|
||||
# Always visible. High-traffic reference point.
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_001
|
||||
type: sign
|
||||
label: "Shift Schedule Board"
|
||||
visibility: always
|
||||
text: >
|
||||
SOVA TRANSIT DISTRICT — LOGISTICS HUB
|
||||
CURRENT ROTATION — CYCLE 47
|
||||
|
||||
BAY 1-4: Day Shift 06:00-14:00 (Voss, K. — Supervisor)
|
||||
BAY 5-8: Day Shift 06:00-14:00 (Maret, K. — Scheduler)
|
||||
TRANSITION: 13:45-14:15 (30-min handoff window)
|
||||
Night Shift 22:00-06:00 — ROSTER PENDING
|
||||
[Bay 6: MAINTENANCE HOLD — see Pael Varren]
|
||||
dual_lens:
|
||||
smuggler: "Thirty-minute transition window. That's the window. Posted for everyone to see."
|
||||
detective: "Night roster blank. Either unassigned or deliberately obscured. Logging the gap."
|
||||
|
||||
# ==========================================
|
||||
# MANIFEST TRACKING TERMINAL — cargo status display
|
||||
# Active terminal. Can be read from appropriate distance in investigation mode.
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_002
|
||||
type: terminal
|
||||
label: "Cargo Tracking Terminal"
|
||||
visibility: always
|
||||
text: >
|
||||
ACTIVE MANIFEST QUEUE — SOVA LOGISTICS
|
||||
Last updated: 06:23
|
||||
|
||||
Container 4471 — [PENDING REVIEW] — Bay 4
|
||||
Container 4472 — CLEARED — Bay 2
|
||||
Container 4473 — CLEARED — Bay 2
|
||||
Container 4474 — [WEIGHT DISCREPANCY — 47kg] — Bay 4
|
||||
Container 4475 — CLEARED — Bay 3
|
||||
Container 4476 — PROCESSING — Bay 7
|
||||
[8 additional items — scroll to continue]
|
||||
dual_lens:
|
||||
smuggler: "4471 is still in the queue. Kael hasn't cleared it yet. On schedule."
|
||||
detective: >
|
||||
4471 pending review with a 4474 weight discrepancy in the same bay.
|
||||
Two anomalies, same location. Not random.
|
||||
tags: [investigation-relevant, manifest-discrepancy]
|
||||
knowledge_grant:
|
||||
fact_id: "investigation.manifest_discrepancy"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# MAINTENANCE REQUEST CLIPBOARD
|
||||
# Physical clipboard near loading arm 3. Examine to read.
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_003
|
||||
type: document
|
||||
label: "Maintenance Request Log"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
DEFERRED MAINTENANCE — CURRENT QUEUE
|
||||
(Submitted: Pael Varren, Maintenance)
|
||||
|
||||
Loading arm 3 — Grinding during lift cycle — DEFERRED x4
|
||||
Bay 6 environmental seal — Recurring failure — DEFERRED x3 (HOLD)
|
||||
B-7 corridor air scrubber — Pressure variance — DEFERRED x1
|
||||
Gate calibration bay 5-6 — Off-spec hum — DEFERRED x2
|
||||
Recycling unit C-4 — Thermal spike — DEFERRED x1
|
||||
|
||||
Note: B-7 corridor showing irregular pressure load on sensor.
|
||||
Traffic heavier than logged shift count explains. Investigating.
|
||||
— P. Varren
|
||||
dual_lens:
|
||||
smuggler: "Pael's noticed the B-7 pressure log doesn't match posted traffic. Nothing they can do about it."
|
||||
detective: >
|
||||
Maintenance log records irregular pressure load in B-7.
|
||||
The tech attributes it to unlogged foot traffic. That's exactly right.
|
||||
tags: [investigation-relevant, b7-corridor]
|
||||
knowledge_grant:
|
||||
fact_id: "location.corridor_b7_restricted"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# COMMISSION COMPLIANCE NOTICE
|
||||
# Standard posting. Required by regulation. Two years old.
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_004
|
||||
type: sign
|
||||
label: "Commission Compliance Notice"
|
||||
visibility: always
|
||||
text: >
|
||||
LATTICE COMMISSION — FREIGHT OPERATIONS COMPLIANCE
|
||||
|
||||
All manifest discrepancies exceeding 15kg must be reported
|
||||
within 8 hours of discovery.
|
||||
|
||||
All cargo flagged PENDING REVIEW must be cleared by assigned
|
||||
inspector before shift transition.
|
||||
|
||||
Unauthorized access to restricted maintenance corridors
|
||||
will result in immediate suspension pending review.
|
||||
|
||||
Posted: Lattice Commission, Sova Station Authority
|
||||
Reference: Commission Order 7741-B
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
Eight-hour window on discrepancy reporting. In practice, the window
|
||||
to move anything is the thirty-minute shift transition.
|
||||
detective: >
|
||||
8-hour reporting window. If discrepancy 4474 was logged at 06:23,
|
||||
compliance deadline is 14:23. I have time.
|
||||
tags: [atmospheric, institutional]
|
||||
|
||||
# ==========================================
|
||||
# WORK ORDER NOTE — handwritten, coffee-stained
|
||||
# Personal communication between dock workers. Examine to read.
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_005
|
||||
type: document
|
||||
label: "Handwritten Note (Coffee-Stained)"
|
||||
visibility: examine_only
|
||||
text: >
|
||||
Kael —
|
||||
|
||||
Bay 4 queue backed up again. Maret says it's a weight issue
|
||||
but she's not flagging it officially. If it's still there when
|
||||
you come in, just route it through 7 like last time. Voss
|
||||
won't check.
|
||||
|
||||
— D.
|
||||
dual_lens:
|
||||
smuggler: >
|
||||
"D." is Drin. Route it through 7 like last time — dock-side
|
||||
workaround, happens constantly. Probably nothing operational.
|
||||
detective: >
|
||||
Unsigned note, initial D. Maret not flagging a weight discrepancy
|
||||
officially. Voss complicit or uninformed. Follow up with Maret.
|
||||
tags: [investigation-relevant, maret, drin, voss]
|
||||
knowledge_grant:
|
||||
fact_id: "investigation.drin_inspection_pattern"
|
||||
confidence: suspects
|
||||
|
||||
# ==========================================
|
||||
# SAFETY PROCEDURES PLACARD — standard, faded
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_006
|
||||
type: sign
|
||||
label: "Emergency Procedures"
|
||||
visibility: always
|
||||
text: >
|
||||
IN CASE OF EMERGENCY:
|
||||
|
||||
1. Activate hull breach alarm (red panel, every 20m)
|
||||
2. Proceed to nearest designated shelter (yellow markers)
|
||||
3. Do not use freight lifts during emergency protocols
|
||||
4. Await station authority clearance before resuming operations
|
||||
|
||||
Last safety review: Month 4, Year 312 (Krenn calendar)
|
||||
dual_lens:
|
||||
smuggler: "Two years out of date. Nobody bothers."
|
||||
detective: "Last review was two cycles ago. Standard compliance lag for a district this size."
|
||||
tags: [atmospheric]
|
||||
|
||||
# ==========================================
|
||||
# BAY STATUS BOARD — current bay availability
|
||||
# ==========================================
|
||||
|
||||
- id: env_terminal_007
|
||||
type: sign
|
||||
label: "Bay Status Board"
|
||||
visibility: always
|
||||
text: >
|
||||
BAY STATUS — CURRENT CYCLE
|
||||
|
||||
BAY 1: ACTIVE
|
||||
BAY 2: ACTIVE
|
||||
BAY 3: ACTIVE
|
||||
BAY 4: ACTIVE — PENDING REVIEW (2 items)
|
||||
BAY 5: ACTIVE
|
||||
BAY 6: MAINTENANCE HOLD — Est. clear: next cycle
|
||||
BAY 7: ACTIVE
|
||||
BAY 8: SCHEDULED DOWNTIME 13:00-15:00
|
||||
dual_lens:
|
||||
smuggler: "Bay 8 scheduled downtime 13:00-15:00. That overlaps the transition window. Useful."
|
||||
detective: "Bay 8 downtime during transition window. Reduced oversight at peak movement time."
|
||||
tags: [investigation-relevant, operational]
|
||||
+225
@@ -0,0 +1,225 @@
|
||||
# Diegetic Insert Flavor Text — Detective Character
|
||||
# Neural lattice interface strings: POI labels, notifications, system status.
|
||||
# Ticket: #331 | Sprint: 12 | Owner: Mellanie + Araminta
|
||||
#
|
||||
# Voice principle: the detective's insert is issued Commission equipment.
|
||||
# Institutional, precise, surname-first. The vocabulary is the job.
|
||||
# When personal breaks through, it's notable — the first name appears
|
||||
# only for allies. Shift to first name IS a relationship marker.
|
||||
|
||||
character: detective
|
||||
|
||||
# ==========================================
|
||||
# POI LABELS — displayed in perception mode overlay
|
||||
# Appears on NPCs when viewed through insert interface.
|
||||
# State-dependent: shifts as relationship changes.
|
||||
# ==========================================
|
||||
|
||||
poi_labels:
|
||||
defaults:
|
||||
unknown: "Unknown subject"
|
||||
known: "{surname}, {initial}."
|
||||
friendly: "{first_name}"
|
||||
person_of_interest: "{surname} — POI"
|
||||
hostile: "{surname} — AVOID"
|
||||
|
||||
npc_overrides:
|
||||
kael_davan:
|
||||
phase_1_unknown: "Unknown subject"
|
||||
phase_1_known: "Davan, K."
|
||||
person_of_interest: "Davan, K. — POI"
|
||||
flagged: "Davan, K. — FLAGGED"
|
||||
sera_venn:
|
||||
friendly: "Sera"
|
||||
phase_3_poi: "Sera — ?"
|
||||
phase_4_poi: "Venn — REVIEW"
|
||||
voss:
|
||||
default: "Voss, K. — Supervisor"
|
||||
cooperative: "Voss — cooperative"
|
||||
torek_lintar:
|
||||
default: "Lintar, T."
|
||||
flagged: "Lintar, T. — FLAG"
|
||||
commission_personnel:
|
||||
default: "{surname} — Commission"
|
||||
ring_member_suspected:
|
||||
default: "{surname} — suspect"
|
||||
|
||||
# ==========================================
|
||||
# NOTIFICATIONS — status strings, message previews
|
||||
# Displayed as brief overlay text. 40 char max per line.
|
||||
# ==========================================
|
||||
|
||||
notifications:
|
||||
case_file:
|
||||
- id: insert_d_001
|
||||
trigger: case_file_update
|
||||
template: "Case update: {subject_name}"
|
||||
example: "Case update: Davan, K."
|
||||
tags: [investigation]
|
||||
|
||||
- id: insert_d_002
|
||||
trigger: evidence_logged
|
||||
text: "Evidence logged"
|
||||
tags: [investigation]
|
||||
|
||||
- id: insert_d_003
|
||||
trigger: manifest_discrepancy_filed
|
||||
text: "Discrepancy filed"
|
||||
tags: [investigation, manifest]
|
||||
|
||||
- id: insert_d_004
|
||||
trigger: knowledge_updated
|
||||
template: "KG updated: {fact_category}"
|
||||
example: "KG updated: relationship"
|
||||
tags: [investigation]
|
||||
|
||||
- id: insert_d_005
|
||||
trigger: poi_status_change
|
||||
template: "{surname} — status updated"
|
||||
example: "Davan — status updated"
|
||||
tags: [investigation]
|
||||
|
||||
- id: insert_d_006
|
||||
trigger: tell_logged
|
||||
template: "{surname} — behavior logged"
|
||||
example: "Davan — behavior logged"
|
||||
tags: [investigation, tell]
|
||||
|
||||
- id: insert_d_007
|
||||
trigger: pattern_confirmed
|
||||
template: "{surname} — pattern confirmed"
|
||||
example: "Venn — pattern confirmed"
|
||||
tags: [investigation, pattern]
|
||||
|
||||
commission:
|
||||
- id: insert_d_008
|
||||
trigger: commission_advisory
|
||||
text: "Commission advisory"
|
||||
tags: [institutional]
|
||||
|
||||
- id: insert_d_009
|
||||
trigger: commission_advisory_urgent
|
||||
text: "Commission advisory — urgent"
|
||||
tags: [institutional, priority]
|
||||
|
||||
- id: insert_d_010
|
||||
trigger: clearance_required
|
||||
template: "{zone} — clearance required"
|
||||
example: "Sector B — clearance required"
|
||||
tags: [institutional]
|
||||
|
||||
- id: insert_d_011
|
||||
trigger: clearance_confirmed
|
||||
template: "{zone} — clearance confirmed"
|
||||
example: "B-7 — clearance confirmed"
|
||||
tags: [institutional]
|
||||
|
||||
- id: insert_d_012
|
||||
trigger: case_status_active
|
||||
template: "Case #{case_id}: active"
|
||||
example: "Case #4471: active"
|
||||
tags: [institutional, investigation]
|
||||
|
||||
field:
|
||||
- id: insert_d_013
|
||||
trigger: observation_mode_active
|
||||
text: "Observation: logging"
|
||||
tags: [field]
|
||||
|
||||
- id: insert_d_014
|
||||
trigger: restricted_area_entered
|
||||
text: "Restricted zone — logged"
|
||||
tags: [field, institutional]
|
||||
|
||||
- id: insert_d_015
|
||||
trigger: anomaly_detected
|
||||
template: "Anomaly: {location}"
|
||||
example: "Anomaly: B-7 corridor"
|
||||
tags: [field, investigation]
|
||||
|
||||
- id: insert_d_016
|
||||
trigger: no_anomaly
|
||||
text: "Sector: nominal"
|
||||
tags: [field]
|
||||
|
||||
# ==========================================
|
||||
# SYSTEM STATUS — persistent interface text
|
||||
# Small-print labels in perception mode corners.
|
||||
# ==========================================
|
||||
|
||||
system_status:
|
||||
- id: insert_d_100
|
||||
context: default
|
||||
text: "Analytical lattice: active"
|
||||
|
||||
- id: insert_d_101
|
||||
context: perception_mode_active
|
||||
text: "Perception mode: on"
|
||||
|
||||
- id: insert_d_102
|
||||
context: fog_layer_present
|
||||
text: "Reduced visibility"
|
||||
|
||||
- id: insert_d_103
|
||||
context: meridian_active
|
||||
text: "Meridian: nominal"
|
||||
|
||||
- id: insert_d_104
|
||||
context: meridian_inactive
|
||||
text: "Meridian: offline"
|
||||
|
||||
- id: insert_d_105
|
||||
context: investigation_active
|
||||
text: "Case: active"
|
||||
|
||||
- id: insert_d_106
|
||||
context: case_status_flagged
|
||||
text: "Case: flagged subjects present"
|
||||
|
||||
- id: insert_d_107
|
||||
context: case_status_critical
|
||||
text: "Case: escalation threshold"
|
||||
|
||||
- id: insert_d_108
|
||||
context: lattice_scan_complete
|
||||
text: "Scan: complete"
|
||||
|
||||
# ==========================================
|
||||
# EXAMINATION LABELS — text shown when examining environmental objects
|
||||
# ==========================================
|
||||
|
||||
examination_labels:
|
||||
- id: insert_d_200
|
||||
object_type: document
|
||||
text: "Examine"
|
||||
|
||||
- id: insert_d_201
|
||||
object_type: terminal
|
||||
text: "Query manifest"
|
||||
|
||||
- id: insert_d_202
|
||||
object_type: container_flagged
|
||||
text: "Container 4471 — discrepancy logged"
|
||||
|
||||
- id: insert_d_203
|
||||
object_type: restricted_area
|
||||
text: "Restricted — B-7 sector"
|
||||
|
||||
- id: insert_d_204
|
||||
object_type: surveillance_gap
|
||||
text: "Coverage gap — logged"
|
||||
|
||||
- id: insert_d_205
|
||||
object_type: evidence_item
|
||||
text: "Log as evidence"
|
||||
|
||||
- id: insert_d_206
|
||||
object_type: known_meeting_point
|
||||
text: "Meeting point — flagged"
|
||||
|
||||
notes: >
|
||||
Voice: institutional, precise, Commission equipment. Surname-first for
|
||||
targets and unknowns. First name appears only for allies (Sera).
|
||||
That shift IS the relationship marker — the player notices when
|
||||
"Venn" becomes "Sera" and knows it means something.
|
||||
Araminta coordinates on visual presentation constraints (#331 co-owner).
|
||||
+193
@@ -0,0 +1,193 @@
|
||||
# Diegetic Insert Flavor Text — Smuggler Character
|
||||
# Neural lattice interface strings: POI labels, notifications, system status.
|
||||
# Ticket: #331 | Sprint: 12 | Owner: Mellanie + Araminta
|
||||
#
|
||||
# Voice principle: the smuggler's insert is slightly informal, modified hardware.
|
||||
# It's a tool that's been lived with, not issued equipment. Short labels.
|
||||
# Uses first names and operational shorthand, not institutional vocabulary.
|
||||
|
||||
character: smuggler
|
||||
|
||||
# ==========================================
|
||||
# POI LABELS — displayed in perception mode overlay
|
||||
# Appears on NPCs when viewed through insert interface.
|
||||
# State-dependent: shifts as relationship changes.
|
||||
# ==========================================
|
||||
|
||||
poi_labels:
|
||||
defaults:
|
||||
unknown: "Unknown"
|
||||
known: "{first_name}"
|
||||
friendly: "{first_name} — OK"
|
||||
person_of_interest: "{first_name} — WATCH"
|
||||
hostile: "{first_name} — AVOID"
|
||||
|
||||
npc_overrides:
|
||||
kael_davan:
|
||||
phase_1: "Kael"
|
||||
phase_2: "Kael — ?"
|
||||
phase_3: "Kael — WATCH"
|
||||
phase_4: "Kael — LYING"
|
||||
phase_5: "Kael — COMPROMISED"
|
||||
voss:
|
||||
default: "Voss"
|
||||
hostile: "Voss — PROBLEM"
|
||||
commission_personnel:
|
||||
default: "Commission"
|
||||
investigation_active: "Commission — ACTIVE"
|
||||
ring_member:
|
||||
default: "{first_name}"
|
||||
operational: "{first_name} — RING"
|
||||
|
||||
# ==========================================
|
||||
# NOTIFICATIONS — status strings, message previews
|
||||
# Displayed as brief overlay text. 40 char max per line.
|
||||
# ==========================================
|
||||
|
||||
notifications:
|
||||
messages:
|
||||
- id: insert_s_001
|
||||
trigger: message_from_contact
|
||||
template: "Msg: {contact_name}"
|
||||
example: "Msg: Kael"
|
||||
tags: [ring-operational]
|
||||
|
||||
- id: insert_s_002
|
||||
trigger: message_from_contact_urgent
|
||||
template: "Msg: {contact_name} — urgent"
|
||||
example: "Msg: Nils — urgent"
|
||||
tags: [ring-operational, priority]
|
||||
|
||||
- id: insert_s_003
|
||||
trigger: drop_point_update
|
||||
text: "Drop point updated"
|
||||
tags: [ring-operational]
|
||||
|
||||
- id: insert_s_004
|
||||
trigger: drop_point_confirmed
|
||||
text: "Drop point confirmed — proceed"
|
||||
tags: [ring-operational]
|
||||
|
||||
- id: insert_s_005
|
||||
trigger: meridian_window_opening
|
||||
template: "Window: {duration}m"
|
||||
example: "Window: 25m"
|
||||
tags: [operational, timing]
|
||||
|
||||
- id: insert_s_006
|
||||
trigger: meridian_window_closing
|
||||
template: "Window closing — {time_remaining}m"
|
||||
example: "Window closing — 3m"
|
||||
tags: [operational, timing, priority]
|
||||
|
||||
- id: insert_s_007
|
||||
trigger: ring_checkin_overdue
|
||||
text: "Check-in overdue"
|
||||
tags: [ring-operational, concern]
|
||||
|
||||
- id: insert_s_008
|
||||
trigger: contact_unavailable
|
||||
template: "{contact_name} — no response"
|
||||
example: "Kael — no response"
|
||||
tags: [ring-operational, concern]
|
||||
|
||||
- id: insert_s_009
|
||||
trigger: commission_patrol_detected
|
||||
text: "Commission in sector"
|
||||
tags: [caution, operational]
|
||||
|
||||
- id: insert_s_010
|
||||
trigger: commission_patrol_cleared
|
||||
text: "Sector clear"
|
||||
tags: [operational]
|
||||
|
||||
evidence:
|
||||
- id: insert_s_011
|
||||
trigger: observation_logged
|
||||
text: "Logged"
|
||||
tags: [observation]
|
||||
|
||||
- id: insert_s_012
|
||||
trigger: tell_observed
|
||||
template: "{npc_name} — tell logged"
|
||||
example: "Kael — tell logged"
|
||||
tags: [observation, tell]
|
||||
|
||||
- id: insert_s_013
|
||||
trigger: contradiction_observed
|
||||
template: "{npc_name} — anomaly"
|
||||
example: "Kael — anomaly"
|
||||
tags: [observation, contradiction]
|
||||
|
||||
# ==========================================
|
||||
# SYSTEM STATUS — persistent interface text
|
||||
# Small-print labels in perception mode corners.
|
||||
# ==========================================
|
||||
|
||||
system_status:
|
||||
- id: insert_s_100
|
||||
context: default
|
||||
text: "Lattice: Sova Transit"
|
||||
|
||||
- id: insert_s_101
|
||||
context: perception_mode_active
|
||||
text: "Perception: active"
|
||||
|
||||
- id: insert_s_102
|
||||
context: fog_layer_present
|
||||
text: "Fog layer"
|
||||
|
||||
- id: insert_s_103
|
||||
context: meridian_dead_zone
|
||||
text: "Meridian: inactive"
|
||||
|
||||
- id: insert_s_104
|
||||
context: meridian_active
|
||||
text: "Meridian: active — caution"
|
||||
|
||||
- id: insert_s_105
|
||||
context: ring_status_stable
|
||||
text: "Status: stable"
|
||||
|
||||
- id: insert_s_106
|
||||
context: ring_status_elevated
|
||||
text: "Status: elevated"
|
||||
|
||||
- id: insert_s_107
|
||||
context: ring_status_compromised
|
||||
text: "Status: compromised"
|
||||
|
||||
# ==========================================
|
||||
# EXAMINATION LABELS — text shown when examining environmental objects
|
||||
# ==========================================
|
||||
|
||||
examination_labels:
|
||||
- id: insert_s_200
|
||||
object_type: document
|
||||
text: "Read"
|
||||
|
||||
- id: insert_s_201
|
||||
object_type: terminal
|
||||
text: "Check manifest"
|
||||
|
||||
- id: insert_s_202
|
||||
object_type: container_flagged
|
||||
text: "4471 — flagged"
|
||||
|
||||
- id: insert_s_203
|
||||
object_type: restricted_area
|
||||
text: "B-7 — restricted"
|
||||
|
||||
- id: insert_s_204
|
||||
object_type: dead_drop
|
||||
text: "Drop point"
|
||||
|
||||
- id: insert_s_205
|
||||
object_type: safe_location
|
||||
text: "Safe"
|
||||
|
||||
notes: >
|
||||
Voice: informal, operational shorthand. This is a modified civilian
|
||||
lattice, not issued equipment. First names, not titles. Short.
|
||||
Labels should feel like something you'd put on your own interface.
|
||||
Araminta coordinates on visual presentation constraints (#331 co-owner).
|
||||
@@ -0,0 +1,62 @@
|
||||
# NPC Profile: Pael Varren
|
||||
# Tier 3 — NOBODY / CIVILIAN
|
||||
# Flat NPC — noise floor. Knows nothing about the ring.
|
||||
# Observable presence near B-corridor is legitimate maintenance, not surveillance.
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
canonical_id: "npc:pael"
|
||||
display_name: "Pael Varren"
|
||||
tier: 3
|
||||
pattern: "NOBODY"
|
||||
motivation: "CIVILIAN"
|
||||
|
||||
description: >
|
||||
Station maintenance tech, early 40s. Has worked Sova Transit District for
|
||||
fifteen years. Knows every duct, every failing seal, every air recycler
|
||||
running off-spec. Appears throughout the district because maintenance is
|
||||
everywhere. Carries a scanner everywhere; hands are perpetually stained with
|
||||
lubricant. Pael has no ring connection, no secrets beyond a quiet resentment
|
||||
of deferred maintenance tickets. Is frequently near B-corridor because the
|
||||
environmental seal there fails on a cycle of roughly three weeks, without
|
||||
fail, regardless of what Pael does about it.
|
||||
|
||||
want:
|
||||
primary: "Happiness"
|
||||
description: >
|
||||
To get through a single shift without a new deferred ticket appearing on
|
||||
the queue. Fifteen years of Sova has narrowed the definition of a good day.
|
||||
|
||||
routine:
|
||||
summary: >
|
||||
Arrives before any shift (05:30 entry), does a diagnostic walk of the
|
||||
full district, starts on the highest-priority deferred tickets during
|
||||
low-traffic windows. Reappears at the B-corridor junction around mid-shift
|
||||
because the environmental seal there is always the problem. Leaves when
|
||||
the shift cycle turns over. Pattern is completely predictable. That's the
|
||||
point — Pael is never where they shouldn't be, they're just always where
|
||||
the problems are.
|
||||
|
||||
personality:
|
||||
demeanor: "tired-competent, dry humor, no interest in drama"
|
||||
social_style: "minimal — answers when addressed, doesn't linger"
|
||||
stress_response: "files a maintenance ticket and moves on"
|
||||
|
||||
tells: []
|
||||
|
||||
skills:
|
||||
combat_trained: false
|
||||
skills:
|
||||
maintenance: 9
|
||||
environmental_systems: 8
|
||||
|
||||
trust_levels:
|
||||
surface: >
|
||||
Fifteen years of Sova maintenance. "If it breaks, I've seen it break
|
||||
before. Usually the same three things."
|
||||
|
||||
notes: >
|
||||
NOBODY + CIVILIAN: pure noise floor. The "seems important but isn't" quality
|
||||
is positional — frequent presence near B-corridor for genuine maintenance
|
||||
reasons. One memorable observable trait: scanner always open, lubricant
|
||||
stains on both hands even at shift start. Paula owns the trait design.
|
||||
Mellanie owns the lines (#307).
|
||||
@@ -0,0 +1,63 @@
|
||||
# NPC Profile: Ren Tosse
|
||||
# Tier 3 — NOBODY / CIVILIAN
|
||||
# Flat NPC — noise floor. Drifter with no ring connection.
|
||||
# Asks too many questions about cargo schedules. Is just looking for work.
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
canonical_id: "npc:ren"
|
||||
display_name: "Ren Tosse"
|
||||
tier: 3
|
||||
pattern: "NOBODY"
|
||||
motivation: "CIVILIAN"
|
||||
|
||||
description: >
|
||||
Day worker, early 30s. Comes through Sova Transit on irregular rotations —
|
||||
picks up freight work when it's available, moves on when it isn't. Knows the
|
||||
station the way drifters do: which bays are short-handed, which supervisors
|
||||
ask fewer questions, what the bar's cheap nights are. Has a worn transit bag
|
||||
and a slightly too-casual awareness of exits — not operational awareness,
|
||||
just the low-level situational alertness of someone who has moved through
|
||||
too many unfamiliar stations. Genuinely unremarkable. No ring connection,
|
||||
no secrets. Asks too many questions about night rotations and cargo schedules
|
||||
because that's how you find short-handed bays.
|
||||
|
||||
want:
|
||||
primary: "Wealth"
|
||||
description: >
|
||||
Regular work. Enough to stop moving for a while. Sova's a decent stop —
|
||||
the freight work is steady when it comes through.
|
||||
|
||||
routine:
|
||||
summary: >
|
||||
Arrives after 10:00 when the day shift is settled. Checks the job board
|
||||
at the terminal entrance. Wanders to The Last Shift for a drink and
|
||||
whatever bar conversation yields useful shift information. Leaves by late
|
||||
afternoon unless day work came through. Pattern is irregular by design —
|
||||
no fixed schedule because there's no fixed role.
|
||||
|
||||
personality:
|
||||
demeanor: "casual, observant, asks questions as if entitled to answers"
|
||||
social_style: "sociable enough to get information, quiet when there's nothing useful"
|
||||
stress_response: "moves on. There's always another station."
|
||||
|
||||
tells: []
|
||||
|
||||
skills:
|
||||
combat_trained: false
|
||||
skills:
|
||||
cargo_handling: 6
|
||||
freight_routing: 5
|
||||
|
||||
trust_levels:
|
||||
surface: >
|
||||
Passing through, looking for work. "Sova seems decent. Depends on
|
||||
the freight situation."
|
||||
|
||||
notes: >
|
||||
NOBODY + CIVILIAN: pure noise floor. The "seems important but isn't" quality
|
||||
comes from drifter behavior patterns that mimic operative reconnaissance:
|
||||
asking about night rotations, checking cargo schedules, casual interest in
|
||||
specific bays. All genuine job-seeking. One memorable observable trait:
|
||||
worn transit bag with tags from three different station systems, slightly
|
||||
too-casual awareness of exits. Paula owns the trait design. Mellanie owns
|
||||
the lines (#307).
|
||||
@@ -0,0 +1,58 @@
|
||||
# NPC Profile: Tev Osel
|
||||
# Tier 3 — NOBODY / CIVILIAN
|
||||
# Flat NPC — noise floor. Stands like a lookout. Is waiting for his partner.
|
||||
# No ring connection. The resemblance to surveillance posture is accidental.
|
||||
# Ticket: #307 | Sprint: 12
|
||||
|
||||
canonical_id: "npc:tev"
|
||||
display_name: "Tev Osel"
|
||||
tier: 3
|
||||
pattern: "NOBODY"
|
||||
motivation: "CIVILIAN"
|
||||
|
||||
description: >
|
||||
Cargo staging worker, late 20s. Has an unfortunate habit of positioning
|
||||
himself exactly where someone running corridor surveillance would stand —
|
||||
at junctions, in doorways, facing the approach. This is where he waits for
|
||||
Kosse, his partner, who works the late freight bay and takes the same route
|
||||
back through the maintenance corridors. Tev times his breaks to the late
|
||||
route schedule. He has no idea how this looks to someone tracking corridor
|
||||
traffic. No ring connection. No secrets.
|
||||
|
||||
want:
|
||||
primary: "Connection"
|
||||
description: >
|
||||
For Kosse to finish shift on time for once. It never happens on time.
|
||||
|
||||
routine:
|
||||
summary: >
|
||||
Works cargo staging 06:00-14:00. During break windows, drifts to corridor
|
||||
junction C-4 to wait for Kosse on the late freight route home. Returns to
|
||||
staging when Kosse doesn't appear within the break window. After shift:
|
||||
walks home with Kosse when schedules align, alone otherwise. The junction
|
||||
positioning is consistent and timing-predictable.
|
||||
|
||||
personality:
|
||||
demeanor: "patient, unassuming, mildly distracted when waiting"
|
||||
social_style: "polite if addressed, slightly confused why anyone is talking to him"
|
||||
stress_response: "checks lattice. Waits longer."
|
||||
|
||||
tells: []
|
||||
|
||||
skills:
|
||||
combat_trained: false
|
||||
skills:
|
||||
cargo_staging: 6
|
||||
|
||||
trust_levels:
|
||||
surface: >
|
||||
Waiting for someone. "Kosse's running late again. You know how the freight
|
||||
bay is."
|
||||
|
||||
notes: >
|
||||
NOBODY + CIVILIAN: pure noise floor. The "seems important but isn't" quality
|
||||
is entirely positional — standing at corridor junctions, watching approach
|
||||
traffic, checking the time, stationing himself in threshold positions. All
|
||||
of this is to meet a partner after shift. One memorable observable trait:
|
||||
weight always on the wrong foot, perpetually glancing the same direction.
|
||||
Paula owns the trait design. Mellanie owns the lines (#307).
|
||||
Reference in New Issue
Block a user