Add fight option to Derek confrontation in Mission 1

- Add "fight" choice alongside arrest/recruit/expose options
- Derek becomes hostile when player chooses to fight (#hostile tag)
- Closing debrief includes moral consequences of fighting vs arresting
- Agent 0x99 discusses excessive force and SAFETYNET protocol
- Mission summary reflects fight outcome with allegations
This commit is contained in:
Z. Cliffe Schreuders
2026-01-14 10:05:13 +00:00
parent 53881d5767
commit 80662cfbea
2 changed files with 136 additions and 0 deletions

View File

@@ -276,6 +276,9 @@ Agent 0x99: He's cleared now. But he's traumatized. His neighbors saw him taken
=== derek_discussion ===
Agent 0x99: Now, about Derek Lawson...
{final_choice == "fight":
-> consequence_fight
}
{final_choice == "arrest":
-> consequence_arrest
}
@@ -288,6 +291,79 @@ Agent 0x99: Now, about Derek Lawson...
// Default if variable not set properly
-> consequence_arrest
// ================================================
// CONSEQUENCE: FIGHT (Hostile Engagement)
// ================================================
=== consequence_fight ===
Agent 0x99: You chose to fight Derek. Physical confrontation instead of a clean arrest.
Agent 0x99: I need to ask—why? We had backup en route. He wasn't armed. You could have taken him into custody without violence.
+ [He didn't deserve a trial after what he planned]
Agent 0x99: That's... not how we operate, {player_name}.
Agent 0x99: We're not executioners. We're not vigilantes. We follow the law, even when the targets don't.
Agent 0x99: Derek's in custody now, but his lawyers are already calling it excessive force.
-> fight_outcome
+ [I was angry. He was so calm about those deaths.]
Agent 0x99: I understand. Reading those casualty projections—42 to 85 people—and then hearing him rationalize it...
Agent 0x99: But we can't let anger drive our tactics. That's how we become what we're fighting against.
Agent 0x99: Derek's narrative now is that SAFETYNET attacked him. That plays right into ENTROPY's philosophy.
-> fight_outcome
+ [He reached for something. I reacted.]
Agent 0x99: Field decisions happen fast. I saw the footage—he did move toward his desk.
Agent 0x99: You made a split-second call. That's different from choosing violence.
Agent 0x99: Internal Affairs will review it, but they'll see what I saw. Justified response.
-> fight_outcome_justified
=== fight_outcome ===
Agent 0x99: Derek's in custody. Same end result as a clean arrest.
Agent 0x99: But his defense team is already spinning this. "SAFETYNET agent attacks unarmed employee."
Agent 0x99: The casualty projections still convict him. The evidence is solid. But you've given him a narrative.
{found_casualty_projections:
Agent 0x99: At least you recovered the hard evidence. His signature on those death calculations—that's what the jury will focus on.
- else:
Agent 0x99: And we're still building the evidence case from forensics. It'll be harder with his team claiming persecution.
}
Agent 0x99: Next time... we do this by the book. Clean arrests. Legal prosecution. No room for their propaganda.
+ [I understand]
Agent 0x99: Good. Learn from it.
-> phase_3_discussion
+ [He was a terrorist planning mass murder]
Agent 0x99: He was. And now he's a terrorist with a black eye and a story about SAFETYNET brutality.
Agent 0x99: We have to be better than them. Even when they make it hard.
-> phase_3_discussion
=== fight_outcome_justified ===
Agent 0x99: Derek's in custody. You subdued a potentially armed suspect.
Agent 0x99: He wasn't armed—turned out he was reaching for a phone. But you couldn't have known that.
Agent 0x99: The response was within protocol. Quick, controlled, minimal injury.
{found_casualty_projections:
Agent 0x99: And you have the evidence to back up the arrest. His casualty projections with his signature.
- else:
Agent 0x99: Forensics is pulling the evidence from his systems. Should be enough for prosecution.
}
Agent 0x99: His lawyers will complain, but the review board will clear you.
Agent 0x99: Just... remember. We escalate to force only when necessary. Derek was a true believer, but he wasn't a physical threat until you made him one.
+ [Noted. I'll be more careful.]
Agent 0x99: That's all I ask. Learn from every mission.
-> phase_3_discussion
+ [I'd do it again if I had to]
Agent 0x99: Fair enough. But "had to" is the key phrase.
Agent 0x99: Force as a last resort, not a first choice.
-> phase_3_discussion
// ================================================
// CONSEQUENCE: ARREST
// ================================================
@@ -459,6 +535,9 @@ Agent 0x99: That's what SAFETYNET is for.
[MISSION COMPLETE: FIRST CONTACT]
{final_choice == "fight":
[OUTCOME: Derek Lawson subdued by force - Excessive force allegations]
}
{final_choice == "arrest":
[OUTCOME: Derek Lawson arrested - Prosecution pending]
}

View File

@@ -242,6 +242,9 @@ 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 taking you down. Now.] #color:red
~ final_choice = "fight"
-> choice_fight
+ [I'm calling in SAFETYNET. You're under arrest.]
~ final_choice = "arrest"
-> choice_arrest
@@ -252,6 +255,60 @@ Derek: But know this—even if you stop Operation Shatter here, the idea doesn't
~ final_choice = "expose"
-> choice_expose
// ================================================
// CHOICE: FIGHT (Hostile Engagement)
// ================================================
=== choice_fight ===
You: No lawyers. No trials. No platform for your twisted philosophy.
Derek: *steps back* You're making a mistake.
You: The only mistake was thinking you'd get to walk out of here.
Derek: Violence? How disappointing. I expected better from SAFETYNET.
You: You calculated deaths like statistics. You don't get to lecture me about violence.
Derek becomes hostile, reaching for something in his desk.
#hostile
#speaker:derek
#influence:-100
Derek: If you want a fight, {player_name}, you'll get one. But you won't stop ENTROPY. You'll just prove we're right about the system.
Derek: Come on then!
-> fight_outcome
=== fight_outcome ===
The confrontation escalates. Derek fights desperately, but you're trained for this.
After a brief struggle, you subdue him. He's breathing hard, defiant even in defeat.
#speaker:derek
Derek: *coughs* You think... you think this changes anything?
Derek: I'm a martyr now. ENTROPY will remember this. The Architect will remember.
Derek: You didn't arrest me. You attacked me. How noble.
You call in SAFETYNET backup while keeping Derek restrained.
#speaker:agent_0x99
Agent 0x99: Backup team on site. Derek Lawson subdued and in custody.
Agent 0x99: {player_name}... that was aggressive. But he's down. Operation Shatter is over.
Agent 0x99: We'll discuss the methods in debrief.
~ derek_confronted = true
#exit_conversation
-> END
// ================================================
// CHOICE: ARREST (Surgical Strike)
// ================================================