mirror of
https://github.com/cliffe/BreakEscape.git
synced 2026-02-21 11:18:08 +00:00
Enhance Operation Shatter narrative and reporting mechanics
- Added a new task to report the discovery of Operation Shatter to SAFETYNET, including dialogue for Agent 0x99. - Introduced new variables to track player interactions regarding the operation and its implications. - Updated scenario files to reflect the urgency and details of the operation, emphasizing the calculated casualties and the psychological warfare aspect. - Shortened the opening briefing to streamline the introduction of the mission and its stakes. Files modified: - scenario.json.erb: Added new task for reporting Operation Shatter. - m01_closing_debrief.json: Updated dialogue to reflect new mission details. - m01_derek_confrontation.json: Adjusted confrontation dialogue to align with new narrative elements. - m01_npc_maya.ink: Enhanced Maya's dialogue regarding Operation Shatter. - m01_opening_briefing.ink: Streamlined introduction and urgency explanation. - m01_phone_agent0x99.ink: Added reporting mechanics for Operation Shatter discovery.
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -93,6 +93,7 @@ Maya: They're planning to kill people. On purpose. They call it "Operation Shatt
|
||||
|
||||
=== operation_details ===
|
||||
~ discussed_operation = true
|
||||
#unlock_task:inform_safetynet_operation_shatter
|
||||
|
||||
Maya: Operation Shatter is a coordinated disinformation attack.
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -2,15 +2,11 @@
|
||||
// Mission 1: First Contact - Opening Briefing
|
||||
// Act 1: Interactive Cutscene
|
||||
// Agent 0x99 "Haxolottle" briefs Agent 0x00
|
||||
// UPDATED: Operation Shatter - Clear evil threat
|
||||
// UPDATED: Removed vague "approach" choice - outcomes
|
||||
// now based on actual player decisions
|
||||
// UPDATED: Shortened intro - Operation Shatter discovered through investigation
|
||||
// ================================================
|
||||
|
||||
// Variables for tracking what player asked about (affects debrief)
|
||||
VAR asked_about_stakes = false
|
||||
VAR asked_about_casualties = false
|
||||
VAR asked_about_architect = false
|
||||
VAR asked_about_derek = false
|
||||
VAR asked_about_maya = false
|
||||
VAR mission_accepted = false
|
||||
@@ -25,12 +21,12 @@ VAR player_name = "Agent 0x00"
|
||||
=== start ===
|
||||
Agent 0x99: {player_name}, thanks for getting here on short notice.
|
||||
|
||||
Agent 0x99: We have a situation developing at Viral Dynamics Media. And it's worse than we initially thought.
|
||||
Agent 0x99: We have a situation at Viral Dynamics Media. ENTROPY's Social Fabric cell is operating there.
|
||||
|
||||
+ [What's the situation?]
|
||||
+ [What are they doing?]
|
||||
-> briefing_threat
|
||||
+ [I'm ready. What's the mission?]
|
||||
-> briefing_threat
|
||||
-> mission_objectives
|
||||
+ [How urgent is this?]
|
||||
~ asked_about_stakes = true
|
||||
-> urgency_explanation
|
||||
@@ -40,145 +36,47 @@ Agent 0x99: We have a situation developing at Viral Dynamics Media. And it's wor
|
||||
// ================================================
|
||||
|
||||
=== urgency_explanation ===
|
||||
Agent 0x99: We're 72 hours from a mass casualty event.
|
||||
Agent 0x99: Time-sensitive. We received an anonymous tip from someone inside who suspects ENTROPY activity.
|
||||
|
||||
Agent 0x99: ENTROPY's Social Fabric cell is operating inside Viral Dynamics. But they're not just running disinformation campaigns.
|
||||
|
||||
Agent 0x99: They're planning something called "Operation Shatter."
|
||||
Agent 0x99: Whatever they're planning, it's active. And it's dangerous.
|
||||
|
||||
-> briefing_threat
|
||||
|
||||
// ================================================
|
||||
// THREAT BRIEFING - OPERATION SHATTER
|
||||
// THREAT BRIEFING
|
||||
// ================================================
|
||||
|
||||
=== briefing_threat ===
|
||||
Agent 0x99: Three weeks ago, our AI flagged something bigger than election interference.
|
||||
Agent 0x99: Three weeks ago, we flagged suspicious activity at Viral Dynamics—far beyond typical disinformation work.
|
||||
|
||||
Agent 0x99: Social Fabric has spent three months collecting psychological profiles. Detailed vulnerability assessments on over two million people in the region.
|
||||
Agent 0x99: Our intel suggests they're coordinating something larger. Data collection, psychological profiling, attack infrastructure.
|
||||
|
||||
+ [What kind of profiles?]
|
||||
-> profile_details
|
||||
+ [What are they planning to do with them?]
|
||||
-> operation_shatter
|
||||
+ [Two million people?]
|
||||
-> profile_scale
|
||||
Agent 0x99: The details are unclear, but it's active and operational.
|
||||
|
||||
// ================================================
|
||||
// PROFILE DETAILS
|
||||
// ================================================
|
||||
|
||||
=== profile_details ===
|
||||
Agent 0x99: Medical records. Prescription histories. Financial stress indicators. Documented anxiety disorders.
|
||||
|
||||
Agent 0x99: They've identified who has insulin dependencies. Who relies on weekly dialysis. Who lives alone without family support.
|
||||
|
||||
Agent 0x99: This isn't demographic marketing data. This is a targeting database for psychological warfare.
|
||||
|
||||
+ [What are they going to do with it?]
|
||||
-> operation_shatter
|
||||
+ [How did they get this data?]
|
||||
-> data_source
|
||||
|
||||
=== data_source ===
|
||||
Agent 0x99: The usual methods—breached insurance databases, compromised pharmacy systems, scraped social media.
|
||||
|
||||
Agent 0x99: But the concerning part isn't how they got it. It's what they're planning to do with it.
|
||||
|
||||
-> operation_shatter
|
||||
|
||||
=== profile_scale ===
|
||||
Agent 0x99: 2.3 million profiles, to be precise. And each one includes a vulnerability score.
|
||||
|
||||
Agent 0x99: They've categorized people by how likely they are to panic. To make dangerous decisions. To die if they receive the wrong message at the wrong time.
|
||||
|
||||
-> operation_shatter
|
||||
|
||||
// ================================================
|
||||
// OPERATION SHATTER - THE EVIL PLAN
|
||||
// ================================================
|
||||
|
||||
=== operation_shatter ===
|
||||
Agent 0x99: We intercepted fragments of something called "Operation Shatter."
|
||||
|
||||
Agent 0x99: Simultaneous fake crisis messages. Personalized. Targeted at the most vulnerable populations.
|
||||
|
||||
+ [What kind of crisis messages?]
|
||||
-> crisis_details
|
||||
+ [What's the goal?]
|
||||
-> entropy_goal
|
||||
|
||||
=== crisis_details ===
|
||||
Agent 0x99: Fake hospital system collapses. "Your appointment has been cancelled. All patient records corrupted."
|
||||
|
||||
Agent 0x99: Fake bank failures. "Your funds are frozen due to suspected breach."
|
||||
|
||||
Agent 0x99: Fake infrastructure attacks. "Water contaminated. Power grid compromised."
|
||||
|
||||
Agent 0x99: All delivered simultaneously to people they've profiled as most likely to panic.
|
||||
|
||||
+ [That would cause mass chaos...]
|
||||
-> casualty_projections
|
||||
+ [People could die from that.]
|
||||
~ asked_about_casualties = true
|
||||
-> casualty_projections
|
||||
|
||||
=== entropy_goal ===
|
||||
Agent 0x99: Social Fabric's philosophy is "truth is obsolete, only narrative matters."
|
||||
|
||||
Agent 0x99: But this goes beyond philosophy. They want to permanently destroy public trust in digital communications.
|
||||
|
||||
Agent 0x99: And they're willing to kill people to make their point.
|
||||
|
||||
-> casualty_projections
|
||||
|
||||
// ================================================
|
||||
// CASUALTY PROJECTIONS - THE HORROR
|
||||
// ================================================
|
||||
|
||||
=== casualty_projections ===
|
||||
Agent 0x99: {player_name}, I need you to understand what we're dealing with.
|
||||
|
||||
Agent 0x99: We recovered fragments of their impact assessment. They've calculated projected casualties.
|
||||
|
||||
+ [How many?]
|
||||
~ asked_about_casualties = true
|
||||
-> casualty_numbers
|
||||
+ [They're planning to kill people?]
|
||||
~ asked_about_casualties = true
|
||||
-> casualty_numbers
|
||||
|
||||
=== casualty_numbers ===
|
||||
Agent 0x99: Their own estimates: 42 to 85 direct deaths in the first 24 hours.
|
||||
|
||||
Agent 0x99: Diabetics who skip insulin because they believe hospitals are compromised. Elderly who have heart attacks from fake bank failure notices. Traffic fatalities from evacuation panic.
|
||||
|
||||
Agent 0x99: And they consider these deaths... acceptable. "Educational," they call it.
|
||||
|
||||
+ [That's monstrous.]
|
||||
-> villain_philosophy
|
||||
+ [We have to stop this.]
|
||||
-> mission_objectives
|
||||
|
||||
=== villain_philosophy ===
|
||||
Agent 0x99: The fragment we recovered includes a note from someone called "The Architect."
|
||||
|
||||
Agent 0x99: "These are not victims. They are examples. Their deaths will save thousands who learn the lesson: Trust nothing. Verify everything."
|
||||
|
||||
Agent 0x99: They're true believers, {player_name}. They think murdering people is "teaching a lesson."
|
||||
|
||||
+ [Who's The Architect?]
|
||||
~ asked_about_architect = true
|
||||
-> architect_mention
|
||||
+ [What kind of data?]
|
||||
-> data_concerns
|
||||
+ [Who's running the operation?]
|
||||
~ asked_about_derek = true
|
||||
-> operative_identity
|
||||
+ [What's my mission?]
|
||||
-> mission_objectives
|
||||
|
||||
=== architect_mention ===
|
||||
Agent 0x99: We don't know yet. Someone coordinating ENTROPY cells at a strategic level.
|
||||
// ================================================
|
||||
// DATA CONCERNS
|
||||
// ================================================
|
||||
|
||||
Agent 0x99: But that's a problem for later. Right now, we stop Operation Shatter.
|
||||
=== data_concerns ===
|
||||
Agent 0x99: Large-scale data aggregation. Personal profiles, vulnerability assessments.
|
||||
|
||||
-> mission_objectives
|
||||
Agent 0x99: Whatever they're building, it's targeted and sophisticated.
|
||||
|
||||
Agent 0x99: Your job is to get inside and find out what they're actually planning.
|
||||
|
||||
+ [Who's running this?]
|
||||
~ asked_about_derek = true
|
||||
-> operative_identity
|
||||
+ [What's my mission?]
|
||||
-> mission_objectives
|
||||
|
||||
// ================================================
|
||||
// MISSION OBJECTIVES
|
||||
@@ -187,11 +85,11 @@ Agent 0x99: But that's a problem for later. Right now, we stop Operation Shatter
|
||||
=== mission_objectives ===
|
||||
Agent 0x99: Your objectives:
|
||||
|
||||
Agent 0x99: One—Find the complete Operation Shatter documentation. Target lists, message templates, deployment timeline.
|
||||
Agent 0x99: One—Infiltrate Viral Dynamics and identify what ENTROPY is planning.
|
||||
|
||||
Agent 0x99: Two—Identify all ENTROPY operatives inside Viral Dynamics.
|
||||
Agent 0x99: Two—Gather evidence of their operations and identify all operatives.
|
||||
|
||||
Agent 0x99: Three—Stop the operation before Sunday. That's when they deploy.
|
||||
Agent 0x99: Three—Report back with actionable intelligence so we can stop whatever they're building.
|
||||
|
||||
+ [How do I get inside?]
|
||||
-> cover_story
|
||||
@@ -208,23 +106,14 @@ Agent 0x99: Three—Stop the operation before Sunday. That's when they deploy.
|
||||
=== operative_identity ===
|
||||
Agent 0x99: Derek Lawson. Senior Marketing Manager at Viral Dynamics.
|
||||
|
||||
Agent 0x99: Perfect cover—his job is literally manipulating narratives for clients. He's been there three months, which aligns with when the data collection started.
|
||||
Agent 0x99: He's been there three months. Timeline matches when the suspicious activity started.
|
||||
|
||||
Agent 0x99: He's not just running operations. He authored parts of the casualty projections we intercepted.
|
||||
Agent 0x99: He's ENTROPY, but we don't know the full scope of what he's running.
|
||||
|
||||
+ [He calculated how many people would die?]
|
||||
-> derek_author
|
||||
+ [How do I get to him?]
|
||||
-> cover_story
|
||||
|
||||
=== derek_author ===
|
||||
Agent 0x99: His signature is on the medical dependency targeting document.
|
||||
|
||||
Agent 0x99: He personally identified which populations would be most vulnerable to fake hospital closure messages.
|
||||
|
||||
Agent 0x99: This isn't a foot soldier following orders. He's an architect of mass casualties.
|
||||
|
||||
-> cover_story
|
||||
+ [What's my mission?]
|
||||
-> mission_objectives
|
||||
|
||||
// ================================================
|
||||
// COVER STORY
|
||||
@@ -243,25 +132,25 @@ Agent 0x99: Completely legitimate. Viral Dynamics actually requested the audit w
|
||||
=== technical_access ===
|
||||
Agent 0x99: Server room, computers, network infrastructure—all fair game under your cover.
|
||||
|
||||
Agent 0x99: That's where you'll find the Operation Shatter files. Derek keeps them encrypted, but they're there.
|
||||
Agent 0x99: That's where you'll find evidence of what Derek's planning. Look for encrypted files, attack infrastructure, target databases.
|
||||
|
||||
-> innocent_warning
|
||||
|
||||
=== employee_interaction ===
|
||||
Agent 0x99: Most employees at Viral Dynamics have no idea what's happening.
|
||||
|
||||
Agent 0x99: They think they work at a marketing agency. The Operation Shatter team is isolated—maybe three or four people total.
|
||||
Agent 0x99: They think they work at a marketing agency. The ENTROPY team is isolated—probably just a few people.
|
||||
|
||||
Agent 0x99: Everyone else is innocent. They'll go home to families tonight with no idea their company was planning to kill people.
|
||||
Agent 0x99: Everyone else is innocent. Keep collateral damage to zero.
|
||||
|
||||
-> innocent_warning
|
||||
|
||||
=== innocent_warning ===
|
||||
Agent 0x99: One more thing: there's a journalist there named Maya Chen.
|
||||
Agent 0x99: One more thing: there's someone inside named Maya Chen.
|
||||
|
||||
Agent 0x99: She contacted us anonymously. Suspected something was wrong but doesn't know the full scope. She thinks it's corporate fraud, not mass murder.
|
||||
Agent 0x99: She contacted us anonymously. Suspected something was wrong but doesn't have the full picture.
|
||||
|
||||
Agent 0x99: Protect her identity. If Derek finds out she tipped us off, she's in danger.
|
||||
Agent 0x99: Find her. She might have critical information. And protect her identity—if Derek finds out she tipped us off, she's in danger.
|
||||
|
||||
~ asked_about_maya = true
|
||||
|
||||
@@ -286,7 +175,7 @@ Agent 0x99: Your contractor kit has lockpicks, RFID cloner, and analysis tools.
|
||||
|
||||
Agent 0x99: Everything you need looks like standard IT equipment. Stay in character.
|
||||
|
||||
Agent 0x99: And {player_name}—when you find those casualty projections, photograph everything. We need complete documentation.
|
||||
Agent 0x99: And {player_name}—document everything you find. We need complete evidence of whatever they're planning.
|
||||
|
||||
-> final_instructions
|
||||
|
||||
@@ -295,9 +184,9 @@ Agent 0x99: And {player_name}—when you find those casualty projections, photog
|
||||
// ================================================
|
||||
|
||||
=== final_instructions ===
|
||||
Agent 0x99: Remember—Derek doesn't know we're onto Operation Shatter. He thinks this is just an IT audit.
|
||||
Agent 0x99: Remember—Derek doesn't know we're onto him. This is just a routine IT audit as far as he's concerned.
|
||||
|
||||
Agent 0x99: Use that advantage. Gather evidence before confronting anyone.
|
||||
Agent 0x99: Use that advantage. Gather intelligence and evidence before making any moves.
|
||||
|
||||
+ [Any specific advice?]
|
||||
-> specific_advice
|
||||
@@ -330,11 +219,11 @@ Agent 0x99: And Maya Chen—the journalist who contacted us. Be careful around h
|
||||
// ================================================
|
||||
|
||||
=== deployment ===
|
||||
Agent 0x99: {player_name}, I won't lie. This is bigger than a typical first mission.
|
||||
Agent 0x99: {player_name}, get inside, find out what ENTROPY is planning, and report back.
|
||||
|
||||
Agent 0x99: But you're ready. And those 85 people who might die on Sunday? They're counting on you. Even if they don't know it.
|
||||
Agent 0x99: Talk to Maya. She's your best lead. Whatever Derek's building, she'll have seen pieces of it.
|
||||
|
||||
Agent 0x99: Stop Operation Shatter. Find the evidence. And make sure Derek Lawson never hurts anyone.
|
||||
Agent 0x99: Once you know what we're dealing with, call me. We'll figure out how to stop it.
|
||||
|
||||
~ mission_accepted = true
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -9,10 +9,13 @@ VAR ssh_hint_given = false
|
||||
VAR linux_hint_given = false
|
||||
VAR sudo_hint_given = false
|
||||
VAR first_contact = true
|
||||
VAR operation_shatter_reported = false
|
||||
|
||||
// External variables
|
||||
VAR player_name = "Agent 0x00"
|
||||
VAR current_task = ""
|
||||
VAR talked_to_maya = false
|
||||
VAR discussed_operation = false
|
||||
|
||||
// ================================================
|
||||
// START: PHONE SUPPORT
|
||||
@@ -57,6 +60,8 @@ Agent 0x99: If you need guidance on any challenges, I'm here. That's what handle
|
||||
|
||||
Agent 0x99: What do you need help with?
|
||||
|
||||
+ {talked_to_maya and discussed_operation and not operation_shatter_reported} [I discovered what ENTROPY is planning - Operation Shatter]
|
||||
-> report_operation_shatter
|
||||
+ {not lockpick_hint_given} [Lockpicking guidance]
|
||||
-> lockpick_help
|
||||
+ {not ssh_hint_given} [SSH brute force help]
|
||||
@@ -167,6 +172,90 @@ Agent 0x99: Most people at Viral Dynamics are legitimate employees. We want ENTR
|
||||
+ [Understood]
|
||||
-> support_hub
|
||||
|
||||
// ================================================
|
||||
// REPORT OPERATION SHATTER DISCOVERY
|
||||
// ================================================
|
||||
|
||||
=== report_operation_shatter ===
|
||||
~ operation_shatter_reported = true
|
||||
#unlock_task:inform_safetynet_operation_shatter
|
||||
|
||||
Agent 0x99: ...Say that again.
|
||||
|
||||
+ [Operation Shatter - coordinated disinformation attack]
|
||||
-> shatter_details_1
|
||||
+ [They're planning mass casualties]
|
||||
-> shatter_casualties
|
||||
|
||||
=== shatter_details_1 ===
|
||||
Agent 0x99: Operation Shatter. Christ.
|
||||
|
||||
Agent 0x99: What exactly are they planning?
|
||||
|
||||
+ [Fake crisis messages targeting vulnerable populations]
|
||||
-> shatter_details_2
|
||||
|
||||
=== shatter_details_2 ===
|
||||
Agent 0x99: Talk to me. What did Maya tell you?
|
||||
|
||||
+ [Over two million profiles. Fake hospital closures, bank failures, infrastructure attacks.]
|
||||
-> shatter_casualties
|
||||
|
||||
=== shatter_casualties ===
|
||||
Agent 0x99: {player_name}, this is worse than we thought.
|
||||
|
||||
Agent 0x99: How bad are we talking?
|
||||
|
||||
+ [Their own projections: 42 to 85 deaths in the first 24 hours]
|
||||
-> shatter_reaction
|
||||
+ [They've calculated acceptable casualties. They're targeting diabetics, elderly, people with anxiety disorders.]
|
||||
-> shatter_reaction
|
||||
|
||||
=== shatter_reaction ===
|
||||
Agent 0x99: ...Forty-two to eighty-five people. Calculated. Deliberate.
|
||||
|
||||
Agent 0x99: They're not just terrorists. They're mass murderers with spreadsheets.
|
||||
|
||||
Agent 0x99: {player_name}, listen carefully. Your mission just changed priority.
|
||||
|
||||
+ [What do I need to do?]
|
||||
-> updated_objectives
|
||||
|
||||
=== updated_objectives ===
|
||||
Agent 0x99: New priority objective: Stop Operation Shatter before deployment.
|
||||
|
||||
Agent 0x99: Maya said Sunday, 6 AM. That's when the messages go out.
|
||||
|
||||
Agent 0x99: Find the complete documentation—target lists, message templates, deployment systems.
|
||||
|
||||
Agent 0x99: Gather proof of Derek's involvement. And shut down their attack infrastructure before those messages go out.
|
||||
|
||||
+ [What about those 85 people?]
|
||||
-> people_at_stake
|
||||
+ [I'll stop it]
|
||||
-> mission_commitment
|
||||
|
||||
=== people_at_stake ===
|
||||
Agent 0x99: They're counting on you, {player_name}. Even if they don't know it.
|
||||
|
||||
Agent 0x99: Diabetics who'll skip insulin. Elderly with heart conditions. People who'll panic and make fatal decisions.
|
||||
|
||||
Agent 0x99: Every piece of evidence you find brings us closer to stopping this.
|
||||
|
||||
-> mission_commitment
|
||||
|
||||
=== mission_commitment ===
|
||||
#complete_task:inform_safetynet_operation_shatter
|
||||
|
||||
Agent 0x99: Good work discovering this. Now we know what we're dealing with.
|
||||
|
||||
Agent 0x99: Continue investigating. Find the Operation Shatter files, identify all operatives, and prepare to shut this down.
|
||||
|
||||
Agent 0x99: Call me if you need support. This just became a race against the clock.
|
||||
|
||||
#exit_conversation
|
||||
-> support_hub
|
||||
|
||||
// ================================================
|
||||
// EVENT: LOCKPICK ACQUIRED
|
||||
// ================================================
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -156,6 +156,13 @@ password_hints = "Common passwords: Marketing123, Campaign2024, Viral_Dynamics_A
|
||||
"type": "npc_conversation",
|
||||
"targetNPC": "maya_chen",
|
||||
"status": "locked"
|
||||
},
|
||||
{
|
||||
"taskId": "inform_safetynet_operation_shatter",
|
||||
"title": "Report Operation Shatter discovery to SAFETYNET",
|
||||
"type": "phone_conversation",
|
||||
"targetNPC": "agent_0x99",
|
||||
"status": "locked"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -965,6 +972,8 @@ password_hints = "Common passwords: Marketing123, Campaign2024, Viral_Dynamics_A
|
||||
"talked_to_maya": false,
|
||||
"talked_to_kevin": false,
|
||||
"maya_identity_protected": true,
|
||||
"discussed_operation": false,
|
||||
"operation_shatter_reported": false,
|
||||
|
||||
"objectives_completed": 0,
|
||||
"lore_collected": 0,
|
||||
|
||||
Reference in New Issue
Block a user