refactor: Convert ink dialogue to inline speaker prefix format

Convert all ink files from #speaker: tag format to inline speaker prefixes:
- "Narrator: " for narration/descriptions
- "Netherton: " for Director Netherton dialogue
- "Haxolottle: " for Agent 0x99 dialogue
- "Dr. Chen: " for Dr. Chen dialogue

Changes:
- agent_0x00_cyber_division_intro.ink: Multi-character scene with Netherton and Haxolottle
- haxolottle_ongoing_conversations.ink: Single-NPC conversations (Phases 1-2)
- haxolottle_ongoing_conversations_advanced.ink: Single-NPC conversations (Phases 3-4)
- lore_exploration_hub.ink: Conversations with multiple possible NPCs

Preserves all functional tags (#exit_conversation, etc.)
Follows Break Escape ink best practices for speaker attribution
This commit is contained in:
Z. Cliffe Schreuders
2025-11-18 10:36:09 +00:00
parent 845cd662ca
commit 582b7be2e1
4 changed files with 108 additions and 326 deletions

View File

@@ -27,8 +27,7 @@ EXTERNAL previous_missions_completed
[Location: SAFETYNET Headquarters, Director's Office]
[Time: 0900 hours]
#speaker:narration
The elevator doors open with a soft chime. You step into the corridor of SAFETYNET's executive level—a place you've only heard about in whispers. Sleek, minimalist, and impossibly secure.
Narrator: The elevator doors open with a soft chime. You step into the corridor of SAFETYNET's executive level—a place you've only heard about in whispers. Sleek, minimalist, and impossibly secure.
The walls are lined with framed commendations and photos of operations you'll probably never be cleared to know about. Each door bears only a number, no names.
@@ -60,20 +59,17 @@ No explanation. No context. Just the summons.
// ===========================================
=== directors_office ===
#speaker:narration
You reach Office 7A. The door is already open.
Narrator: You reach Office 7A. The door is already open.
Director Magnus Netherton sits behind an immaculate desk, reviewing something on a tablet. He's exactly as described—impeccably dressed in a charcoal suit, gray at the temples, and radiating the kind of authority that comes from two decades of making life-or-death decisions.
Without looking up:
#speaker:director_netherton
Agent {player_name}. You're three minutes early. Acceptable.
Netherton: Agent {player_name}. You're three minutes early. Acceptable.
He gestures to a chair.
#speaker:director_netherton
Please, sit.
Netherton: Please, sit.
* [Sit immediately]
You take the offered seat, maintaining professional posture.
@@ -92,11 +88,9 @@ Please, sit.
-> first_briefing
=== premature_question ===
#speaker:director_netherton
Netherton finally looks up, his expression unreadable.
Netherton: Netherton finally looks up, his expression unreadable.
#speaker:director_netherton
You'll find out momentarily, Agent. Patience is a virtue outlined in handbook section 3.4—though I suspect you already know that.
Netherton: You'll find out momentarily, Agent. Patience is a virtue outlined in handbook section 3.4—though I suspect you already know that.
He returns his attention to the tablet for exactly five more seconds, then sets it down.
@@ -107,8 +101,7 @@ He returns his attention to the tablet for exactly five more seconds, then sets
// ===========================================
=== first_briefing ===
#speaker:director_netherton
Your performance over the past {previous_missions_completed > 0: {previous_missions_completed} operations | several months} has been noted.
Netherton: Your performance over the past {previous_missions_completed > 0: {previous_missions_completed} operations | several months} has been noted.
{player_attitude == "confident":
Netherton: You carry yourself with confidence. Good. You'll need that.
@@ -120,18 +113,15 @@ Your performance over the past {previous_missions_completed > 0: {previous_missi
Netherton: Your analytical approach to challenges has not gone unnoticed.
}
#speaker:director_netherton
You've proven yourself capable in {previous_missions_completed > 0: fieldwork | your previous assignments}. However, SAFETYNET has a more... specialized need for your skills.
Netherton: You've proven yourself capable in {previous_missions_completed > 0: fieldwork | your previous assignments}. However, SAFETYNET has a more... specialized need for your skills.
He taps the tablet, and a holographic display materializes above his desk—organizational charts, mission statistics, threat assessments.
#speaker:director_netherton
The CYBER-PHYSICAL division. Our operatives who engage with threats that exist at the intersection of digital and physical security.
Netherton: The CYBER-PHYSICAL division. Our operatives who engage with threats that exist at the intersection of digital and physical security.
The display shifts to show images: server rooms, corporate facilities, critical infrastructure, research labs.
#speaker:director_netherton
ENTROPY doesn't simply hack systems from a distance, Agent. They infiltrate facilities. They compromise supply chains. They plant hardware backdoors. They manipulate both silicon and society.
Netherton: ENTROPY doesn't simply hack systems from a distance, Agent. They infiltrate facilities. They compromise supply chains. They plant hardware backdoors. They manipulate both silicon and society.
* [Express eagerness to join]
~ player_attitude = "eager"
@@ -152,49 +142,41 @@ ENTROPY doesn't simply hack systems from a distance, Agent. They infiltrate faci
-> why_selected
=== eager_response ===
#speaker:director_netherton
Netherton's expression doesn't change, but there's something that might be approval in his eyes.
Netherton: Netherton's expression doesn't change, but there's something that might be approval in his eyes.
#speaker:director_netherton
Enthusiasm is noted, Agent. However, there are protocols. Per handbook section 12.3, new division assignments require a comprehensive briefing and handler assignment.
Netherton: Enthusiasm is noted, Agent. However, there are protocols. Per handbook section 12.3, new division assignments require a comprehensive briefing and handler assignment.
-> division_details
=== division_details ===
#speaker:director_netherton
The CYBER-PHYSICAL division handles operations requiring both cyber security expertise and physical infiltration capability.
Netherton: The CYBER-PHYSICAL division handles operations requiring both cyber security expertise and physical infiltration capability.
He highlights several case files on the display:
#speaker:director_netherton
- Facility infiltration to access air-gapped systems
- Physical implantation of monitoring devices
- On-site network penetration and data exfiltration
- Supply chain interdiction
- Hardware security assessments of critical infrastructure
Netherton: - Facility infiltration to access air-gapped systems
Netherton: - Physical implantation of monitoring devices
Netherton: - On-site network penetration and data exfiltration
Netherton: - Supply chain interdiction
Netherton: - Hardware security assessments of critical infrastructure
{not knows_cyber_division:
~ knows_cyber_division = true
}
#speaker:director_netherton
Unlike pure cyber operations conducted remotely, or pure physical security assessments, CYBER-PHYSICAL operatives must excel at both. The margin for error is... minimal.
Netherton: Unlike pure cyber operations conducted remotely, or pure physical security assessments, CYBER-PHYSICAL operatives must excel at both. The margin for error is... minimal.
-> handler_introduction_setup
=== why_selected ===
#speaker:director_netherton
A valid question.
Netherton: A valid question.
He pulls up what appears to be your personnel file.
#speaker:director_netherton
Your technical proficiency is well-documented. Your adaptability in the field has been demonstrated repeatedly. And perhaps most importantly...
Netherton: Your technical proficiency is well-documented. Your adaptability in the field has been demonstrated repeatedly. And perhaps most importantly...
He looks directly at you.
#speaker:director_netherton
You complete missions while adhering to operational protocols. A rarer combination than one might expect.
Netherton: You complete missions while adhering to operational protocols. A rarer combination than one might expect.
{player_attitude == "cautious":
Netherton: Your cautious nature is an asset, not a liability. CYBER-PHYSICAL operations require agents who think before they act.
@@ -205,13 +187,11 @@ You complete missions while adhering to operational protocols. A rarer combinati
-> division_details
=== handler_introduction_setup ===
#speaker:director_netherton
Per standard operating procedure outlined in handbook section 14.7, you will be assigned a dedicated handler for CYBER-PHYSICAL operations.
Netherton: Per standard operating procedure outlined in handbook section 14.7, you will be assigned a dedicated handler for CYBER-PHYSICAL operations.
He presses a button on his desk.
#speaker:director_netherton
Someone with extensive field experience who can provide real-time support during your operations.
Netherton: Someone with extensive field experience who can provide real-time support during your operations.
The office door opens.
@@ -223,16 +203,13 @@ The office door opens.
// ===========================================
=== haxolottle_entrance ===
#speaker:narration
A figure enters—relaxed posture, tech-casual attire, holding what appears to be a coffee mug with an unusual design. They look comfortable in a way that suggests years of experience.
Narrator: A figure enters—relaxed posture, tech-casual attire, holding what appears to be a coffee mug with an unusual design. They look comfortable in a way that suggests years of experience.
#speaker:agent_haxolottle
Agent {player_name}, I presume?
Haxolottle: Agent {player_name}, I presume?
They extend a hand for a handshake.
#speaker:agent_haxolottle
Agent 0x99. Callsign "Haxolottle." Yes, like the axolotl. Yes, I know it's unusual. And yes, there's a story behind it that I'll probably tell you over comms during a mission at exactly the wrong moment.
Haxolottle: Agent 0x99. Callsign "Haxolottle." Yes, like the axolotl. Yes, I know it's unusual. And yes, there's a story behind it that I'll probably tell you over comms during a mission at exactly the wrong moment.
* [Shake hands professionally]
~ haxolottle_trust += 5
@@ -255,65 +232,49 @@ Agent 0x99. Callsign "Haxolottle." Yes, like the axolotl. Yes, I know it's unusu
-> axolotl_story_teaser
=== haxolottle_initial_banter ===
#speaker:agent_haxolottle
Haxolottle grins and glances at Director Netherton.
Haxolottle: Haxolottle grins and glances at Director Netherton.
#speaker:agent_haxolottle
Still as warm and welcoming as ever, I see, Director.
Haxolottle: Still as warm and welcoming as ever, I see, Director.
#speaker:director_netherton
Netherton doesn't look up from his tablet.
Netherton: Netherton doesn't look up from his tablet.
#speaker:director_netherton
Agent 0x99, please maintain professional decorum per handbook section—
Netherton: Agent 0x99, please maintain professional decorum per handbook section
#speaker:agent_haxolottle
—Section 3.2.b, interpersonal conduct. I know, I know. Fifteen years and you're still citing the handbook at me.
Haxolottle: —Section 3.2.b, interpersonal conduct. I know, I know. Fifteen years and you're still citing the handbook at me.
Haxolottle turns back to you with a conspiratorial wink.
#speaker:agent_haxolottle
You'll get used to it. The Director's bark is worse than his bite. Actually, wait, that's not true. His bite is exactly as strict as his bark. But it comes from a good place.
Haxolottle: You'll get used to it. The Director's bark is worse than his bite. Actually, wait, that's not true. His bite is exactly as strict as his bark. But it comes from a good place.
-> handler_explanation
=== axolotl_story_teaser ===
#speaker:agent_haxolottle
Haxolottle's eyes light up.
Haxolottle: Haxolottle's eyes light up.
#speaker:agent_haxolottle
Oh, you're going to fit in just fine. The short version: axolotls are masters of regeneration and adaptation. Lost a limb? Grow it back. Need to change your approach? Metamorphosis is an option.
Haxolottle: Oh, you're going to fit in just fine. The short version: axolotls are masters of regeneration and adaptation. Lost a limb? Grow it back. Need to change your approach? Metamorphosis is an option.
#speaker:director_netherton
Director Netherton clears his throat.
Netherton: Director Netherton clears his throat.
#speaker:director_netherton
Agent 0x99, perhaps we could save the amphibian biology lecture for after the formal briefing.
Netherton: Agent 0x99, perhaps we could save the amphibian biology lecture for after the formal briefing.
#speaker:agent_haxolottle
Right, right. Professional decorum. Got it, Director.
Haxolottle: Right, right. Professional decorum. Got it, Director.
Haxolottle turns back to you with a smile.
#speaker:agent_haxolottle
Long version later. For now, just know: in this job, the ability to regenerate from setbacks and adapt to changing circumstances is everything. Hence, Haxolottle.
Haxolottle: Long version later. For now, just know: in this job, the ability to regenerate from setbacks and adapt to changing circumstances is everything. Hence, Haxolottle.
-> handler_explanation
=== handler_explanation ===
#speaker:director_netherton
Director Netherton stands, hands clasped behind his back.
Netherton: Director Netherton stands, hands clasped behind his back.
#speaker:director_netherton
Agent 0x99 will serve as your handler for CYBER-PHYSICAL operations. They will provide mission briefings, real-time support during operations, and post-mission debriefing.
Netherton: Agent 0x99 will serve as your handler for CYBER-PHYSICAL operations. They will provide mission briefings, real-time support during operations, and post-mission debriefing.
#speaker:agent_haxolottle
Translation: I'm the voice in your ear when you're standing in a server room you're not supposed to be in, trying to bypass security you definitely shouldn't be bypassing, while maintaining a cover story that seemed way more convincing during planning.
Haxolottle: Translation: I'm the voice in your ear when you're standing in a server room you're not supposed to be in, trying to bypass security you definitely shouldn't be bypassing, while maintaining a cover story that seemed way more convincing during planning.
~ haxolottle_trust += 5
#speaker:agent_haxolottle
I've been doing this for fifteen years. Spent eight in the field before transitioning to handler work. Whatever you run into out there, I've probably seen it—or something close enough to help.
Haxolottle: I've been doing this for fifteen years. Spent eight in the field before transitioning to handler work. Whatever you run into out there, I've probably seen it—or something close enough to help.
* [Express confidence in the arrangement]
~ haxolottle_trust += 10
@@ -334,17 +295,13 @@ I've been doing this for fifteen years. Spent eight in the field before transiti
-> disagreement_protocol
=== haxolottle_experience_brief ===
#speaker:agent_haxolottle
Haxolottle leans against the Director's desk casually—earning a slight frown from Netherton, which they ignore.
Haxolottle: Haxolottle leans against the Director's desk casually—earning a slight frown from Netherton, which they ignore.
#speaker:agent_haxolottle
Infiltrated controlled corporations. Ran counter-intelligence on ENTROPY cells. Did some work that's still classified and will probably stay that way until we're both retired.
Haxolottle: Infiltrated controlled corporations. Ran counter-intelligence on ENTROPY cells. Did some work that's still classified and will probably stay that way until we're both retired.
#speaker:agent_haxolottle
The operation that earned me the callsign involved being pinned in a compromised position for three days, surviving through adaptation and creative problem-solving. Turned a blown mission into our biggest intelligence coup that year.
Haxolottle: The operation that earned me the callsign involved being pinned in a compromised position for three days, surviving through adaptation and creative problem-solving. Turned a blown mission into our biggest intelligence coup that year.
#speaker:agent_haxolottle
Point is: I know what you'll be dealing with. The fear. The adrenaline. The moment when everything goes sideways and you have to improvise. I've been there.
Haxolottle: Point is: I know what you'll be dealing with. The fear. The adrenaline. The moment when everything goes sideways and you have to improvise. I've been there.
~ knows_handler_role = true
~ haxolottle_trust += 5
@@ -352,17 +309,13 @@ Point is: I know what you'll be dealing with. The fear. The adrenaline. The mome
-> mission_philosophy_question
=== disagreement_protocol ===
#speaker:director_netherton
Netherton answers before Haxolottle can.
Netherton: Netherton answers before Haxolottle can.
#speaker:director_netherton
An excellent question. Per handbook section 14.9, field agents have operational discretion when directly engaged. You are on-site. You have eyes on the situation. Your handler provides guidance, not commands.
Netherton: An excellent question. Per handbook section 14.9, field agents have operational discretion when directly engaged. You are on-site. You have eyes on the situation. Your handler provides guidance, not commands.
#speaker:agent_haxolottle
What the Director's saying is: I'll give you my best assessment based on the big picture I can see. But you're the one in the room. If you've got a better read on the situation, I trust your judgment.
Haxolottle: What the Director's saying is: I'll give you my best assessment based on the big picture I can see. But you're the one in the room. If you've got a better read on the situation, I trust your judgment.
#speaker:agent_haxolottle
That said, if I'm telling you something's dangerous, there's probably a very good reason. We're partners in this.
Haxolottle: That said, if I'm telling you something's dangerous, there's probably a very good reason. We're partners in this.
~ netherton_respect += 10
~ haxolottle_trust += 10
@@ -370,17 +323,13 @@ That said, if I'm telling you something's dangerous, there's probably a very goo
-> mission_philosophy_question
=== mission_philosophy_question ===
#speaker:director_netherton
Director Netherton pulls up a new display—threat assessments, ENTROPY cell activities, ongoing operations.
Netherton: Director Netherton pulls up a new display—threat assessments, ENTROPY cell activities, ongoing operations.
#speaker:director_netherton
The CYBER-PHYSICAL division faces unique challenges. ENTROPY operates in the shadows between digital and physical security. They exploit the gaps where traditional defenses fail.
Netherton: The CYBER-PHYSICAL division faces unique challenges. ENTROPY operates in the shadows between digital and physical security. They exploit the gaps where traditional defenses fail.
#speaker:agent_haxolottle
We're the ones who close those gaps. Sometimes with elegant technical solutions. Sometimes with a lockpick and a convincing cover story.
Haxolottle: We're the ones who close those gaps. Sometimes with elegant technical solutions. Sometimes with a lockpick and a convincing cover story.
#speaker:director_netherton
Your approach to these operations will shape your effectiveness. I'm interested in understanding your operational philosophy, Agent {player_name}.
Netherton: Your approach to these operations will shape your effectiveness. I'm interested in understanding your operational philosophy, Agent {player_name}.
* [Prioritize thoroughness and caution]
~ player_attitude = "cautious"
@@ -405,72 +354,54 @@ Your approach to these operations will shape your effectiveness. I'm interested
-> adaptive_philosophy_response
=== cautious_philosophy_response ===
#speaker:director_netherton
Netherton nods approvingly.
Netherton: Netherton nods approvingly.
#speaker:director_netherton
A methodical approach. This aligns well with handbook guidance on operational planning section 7.3. Measured execution reduces unnecessary exposure and maintains operational security.
Netherton: A methodical approach. This aligns well with handbook guidance on operational planning section 7.3. Measured execution reduces unnecessary exposure and maintains operational security.
#speaker:agent_haxolottle
And when things inevitably go sideways—because they always do—that thorough planning gives you a foundation to build your improvisation on. Like an axolotl regenerating a limb: you need the core structure first.
Haxolottle: And when things inevitably go sideways—because they always do—that thorough planning gives you a foundation to build your improvisation on. Like an axolotl regenerating a limb: you need the core structure first.
There's that axolotl reference again.
-> specialization_discussion
=== confident_philosophy_response ===
#speaker:agent_haxolottle
Haxolottle grins.
Haxolottle: Haxolottle grins.
#speaker:agent_haxolottle
I like it. Decisiveness is underrated. Analysis paralysis has killed more operations than bold action, in my experience.
Haxolottle: I like it. Decisiveness is underrated. Analysis paralysis has killed more operations than bold action, in my experience.
#speaker:director_netherton
Netherton looks less enthusiastic but not disapproving.
Netherton: Netherton looks less enthusiastic but not disapproving.
#speaker:director_netherton
Confidence is valuable, Agent, provided it's paired with sound judgment. Per handbook section 8.5, field discretion requires balancing speed with caution.
Netherton: Confidence is valuable, Agent, provided it's paired with sound judgment. Per handbook section 8.5, field discretion requires balancing speed with caution.
#speaker:agent_haxolottle
Translation: be bold, but don't be reckless. We're working on it together. If your instincts say "go," and I don't have a compelling reason to stop you, we go.
Haxolottle: Translation: be bold, but don't be reckless. We're working on it together. If your instincts say "go," and I don't have a compelling reason to stop you, we go.
-> specialization_discussion
=== adaptive_philosophy_response ===
#speaker:agent_haxolottle
Haxolottle actually looks impressed.
Haxolottle: Haxolottle actually looks impressed.
#speaker:agent_haxolottle
Now that's the mindset. Adaptability. Flexibility. Like I said—axolotl thinking. The ability to regenerate your approach when the first one doesn't work.
Haxolottle: Now that's the mindset. Adaptability. Flexibility. Like I said—axolotl thinking. The ability to regenerate your approach when the first one doesn't work.
#speaker:director_netherton
Director Netherton also appears satisfied.
Netherton: Director Netherton also appears satisfied.
#speaker:director_netherton
A balanced perspective. The handbook acknowledges in section 14.2 that field conditions are inherently unpredictable. Agents who can adjust methodology while maintaining mission focus demonstrate advanced operational maturity.
Netherton: A balanced perspective. The handbook acknowledges in section 14.2 that field conditions are inherently unpredictable. Agents who can adjust methodology while maintaining mission focus demonstrate advanced operational maturity.
#speaker:agent_haxolottle
In other words: you get it. Perfect. We're going to work well together.
Haxolottle: In other words: you get it. Perfect. We're going to work well together.
-> specialization_discussion
=== specialization_discussion ===
#speaker:director_netherton
Netherton dismisses the holographic display.
Netherton: Netherton dismisses the holographic display.
#speaker:director_netherton
Agent 0x99 will handle your detailed orientation over the coming week. You'll receive technical briefings, facility access, and equipment assignments.
Netherton: Agent 0x99 will handle your detailed orientation over the coming week. You'll receive technical briefings, facility access, and equipment assignments.
He looks directly at you.
#speaker:director_netherton
The CYBER-PHYSICAL division handles the operations that are too complex for single-discipline approaches. You will encounter challenges that test both your technical capabilities and your field craft.
Netherton: The CYBER-PHYSICAL division handles the operations that are too complex for single-discipline approaches. You will encounter challenges that test both your technical capabilities and your field craft.
#speaker:agent_haxolottle
What the Director's not saying is: you're going to be challenged. But you're also going to grow faster than you ever thought possible. We don't assign people to CYBER-PHYSICAL unless we believe they can handle it.
Haxolottle: What the Director's not saying is: you're going to be challenged. But you're also going to grow faster than you ever thought possible. We don't assign people to CYBER-PHYSICAL unless we believe they can handle it.
#speaker:director_netherton
Quite. Do you have any questions before you begin orientation?
Netherton: Quite. Do you have any questions before you begin orientation?
* [Ask about first assignment]
You: When will I receive my first CYBER-PHYSICAL operation?
@@ -485,30 +416,24 @@ Quite. Do you have any questions before you begin orientation?
-> ready_to_begin
=== first_assignment_timing ===
#speaker:director_netherton
Netherton glances at his tablet.
Netherton: Netherton glances at his tablet.
#speaker:director_netherton
Per protocol, new division assignments require a one-week orientation period. However, given current operational tempo and ENTROPY activity levels...
Netherton: Per protocol, new division assignments require a one-week orientation period. However, given current operational tempo and ENTROPY activity levels...
He looks at Haxolottle.
#speaker:agent_haxolottle
I've got a scenario developing that's perfect for a shakedown operation. Corporate facility, suspected ENTROPY infiltration, moderate complexity. Could be ready to brief in 72 hours.
Haxolottle: I've got a scenario developing that's perfect for a shakedown operation. Corporate facility, suspected ENTROPY infiltration, moderate complexity. Could be ready to brief in 72 hours.
#speaker:director_netherton
Acceptable. Agent {player_name}, complete your orientation, review the required materials, and report to Agent 0x99 on Thursday at 0800 hours.
Netherton: Acceptable. Agent {player_name}, complete your orientation, review the required materials, and report to Agent 0x99 on Thursday at 0800 hours.
~ netherton_respect += 5
-> closing_briefing
=== training_guidance ===
#speaker:agent_haxolottle
Haxolottle answers first.
Haxolottle: Haxolottle answers first.
#speaker:agent_haxolottle
Honestly? The best preparation is reviewing what you already know. You've got the fundamentals. Now it's about integrating them.
Haxolottle: Honestly? The best preparation is reviewing what you already know. You've got the fundamentals. Now it's about integrating them.
{specialization_interest == "cyber":
Haxolottle: Your technical skills are solid. Brush up on physical infiltration basics—lockpicking, cover stories, reading floor plans. The cyber part, you've got.
@@ -520,8 +445,7 @@ Honestly? The best preparation is reviewing what you already know. You've got th
Haxolottle: You've got a good foundation in both areas. Focus on integration—how to use physical access to enable cyber operations, and vice versa. That's where CYBER-PHYSICAL work gets interesting.
}
#speaker:director_netherton
Additionally, review handbook sections 12 through 18. CYBER-PHYSICAL operations have specific protocols regarding evidence handling, data exfiltration, and operational security.
Netherton: Additionally, review handbook sections 12 through 18. CYBER-PHYSICAL operations have specific protocols regarding evidence handling, data exfiltration, and operational security.
~ netherton_respect += 8
~ haxolottle_trust += 5
@@ -529,19 +453,15 @@ Additionally, review handbook sections 12 through 18. CYBER-PHYSICAL operations
-> closing_briefing
=== ready_to_begin ===
#speaker:director_netherton
Netherton almost smiles. Almost.
Netherton: Netherton almost smiles. Almost.
#speaker:director_netherton
Confidence without arrogance. Acceptable. Agent 0x99, proceed with orientation protocol per handbook section 12.5.
Netherton: Confidence without arrogance. Acceptable. Agent 0x99, proceed with orientation protocol per handbook section 12.5.
#speaker:agent_haxolottle
Copy that, Director.
Haxolottle: Copy that, Director.
Haxolottle gestures toward the door.
#speaker:agent_haxolottle
Come on, Agent {player_name}. Let me show you your new office space, introduce you to the team, and explain why the coffee on level 3 is better than level 5 despite what anyone tells you.
Haxolottle: Come on, Agent {player_name}. Let me show you your new office space, introduce you to the team, and explain why the coffee on level 3 is better than level 5 despite what anyone tells you.
~ haxolottle_trust += 10
~ professional_impression = true
@@ -549,11 +469,9 @@ Come on, Agent {player_name}. Let me show you your new office space, introduce y
-> closing_briefing
=== closing_briefing ===
#speaker:director_netherton
Director Netherton stands, signaling the meeting's conclusion.
Netherton: Director Netherton stands, signaling the meeting's conclusion.
#speaker:director_netherton
Agent {player_name}, welcome to the CYBER-PHYSICAL division. Your performance will be evaluated continuously. I expect excellence.
Netherton: Agent {player_name}, welcome to the CYBER-PHYSICAL division. Your performance will be evaluated continuously. I expect excellence.
{netherton_respect >= 60:
Netherton: Based on your record and this conversation, I believe you're capable of meeting that standard.
@@ -569,27 +487,21 @@ He extends his hand for a formal handshake.
-> final_moment
=== final_moment ===
#speaker:director_netherton
Per handbook section 2.7, maintain operational security regarding your division assignment. Dismissed.
Netherton: Per handbook section 2.7, maintain operational security regarding your division assignment. Dismissed.
As you turn to leave with Haxolottle, the Director speaks once more:
#speaker:director_netherton
{netherton_respect >= 70: Agent {player_name}... good luck. | Agent... don't disappoint me.}
Netherton: {netherton_respect >= 70: Agent {player_name}... good luck. | Agent... don't disappoint me.}
The door closes behind you.
#speaker:agent_haxolottle
Haxolottle grins as you walk down the corridor.
Haxolottle: Haxolottle grins as you walk down the corridor.
#speaker:agent_haxolottle
So! Welcome to CYBER-PHYSICAL. You survived a Netherton briefing without him citing the handbook more than... okay, he cited it a lot. But he likes you—I can tell.
Haxolottle: So! Welcome to CYBER-PHYSICAL. You survived a Netherton briefing without him citing the handbook more than... okay, he cited it a lot. But he likes you—I can tell.
#speaker:agent_haxolottle
First rule of working with me: I will make axolotl metaphors. They're genuinely helpful about 60% of the time. Second rule: when I say "get out now," trust me and get out.
Haxolottle: First rule of working with me: I will make axolotl metaphors. They're genuinely helpful about 60% of the time. Second rule: when I say "get out now," trust me and get out.
#speaker:agent_haxolottle
Everything else we'll figure out together. Ready to see your new workspace?
Haxolottle: Everything else we'll figure out together. Ready to see your new workspace?
* [Absolutely]
~ haxolottle_trust += 5
@@ -601,38 +513,30 @@ Everything else we'll figure out together. Ready to see your new workspace?
-> team_tease
=== orientation_begins ===
#speaker:agent_haxolottle
Haxolottle leads you toward the elevators.
Haxolottle: Haxolottle leads you toward the elevators.
#speaker:agent_haxolottle
One more thing—and this is important. We're partners in this work. I've got experience and perspective. You've got skills and fresh eyes. Best operations happen when we trust each other.
Haxolottle: One more thing—and this is important. We're partners in this work. I've got experience and perspective. You've got skills and fresh eyes. Best operations happen when we trust each other.
They press the elevator button.
#speaker:agent_haxolottle
So if you've got questions, ask. If something doesn't feel right, speak up. And if I tell you about axolotl regeneration during a critical moment... well, it'll probably be relevant. Probably.
Haxolottle: So if you've got questions, ask. If something doesn't feel right, speak up. And if I tell you about axolotl regeneration during a critical moment... well, it'll probably be relevant. Probably.
The elevator arrives.
#speaker:agent_haxolottle
Welcome to CYBER-PHYSICAL, Agent {player_name}. This is going to be interesting.
Haxolottle: Welcome to CYBER-PHYSICAL, Agent {player_name}. This is going to be interesting.
-> END
=== team_tease ===
#speaker:agent_haxolottle
Oh, you'll like them. We've got Dr. Chen in technical support—brilliant, talks incredibly fast, lives on energy drinks. There's a betting pool on whether they actually sleep.
Haxolottle: Oh, you'll like them. We've got Dr. Chen in technical support—brilliant, talks incredibly fast, lives on energy drinks. There's a betting pool on whether they actually sleep.
#speaker:agent_haxolottle
Then there's Agent 0x42—you might not meet them directly. They're... mysterious. Legendary field operative. Appears cryptically, provides crucial information, vanishes. Very dramatic.
Haxolottle: Then there's Agent 0x42—you might not meet them directly. They're... mysterious. Legendary field operative. Appears cryptically, provides crucial information, vanishes. Very dramatic.
#speaker:agent_haxolottle
And of course, there's the rest of the CYBER-PHYSICAL agents. Good people. We look out for each other out there.
Haxolottle: And of course, there's the rest of the CYBER-PHYSICAL agents. Good people. We look out for each other out there.
They press the elevator button.
#speaker:agent_haxolottle
You're joining a solid team, Agent. We've got your back.
Haxolottle: You're joining a solid team, Agent. We've got your back.
-> orientation_begins

View File

@@ -78,7 +78,6 @@ EXTERNAL current_mission_number
// ===========================================
=== phase_1_hub ===
#speaker:agent_haxolottle
{missions_together == 1:
Haxolottle: So, we've got some downtime. Want to chat about non-work stuff? Per Regulation 847, personal conversation is encouraged for psychological wellbeing.
@@ -104,7 +103,6 @@ EXTERNAL current_mission_number
// ----------------
=== hobbies_general ===
#speaker:agent_haxolottle
~ talked_hobbies_general = true
~ friendship_level += 5
~ conversations_had += 1
@@ -136,7 +134,6 @@ Haxolottle: And I tinker with old electronics. Pull apart vintage computers, rep
-> hobbies_electronics_followup
=== hobbies_scifi_followup ===
#speaker:agent_haxolottle
~ friendship_level += 5
Haxolottle: Oh, you read sci-fi? Nice! I'm partial to the stuff that explores emergence and complexity—you know, how simple rules create complex systems.
@@ -166,7 +163,6 @@ Haxolottle: What about you? What kind of stories do you gravitate toward?
-> phase_1_hub
=== hobbies_swimming_followup ===
#speaker:agent_haxolottle
Haxolottle: That's fair. Swimming isn't for everyone. The whole "put your face in water and breathe at specific intervals" thing is surprisingly hard.
@@ -180,7 +176,6 @@ Haxolottle: Plus, it's one of the few activities where I can guarantee I'm not c
-> phase_1_hub
=== hobbies_electronics_followup ===
#speaker:agent_haxolottle
Haxolottle: You'd think it'd be busman's holiday—working with electronics all day, then doing it for fun. But there's a difference.
@@ -200,7 +195,6 @@ Haxolottle: Plus, there's satisfaction in making a thirty-year-old computer boot
// ----------------
=== axolotl_deep_dive ===
#speaker:agent_haxolottle
~ talked_axolotl_obsession = true
~ friendship_level += 8
~ conversations_had += 1
@@ -229,7 +223,6 @@ Haxolottle: Found this section on axolotls—*Ambystoma mexicanum*. These amazin
-> axolotl_joke_response
=== axolotl_operation_connection ===
#speaker:agent_haxolottle
~ friendship_level += 5
Haxolottle: It gave me a framework. See, I'd lost my original cover story—that identity was "severed" when the real person appeared. Dead. Gone.
@@ -246,7 +239,6 @@ Haxolottle: The metaphor stuck. Now every operation that goes sideways, I think:
-> phase_1_hub
=== axolotl_biology_detail ===
#speaker:agent_haxolottle
~ friendship_level += 5
Haxolottle: *lights up with enthusiasm*
@@ -267,7 +259,6 @@ Haxolottle: Sorry, I can talk about this for hours. The point is: regeneration,
-> phase_1_hub
=== axolotl_joke_response ===
#speaker:agent_haxolottle
~ friendship_level += 8
~ humor_shared += 1
@@ -294,7 +285,6 @@ Haxolottle: You're laughing, but I'm serious. The metaphor has kept me sane for
// ----------------
=== music_discussion ===
#speaker:agent_haxolottle
~ talked_music_taste = true
~ friendship_level += 5
~ conversations_had += 1
@@ -325,7 +315,6 @@ Haxolottle: And then sometimes... *looks slightly embarrassed* ...sometimes I li
-> music_nature_tease
=== music_ambient_detail ===
#speaker:agent_haxolottle
~ friendship_level += 5
Haxolottle: Oh, good taste! For concentration, I keep coming back to Eno's *Music for Airports*. It's designed to be ignorable but interesting—perfect for background.
@@ -349,7 +338,6 @@ Haxolottle: What about you? Any favorites?
-> phase_1_hub
=== music_silence_response ===
#speaker:agent_haxolottle
Haxolottle: That's valid. Some people work better in complete silence. Brain needs quiet to process.
@@ -361,7 +349,6 @@ Haxolottle: But everyone's different. That's why we have noise-cancelling headph
-> phase_1_hub
=== music_nature_tease ===
#speaker:agent_haxolottle
~ friendship_level += 8
~ humor_shared += 1
@@ -385,7 +372,6 @@ Haxolottle: You can judge me, but I won't stop. I have a whole collection. "Thun
// ----------------
=== coffee_chat ===
#speaker:agent_haxolottle
~ talked_coffee_preferences = true
~ friendship_level += 4
~ conversations_had += 1
@@ -415,7 +401,6 @@ Haxolottle: Dr. Chen thinks I'm weird for it. They survive on energy drinks and
-> coffee_mug_discussion
=== coffee_tea_solidarity ===
#speaker:agent_haxolottle
~ friendship_level += 5
Haxolottle: A fellow tea person! Excellent. We're a minority in SAFETYNET.
@@ -430,7 +415,6 @@ Haxolottle: Consider it insider knowledge. Handler privilege.
-> phase_1_hub
=== coffee_defense ===
#speaker:agent_haxolottle
Haxolottle: Hey, no judgment! Coffee works for a lot of people. Dr. Chen would probably collapse without it.
@@ -442,7 +426,6 @@ Haxolottle: As long as you're alert and functional, I don't care if you're power
-> phase_1_hub
=== coffee_mug_discussion ===
#speaker:agent_haxolottle
~ friendship_level += 8
~ humor_shared += 1
@@ -464,7 +447,6 @@ Haxolottle: Director Netherton pretends not to notice it in briefings, but I've
// ----------------
=== stress_management ===
#speaker:agent_haxolottle
~ talked_stress_management = true
~ friendship_level += 10
~ conversations_had += 1
@@ -497,7 +479,6 @@ Haxolottle: I've had agents get hurt. I've had operations go wrong despite every
-> stress_coping_methods
=== stress_honest_response ===
#speaker:agent_haxolottle
~ friendship_level += 10
Haxolottle: Of course. We're in this together, Agent. I'm not just a voice on comms—I'm a person who cares about whether you come back safe.
@@ -511,7 +492,6 @@ Haxolottle: You're not just an asset to me. You're a colleague. Maybe even a fri
-> phase_1_hub
=== stress_mutual_understanding ===
#speaker:agent_haxolottle
~ friendship_level += 15
~ trust_moments += 2
@@ -532,7 +512,6 @@ Haxolottle: And we do it together. That makes it bearable.
-> phase_1_hub
=== stress_coping_methods ===
#speaker:agent_haxolottle
~ friendship_level += 10
Haxolottle: Honestly? I remind myself why we do this. ENTROPY is real. The threats are real. The people we protect—even though they don't know we exist—they're real.
@@ -552,7 +531,6 @@ Haxolottle: And... *slight smile* ...I have my ridiculous axolotl metaphors. Whe
// ===========================================
=== phase_2_hub ===
#speaker:agent_haxolottle
{missions_together == 6:
Haxolottle: We've been working together for a while now. Starting to feel like a real partnership. Got time to talk?
@@ -580,7 +558,6 @@ Haxolottle: And... *slight smile* ...I have my ridiculous axolotl metaphors. Whe
// ----------------
=== philosophy_evolution ===
#speaker:agent_haxolottle
~ talked_philosophy_change = true
~ friendship_level += 10
~ conversations_had += 1
@@ -614,7 +591,6 @@ Haxolottle: The philosophy that's stuck is: Do the work as ethically as you can
-> philosophy_immediate_good
=== philosophy_gray_areas ===
#speaker:agent_haxolottle
~ friendship_level += 15
~ trust_moments += 1
@@ -630,7 +606,6 @@ Haxolottle: The day we stop feeling uncomfortable with the gray areas is the day
-> phase_2_hub
=== philosophy_haunting_decision ===
#speaker:agent_haxolottle
~ friendship_level += 20
~ vulnerable_moments += 2
~ hax_shared_doubt = true
@@ -665,7 +640,6 @@ Haxolottle: And I don't know if I would. If I could do it again, with the same i
-> philosophy_shared_burden
=== philosophy_comfort_response ===
#speaker:agent_haxolottle
~ friendship_level += 15
Haxolottle: *slight smile* Thank you. I know that, intellectually. Regulation 911—mission objectives sometimes outweigh agent safety when lives are at stake.
@@ -678,7 +652,6 @@ Haxolottle: You're a good person, Agent {player_name}. I'm glad we're working to
-> phase_2_hub
=== philosophy_shared_burden ===
#speaker:agent_haxolottle
~ friendship_level += 25
~ trust_moments += 3
@@ -696,7 +669,6 @@ Haxolottle: And what we have is this. Honest conversations within the boundaries
-> phase_2_hub
=== philosophy_immediate_good ===
#speaker:agent_haxolottle
~ friendship_level += 8
Haxolottle: That's a healthy approach. Zoom in on what you can control, the immediate impact. Today's mission. This operation. This prevented attack.
@@ -713,7 +685,6 @@ Haxolottle: That's sustainable. I should probably do more of that myself.
// ----------------
=== handler_reality ===
#speaker:agent_haxolottle
~ talked_handler_life = true
~ friendship_level += 12
~ conversations_had += 1
@@ -743,7 +714,6 @@ Haxolottle: And when things go wrong, I can only watch. I can't run in and help.
-> handler_stress_acknowledgment
=== handler_appreciation ===
#speaker:agent_haxolottle
~ friendship_level += 20
~ trust_moments += 1
@@ -759,7 +729,6 @@ Haxolottle: We're a team. You're my eyes and hands in the field. I'm your strate
-> phase_2_hub
=== handler_field_return_question ===
#speaker:agent_haxolottle
~ friendship_level += 12
Haxolottle: *considers carefully*
@@ -776,7 +745,6 @@ Haxolottle: Plus, I'm better at this. Supporting multiple agents, seeing the str
-> phase_2_hub
=== handler_stress_acknowledgment ===
#speaker:agent_haxolottle
~ friendship_level += 15
Haxolottle: It really is. Different kind of exhaustion.
@@ -797,7 +765,6 @@ Haxolottle: Trade-offs. Everything in SAFETYNET is trade-offs.
// ----------------
=== field_nostalgia ===
#speaker:agent_haxolottle
~ talked_field_nostalgia = true
~ friendship_level += 15
~ conversations_had += 1
@@ -827,7 +794,6 @@ Haxolottle: And honestly? I miss the simplicity. One mission, one objective, han
-> field_nostalgia_memorable_op
=== field_nostalgia_negative ===
#speaker:agent_haxolottle
~ friendship_level += 15
Haxolottle: *laughs* Oh, plenty. The fear, for one. That sustained low-level anxiety of maintaining cover, wondering if today's the day someone sees through it.
@@ -842,7 +808,6 @@ Haxolottle: Plus, I hated the paperwork. At least as a handler, I'm the one rece
-> phase_2_hub
=== field_nostalgia_shared_joy ===
#speaker:agent_haxolottle
~ friendship_level += 20
~ trust_moments += 1
@@ -858,7 +823,6 @@ Haxolottle: That's part of why I love this partnership. You're really good at wh
-> phase_2_hub
=== field_nostalgia_memorable_op ===
#speaker:agent_haxolottle
~ friendship_level += 15
Haxolottle: Most memorable? Hard to pick one... but there was this operation in Prague. Corporate espionage case, ENTROPY front company.
@@ -881,7 +845,6 @@ Haxolottle: That was the operation that convinced me I'd found the right line of
// ----------------
=== weird_habits_discussion ===
#speaker:agent_haxolottle
~ talked_weird_habits = true
~ friendship_level += 10
~ conversations_had += 1
@@ -917,7 +880,6 @@ Haxolottle: SAFETYNET gets in your head. You start treating normal life like an
-> weird_habits_healthy_question
=== weird_habits_shared ===
#speaker:agent_haxolottle
~ friendship_level += 20
~ humor_shared += 1
@@ -933,7 +895,6 @@ Haxolottle: But hey, if there ever IS an emergency at a grocery store, we'll be
-> phase_2_hub
=== weird_habits_player_share ===
#speaker:agent_haxolottle
~ friendship_level += 20
~ trust_moments += 2
@@ -951,7 +912,6 @@ Haxolottle: Honestly, it helps to know we're all doing this. Makes it feel less
-> phase_2_hub
=== weird_habits_healthy_question ===
#speaker:agent_haxolottle
~ friendship_level += 10
Haxolottle: *considers* Probably somewhere in between healthy professional awareness and mild paranoia.
@@ -975,7 +935,6 @@ Haxolottle: But it's worth checking in with yourself. "Is this useful vigilance
// ===========================================
=== conversation_end ===
#speaker:agent_haxolottle
{conversations_had >= 5 and friendship_level >= 40:
Haxolottle: I really appreciate these talks, Agent {player_name}. Makes the work feel less isolating.

View File

@@ -39,7 +39,6 @@ EXTERNAL player_name
// ===========================================
=== phase_3_hub ===
#speaker:agent_haxolottle
{missions_together == 11:
Haxolottle: We've been through a lot together, Agent {player_name}. Over ten missions now. That's... that means something.
@@ -67,7 +66,6 @@ EXTERNAL player_name
// ----------------
=== fears_conversation ===
#speaker:agent_haxolottle
~ talked_fears_anxieties = true
~ friendship_level += 15
~ conversations_had += 1
@@ -106,7 +104,6 @@ Haxolottle: And I'm afraid that when it does happen—because statistics say eve
-> fears_mutual_sharing
=== fears_careful_promise ===
#speaker:agent_haxolottle
~ friendship_level += 20
Haxolottle: *emotional* Thank you. I know you can't guarantee that—this work doesn't allow guarantees. But knowing you care about... about not putting me through that...
@@ -121,7 +118,6 @@ Haxolottle: We're a team. We keep each other safe. That's how this works.
-> phase_3_hub
=== fears_acknowledgment ===
#speaker:agent_haxolottle
~ friendship_level += 25
~ trust_moments += 1
@@ -137,7 +133,6 @@ Haxolottle: It's not perfect. But it's sustainable.
-> phase_3_hub
=== fears_mutual_sharing ===
#speaker:agent_haxolottle
~ friendship_level += 35
~ trust_moments += 3
~ vulnerable_moments += 2
@@ -162,7 +157,6 @@ Haxolottle: We're real friends, Agent {player_name}. With constraints, yes. But
// ----------------
=== alternate_life_discussion ===
#speaker:agent_haxolottle
~ talked_what_if_different = true
~ friendship_level += 20
~ conversations_had += 1
@@ -198,7 +192,6 @@ Haxolottle: I don't know. Maybe. Maybe I'd be blissfully ignorant and perfectly
-> alternate_mutual_wondering
=== alternate_understanding ===
#speaker:agent_haxolottle
~ friendship_level += 20
Haxolottle: Exactly. The pull between normal and meaningful. Comfortable and important. Safe and significant.
@@ -211,7 +204,6 @@ Haxolottle: At least this way, we know. We're doing something that matters, even
-> phase_3_hub
=== alternate_regret_question ===
#speaker:agent_haxolottle
~ friendship_level += 25
~ vulnerable_moments += 1
@@ -230,7 +222,6 @@ Haxolottle: I don't regret joining SAFETYNET. But I regret what I've lost becaus
-> phase_3_hub
=== alternate_mutual_wondering ===
#speaker:agent_haxolottle
~ friendship_level += 30
~ trust_moments += 2
@@ -254,7 +245,6 @@ Haxolottle: At least we found each other in this weird path. That counts for som
// ----------------
=== meaning_of_work ===
#speaker:agent_haxolottle
~ talked_meaning_work = true
~ friendship_level += 25
~ conversations_had += 1
@@ -291,7 +281,6 @@ Haxolottle: That's what we do. We're gardeners in the storm. And yeah, that soun
-> meaning_sustainability_question
=== meaning_metaphor_appreciation ===
#speaker:agent_haxolottle
~ friendship_level += 25
Haxolottle: *smiles genuinely* Thank you. I've never actually said that out loud before. Thought it in my head, but never voiced it.
@@ -304,7 +293,6 @@ Haxolottle: We're gardeners together, then. Tending our little corner of the wor
-> phase_3_hub
=== meaning_personal_share ===
#speaker:agent_haxolottle
~ friendship_level += 40
~ trust_moments += 3
@@ -322,7 +310,6 @@ Haxolottle: I'm honored to work with you.
-> phase_3_hub
=== meaning_sustainability_question ===
#speaker:agent_haxolottle
~ friendship_level += 25
~ vulnerable_moments += 1
@@ -344,7 +331,6 @@ Haxolottle: People like you. These conversations help more than you know. Sharin
// ----------------
=== friendship_boundaries ===
#speaker:agent_haxolottle
~ talked_friendship_boundaries = true
~ friendship_level += 35
~ conversations_had += 1
@@ -378,7 +364,6 @@ Haxolottle: Is that strange? To have genuine friendship with someone whose real
-> friendship_frustration
=== friendship_strange_but_real ===
#speaker:agent_haxolottle
~ friendship_level += 35
~ trust_moments += 1
@@ -396,7 +381,6 @@ Haxolottle: I'll take that over a lot of "normal" friendships.
-> phase_3_hub
=== friendship_names_dont_matter ===
#speaker:agent_haxolottle
~ friendship_level += 50
~ trust_moments += 3
@@ -418,7 +402,6 @@ Haxolottle: You're a good friend, Agent {player_name}. Better than many I've had
-> phase_3_hub
=== friendship_frustration ===
#speaker:agent_haxolottle
~ friendship_level += 45
~ vulnerable_moments += 2
@@ -444,7 +427,6 @@ Haxolottle: But I won't pretend the constraints don't hurt sometimes. They do. E
// ----------------
=== future_dreams ===
#speaker:agent_haxolottle
~ talked_future_dreams = true
~ friendship_level += 30
~ conversations_had += 1
@@ -478,7 +460,6 @@ Haxolottle: What about you? What do you dream about for after all this?
-> future_uncertain_leaving
=== future_shared_dream ===
#speaker:agent_haxolottle
~ friendship_level += 40
~ trust_moments += 2
@@ -498,7 +479,6 @@ Haxolottle: I'd like that.
-> phase_3_hub
=== future_present_focused ===
#speaker:agent_haxolottle
~ friendship_level += 25
Haxolottle: That's probably healthier, honestly. Focusing on the present, the current mission, what you can control right now.
@@ -511,7 +491,6 @@ Haxolottle: Just... don't forget that there IS an after. This work doesn't have
-> phase_3_hub
=== future_uncertain_leaving ===
#speaker:agent_haxolottle
~ friendship_level += 35
~ vulnerable_moments += 1
@@ -537,7 +516,6 @@ Haxolottle: But that's future worry. For now, we have work that matters and each
// ----------------
=== hax_personal_loss ===
#speaker:agent_haxolottle
~ friendship_level += 50
~ vulnerable_moments += 3
~ hax_shared_loss = true
@@ -558,7 +536,6 @@ Haxolottle: Can I tell you something personal? And I mean really personal, withi
-> hax_loss_tell
=== hax_loss_tell ===
#speaker:agent_haxolottle
~ friendship_level += 30
~ trust_moments += 3
@@ -598,7 +575,6 @@ Haxolottle: It's not the same. But it's something real.
-> hax_loss_mutual
=== hax_loss_comfort ===
#speaker:agent_haxolottle
~ friendship_level += 45
Haxolottle: *slight smile through sadness*
@@ -613,7 +589,6 @@ Haxolottle: That's invaluable.
-> phase_3_hub
=== hax_loss_mutual ===
#speaker:agent_haxolottle
~ friendship_level += 60
~ trust_moments += 5
@@ -640,7 +615,6 @@ Haxolottle: That means everything.
// ===========================================
=== phase_4_hub ===
#speaker:agent_haxolottle
{missions_together == 16:
Haxolottle: Sixteen missions together. That's... we've built something real here, haven't we?
@@ -667,7 +641,6 @@ Haxolottle: That means everything.
// For brevity, I'll include a few key ones:
=== identity_burden ===
#speaker:agent_haxolottle
~ talked_identity_burden = true
~ friendship_level += 40
~ conversations_had += 1
@@ -697,7 +670,6 @@ Haxolottle: Sometimes I wonder: if no one knows the real you, are you even real?
-> identity_shared_experience
=== identity_affirmation ===
#speaker:agent_haxolottle
~ friendship_level += 50
~ trust_moments += 2
@@ -713,7 +685,6 @@ Haxolottle: That's more real than most people get, even without Protocol 47-Alph
-> phase_4_hub
=== identity_shared_experience ===
#speaker:agent_haxolottle
~ friendship_level += 60
~ trust_moments += 4
@@ -731,7 +702,6 @@ Haxolottle: But at least we're losing them together. At least there's someone el
// ----------------
=== name_temptation ===
#speaker:agent_haxolottle
~ talked_real_name_temptation = true
~ friendship_level += 50
~ conversations_had += 1
@@ -745,7 +715,6 @@ Haxolottle: Can I be honest about something that probably violates the spirit if
-> name_temptation_reveal
=== name_temptation_reveal ===
#speaker:agent_haxolottle
~ friendship_level += 40
Haxolottle: I've been tempted to tell you my real name. So many times. Just... drop it in conversation. Let you know me completely.
@@ -772,7 +741,6 @@ Haxolottle: Have you felt that? The urge to just... tell me?
-> name_peace_with_boundaries
=== name_mutual_temptation ===
#speaker:agent_haxolottle
~ friendship_level += 70
~ trust_moments += 5
@@ -792,7 +760,6 @@ Haxolottle: So we'll keep our names. And we'll keep this friendship. And somehow
-> phase_4_hub
=== name_peace_with_boundaries ===
#speaker:agent_haxolottle
~ friendship_level += 45
Haxolottle: You're wiser than me, then. Or maybe just more disciplined.
@@ -809,7 +776,6 @@ Haxolottle: Thank you for that perspective. Helps me make peace with it too.
// ----------------
=== friendship_acknowledgment ===
#speaker:agent_haxolottle
~ talked_genuine_friendship = true
~ friendship_level += 60
~ conversations_had += 1
@@ -840,7 +806,6 @@ Haxolottle: That's friendship. Real, genuine friendship. Protocol 47-Alpha be da
-> friendship_gratitude
=== friendship_mutual_acknowledgment ===
#speaker:agent_haxolottle
~ friendship_level += 90
~ trust_moments += 6
@@ -856,7 +821,6 @@ Haxolottle: Whatever happens—missions, careers, future—I want you to know th
-> phase_4_hub
=== friendship_gratitude ===
#speaker:agent_haxolottle
~ friendship_level += 75
Haxolottle: The gratitude is mutual, Agent {player_name}. Completely mutual.
@@ -873,7 +837,6 @@ Haxolottle: That's not nothing. That's everything.
// ----------------
=== hax_secret_hobby ===
#speaker:agent_haxolottle
~ friendship_level += 50
~ vulnerable_moments += 2
~ hax_shared_secret_hobby = true
@@ -888,7 +851,6 @@ Haxolottle: Promise not to laugh?
-> hax_hobby_reveal
=== hax_hobby_reveal ===
#speaker:agent_haxolottle
~ friendship_level += 40
Haxolottle: I... write poetry. Bad poetry, probably. But I write it.
@@ -917,7 +879,6 @@ Haxolottle: Axolotl metaphors in prose apparently aren't enough. I need them in
-> secret_outlet_exchange
=== hax_poetry_share ===
#speaker:agent_haxolottle
~ friendship_level += 60
~ trust_moments += 4
@@ -935,7 +896,6 @@ Haxolottle: Told you it was bad. But it's honest.
-> phase_4_hub
=== secret_outlet_exchange ===
#speaker:agent_haxolottle
~ friendship_level += 75
~ trust_moments += 6
@@ -963,7 +923,6 @@ Haxolottle: I'm honored you shared that with me. Truly.
// ===========================================
=== conversation_end_phase3 ===
#speaker:agent_haxolottle
{friendship_level >= 70:
Haxolottle: These conversations... they keep me grounded. Thank you for being real with me.
@@ -975,7 +934,6 @@ Haxolottle: I'm honored you shared that with me. Truly.
-> END
=== conversation_end_phase4 ===
#speaker:agent_haxolottle
{friendship_level >= 90:
Haxolottle: You know I care about you, right? Within all the protocols and boundaries—genuine care.

View File

@@ -46,7 +46,6 @@ EXTERNAL mission_active
=== start_handler_lore ===
~ current_speaker = "handler"
#speaker:agent_haxolottle
{mission_active:
Haxolottle: Got a quiet moment? Happy to answer questions while you're on downtime.
@@ -87,7 +86,6 @@ EXTERNAL mission_active
// ===========================================
=== entropy_origins_handler ===
#speaker:agent_haxolottle
~ discussed_entropy_origins = true
~ handler_influence += 5
~ conversation_depth += 1
@@ -115,8 +113,7 @@ Haxolottle: By 2025, it was clear: this was an organization. Decentralized, cell
-> lore_hub_handler
=== entropy_origins_followup_concern ===
#speaker:agent_haxolottle
Haxolottle nods seriously.
Haxolottle: Haxolottle nods seriously.
Haxolottle: Yes and no. We understand their methods—we see them in action every day. We understand their capabilities—they're formidable but not unlimited.
@@ -126,8 +123,7 @@ Haxolottle: What we don't fully grasp is the "why" behind the "what." And that u
-> lore_hub_handler
=== entropy_origins_followup_goals ===
#speaker:agent_haxolottle
Haxolottle leans back, considering.
Haxolottle: Haxolottle leans back, considering.
Haxolottle: That's where it gets interesting. Different ENTROPY cells seem to have different goals. Some are clearly financial—ransomware, data theft, extortion. Others appear ideological—accelerationism, techno-anarchism, chaos for its own sake.
@@ -145,7 +141,6 @@ Haxolottle: The unifying thread seems to be "entropy"—increasing chaos, destab
// ===========================================
=== entropy_philosophy_handler ===
#speaker:agent_haxolottle
~ discussed_entropy_philosophy = true
~ handler_influence += 5
~ conversation_depth += 1
@@ -173,8 +168,7 @@ Haxolottle: And some are just using the philosophy as cover for criminal enterpr
-> lore_hub_handler
=== philosophy_danger_assessment ===
#speaker:agent_haxolottle
Haxolottle: The true believers, without question.
Haxolottle: Haxolottle: The true believers, without question.
Haxolottle: Criminals can be caught, assets seized, organizations dismantled. Nihilists burn out eventually—chaos for its own sake is exhausting.
@@ -186,8 +180,7 @@ Haxolottle: That makes them harder to predict, harder to deter, and much more da
-> lore_hub_handler
=== philosophy_redemption_question ===
#speaker:agent_haxolottle
Haxolottle looks thoughtful.
Haxolottle: Haxolottle looks thoughtful.
Haxolottle: You're asking the right questions, Agent. That shows good judgment.
@@ -206,7 +199,6 @@ Haxolottle: Not everyone wearing an ENTROPY badge is beyond saving. Some are jus
// ===========================================
=== entropy_cells_handler ===
#speaker:agent_haxolottle
~ discussed_entropy_cells = true
~ handler_influence += 5
~ conversation_depth += 1
@@ -235,7 +227,6 @@ Haxolottle: **Ransomware Incorporated**—exactly what it sounds like. Criminal
-> lore_hub_handler
=== specific_cell_details ===
#speaker:agent_haxolottle
Haxolottle: Which one are you curious about?
@@ -251,7 +242,6 @@ Haxolottle: Which one are you curious about?
-> lore_hub_handler
=== digital_vanguard_details ===
#speaker:agent_haxolottle
~ handler_influence += 3
Haxolottle: Digital Vanguard—the tech perfectionists of ENTROPY. They treat hacking like an art form.
@@ -265,7 +255,6 @@ Haxolottle: Their operations tend to be surgical—highly targeted, meticulously
-> lore_hub_handler
=== critical_mass_details ===
#speaker:agent_haxolottle
~ handler_influence += 3
Haxolottle: Critical Mass—the infrastructure saboteurs. They're after the systems that keep society running.
@@ -279,7 +268,6 @@ Haxolottle: They've been linked to several near-miss incidents. We've stopped th
-> lore_hub_handler
=== ghost_protocol_details ===
#speaker:agent_haxolottle
~ handler_influence += 3
Haxolottle: Ghost Protocol—the information brokers and surveillance specialists.
@@ -293,7 +281,6 @@ Haxolottle: Encountering Ghost Protocol is weird because they're often not hosti
-> lore_hub_handler
=== ransomware_inc_details ===
#speaker:agent_haxolottle
~ handler_influence += 3
Haxolottle: Ransomware Incorporated—the criminal enterprise wing of ENTROPY.
@@ -307,7 +294,6 @@ Haxolottle: Don't underestimate them just because they're financially motivated.
-> lore_hub_handler
=== cell_coordination_explanation ===
#speaker:agent_haxolottle
~ handler_influence += 8
Haxolottle: Good question. The answer is: we're not entirely certain.
@@ -327,7 +313,6 @@ Haxolottle: It's one of the biggest intelligence gaps we have. How do decentrali
// ===========================================
=== safetynet_mission_handler ===
#speaker:agent_haxolottle
~ discussed_safetynet_mission = true
~ handler_influence += 5
~ conversation_depth += 1
@@ -356,8 +341,7 @@ Haxolottle: The philosophy is "best defense is a preemptive offense." Don't wait
-> lore_hub_handler
=== legal_authority_question ===
#speaker:agent_haxolottle
Haxolottle: Complicated question. Complicated answer.
Haxolottle: Haxolottle: Complicated question. Complicated answer.
Haxolottle: We operate under classified executive orders and emergency powers acts. Technically legal, practically untested in court, definitely not something the public knows about.
@@ -372,8 +356,7 @@ Haxolottle: If an operation goes wrong, SAFETYNET doesn't officially exist. You'
-> lore_hub_handler
=== oversight_question ===
#speaker:agent_haxolottle
Haxolottle: Officially? Select committee members in certain governments. People with security clearances so high they probably don't exist on paper.
Haxolottle: Haxolottle: Officially? Select committee members in certain governments. People with security clearances so high they probably don't exist on paper.
Haxolottle: Practically? We're overseen by SAFETYNET Command Council—people like Director Netherton. They report to... someone. I'm not cleared to know the full chain of command, and honestly, I'm okay with that.
@@ -390,7 +373,6 @@ Haxolottle: We're given enormous power and minimal oversight. That makes our int
// ===========================================
=== shadow_war_handler ===
#speaker:agent_haxolottle
~ discussed_shadow_war = true
~ handler_influence += 8
~ conversation_depth += 1
@@ -420,8 +402,7 @@ Haxolottle: It's exhausting, honestly. A war where victories aren't celebrated a
-> lore_hub_handler
=== shadow_war_appreciation ===
#speaker:agent_haxolottle
Haxolottle smiles, genuinely touched.
Haxolottle: Haxolottle smiles, genuinely touched.
Haxolottle: Thank you, Agent. That means more than you might think.
@@ -431,8 +412,7 @@ Haxolottle: We're in this together now. Every operation you run, every threat yo
-> lore_hub_handler
=== shadow_war_psychological ===
#speaker:agent_haxolottle
Haxolottle takes a moment before responding.
Haxolottle: Haxolottle takes a moment before responding.
Haxolottle: Honestly? It's hard. Some days I wonder if we're making any difference. We stop one cell, two more spring up. We close one vulnerability, ENTROPY finds three others.
@@ -451,7 +431,6 @@ Haxolottle: You'll have hard days too, Agent. When that happens, remember you're
// ===========================================
=== field_ops_advice_handler ===
#speaker:agent_haxolottle
~ discussed_field_ops = true
~ handler_influence += 5
~ conversation_depth += 1
@@ -481,7 +460,6 @@ Haxolottle: **Fourth**: When in doubt, slow down. Rushing causes mistakes. Bette
-> lore_hub_handler
=== complications_advice ===
#speaker:agent_haxolottle
~ handler_influence += 8
Haxolottle: When things go wrong—and they will—focus on what you can control.
@@ -504,7 +482,6 @@ Haxolottle: *laughs* You're catching on.
-> lore_hub_handler
=== fear_management ===
#speaker:agent_haxolottle
~ handler_influence += 12
Haxolottle becomes more serious.
@@ -527,7 +504,6 @@ Haxolottle: I've been exactly where you'll be—heart pounding, hands shaking, w
// ===========================================
=== cyber_physical_handler ===
#speaker:agent_haxolottle
~ discussed_cyber_physical = true
~ handler_influence += 8
~ conversation_depth += 1
@@ -556,7 +532,6 @@ Haxolottle: Best CYBER-PHYSICAL operations use both in concert—a beautiful sym
-> lore_hub_handler
=== cyber_physical_scenarios ===
#speaker:agent_haxolottle
~ handler_influence += 5
Haxolottle: Common scenarios? Let me walk you through the hits:
@@ -574,7 +549,6 @@ Haxolottle: You'll run all of these eventually. Each one teaches you something a
-> lore_hub_handler
=== cyber_physical_challenges ===
#speaker:agent_haxolottle
~ handler_influence += 8
Haxolottle: The challenge is cognitive load. You're managing two completely different threat models simultaneously.
@@ -597,7 +571,6 @@ Haxolottle: But that's why you're here. You've got the foundations in both domai
// ===========================================
=== handler_backstory ===
#speaker:agent_haxolottle
~ knows_handler_backstory = true
~ handler_influence += 15
~ conversation_depth += 2
@@ -629,7 +602,6 @@ Haxolottle: During those three days, the only reading material I had was biology
-> lore_hub_handler
=== why_handler_transition ===
#speaker:agent_haxolottle
~ handler_influence += 10
Haxolottle: Good question. Honestly? I was getting burned out.
@@ -648,7 +620,6 @@ Haxolottle: And I get to make all the axolotl metaphors I want without someone t
-> lore_hub_handler
=== operation_regenerate_story ===
#speaker:agent_haxolottle
~ handler_influence += 12
Haxolottle: Operation Regenerate. That's a story.
@@ -673,7 +644,6 @@ Haxolottle: Got out with intelligence that led to dismantling three connected ce
// ===========================================
=== berlin_crisis_story ===
#speaker:agent_haxolottle
~ knows_berlin_crisis = true
~ handler_influence += 20
~ director_influence += 10
@@ -703,7 +673,6 @@ Haxolottle: And it's why I trust him completely. He'll protect you, Agent. Even
// ===========================================
=== end_handler_conversation ===
#speaker:agent_haxolottle
{conversation_depth >= 5:
Haxolottle: You ask good questions, Agent {player_name}. Curiosity is a valuable trait in this work. Keep thinking deeply about what we do and why.
@@ -723,7 +692,6 @@ Haxolottle: And it's why I trust him completely. He'll protect you, Agent. Even
// Entry point for technical support NPC (like Dr. Chen)
=== start_tech_support_lore ===
~ current_speaker = "tech_support"
#speaker:dr_chen
Dr. Chen: Got questions? I can explain technical details about ENTROPY's methods or our countermeasures. Rapid-fire style, hope you can keep up.
@@ -742,7 +710,6 @@ Dr. Chen: Got questions? I can explain technical details about ENTROPY's methods
-> END
=== entropy_tactics_tech ===
#speaker:dr_chen
~ discussed_entropy_tactics = true
~ tech_influence += 8
@@ -760,7 +727,6 @@ We counter with our own technical capabilities, but it's an arms race. They deve
-> lore_hub_tech_support
=== safetynet_tech_methods ===
#speaker:dr_chen
~ discussed_safetynet_methods = true
~ tech_influence += 8
@@ -778,7 +744,6 @@ It's like running a security research lab combined with a mission support center
-> lore_hub_tech_support
=== cutting_edge_research ===
#speaker:dr_chen
~ tech_influence += 15
Dr. Chen speaks even faster, excited about the topic.
@@ -798,7 +763,6 @@ It's fascinating and terrifying simultaneously. We're at the frontier of cyberse
=== start_director_lore ===
~ current_speaker = "director"
#speaker:director_netherton
Director Netherton: You have questions regarding operational context, Agent?
@@ -816,7 +780,6 @@ Director Netherton: You have questions regarding operational context, Agent?
-> END
=== safetynet_mandate_director ===
#speaker:director_netherton
~ discussed_safetynet_mission = true
~ director_influence += 8
@@ -833,7 +796,6 @@ We are not vigilantes. We are not above the law. We operate in the gray areas th
-> lore_hub_director
=== rules_of_engagement_director ===
#speaker:director_netherton
~ discussed_moral_complexity = true
~ director_influence += 10
@@ -851,7 +813,6 @@ The power we wield demands discipline. Without it, we become the threat we're su
-> lore_hub_director
=== safetynet_future_director ===
#speaker:director_netherton
~ director_influence += 20
Netherton pauses, considering the question carefully.