mirror of
https://github.com/cliffe/BreakEscape.git
synced 2026-02-20 13:50:46 +00:00
- Updated the story premise to introduce "Operation Shatter," detailing the coordinated mass panic attack targeting vulnerable populations. - Expanded the room layout to include additional rooms and NPC interactions, enhancing player exploration and engagement. - Added critical LORE fragments revealing casualty projections and targeting demographics, emphasizing the stakes of the mission. - Revised dialogue and choices to reflect player actions and moral implications, ensuring a more impactful closing debrief. - Improved scenario structure and flow, aligning with best practices for narrative clarity and player agency.
377 lines
13 KiB
Plaintext
377 lines
13 KiB
Plaintext
// ================================================
|
|
// Mission 1: First Contact - Derek Confrontation
|
|
// Act 3: Major Moral Choice
|
|
// UPDATED: Evil monologue, clear villain, no sympathy
|
|
// Player confronts Derek with Operation Shatter evidence
|
|
// ================================================
|
|
|
|
VAR confrontation_approach = "" // diplomatic, aggressive, evidence_based
|
|
VAR derek_knows_safetynet = false
|
|
VAR derek_showed_remorse = false // Spoiler: he won't
|
|
VAR final_choice = "" // arrest, recruit, expose
|
|
VAR derek_confronted = false // Set to true when confrontation ends
|
|
|
|
// External variables
|
|
VAR player_name = "Agent 0x00"
|
|
VAR evidence_collected = false
|
|
VAR found_casualty_projections = false
|
|
|
|
// VM flag requirements - player must complete technical investigation
|
|
VAR ssh_flag_submitted = false
|
|
VAR linux_flag_submitted = false
|
|
VAR sudo_flag_submitted = false
|
|
|
|
// ================================================
|
|
// START: DEREK APPEARS
|
|
// ================================================
|
|
|
|
=== start ===
|
|
// Check if player has sufficient evidence from VM challenges
|
|
{not ssh_flag_submitted or not linux_flag_submitted or not sudo_flag_submitted:
|
|
-> insufficient_evidence
|
|
}
|
|
// Player has all VM flags - proceed with confrontation
|
|
#complete_task:confront_derek
|
|
|
|
Derek: Working late on the security audit?
|
|
|
|
Derek: I've been watching you, you know. The lockpicking. The server access. The files you've been copying.
|
|
|
|
Derek: You're not an IT contractor. And you've found Operation Shatter.
|
|
|
|
+ [I know what you're planning, Derek.]
|
|
~ confrontation_approach = "aggressive"
|
|
~ derek_knows_safetynet = true
|
|
-> derek_response_direct
|
|
+ [I've seen the casualty projections.]
|
|
~ confrontation_approach = "evidence_based"
|
|
~ derek_knows_safetynet = true
|
|
-> derek_response_evidence
|
|
+ [SAFETYNET knows everything.]
|
|
~ confrontation_approach = "aggressive"
|
|
~ derek_knows_safetynet = true
|
|
-> derek_response_safetynet
|
|
|
|
// ================================================
|
|
// INSUFFICIENT EVIDENCE - PLAYER NEEDS VM FLAGS
|
|
// ================================================
|
|
|
|
=== insufficient_evidence ===
|
|
Derek: Oh, you must be the IT contractor. Security audit, right?
|
|
|
|
Derek: I'm kind of busy. Maybe check back later?
|
|
|
|
+ [I need to look at your systems]
|
|
Derek: Feel free to look around the office. But I don't have time for an interview right now.
|
|
Derek: Maybe after you've actually found something worth discussing.
|
|
#exit_conversation
|
|
-> END
|
|
+ [We should talk about some irregularities I've found]
|
|
Derek: Irregularities? Like what exactly?
|
|
Derek: If you don't have specifics, I've got work to do. Come back when you have evidence.
|
|
#exit_conversation
|
|
-> END
|
|
+ [I'll come back later]
|
|
Derek: Good idea. I'm sure the server room has plenty to keep you busy.
|
|
#exit_conversation
|
|
-> END
|
|
|
|
// ================================================
|
|
// DEREK RESPONDS - DIRECT APPROACH
|
|
// ================================================
|
|
|
|
=== derek_response_direct ===
|
|
Derek: "Planning." Such a neutral word for what we're doing.
|
|
|
|
Derek: We're not planning an attack. We're planning an education.
|
|
|
|
+ [You're planning to kill people.]
|
|
-> derek_admits_casualties
|
|
+ [You're insane.]
|
|
-> derek_calm_response
|
|
|
|
=== derek_calm_response ===
|
|
Derek: Insane? I'm the sanest person in this building.
|
|
|
|
Derek: Everyone else pretends the systems work. Pretends their data is secure. Pretends that trust is deserved.
|
|
|
|
Derek: I know the truth. And after Sunday, so will everyone else.
|
|
|
|
-> derek_admits_casualties
|
|
|
|
// ================================================
|
|
// DEREK RESPONDS - EVIDENCE APPROACH
|
|
// ================================================
|
|
|
|
=== derek_response_evidence ===
|
|
Derek: Ah. The casualty projections.
|
|
|
|
Derek: I was wondering if you'd find those. They're the most honest part of the whole operation.
|
|
|
|
+ [You calculated how many people would die.]
|
|
-> derek_admits_casualties
|
|
+ [42 to 85 people. Those are your numbers.]
|
|
-> derek_admits_casualties
|
|
|
|
// ================================================
|
|
// DEREK RESPONDS - SAFETYNET
|
|
// ================================================
|
|
|
|
=== derek_response_safetynet ===
|
|
Derek: SAFETYNET. The organization that thinks surveillance protects people.
|
|
|
|
Derek: You found the files. The targeting lists. The message templates.
|
|
|
|
Derek: Good. Then you understand what's coming.
|
|
|
|
-> derek_admits_casualties
|
|
|
|
// ================================================
|
|
// DEREK ADMITS TO CASUALTIES - THE EVIL MONOLOGUE
|
|
// ================================================
|
|
|
|
=== derek_admits_casualties ===
|
|
Derek: Yes. Between 42 and 85 people will die in the first 24 hours.
|
|
|
|
Derek: Diabetics who panic about hospital closures. Elderly who can't handle the stress of fake bank failures. Heart attacks. Traffic accidents. A few suicides, probably.
|
|
|
|
Derek: I calculated every one of them.
|
|
|
|
+ [How can you be so calm about murdering people?]
|
|
-> evil_monologue_part1
|
|
+ [You're a monster.]
|
|
-> evil_monologue_part1
|
|
+ [Why?]
|
|
-> evil_monologue_part1
|
|
|
|
// ================================================
|
|
// EVIL MONOLOGUE - PART 1
|
|
// ================================================
|
|
|
|
=== evil_monologue_part1 ===
|
|
Derek: Murder? No. Think of it as... forced education.
|
|
|
|
Derek: Every security professional in the world says "humans are the weakest link." They write papers about it. Give talks at conferences. Collect consulting fees.
|
|
|
|
Derek: But no one actually DEMONSTRATES it. No one shows what happens when you target human psychology at scale.
|
|
|
|
Derek: We're going to prove—conclusively, undeniably—that digital trust is a lie. That every message you receive could be fake. That nothing is secure.
|
|
|
|
+ [By killing innocent people.]
|
|
-> evil_monologue_part2
|
|
+ [You're just terrorists with a philosophy degree.]
|
|
-> evil_monologue_part2
|
|
|
|
=== evil_monologue_part2 ===
|
|
Derek: "Innocent." That's an interesting word.
|
|
|
|
Derek: The diabetics we're targeting? They trust hospital notifications without verification. The elderly? They believe bank messages because they look official.
|
|
|
|
Derek: They're not innocent. They're negligent. They've outsourced their critical thinking to systems that can be manipulated.
|
|
|
|
Derek: We're teaching them—all of them—that trust is dangerous. Verify everything. Question everything. Or die.
|
|
|
|
+ [Some of them WILL die. That's murder.]
|
|
-> evil_monologue_part3
|
|
+ [You're rationalizing mass murder.]
|
|
-> evil_monologue_part3
|
|
|
|
// ================================================
|
|
// EVIL MONOLOGUE - PART 3 (The Coldest Part)
|
|
// ================================================
|
|
|
|
=== evil_monologue_part3 ===
|
|
Derek: Forty-two to eighty-five deaths. Let's call it sixty.
|
|
|
|
Derek: Do you know how many people die every year because they trusted the wrong email? Clicked the wrong link? Gave credentials to the wrong person?
|
|
|
|
Derek: Thousands. Tens of thousands. Suicides after financial fraud. Medical errors from compromised records. Violence incited by disinformation.
|
|
|
|
Derek: We're going to end that. One bad weekend. Sixty deaths. And then NO ONE will ever trust a digital message again without verification.
|
|
|
|
Derek: Sixty deaths to save tens of thousands per year. That's not murder. That's optimization.
|
|
|
|
+ [You're calculating human lives like statistics.]
|
|
-> derek_final_philosophy
|
|
+ [The Architect taught you this, didn't they?]
|
|
-> architect_reference
|
|
+ [This ends now.]
|
|
-> confrontation_choice
|
|
|
|
=== architect_reference ===
|
|
Derek: The Architect opened my eyes. But I chose this path myself.
|
|
|
|
Derek: Entropy is inevitable. Trust is a lie. Security through obscurity fails.
|
|
|
|
Derek: We just accelerate the lesson. Make it unavoidable. Make it hurt enough that people remember.
|
|
|
|
-> derek_final_philosophy
|
|
|
|
// ================================================
|
|
// DEREK'S FINAL PHILOSOPHY
|
|
// ================================================
|
|
|
|
=== derek_final_philosophy ===
|
|
Derek: You look at me like I'm a monster.
|
|
|
|
Derek: But I'm the only honest person in this industry. Every security researcher KNOWS trust is broken. They just profit from pretending it can be fixed.
|
|
|
|
Derek: I'm the one willing to actually fix it. To burn the comfortable lies so something real can grow from the ashes.
|
|
|
|
Derek: Those sixty people? Their deaths will save millions.
|
|
|
|
Derek: And in ten years, when no one falls for phishing because Operation Shatter taught them to verify everything, you'll understand.
|
|
|
|
Derek: I'm not a villain. I'm a prophet.
|
|
|
|
+ [You're delusional.]
|
|
-> confrontation_choice
|
|
+ [You're going to prison for the rest of your life.]
|
|
-> confrontation_choice
|
|
+ [I almost feel sorry for you. Almost.]
|
|
-> confrontation_choice
|
|
|
|
// ================================================
|
|
// CONFRONTATION CHOICE (Major Decision)
|
|
// ================================================
|
|
|
|
=== confrontation_choice ===
|
|
Derek: So. Here we are. You've heard my reasoning. You've seen the evidence.
|
|
|
|
Derek: What happens now is up to you.
|
|
|
|
Derek: But know this—even if you stop Operation Shatter here, the idea doesn't die. There are other cells. Other believers. Other architects of the inevitable.
|
|
|
|
+ [I'm calling in SAFETYNET. You're under arrest.]
|
|
~ final_choice = "arrest"
|
|
-> choice_arrest
|
|
+ [Work with us. Help us stop the other cells.]
|
|
~ final_choice = "recruit"
|
|
-> choice_recruit
|
|
+ [I'm exposing everything publicly. Let the world see what you are.]
|
|
~ final_choice = "expose"
|
|
-> choice_expose
|
|
|
|
// ================================================
|
|
// CHOICE: ARREST (Surgical Strike)
|
|
// ================================================
|
|
|
|
=== choice_arrest ===
|
|
You: You're done, Derek. Operation Shatter dies today. And you're going to spend the rest of your life in prison.
|
|
|
|
Derek: Prison. How quaint.
|
|
|
|
Derek: You think concrete walls stop ideas? I'll become a martyr. People will study my philosophy. Question why I was silenced.
|
|
|
|
You: You'll be a case study in how not to become a terrorist.
|
|
|
|
Derek: Terrorist. That's what they call educators who make people uncomfortable.
|
|
|
|
You call in SAFETYNET backup. Derek doesn't resist—he's too confident that he's already won something.
|
|
|
|
-> arrest_outcome
|
|
|
|
=== arrest_outcome ===
|
|
#speaker:agent_0x99
|
|
|
|
Agent 0x99: Backup team is on site. Derek Lawson in custody.
|
|
|
|
Agent 0x99: {player_name}... I heard everything. The way he talked about those deaths. Like they were just... numbers.
|
|
|
|
Agent 0x99: We got him. Operation Shatter is over. You saved those people.
|
|
|
|
~ derek_confronted = true
|
|
#exit_conversation
|
|
|
|
-> END
|
|
|
|
// ================================================
|
|
// CHOICE: RECRUIT (Double Agent)
|
|
// ================================================
|
|
|
|
=== choice_recruit ===
|
|
You: You said there are other cells. Other architects of chaos.
|
|
|
|
You: Help us stop them. Turn informant. Give us ENTROPY from the inside.
|
|
|
|
Derek: Become a double agent? Betray The Architect?
|
|
|
|
Derek: *laughs*
|
|
|
|
Derek: You think I'd sell out the only people who understand the truth? For what—reduced sentence?
|
|
|
|
Derek: No. I'm not like you, willing to compromise principles for convenience.
|
|
|
|
Derek: Arrest me. Expose me. I don't care. But I will never betray ENTROPY.
|
|
|
|
You: Then you leave me no choice.
|
|
|
|
You call in SAFETYNET backup. Derek was never going to cooperate—his belief is absolute.
|
|
|
|
-> recruit_outcome
|
|
|
|
=== recruit_outcome ===
|
|
#speaker:agent_0x99
|
|
|
|
Agent 0x99: I heard his refusal. Not surprised—true believers don't turn.
|
|
|
|
Agent 0x99: But you tried. That matters. Sometimes there's no way to reach someone.
|
|
|
|
Agent 0x99: Derek Lawson is in custody. Operation Shatter is stopped. That's what counts.
|
|
|
|
~ derek_confronted = true
|
|
#exit_conversation
|
|
|
|
-> END
|
|
|
|
// ================================================
|
|
// CHOICE: EXPOSE (Public Disclosure)
|
|
// ================================================
|
|
|
|
=== choice_expose ===
|
|
You: I'm taking everything. The casualty projections. The targeting lists. The messages you wrote for elderly diabetics.
|
|
|
|
You: I'm giving it all to the press. Let the world see what ENTROPY really is.
|
|
|
|
Derek: *smiles*
|
|
|
|
Derek: You think that hurts me? I WANT people to see this.
|
|
|
|
Derek: Public disclosure means the philosophy spreads. People will read those casualty projections and think—what if it happened? What if next time we're not stopped?
|
|
|
|
Derek: Fear is the first step to wisdom. You're doing my work for me.
|
|
|
|
+ [Then the world will also see you in handcuffs.]
|
|
-> expose_execute
|
|
+ [At least they'll know to watch for people like you.]
|
|
-> expose_execute
|
|
|
|
=== expose_execute ===
|
|
You: Maybe. But they'll also see that SAFETYNET stopped you. That we found you before you killed anyone.
|
|
|
|
You: And every time someone reads about Operation Shatter, they'll remember that we caught you. That your "inevitable entropy" wasn't so inevitable after all.
|
|
|
|
Derek: A temporary setback. Entropy always wins eventually.
|
|
|
|
You: Not today.
|
|
|
|
You begin compiling the evidence for public release while calling in backup.
|
|
|
|
-> expose_outcome
|
|
|
|
=== expose_outcome ===
|
|
#speaker:agent_0x99
|
|
|
|
Agent 0x99: {player_name}, public disclosure is... complicated. Director Netherton is going to have opinions.
|
|
|
|
Agent 0x99: But I understand why you did it. People should know what ENTROPY is capable of. What they were willing to do.
|
|
|
|
Agent 0x99: Derek's in custody. The targeting lists are secured. And those 85 people who were going to die on Sunday? They're going to live.
|
|
|
|
Agent 0x99: That's what matters.
|
|
|
|
~ derek_confronted = true
|
|
#exit_conversation
|
|
|
|
-> END
|