diff --git a/story_design/ink/dr_chen_ongoing_conversations.ink b/story_design/ink/dr_chen_ongoing_conversations.ink index baaa79e..7aa7480 100644 --- a/story_design/ink/dr_chen_ongoing_conversations.ink +++ b/story_design/ink/dr_chen_ongoing_conversations.ink @@ -7,61 +7,72 @@ // Tracks progression from professional support to genuine friendship // =========================================== -// Relationship tracking -VAR chen_rapport = 50 // Dr. Chen's rapport with agent (0-100) -VAR tech_collaboration = 0 // Successful tech collaborations -VAR missions_with_chen_support = 0 // Missions where Chen provided support -VAR shared_discoveries = 0 // Technical breakthroughs together -VAR personal_conversations = 0 // Non-work discussions +// =========================================== +// PERSISTENT VARIABLES +// These MUST be saved/loaded between game sessions +// Your game engine must persist these across ALL missions +// =========================================== -// Topic tracking - Phase 1 (Missions 1-5) -VAR discussed_tech_philosophy = false -VAR discussed_entropy_tech = false -VAR discussed_chen_background = false -VAR discussed_favorite_projects = false +VAR npc_npc_chen_rapport = 50 // PERSISTENT - Dr. Chen's rapport with agent (0-100) +VAR npc_chen_npc_chen_tech_collaboration = 0 // PERSISTENT - Successful tech collaborations +VAR npc_chen_npc_chen_shared_discoveries = 0 // PERSISTENT - Technical breakthroughs together +VAR npc_chen_npc_chen_personal_conversations = 0 // PERSISTENT - Non-work discussions -// Topic tracking - Phase 2 (Missions 6-10) -VAR discussed_experimental_tech = false -VAR discussed_research_frustrations = false -VAR discussed_field_vs_lab = false -VAR discussed_ethical_tech = false +// Topic tracking - ALL PERSISTENT (never reset) +VAR npc_chen_npc_chen_discussed_tech_philosophy = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_entropy_tech = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_chen_background = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_favorite_projects = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_experimental_tech = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_research_frustrations = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_field_vs_lab = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_ethical_tech = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_dream_projects = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_tech_risks = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_work_life_balance = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_mentorship = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_future_vision = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_friendship_value = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_collaborative_legacy = false // PERSISTENT +VAR npc_chen_npc_chen_discussed_beyond_safetynet = false // PERSISTENT -// Topic tracking - Phase 3 (Missions 11-15) -VAR discussed_dream_projects = false -VAR discussed_tech_risks = false -VAR discussed_work_life_balance = false -VAR discussed_mentorship = false +// Special moments - PERSISTENT +VAR npc_npc_chen_shared_personal_story = false // PERSISTENT +VAR npc_chen_npc_chen_breakthrough_together = false // PERSISTENT +VAR npc_chen_npc_chen_earned_research_partner_status = false // PERSISTENT -// Topic tracking - Phase 4 (Missions 16+) -VAR discussed_future_vision = false -VAR discussed_friendship_value = false -VAR discussed_collaborative_legacy = false -VAR discussed_beyond_safetynet = false +// =========================================== +// GLOBAL VARIABLES (session-only, span NPCs) +// These exist for the current mission only +// Reset when mission ends +// =========================================== -// Special moments -VAR chen_shared_personal_story = false -VAR breakthrough_together = false -VAR earned_research_partner_status = false +VAR total_missions_completed = 0 // GLOBAL - Total missions done (affects all NPCs) +VAR professional_reputation = 0 // GLOBAL - Agent standing (affects all NPCs) -// External variables -EXTERNAL player_name -EXTERNAL current_mission_number +// =========================================== +// LOCAL VARIABLES (this conversation only) +// These only exist during this specific interaction +// Provided by game engine when conversation starts +// =========================================== + +EXTERNAL player_name // LOCAL - Player's agent name +EXTERNAL current_mission_id // LOCAL - Current mission identifier // =========================================== // ENTRY POINT - Conversation Selector // =========================================== === start === -~ missions_with_chen_support = current_mission_number { - - missions_with_chen_support <= 5: + - total_missions_completed <= 5: -> phase_1_hub - - missions_with_chen_support <= 10: + - total_missions_completed <= 10: -> phase_2_hub - - missions_with_chen_support <= 15: + - total_missions_completed <= 15: -> phase_3_hub - - missions_with_chen_support > 15: + - total_missions_completed > 15: -> phase_4_hub } @@ -72,21 +83,21 @@ EXTERNAL current_mission_number === phase_1_hub === -{missions_with_chen_support == 1: +{total_missions_completed == 1: Dr. Chen: Agent {player_name}! Great timing. Just finished calibrating the new sensor array. What can I help you with today? -- chen_rapport >= 60: +- npc_npc_chen_rapport >= 60: Dr. Chen: Oh hey! Got a minute? I've been dying to show someone this new encryption bypass I developed. - else: Dr. Chen: Agent {player_name}. Need tech support? Equipment upgrades? I'm all ears. } -+ {not discussed_tech_philosophy} [Ask about their approach to technology] ++ {not npc_chen_discussed_tech_philosophy} [Ask about their approach to technology] -> tech_philosophy -+ {not discussed_entropy_tech} [Ask about ENTROPY's technology] ++ {not npc_chen_discussed_entropy_tech} [Ask about ENTROPY's technology] -> entropy_tech_analysis -+ {not discussed_chen_background} [Ask about their background] ++ {not npc_chen_discussed_chen_background} [Ask about their background] -> chen_background -+ {not discussed_favorite_projects and chen_rapport >= 55} [Ask about their favorite projects] ++ {not npc_chen_discussed_favorite_projects and npc_chen_rapport >= 55} [Ask about their favorite projects] -> favorite_projects + [That's all for now, thanks] -> conversation_end_phase1 @@ -96,9 +107,9 @@ EXTERNAL current_mission_number // ---------------- === tech_philosophy === -~ discussed_tech_philosophy = true -~ chen_rapport += 8 -~ personal_conversations += 1 +~ npc_chen_discussed_tech_philosophy = true +~ npc_chen_rapport += 8 +~ npc_chen_personal_conversations += 1 Dr. Chen: My approach to tech? *eyes light up* Oh, you've activated lecture mode. Warning issued. @@ -107,24 +118,24 @@ Dr. Chen: Technology is problem-solving. Every system, every tool, every line of Dr. Chen: I don't believe in impossible. I believe in "we haven't figured it out yet." Big difference. Massive difference. * [Say you share that philosophy] - ~ chen_rapport += 15 - ~ tech_collaboration += 1 + ~ npc_chen_rapport += 15 + ~ npc_chen_tech_collaboration += 1 You: I approach field work the same way. No impossible, just unsolved. -> philosophy_shared_mindset * [Ask about their most impossible problem] - ~ chen_rapport += 12 + ~ npc_chen_rapport += 12 You: What's the most "impossible" problem you've solved? -> philosophy_impossible_solved * [Ask if anything is actually impossible] - ~ chen_rapport += 8 + ~ npc_chen_rapport += 8 You: Is anything actually impossible, or is that just giving up? -> philosophy_actual_limits === philosophy_shared_mindset === -~ chen_rapport += 20 -~ tech_collaboration += 1 +~ npc_chen_rapport += 20 +~ npc_chen_tech_collaboration += 1 Dr. Chen: *excited* Exactly! Yes! That's exactly it! @@ -138,12 +149,12 @@ Dr. Chen: That makes my job so much easier. And way more interesting. We're prob Dr. Chen: If you ever want to brainstorm field tech improvements, seriously, come find me. I love collaborative design. -~ chen_rapport += 15 -~ tech_collaboration += 1 +~ npc_chen_rapport += 15 +~ npc_chen_tech_collaboration += 1 -> phase_1_hub === philosophy_impossible_solved === -~ chen_rapport += 18 +~ npc_chen_rapport += 18 Dr. Chen: *grins* Oh man. Okay. So. Three years ago. ENTROPY cell using quantum-encrypted communications. Theoretically unbreakable. Everyone said impossible to intercept. @@ -157,11 +168,11 @@ Dr. Chen: Didn't decrypt the messages. Mapped the network topology. Identified e Dr. Chen: Sometimes impossible just means you're asking the wrong question. -~ chen_rapport += 20 +~ npc_chen_rapport += 20 -> phase_1_hub === philosophy_actual_limits === -~ chen_rapport += 12 +~ npc_chen_rapport += 12 Dr. Chen: *considers seriously* @@ -173,7 +184,7 @@ Dr. Chen: Engineering limits can be overcome with better designs. Budget limits Dr. Chen: So when someone says something's impossible, I ask: "Which kind of impossible?" Usually it's not the physics kind. -~ chen_rapport += 15 +~ npc_chen_rapport += 15 -> phase_1_hub // ---------------- @@ -181,9 +192,9 @@ Dr. Chen: So when someone says something's impossible, I ask: "Which kind of imp // ---------------- === entropy_tech_analysis === -~ discussed_entropy_tech = true -~ chen_rapport += 10 -~ personal_conversations += 1 +~ npc_chen_discussed_entropy_tech = true +~ npc_chen_rapport += 10 +~ npc_chen_personal_conversations += 1 Dr. Chen: ENTROPY's technology. *switches to serious mode, rare for them* @@ -192,24 +203,24 @@ Dr. Chen: They're good. Really good. Uncomfortably good. They're using technique Dr. Chen: Custom malware that adapts in real-time. Exploit chains that target zero-days we didn't know existed. Encryption that suggests access to quantum computing resources. * [Ask how they stay ahead] - ~ chen_rapport += 15 - ~ tech_collaboration += 1 + ~ npc_chen_rapport += 15 + ~ npc_chen_tech_collaboration += 1 You: How do we stay ahead of them? -> entropy_staying_ahead * [Ask if ENTROPY has inside help] - ~ chen_rapport += 12 + ~ npc_chen_rapport += 12 You: Do they have inside help? How else would they have this tech? -> entropy_inside_help * [Ask what worries them most] - ~ chen_rapport += 18 + ~ npc_chen_rapport += 18 You: What worries you most about their capabilities? -> entropy_biggest_worry === entropy_staying_ahead === -~ chen_rapport += 20 -~ tech_collaboration += 1 +~ npc_chen_rapport += 20 +~ npc_chen_tech_collaboration += 1 Dr. Chen: We don't stay ahead. Not consistently. That's the uncomfortable truth. @@ -225,11 +236,11 @@ Dr. Chen: So we focus on resilience. Systems that fail gracefully. Redundant cou Dr. Chen: And we learn from every encounter. Every sample of ENTROPY malware teaches us something. Every compromised system reveals their methods. -~ chen_rapport += 18 +~ npc_chen_rapport += 18 -> phase_1_hub === entropy_inside_help === -~ chen_rapport += 15 +~ npc_chen_rapport += 15 Dr. Chen: *uncomfortable* @@ -245,12 +256,12 @@ Dr. Chen: Netherton's paranoid about information security for good reason. Every Dr. Chen: Sometimes I wonder if someone I trained ended up with ENTROPY. If something I taught them is being used against us. That's a disturbing thought. -~ chen_rapport += 20 -~ chen_shared_personal_story = true +~ npc_chen_rapport += 20 +~ npc_chen_shared_personal_story = true -> phase_1_hub === entropy_biggest_worry === -~ chen_rapport += 25 +~ npc_chen_rapport += 25 Dr. Chen: *very serious* @@ -268,8 +279,8 @@ Dr. Chen: That's why I push so hard on experimental tech. Why I work late. Why I Dr. Chen: Your field work buys us time. Every ENTROPY operation you disrupt is time for me to develop better defenses. Partnership. -~ chen_rapport += 30 -~ tech_collaboration += 2 +~ npc_chen_rapport += 30 +~ npc_chen_tech_collaboration += 2 -> phase_1_hub // ---------------- @@ -277,9 +288,9 @@ Dr. Chen: Your field work buys us time. Every ENTROPY operation you disrupt is t // ---------------- === chen_background === -~ discussed_chen_background = true -~ chen_rapport += 12 -~ personal_conversations += 1 +~ npc_chen_discussed_chen_background = true +~ npc_chen_rapport += 12 +~ npc_chen_personal_conversations += 1 Dr. Chen: My background? *settles in* @@ -290,22 +301,22 @@ Dr. Chen: Was doing academic research. Theoretical mostly. Elegant mathematics. Dr. Chen: Then SAFETYNET showed me what ENTROPY was doing. Real threats. Critical infrastructure at risk. Theory suddenly had immediate application. * [Ask why they left academia] - ~ chen_rapport += 18 + ~ npc_chen_rapport += 18 You: What made you leave academia for field work? -> background_leaving_academia * [Ask if they miss research] - ~ chen_rapport += 12 + ~ npc_chen_rapport += 12 You: Do you miss pure research? -> background_miss_research * [Ask about their specialty] - ~ chen_rapport += 10 + ~ npc_chen_rapport += 10 You: What's your main specialty? -> background_specialty === background_leaving_academia === -~ chen_rapport += 25 +~ npc_chen_rapport += 25 Dr. Chen: Academia is beautiful. Pure research. Pursuing knowledge for its own sake. Publishing discoveries. Teaching students. @@ -321,11 +332,11 @@ Dr. Chen: Plus I get to see my designs actually used. Field agents like you take Dr. Chen: Can't get that from academic publishing. This is applied research at the highest level. -~ chen_rapport += 30 +~ npc_chen_rapport += 30 -> phase_1_hub === background_miss_research === -~ chen_rapport += 18 +~ npc_chen_rapport += 18 Dr. Chen: Sometimes. Yeah. @@ -339,11 +350,11 @@ Dr. Chen: But I publish occasionally. Anonymized research. Can't reveal classifi Dr. Chen: And honestly? Solving real problems is deeply satisfying. Theory is beautiful. Application is meaningful. -~ chen_rapport += 20 +~ npc_chen_rapport += 20 -> phase_1_hub === background_specialty === -~ chen_rapport += 15 +~ npc_chen_rapport += 15 Dr. Chen: Cryptography is my core specialty. Encryption, decryption, secure communications. Breaking codes, building unbreakable codes. @@ -353,7 +364,7 @@ Dr. Chen: SAFETYNET doesn't let you stay narrow. ENTROPY uses every attack vecto Dr. Chen: So I learn constantly. New techniques. New technologies. New threats. It's intellectually exhausting and absolutely exhilarating. -~ chen_rapport += 18 +~ npc_chen_rapport += 18 -> phase_1_hub // ---------------- @@ -361,9 +372,9 @@ Dr. Chen: So I learn constantly. New techniques. New technologies. New threats. // ---------------- === favorite_projects === -~ discussed_favorite_projects = true -~ chen_rapport += 15 -~ personal_conversations += 1 +~ npc_chen_discussed_favorite_projects = true +~ npc_chen_rapport += 15 +~ npc_chen_personal_conversations += 1 Dr. Chen: *lights up immediately* @@ -374,24 +385,24 @@ Dr. Chen: Current favorite: adaptive countermeasure system. Learns from ENTROPY Dr. Chen: Still experimental but showing incredible promise. Detected and blocked three novel attack vectors last month that manual analysis would have missed. * [Express genuine interest] - ~ chen_rapport += 20 - ~ tech_collaboration += 1 + ~ npc_chen_rapport += 20 + ~ npc_chen_tech_collaboration += 1 You: That sounds fascinating. How does the learning system work? -> projects_deep_dive * [Ask about field applications] - ~ chen_rapport += 15 + ~ npc_chen_rapport += 15 You: Could this be deployed for field operations? -> projects_field_application * [Ask what's next] - ~ chen_rapport += 12 + ~ npc_chen_rapport += 12 You: What's your next project after this? -> projects_whats_next === projects_deep_dive === -~ chen_rapport += 30 -~ tech_collaboration += 2 +~ npc_chen_rapport += 30 +~ npc_chen_tech_collaboration += 2 Dr. Chen: *rapid-fire explanation mode activated* @@ -409,14 +420,14 @@ Dr. Chen: ENTROPY develops new malware? First system that encounters it learns. Dr. Chen: I'm really proud of this one. -~ chen_rapport += 35 -~ tech_collaboration += 2 -~ shared_discoveries += 1 +~ npc_chen_rapport += 35 +~ npc_chen_tech_collaboration += 2 +~ npc_chen_shared_discoveries += 1 -> phase_1_hub === projects_field_application === -~ chen_rapport += 22 -~ tech_collaboration += 1 +~ npc_chen_rapport += 22 +~ npc_chen_tech_collaboration += 1 Dr. Chen: *considers* @@ -432,12 +443,12 @@ Dr. Chen: Targeted protection. Smaller footprint. Optimized for the threats you Dr. Chen: We could collaborate on requirements. Your field experience plus my technical design. Could be really effective. -~ chen_rapport += 25 -~ tech_collaboration += 2 +~ npc_chen_rapport += 25 +~ npc_chen_tech_collaboration += 2 -> phase_1_hub === projects_whats_next === -~ chen_rapport += 18 +~ npc_chen_rapport += 18 Dr. Chen: Next project? *grins* @@ -453,7 +464,7 @@ Dr. Chen: Also working on improved sensor miniaturization. Better malware analys Dr. Chen: I might have a focus problem. But all of it's important! How do you prioritize when everything matters? -~ chen_rapport += 20 +~ npc_chen_rapport += 20 -> phase_1_hub // =========================================== @@ -463,21 +474,21 @@ Dr. Chen: I might have a focus problem. But all of it's important! How do you pr === phase_2_hub === -{chen_rapport >= 70: +{npc_chen_rapport >= 70: Dr. Chen: {player_name}! Perfect timing. I just had a breakthrough on that encryption problem we discussed. Want to hear about it? -- chen_rapport >= 60: +- npc_chen_rapport >= 60: Dr. Chen: Hey! Got some time? I could use a field agent's perspective on something. - else: Dr. Chen: Agent {player_name}. What can I help with today? } -+ {not discussed_experimental_tech} [Ask about experimental technology] ++ {not npc_chen_discussed_experimental_tech} [Ask about experimental technology] -> experimental_tech -+ {not discussed_research_frustrations and chen_rapport >= 65} [Ask about research challenges] ++ {not npc_chen_discussed_research_frustrations and npc_chen_rapport >= 65} [Ask about research challenges] -> research_frustrations -+ {not discussed_field_vs_lab} [Ask if they ever want to do field work] ++ {not npc_chen_discussed_field_vs_lab} [Ask if they ever want to do field work] -> field_vs_lab -+ {not discussed_ethical_tech and chen_rapport >= 70} [Ask about ethical boundaries in tech] ++ {not npc_chen_discussed_ethical_tech and npc_chen_rapport >= 70} [Ask about ethical boundaries in tech] -> ethical_tech + [That's all for now] -> conversation_end_phase2 @@ -487,9 +498,9 @@ Dr. Chen: I might have a focus problem. But all of it's important! How do you pr // ---------------- === experimental_tech === -~ discussed_experimental_tech = true -~ chen_rapport += 15 -~ personal_conversations += 1 +~ npc_chen_discussed_experimental_tech = true +~ npc_chen_rapport += 15 +~ npc_chen_personal_conversations += 1 Dr. Chen: *eyes absolutely light up* @@ -504,25 +515,25 @@ Dr. Chen: Active camouflage for network presence. Makes your digital signature l Dr. Chen: Still prototype stage. Works beautifully in lab conditions. Untested in field. Need real-world validation before full deployment. * [Volunteer to field test it] - ~ chen_rapport += 30 - ~ tech_collaboration += 3 + ~ npc_chen_rapport += 30 + ~ npc_chen_tech_collaboration += 3 You: I'll test it. Next high-risk infiltration, let me take it. -> experimental_volunteer_testing * [Ask about the risks] - ~ chen_rapport += 18 + ~ npc_chen_rapport += 18 You: What are the risks if it fails in the field? -> experimental_risks * [Ask how it works] - ~ chen_rapport += 20 + ~ npc_chen_rapport += 20 You: How does the camouflage actually work? -> experimental_how_it_works === experimental_volunteer_testing === -~ chen_rapport += 40 -~ tech_collaboration += 3 -~ breakthrough_together = true +~ npc_chen_rapport += 40 +~ npc_chen_tech_collaboration += 3 +~ npc_chen_breakthrough_together = true Dr. Chen: *stunned* @@ -544,13 +555,13 @@ Dr. Chen: And afterwards—detailed debrief. What worked, what didn't, what need Dr. Chen: Thank you. Seriously. This kind of collaboration is how we build better tools. Field experience plus technical development. -~ chen_rapport += 50 -~ tech_collaboration += 4 -~ earned_research_partner_status = true +~ npc_chen_rapport += 50 +~ npc_chen_tech_collaboration += 4 +~ npc_chen_earned_research_partner_status = true -> phase_2_hub === experimental_risks === -~ chen_rapport += 25 +~ npc_chen_rapport += 25 Dr. Chen: *appreciates the serious question* @@ -568,11 +579,11 @@ Dr. Chen: I won't lie. There's risk. All field operations have risk. This adds a Dr. Chen: Your call. I don't pressure agents to test experimental tech. Has to be voluntary. -~ chen_rapport += 28 +~ npc_chen_rapport += 28 -> phase_2_hub === experimental_how_it_works === -~ chen_rapport += 28 +~ npc_chen_rapport += 28 Dr. Chen: *launches into technical explanation* @@ -594,7 +605,7 @@ Dr. Chen: Real-time adaptive disguise. Changes as you move through different net Dr. Chen: It's elegant. Really elegant. If it works operationally, it's revolutionary. -~ chen_rapport += 32 +~ npc_chen_rapport += 32 -> phase_2_hub // ---------------- @@ -602,9 +613,9 @@ Dr. Chen: It's elegant. Really elegant. If it works operationally, it's revoluti // ---------------- === research_frustrations === -~ discussed_research_frustrations = true -~ chen_rapport += 20 -~ personal_conversations += 1 +~ npc_chen_discussed_research_frustrations = true +~ npc_chen_rapport += 20 +~ npc_chen_personal_conversations += 1 Dr. Chen: *sigh* @@ -617,24 +628,24 @@ Dr. Chen: I propose cutting-edge project. Netherton asks "How does this counter Dr. Chen: Hard to get long-term research funded when threats are immediate. * [Empathize with the frustration] - ~ chen_rapport += 25 - ~ personal_conversations += 1 + ~ npc_chen_rapport += 25 + ~ npc_chen_personal_conversations += 1 You: That sounds incredibly frustrating. Your work is important. -> frustrations_empathy * [Ask how they cope] - ~ chen_rapport += 20 + ~ npc_chen_rapport += 20 You: How do you deal with that frustration? -> frustrations_coping * [Offer to advocate] - ~ chen_rapport += 28 + ~ npc_chen_rapport += 28 You: I could mention your long-term work in mission reports. Show value. -> frustrations_advocacy === frustrations_empathy === -~ chen_rapport += 30 -~ personal_conversations += 1 +~ npc_chen_rapport += 30 +~ npc_chen_personal_conversations += 1 Dr. Chen: *appreciates being heard* @@ -654,12 +665,12 @@ Dr. Chen: So I find ways. Justify long-term research as incremental improvements Dr. Chen: About thirty percent of my "equipment upgrades" are actually experimental research disguised as maintenance. Don't tell Netherton. -~ chen_rapport += 35 -~ chen_shared_personal_story = true +~ npc_chen_rapport += 35 +~ npc_chen_shared_personal_story = true -> phase_2_hub === frustrations_coping === -~ chen_rapport += 28 +~ npc_chen_rapport += 28 Dr. Chen: How do I cope? *thinks* @@ -677,12 +688,12 @@ Dr. Chen: When I'm frustrated about project denial, I think about what agents li Dr. Chen: My frustration is "interesting research got rejected." Your frustration is "almost died in Moscow operation." Perspective helps. -~ chen_rapport += 32 +~ npc_chen_rapport += 32 -> phase_2_hub === frustrations_advocacy === -~ chen_rapport += 40 -~ tech_collaboration += 2 +~ npc_chen_rapport += 40 +~ npc_chen_tech_collaboration += 2 Dr. Chen: *genuinely touched* @@ -698,8 +709,8 @@ Dr. Chen: I build tools for you. For all agents. Your experience drives my resea Dr. Chen: Thank you. Really. This is... this is what collaboration should be. Field and research working together. -~ chen_rapport += 50 -~ tech_collaboration += 3 +~ npc_chen_rapport += 50 +~ npc_chen_tech_collaboration += 3 -> phase_2_hub // ---------------- @@ -707,9 +718,9 @@ Dr. Chen: Thank you. Really. This is... this is what collaboration should be. Fi // ---------------- === field_vs_lab === -~ discussed_field_vs_lab = true -~ chen_rapport += 18 -~ personal_conversations += 1 +~ npc_chen_discussed_field_vs_lab = true +~ npc_chen_rapport += 18 +~ npc_chen_personal_conversations += 1 Dr. Chen: Field work? Me? *laughs* @@ -720,22 +731,22 @@ Dr. Chen: Field work is chaos. Variables I can't control. Physical danger. Impro Dr. Chen: I respect the hell out of what you do. But I'd be terrible at it. * [Say everyone has their role] - ~ chen_rapport += 15 + ~ npc_chen_rapport += 15 You: Everyone has their role. Yours is crucial. -> field_vs_roles * [Encourage them to try] - ~ chen_rapport += 20 + ~ npc_chen_rapport += 20 You: You might surprise yourself. Want to shadow a low-risk operation? -> field_vs_encourage * [Ask if they've ever been in the field] - ~ chen_rapport += 18 + ~ npc_chen_rapport += 18 You: Have you ever done field work? -> field_vs_experience === field_vs_roles === -~ chen_rapport += 20 +~ npc_chen_rapport += 20 Dr. Chen: *nods* @@ -747,11 +758,11 @@ Dr. Chen: SAFETYNET needs both. Partnership. You bring field problems to me. I d Dr. Chen: Perfect division of labor. -~ chen_rapport += 18 +~ npc_chen_rapport += 18 -> phase_2_hub === field_vs_encourage === -~ chen_rapport += 28 +~ npc_chen_rapport += 28 Dr. Chen: *surprised* @@ -765,12 +776,12 @@ Dr. Chen: Low-risk operation, you said? Because I'm not ready for "infiltrate EN Dr. Chen: If you're serious, I'm interested. Could be educational. For both of us—you see technical perspective, I see operational reality. -~ chen_rapport += 35 -~ tech_collaboration += 2 +~ npc_chen_rapport += 35 +~ npc_chen_tech_collaboration += 2 -> phase_2_hub === field_vs_experience === -~ chen_rapport += 25 +~ npc_chen_rapport += 25 Dr. Chen: Once. *slightly traumatic memory* @@ -786,7 +797,7 @@ Dr. Chen: Taught me enormous respect for what you do. And confirmed I belong in Dr. Chen: But it was valuable. Understanding operational constraints. Seeing how tech performs under pressure. Better researcher for having experienced it. -~ chen_rapport += 30 +~ npc_chen_rapport += 30 -> phase_2_hub // ---------------- @@ -794,9 +805,9 @@ Dr. Chen: But it was valuable. Understanding operational constraints. Seeing how // ---------------- === ethical_tech === -~ discussed_ethical_tech = true -~ chen_rapport += 22 -~ personal_conversations += 1 +~ npc_chen_discussed_ethical_tech = true +~ npc_chen_rapport += 22 +~ npc_chen_personal_conversations += 1 Dr. Chen: *gets serious, rare for them* @@ -807,23 +818,23 @@ Dr. Chen: I can build a lot of things. Surveillance tools. Offensive malware. Ex Dr. Chen: Where's the line between defensive security and invasive surveillance? Between necessary tools and dangerous weapons? * [Ask where they draw the line] - ~ chen_rapport += 28 + ~ npc_chen_rapport += 28 You: Where do you draw the line? -> ethical_the_line * [Say it's necessary for the mission] - ~ chen_rapport += 15 + ~ npc_chen_rapport += 15 You: Sometimes we need powerful tools to counter powerful threats. -> ethical_necessary_evil * [Share your own concerns] - ~ chen_rapport += 32 - ~ personal_conversations += 1 + ~ npc_chen_rapport += 32 + ~ npc_chen_personal_conversations += 1 You: I struggle with this too. The power we wield is concerning. -> ethical_shared_concern === ethical_the_line === -~ chen_rapport += 35 +~ npc_chen_rapport += 35 Dr. Chen: *thoughtful* @@ -845,12 +856,12 @@ Dr. Chen: Technology is neutral. But design choices aren't. I try to build tools Dr. Chen: Don't always succeed. But I try. -~ chen_rapport += 40 -~ chen_shared_personal_story = true +~ npc_chen_rapport += 40 +~ npc_chen_shared_personal_story = true -> phase_2_hub === ethical_necessary_evil === -~ chen_rapport += 18 +~ npc_chen_rapport += 18 Dr. Chen: *slight discomfort* @@ -866,12 +877,12 @@ Dr. Chen: Power without ethical constraints becomes abuse. I don't want to build Dr. Chen: So I design with safeguards. Limitations. Oversight requirements. Make the tools effective but not omnipotent. -~ chen_rapport += 20 +~ npc_chen_rapport += 20 -> phase_2_hub === ethical_shared_concern === -~ chen_rapport += 45 -~ personal_conversations += 2 +~ npc_chen_rapport += 45 +~ npc_chen_personal_conversations += 2 Dr. Chen: *relieved* @@ -889,9 +900,9 @@ Dr. Chen: Having field agents who think about ethics—that matters. You're the Dr. Chen: If you ever think I've built something that crosses ethical lines, tell me. Seriously. I need that feedback. -~ chen_rapport += 55 -~ chen_shared_personal_story = true -~ personal_conversations += 2 +~ npc_chen_rapport += 55 +~ npc_chen_shared_personal_story = true +~ npc_chen_personal_conversations += 2 -> phase_2_hub // =========================================== @@ -901,21 +912,21 @@ Dr. Chen: If you ever think I've built something that crosses ethical lines, tel === phase_3_hub === -{chen_rapport >= 85: +{npc_chen_rapport >= 85: Dr. Chen: {player_name}! *genuine excitement* I've been waiting for you. Got something amazing to show you. -- chen_rapport >= 75: +- npc_chen_rapport >= 75: Dr. Chen: Hey! Perfect timing. Want to brainstorm something together? - else: Dr. Chen: Agent {player_name}. What brings you by? } -+ {not discussed_dream_projects and chen_rapport >= 80} [Ask about their dream projects] ++ {not npc_chen_discussed_dream_projects and npc_chen_rapport >= 80} [Ask about their dream projects] -> dream_projects -+ {not discussed_tech_risks and chen_rapport >= 75} [Ask about their biggest fear regarding technology] ++ {not npc_chen_discussed_tech_risks and npc_chen_rapport >= 75} [Ask about their biggest fear regarding technology] -> tech_risks -+ {not discussed_work_life_balance} [Ask how they balance work and life] ++ {not npc_chen_discussed_work_life_balance} [Ask how they balance work and life] -> work_life_balance -+ {not discussed_mentorship and chen_rapport >= 80} [Ask if they mentor others] ++ {not npc_chen_discussed_mentorship and npc_chen_rapport >= 80} [Ask if they mentor others] -> mentorship + [That's all for now] -> conversation_end_phase3 @@ -925,9 +936,9 @@ Dr. Chen: If you ever think I've built something that crosses ethical lines, tel // ---------------- === dream_projects === -~ discussed_dream_projects = true -~ chen_rapport += 30 -~ personal_conversations += 1 +~ npc_chen_discussed_dream_projects = true +~ npc_chen_rapport += 30 +~ npc_chen_personal_conversations += 1 Dr. Chen: *eyes absolutely light up* @@ -940,25 +951,25 @@ Dr. Chen: Second: predictive threat analysis AI. Not reactive security. Proactiv Dr. Chen: Third: *voice gets dreamy* Neuromorphic computing for malware analysis. Brain-inspired processors that recognize threats like human intuition but computer-speed. * [Say you'd help make these real] - ~ chen_rapport += 40 - ~ tech_collaboration += 3 + ~ npc_chen_rapport += 40 + ~ npc_chen_tech_collaboration += 3 You: Let's make these real. What would you need to start? -> dreams_make_real * [Ask which they'd choose first] - ~ chen_rapport += 25 + ~ npc_chen_rapport += 25 You: If you could only pick one, which would it be? -> dreams_pick_one * [Express awe at the vision] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: These are incredible. Your vision is inspiring. -> dreams_inspiring === dreams_make_real === -~ chen_rapport += 55 -~ tech_collaboration += 4 -~ breakthrough_together = true +~ npc_chen_rapport += 55 +~ npc_chen_tech_collaboration += 4 +~ npc_chen_breakthrough_together = true Dr. Chen: *stunned into temporary silence* @@ -980,13 +991,13 @@ Dr. Chen: This is—nobody's ever offered to help advocate for my dream projects Dr. Chen: Thank you. Genuinely. Let's actually do this. Partnership. Your operational advocacy plus my technical vision. -~ chen_rapport += 70 -~ tech_collaboration += 5 -~ earned_research_partner_status = true +~ npc_chen_rapport += 70 +~ npc_chen_tech_collaboration += 5 +~ npc_chen_earned_research_partner_status = true -> phase_3_hub === dreams_pick_one === -~ chen_rapport += 35 +~ npc_chen_rapport += 35 Dr. Chen: *thinks carefully* @@ -1004,11 +1015,11 @@ Dr. Chen: Plus it's achievable. Not science fiction. The mathematics exist. The Dr. Chen: If I could build one thing that protects SAFETYNET for the next fifty years, that's it. -~ chen_rapport += 40 +~ npc_chen_rapport += 40 -> phase_3_hub === dreams_inspiring === -~ chen_rapport += 42 +~ npc_chen_rapport += 42 Dr. Chen: *embarrassed but pleased* @@ -1022,8 +1033,8 @@ Dr. Chen: But I think big picture is important. Incremental improvements matter. Dr. Chen: Having someone who gets excited about the vision—that means a lot. Makes me feel less crazy for dreaming big. -~ chen_rapport += 48 -~ personal_conversations += 1 +~ npc_chen_rapport += 48 +~ npc_chen_personal_conversations += 1 -> phase_3_hub // ---------------- @@ -1031,9 +1042,9 @@ Dr. Chen: Having someone who gets excited about the vision—that means a lot. M // ---------------- === tech_risks === -~ discussed_tech_risks = true -~ chen_rapport += 28 -~ personal_conversations += 1 +~ npc_chen_discussed_tech_risks = true +~ npc_chen_rapport += 28 +~ npc_chen_personal_conversations += 1 Dr. Chen: *gets uncharacteristically serious* @@ -1044,24 +1055,24 @@ Dr. Chen: AI that evolves beyond its parameters. Autonomous systems that make de Dr. Chen: Sounds like science fiction. But we're building increasingly sophisticated systems. At some point, complexity exceeds our understanding. * [Ask if they build safeguards] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: Do you build safeguards against that? -> risks_safeguards * [Ask if it keeps them up at night] - ~ chen_rapport += 35 - ~ personal_conversations += 1 + ~ npc_chen_rapport += 35 + ~ npc_chen_personal_conversations += 1 You: Does this fear keep you up at night? -> risks_sleepless * [Share your own fears] - ~ chen_rapport += 40 - ~ personal_conversations += 2 + ~ npc_chen_rapport += 40 + ~ npc_chen_personal_conversations += 2 You: I worry about that too. The tools we use becoming uncontrollable. -> risks_shared_fear === risks_safeguards === -~ chen_rapport += 40 +~ npc_chen_rapport += 40 Dr. Chen: Constantly. Obsessively. @@ -1079,13 +1090,13 @@ Dr. Chen: So I build containment into everything. Sandboxes. Isolated test envir Dr. Chen: Not perfect. Nothing's perfect. But I try to make failure non-catastrophic. -~ chen_rapport += 45 +~ npc_chen_rapport += 45 -> phase_3_hub === risks_sleepless === -~ chen_rapport += 48 -~ personal_conversations += 2 -~ chen_shared_personal_story = true +~ npc_chen_rapport += 48 +~ npc_chen_personal_conversations += 2 +~ npc_chen_shared_personal_story = true Dr. Chen: *quiet* @@ -1107,13 +1118,13 @@ Dr. Chen: People think I work late because I'm passionate. Sometimes I work late Dr. Chen: Probably need therapy. But at least the tech is as safe as I can make it. -~ chen_rapport += 60 -~ personal_conversations += 3 +~ npc_chen_rapport += 60 +~ npc_chen_personal_conversations += 3 -> phase_3_hub === risks_shared_fear === -~ chen_rapport += 55 -~ personal_conversations += 3 +~ npc_chen_rapport += 55 +~ npc_chen_personal_conversations += 3 Dr. Chen: *relieved to not be alone in this* @@ -1129,8 +1140,8 @@ Dr. Chen: Having you acknowledge this fear—that helps. Reminds me I'm not para Dr. Chen: We're partners in this. You deploy carefully. I design carefully. Together we minimize risks. -~ chen_rapport += 65 -~ personal_conversations += 3 +~ npc_chen_rapport += 65 +~ npc_chen_personal_conversations += 3 -> phase_3_hub // ---------------- @@ -1138,9 +1149,9 @@ Dr. Chen: We're partners in this. You deploy carefully. I design carefully. Toge // ---------------- === work_life_balance === -~ discussed_work_life_balance = true -~ chen_rapport += 20 -~ personal_conversations += 1 +~ npc_chen_discussed_work_life_balance = true +~ npc_chen_rapport += 20 +~ npc_chen_personal_conversations += 1 Dr. Chen: *laughs* @@ -1151,24 +1162,24 @@ Dr. Chen: I'm here constantly. Evenings, weekends. My lab is basically my home. Dr. Chen: But is it work if you love it? This is what I'd be doing even if it wasn't my job. * [Express concern] - ~ chen_rapport += 28 - ~ personal_conversations += 1 + ~ npc_chen_rapport += 28 + ~ npc_chen_personal_conversations += 1 You: That sounds unsustainable. Do you ever take breaks? -> balance_concern * [Say you're the same way] - ~ chen_rapport += 25 + ~ npc_chen_rapport += 25 You: I get it. The mission becomes your life. -> balance_same * [Encourage outside interests] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: What do you do that's not work-related? -> balance_outside === balance_concern === -~ chen_rapport += 38 -~ personal_conversations += 1 +~ npc_chen_rapport += 38 +~ npc_chen_personal_conversations += 1 Dr. Chen: *touched by the concern* @@ -1186,12 +1197,12 @@ Dr. Chen: And when ENTROPY is actively threatening infrastructure, taking breaks Dr. Chen: But... it's nice that you care. Maybe I should try harder to disconnect sometimes. -~ chen_rapport += 45 -~ personal_conversations += 2 +~ npc_chen_rapport += 45 +~ npc_chen_personal_conversations += 2 -> phase_3_hub === balance_same === -~ chen_rapport += 32 +~ npc_chen_rapport += 32 Dr. Chen: *nods* @@ -1201,11 +1212,11 @@ Dr. Chen: People outside SAFETYNET don't understand. "Just don't think about wor Dr. Chen: At least here, everyone gets it. Shared understanding. We're all slightly obsessive about the work. -~ chen_rapport += 30 +~ npc_chen_rapport += 30 -> phase_3_hub === balance_outside === -~ chen_rapport += 38 +~ npc_chen_rapport += 38 Dr. Chen: *thinks hard* @@ -1223,8 +1234,8 @@ Dr. Chen: I should probably develop actual hobbies. Non-technical ones. Maybe ta Dr. Chen: What do you do outside work? Maybe I could learn from your example. -~ chen_rapport += 42 -~ personal_conversations += 1 +~ npc_chen_rapport += 42 +~ npc_chen_personal_conversations += 1 -> phase_3_hub // ---------------- @@ -1232,9 +1243,9 @@ Dr. Chen: What do you do outside work? Maybe I could learn from your example. // ---------------- === mentorship === -~ discussed_mentorship = true -~ chen_rapport += 25 -~ personal_conversations += 1 +~ npc_chen_discussed_mentorship = true +~ npc_chen_rapport += 25 +~ npc_chen_personal_conversations += 1 Dr. Chen: Mentorship? *considers* @@ -1245,22 +1256,22 @@ Dr. Chen: Watching someone grasp complex concept for first time—that moment of Dr. Chen: I try to be the mentor I wish I'd had. Encouraging. Patient. Letting them make mistakes in safe environment. * [Say they'd be excellent mentor] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: You're clearly passionate about teaching. They're lucky to have you. -> mentorship_praise * [Ask about their mentor] - ~ chen_rapport += 25 + ~ npc_chen_rapport += 25 You: Who mentored you? -> mentorship_their_mentor * [Ask what they teach] - ~ chen_rapport += 20 + ~ npc_chen_rapport += 20 You: What's the most important thing you teach them? -> mentorship_what_taught === mentorship_praise === -~ chen_rapport += 42 +~ npc_chen_rapport += 42 Dr. Chen: *embarrassed but pleased* @@ -1274,12 +1285,12 @@ Dr. Chen: But they're teaching me too. Fresh perspectives. Questions I hadn't co Dr. Chen: Best mentorship is mutual learning. -~ chen_rapport += 38 +~ npc_chen_rapport += 38 -> phase_3_hub === mentorship_their_mentor === -~ chen_rapport += 35 -~ personal_conversations += 1 +~ npc_chen_rapport += 35 +~ npc_chen_personal_conversations += 1 Dr. Chen: *nostalgic* @@ -1295,12 +1306,12 @@ Dr. Chen: She passed away three years ago. Cancer. I still find myself wondering Dr. Chen: Try to honor her legacy by mentoring the way she did. Rigorous but encouraging. High standards with genuine support. -~ chen_rapport += 45 -~ chen_shared_personal_story = true +~ npc_chen_rapport += 45 +~ npc_chen_shared_personal_story = true -> phase_3_hub === mentorship_what_taught === -~ chen_rapport += 32 +~ npc_chen_rapport += 32 Dr. Chen: *immediate answer* @@ -1316,7 +1327,7 @@ Dr. Chen: And I teach humility. Technology fails. You will make mistakes. Design Dr. Chen: Arrogance in security research gets people hurt. Stay humble. Stay thorough. Never assume you're the smartest person in the room. -~ chen_rapport += 38 +~ npc_chen_rapport += 38 -> phase_3_hub // =========================================== @@ -1326,21 +1337,21 @@ Dr. Chen: Arrogance in security research gets people hurt. Stay humble. Stay tho === phase_4_hub === -{chen_rapport >= 95: +{npc_chen_rapport >= 95: Dr. Chen: {player_name}! *lights up* I was just thinking about you. Want to see what we've accomplished together? -- chen_rapport >= 85: +- npc_chen_rapport >= 85: Dr. Chen: Hey partner! Got time to collaborate on something? - else: Dr. Chen: {player_name}. What's up? } -+ {not discussed_future_vision and chen_rapport >= 90} [Ask about their vision for the future] ++ {not npc_chen_discussed_future_vision and npc_chen_rapport >= 90} [Ask about their vision for the future] -> future_vision -+ {not discussed_friendship_value and chen_rapport >= 85} [Tell them you value their friendship] ++ {not npc_chen_discussed_friendship_value and npc_chen_rapport >= 85} [Tell them you value their friendship] -> friendship_value -+ {not discussed_collaborative_legacy and chen_rapport >= 90} [Talk about what you've built together] ++ {not npc_chen_discussed_collaborative_legacy and npc_chen_rapport >= 90} [Talk about what you've built together] -> collaborative_legacy -+ {not discussed_beyond_safetynet and chen_rapport >= 88} [Ask what they'd do outside SAFETYNET] ++ {not npc_chen_discussed_beyond_safetynet and npc_chen_rapport >= 88} [Ask what they'd do outside SAFETYNET] -> beyond_safetynet + [That's all for now] -> conversation_end_phase4 @@ -1350,9 +1361,9 @@ Dr. Chen: Arrogance in security research gets people hurt. Stay humble. Stay tho // ---------------- === future_vision === -~ discussed_future_vision = true -~ chen_rapport += 35 -~ personal_conversations += 1 +~ npc_chen_discussed_future_vision = true +~ npc_chen_rapport += 35 +~ npc_chen_personal_conversations += 1 Dr. Chen: *expansive thinking mode* @@ -1363,26 +1374,26 @@ Dr. Chen: Infrastructure so resilient it can't be meaningfully attacked. Securit Dr. Chen: Not naive. Threats will always exist. But we can shift the balance. Make defense stronger than offense. Make protection easier than exploitation. * [Say you'll help build that future] - ~ chen_rapport += 50 - ~ tech_collaboration += 5 + ~ npc_chen_rapport += 50 + ~ npc_chen_tech_collaboration += 5 You: Let's build that future. Together. However long it takes. -> vision_partnership * [Ask if it's achievable] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: Is that actually achievable, or is it an ideal to work toward? -> vision_achievable * [Share your own vision] - ~ chen_rapport += 45 - ~ personal_conversations += 2 + ~ npc_chen_rapport += 45 + ~ npc_chen_personal_conversations += 2 You: I envision a future where agents like me aren't needed. Where the work is done. -> vision_shared === vision_partnership === -~ chen_rapport += 70 -~ tech_collaboration += 6 -~ breakthrough_together = true +~ npc_chen_rapport += 70 +~ npc_chen_tech_collaboration += 6 +~ npc_chen_breakthrough_together = true Dr. Chen: *overwhelmed with emotion* @@ -1404,13 +1415,13 @@ Dr. Chen: I don't just respect you as an agent. I value you as a colleague. As a Dr. Chen: Let's keep changing the world. One breakthrough at a time. -~ chen_rapport += 85 -~ tech_collaboration += 7 -~ personal_conversations += 3 +~ npc_chen_rapport += 85 +~ npc_chen_tech_collaboration += 7 +~ npc_chen_personal_conversations += 3 -> phase_4_hub === vision_achievable === -~ chen_rapport += 40 +~ npc_chen_rapport += 40 Dr. Chen: *honest* @@ -1426,12 +1437,12 @@ Dr. Chen: Twenty years from now? Even higher bar. ENTROPY will need nation-state Dr. Chen: Won't eliminate threats. But we can make them rare. Difficult. Costly. That's the achievable vision. -~ chen_rapport += 48 +~ npc_chen_rapport += 48 -> phase_4_hub === vision_shared === -~ chen_rapport += 60 -~ personal_conversations += 3 +~ npc_chen_rapport += 60 +~ npc_chen_personal_conversations += 3 Dr. Chen: *quiet understanding* @@ -1447,8 +1458,8 @@ Dr. Chen: I feel the same. I love this research. But I'd gladly have it become o Dr. Chen: We're building toward our own obsolescence. There's nobility in that. -~ chen_rapport += 72 -~ personal_conversations += 3 +~ npc_chen_rapport += 72 +~ npc_chen_personal_conversations += 3 -> phase_4_hub // ---------------- @@ -1456,9 +1467,9 @@ Dr. Chen: We're building toward our own obsolescence. There's nobility in that. // ---------------- === friendship_value === -~ discussed_friendship_value = true -~ chen_rapport += 40 -~ personal_conversations += 2 +~ npc_chen_discussed_friendship_value = true +~ npc_chen_rapport += 40 +~ npc_chen_personal_conversations += 2 Dr. Chen: *unexpectedly touched* @@ -1471,24 +1482,24 @@ Dr. Chen: Colleagues, yes. People I respect, absolutely. But actual friends? Peo Dr. Chen: That's rare. * [Say they're important to you] - ~ chen_rapport += 55 - ~ personal_conversations += 3 + ~ npc_chen_rapport += 55 + ~ npc_chen_personal_conversations += 3 You: You're genuinely important to me. Not just as tech support. As a person. -> friendship_important * [Say they deserve more credit] - ~ chen_rapport += 45 + ~ npc_chen_rapport += 45 You: You deserve more recognition. Your work saves lives, including mine. -> friendship_recognition * [Express gratitude] - ~ chen_rapport += 50 + ~ npc_chen_rapport += 50 You: Thank you. For everything you do. The tech, the collaboration, the friendship. -> friendship_gratitude === friendship_important === -~ chen_rapport += 75 -~ personal_conversations += 4 +~ npc_chen_rapport += 75 +~ npc_chen_personal_conversations += 4 Dr. Chen: *overwhelmed* @@ -1508,12 +1519,12 @@ Dr. Chen: Our partnership has been... it's been one of the best parts of working Dr. Chen: Okay, getting too emotional. But. Thank you. For seeing me. For being a friend. -~ chen_rapport += 90 -~ personal_conversations += 5 +~ npc_chen_rapport += 90 +~ npc_chen_personal_conversations += 5 -> phase_4_hub === friendship_recognition === -~ chen_rapport += 62 +~ npc_chen_rapport += 62 Dr. Chen: *embarrassed but pleased* @@ -1527,12 +1538,12 @@ Dr. Chen: Every time you come back from a mission safely—part of that is my te Dr. Chen: Don't need formal recognition. But knowing you appreciate it? That matters more than awards. -~ chen_rapport += 68 +~ npc_chen_rapport += 68 -> phase_4_hub === friendship_gratitude === -~ chen_rapport += 70 -~ personal_conversations += 3 +~ npc_chen_rapport += 70 +~ npc_chen_personal_conversations += 3 Dr. Chen: *quiet appreciation* @@ -1548,7 +1559,7 @@ Dr. Chen: And the friendship has made SAFETYNET feel less lonely. Less like just Dr. Chen: So thank you too. For everything you bring to our partnership. -~ chen_rapport += 78 +~ npc_chen_rapport += 78 -> phase_4_hub // ---------------- @@ -1556,9 +1567,9 @@ Dr. Chen: So thank you too. For everything you bring to our partnership. // ---------------- === collaborative_legacy === -~ discussed_collaborative_legacy = true -~ chen_rapport += 45 -~ personal_conversations += 2 +~ npc_chen_discussed_collaborative_legacy = true +~ npc_chen_rapport += 45 +~ npc_chen_personal_conversations += 2 Dr. Chen: *pulls up holographic display* @@ -1571,25 +1582,25 @@ Dr. Chen: The predictive threat AI? Uses operational patterns you identified. Wo Dr. Chen: We've built something real. Lasting. Technology that protects agents. Infrastructure that counters ENTROPY. * [Say it's incredible legacy] - ~ chen_rapport += 50 - ~ tech_collaboration += 5 + ~ npc_chen_rapport += 50 + ~ npc_chen_tech_collaboration += 5 You: This is incredible. We've genuinely changed SAFETYNET's capabilities. -> legacy_incredible * [Credit their genius] - ~ chen_rapport += 40 + ~ npc_chen_rapport += 40 You: This is your genius. I just provided field perspective. -> legacy_credit_chen * [Emphasize partnership] - ~ chen_rapport += 55 - ~ tech_collaboration += 4 + ~ npc_chen_rapport += 55 + ~ npc_chen_tech_collaboration += 4 You: This only worked because we truly collaborated. Equal partnership. -> legacy_partnership === legacy_incredible === -~ chen_rapport += 68 -~ tech_collaboration += 5 +~ npc_chen_rapport += 68 +~ npc_chen_tech_collaboration += 5 Dr. Chen: *proud* @@ -1605,11 +1616,11 @@ Dr. Chen: And we're not done. More projects in development. More improvements. M Dr. Chen: This legacy we're building—it'll protect agents for decades. Maybe long after we're gone. -~ chen_rapport += 75 +~ npc_chen_rapport += 75 -> phase_4_hub === legacy_credit_chen === -~ chen_rapport += 52 +~ npc_chen_rapport += 52 Dr. Chen: *shakes head* @@ -1625,12 +1636,12 @@ Dr. Chen: This is co-creation. You're not a consultant. You're a partner. Equal Dr. Chen: Own this legacy. You earned it. -~ chen_rapport += 60 +~ npc_chen_rapport += 60 -> phase_4_hub === legacy_partnership === -~ chen_rapport += 75 -~ tech_collaboration += 6 +~ npc_chen_rapport += 75 +~ npc_chen_tech_collaboration += 6 Dr. Chen: *emotional* @@ -1648,8 +1659,8 @@ Dr. Chen: This partnership is my proudest professional achievement. Not the tech Dr. Chen: We've proven field-research collaboration works. We're the model other teams should follow. -~ chen_rapport += 88 -~ tech_collaboration += 7 +~ npc_chen_rapport += 88 +~ npc_chen_tech_collaboration += 7 -> phase_4_hub // ---------------- @@ -1657,9 +1668,9 @@ Dr. Chen: We've proven field-research collaboration works. We're the model other // ---------------- === beyond_safetynet === -~ discussed_beyond_safetynet = true -~ chen_rapport += 35 -~ personal_conversations += 2 +~ npc_chen_discussed_beyond_safetynet = true +~ npc_chen_rapport += 35 +~ npc_chen_personal_conversations += 2 Dr. Chen: *contemplative* @@ -1672,23 +1683,23 @@ Dr. Chen: Or private sector. Tech industry. Build consumer security instead of i Dr. Chen: But honestly? This work is what I'm meant to do. Protecting critical infrastructure. Countering real threats. Making meaningful difference. * [Encourage them to have backup plan] - ~ chen_rapport += 30 + ~ npc_chen_rapport += 30 You: Good to have a backup plan. This work is intense. -> beyond_backup_plan * [Say SAFETYNET is lucky to have them] - ~ chen_rapport += 45 + ~ npc_chen_rapport += 45 You: SAFETYNET is incredibly lucky to have you. Don't lose yourself to it. -> beyond_lucky * [Ask about retirement plans] - ~ chen_rapport += 38 - ~ personal_conversations += 1 + ~ npc_chen_rapport += 38 + ~ npc_chen_personal_conversations += 1 You: Do you think about retirement? Eventual life after this? -> beyond_retirement === beyond_backup_plan === -~ chen_rapport += 40 +~ npc_chen_rapport += 40 Dr. Chen: *nods* @@ -1702,11 +1713,11 @@ Dr. Chen: Maybe teaching. University research. Mentoring next generation without Dr. Chen: But not yet. Still too much work to do. Too many threats to counter. -~ chen_rapport += 42 +~ npc_chen_rapport += 42 -> phase_4_hub === beyond_lucky === -~ chen_rapport += 58 +~ npc_chen_rapport += 58 Dr. Chen: *touched* @@ -1724,13 +1735,13 @@ Dr. Chen: Should probably take your advice. Develop outside interests. Maintain Dr. Chen: Thank you for caring. Not just about my work. About me. -~ chen_rapport += 65 -~ personal_conversations += 2 +~ npc_chen_rapport += 65 +~ npc_chen_personal_conversations += 2 -> phase_4_hub === beyond_retirement === -~ chen_rapport += 50 -~ personal_conversations += 2 +~ npc_chen_rapport += 50 +~ npc_chen_personal_conversations += 2 Dr. Chen: *distant consideration* @@ -1746,8 +1757,8 @@ Dr. Chen: Garden maybe. Always wanted a garden. Completely non-technical. Just p Dr. Chen: Peaceful. After years of fighting cyber threats. Just... peace. -~ chen_rapport += 58 -~ personal_conversations += 2 +~ npc_chen_rapport += 58 +~ npc_chen_personal_conversations += 2 -> phase_4_hub // =========================================== @@ -1756,9 +1767,9 @@ Dr. Chen: Peaceful. After years of fighting cyber threats. Just... peace. === conversation_end_phase3 === -{chen_rapport >= 85: +{npc_chen_rapport >= 85: Dr. Chen: Always energizing talking with you, {player_name}. Let's do this again soon! -- chen_rapport >= 75: +- npc_chen_rapport >= 75: Dr. Chen: Great conversation. Stay safe out there, okay? - else: Dr. Chen: Take care. Let me know if you need anything. @@ -1769,9 +1780,9 @@ Dr. Chen: Peaceful. After years of fighting cyber threats. Just... peace. === conversation_end_phase4 === -{chen_rapport >= 95: +{npc_chen_rapport >= 95: Dr. Chen: *warm smile* Thanks for being such an incredible partner. And friend. Seriously. -- chen_rapport >= 85: +- npc_chen_rapport >= 85: Dr. Chen: Until next time, partner. Keep making me proud out there. - else: Dr. Chen: Good talking. Be safe. @@ -1783,9 +1794,9 @@ Dr. Chen: Peaceful. After years of fighting cyber threats. Just... peace. === conversation_end_phase1 === -{chen_rapport >= 65: +{npc_chen_rapport >= 65: Dr. Chen: Great talking! Let me know if you need anything. Seriously, anytime. -- chen_rapport >= 50: +- npc_chen_rapport >= 50: Dr. Chen: Anytime you need tech support, you know where to find me. - else: Dr. Chen: Alright. Good luck out there. @@ -1796,9 +1807,9 @@ Dr. Chen: Peaceful. After years of fighting cyber threats. Just... peace. === conversation_end_phase2 === -{chen_rapport >= 75: +{npc_chen_rapport >= 75: Dr. Chen: Always a pleasure, {player_name}. Let's collaborate again soon! -- chen_rapport >= 60: +- npc_chen_rapport >= 60: Dr. Chen: Thanks for the chat. Stay safe out there. - else: Dr. Chen: Talk later. Good luck. diff --git a/story_design/ink/haxolottle_ongoing_conversations.ink b/story_design/ink/haxolottle_ongoing_conversations.ink index e2fefa8..6b72ee9 100644 --- a/story_design/ink/haxolottle_ongoing_conversations.ink +++ b/story_design/ink/haxolottle_ongoing_conversations.ink @@ -7,51 +7,63 @@ // Respects Protocol 47-Alpha: No real identity disclosure // =========================================== -// Friendship progression tracking -VAR friendship_level = 0 // 0-100: Overall relationship depth -VAR missions_together = 0 // Counter for how many missions completed -VAR conversations_had = 0 // Total personal conversations -VAR trust_moments = 0 // Times player shared something personal -VAR humor_shared = 0 // Funny moments experienced together -VAR vulnerable_moments = 0 // Times either shared something difficult +// =========================================== +// PERSISTENT VARIABLES +// These MUST be saved/loaded between game sessions +// Your game engine must persist these across ALL missions +// =========================================== -// Conversation topic tracking - Phase 1 (Missions 1-5) -VAR talked_hobbies_general = false -VAR talked_axolotl_obsession = false -VAR talked_music_taste = false -VAR talked_coffee_preferences = false -VAR talked_stress_management = false +VAR npc_haxolottle_npc_haxolottle_friendship_level = 0 // PERSISTENT - Overall relationship depth (0-100) +VAR npc_haxolottle_npc_haxolottle_conversations_had = 0 // PERSISTENT - Total personal conversations +VAR npc_haxolottle_npc_haxolottle_trust_moments = 0 // PERSISTENT - Times player shared something personal +VAR npc_haxolottle_npc_haxolottle_humor_shared = 0 // PERSISTENT - Funny moments experienced together +VAR npc_haxolottle_npc_haxolottle_vulnerable_moments = 0 // PERSISTENT - Times either shared something difficult +VAR npc_haxolottle_npc_haxolottle_player_shared_personal = 0 // PERSISTENT - Count of player vulnerable moments -// Conversation topic tracking - Phase 2 (Missions 6-10) -VAR talked_philosophy_change = false -VAR talked_handler_life = false -VAR talked_field_nostalgia = false -VAR talked_weird_habits = false -VAR talked_favorite_operations = false +// Topic tracking - ALL PERSISTENT (never reset) +VAR npc_haxolottle_npc_haxolottle_talked_hobbies_general = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_axolotl_obsession = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_music_taste = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_coffee_preferences = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_stress_management = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_philosophy_change = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_handler_life = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_field_nostalgia = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_weird_habits = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_favorite_operations = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_fears_anxieties = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_what_if_different = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_meaning_work = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_friendship_boundaries = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_future_dreams = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_identity_burden = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_loneliness_secrecy = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_real_name_temptation = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_after_safetynet = false // PERSISTENT +VAR npc_haxolottle_npc_haxolottle_talked_genuine_friendship = false // PERSISTENT -// Conversation topic tracking - Phase 3 (Missions 11-15) -VAR talked_fears_anxieties = false -VAR talked_what_if_different = false -VAR talked_meaning_work = false -VAR talked_friendship_boundaries = false -VAR talked_future_dreams = false +// Deep personal reveals - PERSISTENT +VAR npc_haxolottle_shared_loss = false // PERSISTENT +VAR npc_haxolottle_shared_doubt = false // PERSISTENT +VAR npc_haxolottle_shared_secret_hobby = false // PERSISTENT -// Conversation topic tracking - Phase 4 (Missions 16+) -VAR talked_identity_burden = false -VAR talked_loneliness_secrecy = false -VAR talked_real_name_temptation = false -VAR talked_after_safetynet = false -VAR talked_genuine_friendship = false +// =========================================== +// GLOBAL VARIABLES (session-only, span NPCs) +// These exist for the current mission only +// Reset when mission ends +// =========================================== -// Deep personal reveals (rare, high friendship) -VAR hax_shared_loss = false -VAR hax_shared_doubt = false -VAR hax_shared_secret_hobby = false -VAR player_shared_personal = 0 // Count of player vulnerable moments +VAR total_missions_completed = 0 // GLOBAL - Total missions done (affects all NPCs) +VAR professional_reputation = 0 // GLOBAL - Agent standing (affects all NPCs) -// External variables -EXTERNAL player_name -EXTERNAL current_mission_number +// =========================================== +// LOCAL VARIABLES (this conversation only) +// These only exist during this specific interaction +// Provided by game engine when conversation starts +// =========================================== + +EXTERNAL player_name // LOCAL - Player's agent name +EXTERNAL current_mission_id // LOCAL - Current mission identifier // =========================================== // ENTRY POINT - Conversation Selector @@ -59,16 +71,15 @@ EXTERNAL current_mission_number === start === // This determines which conversation is available based on progression -~ missions_together = current_mission_number { - - missions_together <= 5: + - total_missions_completed <= 5: -> phase_1_hub - - missions_together <= 10: + - total_missions_completed <= 10: -> phase_2_hub - - missions_together <= 15: + - total_missions_completed <= 15: -> phase_3_hub - - missions_together > 15: + - total_missions_completed > 15: -> phase_4_hub } @@ -79,21 +90,21 @@ EXTERNAL current_mission_number === phase_1_hub === -{missions_together == 1: +{total_missions_completed == 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. - else: Haxolottle: Got a moment? I could use a break from staring at security feeds. } -+ {not talked_hobbies_general} [Ask what they do for fun] ++ {not npc_haxolottle_talked_hobbies_general} [Ask what they do for fun] -> hobbies_general -+ {not talked_axolotl_obsession} [Ask about the axolotl thing] ++ {not npc_haxolottle_talked_axolotl_obsession} [Ask about the axolotl thing] -> axolotl_deep_dive -+ {not talked_music_taste} [Ask what music they listen to] ++ {not npc_haxolottle_talked_music_taste} [Ask what music they listen to] -> music_discussion -+ {not talked_coffee_preferences and talked_hobbies_general} [Talk about coffee/tea preferences] ++ {not npc_haxolottle_talked_coffee_preferences and npc_haxolottle_talked_hobbies_general} [Talk about coffee/tea preferences] -> coffee_chat -+ {not talked_stress_management and friendship_level >= 15} [Ask how they handle stress] ++ {not npc_haxolottle_talked_stress_management and npc_haxolottle_friendship_level >= 15} [Ask how they handle stress] -> stress_management + [That's all for now] -> conversation_end @@ -103,9 +114,9 @@ EXTERNAL current_mission_number // ---------------- === hobbies_general === -~ talked_hobbies_general = true -~ friendship_level += 5 -~ conversations_had += 1 +~ npc_haxolottle_talked_hobbies_general = true +~ npc_haxolottle_friendship_level += 5 +~ npc_haxolottle_conversations_had += 1 Haxolottle: What do I do for fun? Good question. Let's see... @@ -118,23 +129,23 @@ Haxolottle: I also swim. Not competitively or anything, just... swimming. There' Haxolottle: And I tinker with old electronics. Pull apart vintage computers, repair them, sometimes just see how they work. It's methodical. Soothing. Unlike field operations where everything is chaos and improvisation. * [Share that you also read] - ~ friendship_level += 5 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 5 + ~ npc_haxolottle_player_shared_personal += 1 You: I'm a reader too. What kind of sci-fi? -> hobbies_scifi_followup * [Mention you've never been good at swimming] - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 You: I've never been much of a swimmer. More of a land-based person. -> hobbies_swimming_followup * [Ask about the electronics tinkering] - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 You: Electronics tinkering? That's an interesting hobby for someone in our line of work. -> hobbies_electronics_followup === hobbies_scifi_followup === -~ friendship_level += 5 +~ npc_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. @@ -147,19 +158,19 @@ Haxolottle: What about you? What kind of stories do you gravitate toward? * [Mention you like cyberpunk] You: Cyberpunk, mostly. The whole corporate dystopia thing feels... relevant. Haxolottle: *laughs* Yeah, we're kind of living it. Except the corporations aren't our enemy—ENTROPY is. Different dystopia, same aesthetic. - ~ friendship_level += 5 + ~ npc_haxolottle_friendship_level += 5 -> phase_1_hub * [Say you prefer non-fiction] You: Actually, I'm more of a non-fiction person. Technical books, security research. Haxolottle: Ah, the pragmatist. Fair enough. Though I'd argue our job is weird enough to count as science fiction. - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 -> phase_1_hub * [Keep it vague to protect identity] You: Different things, depending on mood. Haxolottle: Keeping it mysterious. I respect that. Protocol 47-Alpha and all. - ~ friendship_level += 2 + ~ npc_haxolottle_friendship_level += 2 -> phase_1_hub === hobbies_swimming_followup === @@ -172,7 +183,7 @@ Haxolottle: I didn't learn until I was an adult, actually. Taught myself after j Haxolottle: Plus, it's one of the few activities where I can guarantee I'm not carrying surveillance devices. Hard to bug a swimsuit. -~ friendship_level += 3 +~ npc_haxolottle_friendship_level += 3 -> phase_1_hub === hobbies_electronics_followup === @@ -187,7 +198,7 @@ Haxolottle: At home? I'm fixing things. Bringing dead hardware back to life. It' Haxolottle: Plus, there's satisfaction in making a thirty-year-old computer boot up again. Persistence over entropy. Both kinds of entropy. -~ friendship_level += 5 +~ npc_haxolottle_friendship_level += 5 -> phase_1_hub // ---------------- @@ -195,9 +206,9 @@ Haxolottle: Plus, there's satisfaction in making a thirty-year-old computer boot // ---------------- === axolotl_deep_dive === -~ talked_axolotl_obsession = true -~ friendship_level += 8 -~ conversations_had += 1 +~ npc_haxolottle_talked_axolotl_obsession = true +~ npc_haxolottle_friendship_level += 8 +~ npc_haxolottle_conversations_had += 1 Haxolottle: Ah, you want the full story behind the axolotl obsession? @@ -212,18 +223,18 @@ Haxolottle: Found this section on axolotls—*Ambystoma mexicanum*. These amazin -> axolotl_operation_connection * [Ask about the biology] - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 You: That's incredible. How do they do that? -> axolotl_biology_detail * [Make a joke] - ~ friendship_level += 5 - ~ humor_shared += 1 + ~ npc_haxolottle_friendship_level += 5 + ~ npc_haxolottle_humor_shared += 1 You: So you're saying you identified with a salamander? -> axolotl_joke_response === axolotl_operation_connection === -~ friendship_level += 5 +~ npc_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. @@ -235,11 +246,11 @@ Haxolottle: In that moment, I stopped being the person I was impersonating and b Haxolottle: The metaphor stuck. Now every operation that goes sideways, I think: What would an axolotl do? And the answer is always: regenerate, adapt, survive. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_1_hub === axolotl_biology_detail === -~ friendship_level += 5 +~ npc_haxolottle_friendship_level += 5 Haxolottle: *lights up with enthusiasm* @@ -255,12 +266,12 @@ Haxolottle: It's like... they have options. Paths. They're not locked into one f Haxolottle: Sorry, I can talk about this for hours. The point is: regeneration, adaptation, flexibility. That's what got me through that operation and a lot of others. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_1_hub === axolotl_joke_response === -~ friendship_level += 8 -~ humor_shared += 1 +~ npc_haxolottle_friendship_level += 8 +~ npc_haxolottle_humor_shared += 1 Haxolottle: *laughs* @@ -276,8 +287,8 @@ Haxolottle: Plus, they smile. Permanently. Look up pictures—axolotls have thes Haxolottle: You're laughing, but I'm serious. The metaphor has kept me sane for years. Sometimes you need something absurd to hold onto in this work. -~ friendship_level += 10 -~ trust_moments += 1 +~ npc_haxolottle_friendship_level += 10 +~ npc_haxolottle_trust_moments += 1 -> phase_1_hub // ---------------- @@ -285,9 +296,9 @@ Haxolottle: You're laughing, but I'm serious. The metaphor has kept me sane for // ---------------- === music_discussion === -~ talked_music_taste = true -~ friendship_level += 5 -~ conversations_had += 1 +~ npc_haxolottle_talked_music_taste = true +~ npc_haxolottle_friendship_level += 5 +~ npc_haxolottle_conversations_had += 1 Haxolottle: Music? Oh, I have eclectic taste. Probably too eclectic. @@ -298,24 +309,24 @@ Haxolottle: For workouts or when I need energy, I go full electronic. Techno, dr Haxolottle: And then sometimes... *looks slightly embarrassed* ...sometimes I listen to nature sounds. Ocean waves. Rain. Thunderstorms. * [Say you also like ambient music] - ~ friendship_level += 5 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 5 + ~ npc_haxolottle_player_shared_personal += 1 You: Ambient music is great for concentration. What's your favorite? -> music_ambient_detail * [Admit you prefer silence while working] - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 You: I actually prefer silence when I'm concentrating. -> music_silence_response * [Tease them about nature sounds] - ~ friendship_level += 5 - ~ humor_shared += 1 + ~ npc_haxolottle_friendship_level += 5 + ~ npc_haxolottle_humor_shared += 1 You: Nature sounds? That's adorably wholesome for a spy. -> music_nature_tease === music_ambient_detail === -~ friendship_level += 5 +~ npc_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. @@ -328,13 +339,13 @@ Haxolottle: What about you? Any favorites? * [Mention specific artists (safe to share)] You: I'm into [vague genre description]. Keeps me focused. Haxolottle: Nice. I might check that out during my next long monitoring session. - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 -> phase_1_hub * [Keep it vague] You: Different things depending on the task. Haxolottle: Adaptive playlist for adaptive operations. I like it. - ~ friendship_level += 2 + ~ npc_haxolottle_friendship_level += 2 -> phase_1_hub === music_silence_response === @@ -345,12 +356,12 @@ Haxolottle: I can't do it, personally. Total silence makes me too aware of my ow Haxolottle: But everyone's different. That's why we have noise-cancelling headphones in the equipment list—Section 8, Article 4. -~ friendship_level += 3 +~ npc_haxolottle_friendship_level += 3 -> phase_1_hub === music_nature_tease === -~ friendship_level += 8 -~ humor_shared += 1 +~ npc_haxolottle_friendship_level += 8 +~ npc_haxolottle_humor_shared += 1 Haxolottle: *laughs* Okay, yes, I know how it sounds. "Elite SAFETYNET handler unwinds with gentle rain sounds." @@ -364,7 +375,7 @@ Haxolottle: Plus, there's something soothing about storms specifically. All that Haxolottle: You can judge me, but I won't stop. I have a whole collection. "Thunderstorm in Forest," "Ocean Waves at Night," "Heavy Rain on Tent." It's a whole genre. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_1_hub // ---------------- @@ -372,9 +383,9 @@ Haxolottle: You can judge me, but I won't stop. I have a whole collection. "Thun // ---------------- === coffee_chat === -~ talked_coffee_preferences = true -~ friendship_level += 4 -~ conversations_had += 1 +~ npc_haxolottle_talked_coffee_preferences = true +~ npc_haxolottle_friendship_level += 4 +~ npc_haxolottle_conversations_had += 1 Haxolottle: Coffee preferences? Oh, we're getting into the important questions now. @@ -385,23 +396,23 @@ Haxolottle: Specifically, I drink green tea. Jasmine green tea when I can get it Haxolottle: Dr. Chen thinks I'm weird for it. They survive on energy drinks and what I'm pretty sure is just pure espresso. * [Say you're also a tea drinker] - ~ friendship_level += 5 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 5 + ~ npc_haxolottle_player_shared_personal += 1 You: Tea for me too. Coffee's too harsh. -> coffee_tea_solidarity * [Defend coffee] - ~ friendship_level += 3 + ~ npc_haxolottle_friendship_level += 3 You: Coffee is essential. I don't trust tea to keep me functional. -> coffee_defense * [Ask about the axolotl mug] - ~ friendship_level += 5 + ~ npc_haxolottle_friendship_level += 5 You: Is that axolotl mug I keep seeing in video calls yours? -> coffee_mug_discussion === coffee_tea_solidarity === -~ friendship_level += 5 +~ npc_haxolottle_friendship_level += 5 Haxolottle: A fellow tea person! Excellent. We're a minority in SAFETYNET. @@ -411,7 +422,7 @@ Haxolottle: If you ever need to decompress after a mission, find that break room Haxolottle: Consider it insider knowledge. Handler privilege. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_1_hub === coffee_defense === @@ -422,12 +433,12 @@ Haxolottle: Different metabolisms, different needs. That's the thing about SAFET Haxolottle: As long as you're alert and functional, I don't care if you're powered by coffee, tea, energy drinks, or pure spite. -~ friendship_level += 3 +~ npc_haxolottle_friendship_level += 3 -> phase_1_hub === coffee_mug_discussion === -~ friendship_level += 8 -~ humor_shared += 1 +~ npc_haxolottle_friendship_level += 8 +~ npc_haxolottle_humor_shared += 1 Haxolottle: *laughs* You noticed! Yes, that's mine. Got it custom-made. @@ -439,7 +450,7 @@ Haxolottle: I have three of them, actually. One for the office, one for home, on Haxolottle: Director Netherton pretends not to notice it in briefings, but I've caught him almost smiling at it once. Progress. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_1_hub // ---------------- @@ -447,10 +458,10 @@ Haxolottle: Director Netherton pretends not to notice it in briefings, but I've // ---------------- === stress_management === -~ talked_stress_management = true -~ friendship_level += 10 -~ conversations_had += 1 -~ vulnerable_moments += 1 +~ npc_haxolottle_talked_stress_management = true +~ npc_haxolottle_friendship_level += 10 +~ npc_haxolottle_conversations_had += 1 +~ npc_haxolottle_vulnerable_moments += 1 Haxolottle: How do I handle stress? That's... a good question. And kind of personal, but I'll answer. @@ -461,25 +472,25 @@ Haxolottle: But honestly? The hardest part is when agents are in danger and I ca Haxolottle: I've had agents get hurt. I've had operations go wrong despite everything we planned. That weight... it doesn't go away. * [Thank them for being honest] - ~ friendship_level += 10 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 10 + ~ npc_haxolottle_player_shared_personal += 1 You: Thank you for trusting me with that. It helps to know you feel it too. -> stress_honest_response * [Share your own stress management] - ~ friendship_level += 12 - ~ player_shared_personal += 2 - ~ trust_moments += 1 + ~ npc_haxolottle_friendship_level += 12 + ~ npc_haxolottle_player_shared_personal += 2 + ~ npc_haxolottle_trust_moments += 1 You: I feel that pressure too. From a different angle, but still there. -> stress_mutual_understanding * [Ask how they cope with the weight] - ~ friendship_level += 8 + ~ npc_haxolottle_friendship_level += 8 You: How do you keep going when it feels like too much? -> stress_coping_methods === stress_honest_response === -~ friendship_level += 10 +~ npc_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. @@ -487,13 +498,13 @@ Haxolottle: The handbook talks about professional distance, but Regulation 299 s Haxolottle: You're not just an asset to me. You're a colleague. Maybe even a friend. And I want you to succeed and be okay. -~ friendship_level += 15 -~ trust_moments += 1 +~ npc_haxolottle_friendship_level += 15 +~ npc_haxolottle_trust_moments += 1 -> phase_1_hub === stress_mutual_understanding === -~ friendship_level += 15 -~ trust_moments += 2 +~ npc_haxolottle_friendship_level += 15 +~ npc_haxolottle_trust_moments += 2 Haxolottle: Yeah. Different angles, same weight. You're worried about getting caught, about the mission failing, about making the wrong call in the moment. @@ -507,12 +518,12 @@ Haxolottle: That's why the axolotl thing matters, I think. Regeneration isn't ju Haxolottle: And we do it together. That makes it bearable. -~ friendship_level += 20 -~ vulnerable_moments += 1 +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_vulnerable_moments += 1 -> phase_1_hub === stress_coping_methods === -~ friendship_level += 10 +~ npc_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. @@ -522,7 +533,7 @@ Haxolottle: The weight is heavy because the work matters. If it was easy, if it Haxolottle: And... *slight smile* ...I have my ridiculous axolotl metaphors. When things get dark, I think about something absurd and resilient, and it helps. -~ friendship_level += 12 +~ npc_haxolottle_friendship_level += 12 -> phase_1_hub // =========================================== @@ -538,17 +549,17 @@ Haxolottle: And... *slight smile* ...I have my ridiculous axolotl metaphors. Whe Haxolottle: Hey, Agent. Want to chat for a bit? I could use a break from the technical stuff. } -+ {not talked_philosophy_change} [Ask how their philosophy has changed over the years] ++ {not npc_haxolottle_talked_philosophy_change} [Ask how their philosophy has changed over the years] -> philosophy_evolution -+ {not talked_handler_life} [Ask what handler life is really like] ++ {not npc_haxolottle_talked_handler_life} [Ask what handler life is really like] -> handler_reality -+ {not talked_field_nostalgia and friendship_level >= 30} [Ask if they miss field work] ++ {not npc_haxolottle_talked_field_nostalgia and npc_haxolottle_friendship_level >= 30} [Ask if they miss field work] -> field_nostalgia -+ {not talked_weird_habits} [Talk about weird habits you've developed] ++ {not npc_haxolottle_talked_weird_habits} [Talk about weird habits you've developed] -> weird_habits_discussion -+ {not talked_favorite_operations and friendship_level >= 35} [Ask about their favorite operations] ++ {not npc_haxolottle_talked_favorite_operations and npc_haxolottle_friendship_level >= 35} [Ask about their favorite operations] -> favorite_operations -+ {friendship_level >= 40 and not hax_shared_loss} [Notice they seem different today] ++ {npc_haxolottle_friendship_level >= 40 and not npc_haxolottle_shared_loss} [Notice they seem different today] -> hax_difficult_day + [That's all for now] -> conversation_end @@ -558,9 +569,9 @@ Haxolottle: And... *slight smile* ...I have my ridiculous axolotl metaphors. Whe // ---------------- === philosophy_evolution === -~ talked_philosophy_change = true -~ friendship_level += 10 -~ conversations_had += 1 +~ npc_haxolottle_talked_philosophy_change = true +~ npc_haxolottle_friendship_level += 10 +~ npc_haxolottle_conversations_had += 1 Haxolottle: How has my philosophy changed? *laughs softly* That's a heavier question than you might think. @@ -575,14 +586,14 @@ Haxolottle: I've seen good people do questionable things for good reasons. I've Haxolottle: The philosophy that's stuck is: Do the work as ethically as you can within impossible constraints. Protect people. Try not to become the thing you're fighting. * [Express agreement] - ~ friendship_level += 10 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 10 + ~ npc_haxolottle_player_shared_personal += 1 You: I've been thinking about that too. The gray areas are... uncomfortable. -> philosophy_gray_areas * [Ask what call haunts them most] - ~ friendship_level += 15 - ~ vulnerable_moments += 1 + ~ npc_haxolottle_friendship_level += 15 + ~ npc_haxolottle_vulnerable_moments += 1 You: Is there one decision that still bothers you? -> philosophy_haunting_decision @@ -591,8 +602,8 @@ Haxolottle: The philosophy that's stuck is: Do the work as ethically as you can -> philosophy_immediate_good === philosophy_gray_areas === -~ friendship_level += 15 -~ trust_moments += 1 +~ npc_haxolottle_friendship_level += 15 +~ npc_haxolottle_trust_moments += 1 Haxolottle: Yeah. Uncomfortable is the word. We're essentially breaking laws under authorization that's classified, targeting people who might be criminals or might be victims. @@ -602,13 +613,13 @@ Haxolottle: But you know what? The fact that you're thinking about it, questioni Haxolottle: The day we stop feeling uncomfortable with the gray areas is the day we've gone too far. -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 -> phase_2_hub === philosophy_haunting_decision === -~ friendship_level += 20 -~ vulnerable_moments += 2 -~ hax_shared_doubt = true +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_vulnerable_moments += 2 +~ npc_haxolottle_shared_doubt = true Haxolottle: *long pause* @@ -627,20 +638,20 @@ Haxolottle: They recovered. They're still with SAFETYNET. But I dream about maki Haxolottle: And I don't know if I would. If I could do it again, with the same information... I might make the same call. That's what haunts me. * [Offer comfort] - ~ friendship_level += 20 - ~ trust_moments += 2 + ~ npc_haxolottle_friendship_level += 20 + ~ npc_haxolottle_trust_moments += 2 You: You made the best call you could with what you knew. That agent knew the risks. -> philosophy_comfort_response * [Share something personal] - ~ friendship_level += 25 - ~ player_shared_personal += 3 - ~ trust_moments += 2 + ~ npc_haxolottle_friendship_level += 25 + ~ npc_haxolottle_player_shared_personal += 3 + ~ npc_haxolottle_trust_moments += 2 You: I carry similar weight. We all do. It doesn't make it easier, but you're not alone in it. -> philosophy_shared_burden === philosophy_comfort_response === -~ friendship_level += 15 +~ npc_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. @@ -648,12 +659,12 @@ Haxolottle: Doesn't make it easier. But it helps to hear it from someone who und Haxolottle: You're a good person, Agent {player_name}. I'm glad we're working together. -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 -> phase_2_hub === philosophy_shared_burden === -~ friendship_level += 25 -~ trust_moments += 3 +~ npc_haxolottle_friendship_level += 25 +~ npc_haxolottle_trust_moments += 3 Haxolottle: *looks genuinely touched* @@ -665,11 +676,11 @@ Haxolottle: I wish we could grab coffee like normal colleagues. Talk about this Haxolottle: And what we have is this. Honest conversations within the boundaries we're given. That's real friendship, I think. Even with the constraints. -~ friendship_level += 30 +~ npc_haxolottle_friendship_level += 30 -> phase_2_hub === philosophy_immediate_good === -~ friendship_level += 8 +~ npc_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. @@ -677,7 +688,7 @@ Haxolottle: The big picture can overwhelm you if you let it. Better to focus on Haxolottle: That's sustainable. I should probably do more of that myself. -~ friendship_level += 8 +~ npc_haxolottle_friendship_level += 8 -> phase_2_hub // ---------------- @@ -685,9 +696,9 @@ Haxolottle: That's sustainable. I should probably do more of that myself. // ---------------- === handler_reality === -~ talked_handler_life = true -~ friendship_level += 12 -~ conversations_had += 1 +~ npc_haxolottle_talked_handler_life = true +~ npc_haxolottle_friendship_level += 12 +~ npc_haxolottle_conversations_had += 1 Haxolottle: Handler life? It's weird. I sit in a comfortable office with good tea and multiple monitors, while you're crawling through server rooms and dodging security. @@ -698,24 +709,24 @@ Haxolottle: From the inside? I'm watching you take risks I used to take. Providi Haxolottle: And when things go wrong, I can only watch. I can't run in and help. Can't pull you out physically. Just... talk. Provide information. Hope it's enough. * [Say you appreciate having them there] - ~ friendship_level += 15 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 15 + ~ npc_haxolottle_player_shared_personal += 1 You: Your voice on comms makes a huge difference. I'm never alone out there. -> handler_appreciation * [Ask if they'd go back to field work] - ~ friendship_level += 10 + ~ npc_haxolottle_friendship_level += 10 You: Would you ever go back to field operations? -> handler_field_return_question * [Acknowledge the invisible stress] - ~ friendship_level += 12 + ~ npc_haxolottle_friendship_level += 12 You: That sounds exhausting in a completely different way than field work. -> handler_stress_acknowledgment === handler_appreciation === -~ friendship_level += 20 -~ trust_moments += 1 +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_trust_moments += 1 Haxolottle: *clearly moved* @@ -725,11 +736,11 @@ Haxolottle: Knowing it makes a difference—that you feel less alone—that's wh Haxolottle: We're a team. You're my eyes and hands in the field. I'm your strategic perspective and support system. Neither of us succeeds without the other. -~ friendship_level += 20 +~ npc_haxolottle_friendship_level += 20 -> phase_2_hub === handler_field_return_question === -~ friendship_level += 12 +~ npc_haxolottle_friendship_level += 12 Haxolottle: *considers carefully* @@ -741,11 +752,11 @@ Haxolottle: Transitioning to handler was regeneration. Different work, same miss Haxolottle: Plus, I'm better at this. Supporting multiple agents, seeing the strategic picture, staying calm under pressure. My field skills were good. My handler skills are better. -~ friendship_level += 12 +~ npc_haxolottle_friendship_level += 12 -> phase_2_hub === handler_stress_acknowledgment === -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 Haxolottle: It really is. Different kind of exhaustion. @@ -757,7 +768,7 @@ Haxolottle: I end the day mentally drained in a way field work never did. But al Haxolottle: Trade-offs. Everything in SAFETYNET is trade-offs. -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 -> phase_2_hub // ---------------- @@ -765,9 +776,9 @@ Haxolottle: Trade-offs. Everything in SAFETYNET is trade-offs. // ---------------- === field_nostalgia === -~ talked_field_nostalgia = true -~ friendship_level += 15 -~ conversations_had += 1 +~ npc_haxolottle_talked_field_nostalgia = true +~ npc_haxolottle_friendship_level += 15 +~ npc_haxolottle_conversations_had += 1 Haxolottle: Do I miss field work? Sometimes. Mostly small moments, not the overall experience. @@ -778,23 +789,23 @@ Haxolottle: I miss the problem-solving in real-time. When you're in the field, e Haxolottle: And honestly? I miss the simplicity. One mission, one objective, handle it and move on. As a handler, I'm juggling multiple agents, operations, responsibilities. It's more complex. * [Ask what they don't miss] - ~ friendship_level += 10 + ~ npc_haxolottle_friendship_level += 10 You: What don't you miss about it? -> field_nostalgia_negative * [Share what you love about field work] - ~ friendship_level += 15 - ~ player_shared_personal += 1 + ~ npc_haxolottle_friendship_level += 15 + ~ npc_haxolottle_player_shared_personal += 1 You: I feel that rush too. That moment when everything clicks. -> field_nostalgia_shared_joy * [Ask about their most memorable infiltration] - ~ friendship_level += 12 + ~ npc_haxolottle_friendship_level += 12 You: What's your most memorable field operation? -> field_nostalgia_memorable_op === field_nostalgia_negative === -~ friendship_level += 15 +~ npc_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. @@ -804,12 +815,12 @@ Haxolottle: And the physical toll. I'm not young anymore. Eight years of irregul Haxolottle: Plus, I hated the paperwork. At least as a handler, I'm the one receiving the reports instead of writing them. -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 -> phase_2_hub === field_nostalgia_shared_joy === -~ friendship_level += 20 -~ trust_moments += 1 +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_trust_moments += 1 Haxolottle: Yes! Exactly! That rush when everything aligns—the timing, the technique, the execution. It's beautiful when it works. @@ -819,11 +830,11 @@ Haxolottle: Different from doing it myself, but still genuine. Like watching a m Haxolottle: That's part of why I love this partnership. You're really good at what you do. Makes my job easier and more satisfying. -~ friendship_level += 20 +~ npc_haxolottle_friendship_level += 20 -> phase_2_hub === field_nostalgia_memorable_op === -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 Haxolottle: Most memorable? Hard to pick one... but there was this operation in Prague. Corporate espionage case, ENTROPY front company. @@ -837,7 +848,7 @@ Haxolottle: Completed the mission with zero suspicion. They thought I was just a Haxolottle: That was the operation that convinced me I'd found the right line of work. Chaos, adaptation, success. Everything I'm good at. -~ friendship_level += 15 +~ npc_haxolottle_friendship_level += 15 -> phase_2_hub // ---------------- @@ -845,10 +856,10 @@ Haxolottle: That was the operation that convinced me I'd found the right line of // ---------------- === weird_habits_discussion === -~ talked_weird_habits = true -~ friendship_level += 10 -~ conversations_had += 1 -~ humor_shared += 1 +~ npc_haxolottle_talked_weird_habits = true +~ npc_haxolottle_friendship_level += 10 +~ npc_haxolottle_conversations_had += 1 +~ npc_haxolottle_humor_shared += 1 Haxolottle: Weird habits? Oh, I've developed plenty in this job. @@ -861,27 +872,27 @@ Haxolottle: And I keep three versions of my origin story ready depending on who Haxolottle: SAFETYNET gets in your head. You start treating normal life like an operation. * [Admit you do the same] - ~ friendship_level += 15 - ~ player_shared_personal += 1 - ~ humor_shared += 1 + ~ npc_haxolottle_friendship_level += 15 + ~ npc_haxolottle_player_shared_personal += 1 + ~ npc_haxolottle_humor_shared += 1 You: I map exits too! And I check reflections for surveillance. -> weird_habits_shared * [Share a different weird habit] - ~ friendship_level += 15 - ~ player_shared_personal += 2 - ~ trust_moments += 1 + ~ npc_haxolottle_friendship_level += 15 + ~ npc_haxolottle_player_shared_personal += 2 + ~ npc_haxolottle_trust_moments += 1 You: I've developed some similar habits... -> weird_habits_player_share * [Ask if they think it's unhealthy] - ~ friendship_level += 8 + ~ npc_haxolottle_friendship_level += 8 You: Is that unhealthy? Should we be concerned? -> weird_habits_healthy_question === weird_habits_shared === -~ friendship_level += 20 -~ humor_shared += 1 +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_humor_shared += 1 Haxolottle: *laughs* Right? It's impossible to turn off! I went to a casual dinner with—well, with someone in my life—and spent the first ten minutes analyzing sight lines and potential surveillance. @@ -891,12 +902,12 @@ Haxolottle: We're professionally paranoid. It's both a survival skill and a mino Haxolottle: But hey, if there ever IS an emergency at a grocery store, we'll be the most prepared people there. Silver lining. -~ friendship_level += 20 +~ npc_haxolottle_friendship_level += 20 -> phase_2_hub === weird_habits_player_share === -~ friendship_level += 20 -~ trust_moments += 2 +~ npc_haxolottle_friendship_level += 20 +~ npc_haxolottle_trust_moments += 2 Haxolottle: Oh, tell me yours. I love hearing what habits other agents develop. It's like a support group for occupational paranoia. @@ -908,11 +919,11 @@ Haxolottle: We should start a handbook addendum: "Common Psychological Adaptatio Haxolottle: Honestly, it helps to know we're all doing this. Makes it feel less like slowly losing our minds and more like... adaptive behavior in a weird profession. -~ friendship_level += 25 +~ npc_haxolottle_friendship_level += 25 -> phase_2_hub === weird_habits_healthy_question === -~ friendship_level += 10 +~ npc_haxolottle_friendship_level += 10 Haxolottle: *considers* Probably somewhere in between healthy professional awareness and mild paranoia. @@ -922,7 +933,7 @@ Haxolottle: I think as long as the habits aren't interfering with normal life, t Haxolottle: But it's worth checking in with yourself. "Is this useful vigilance or is it anxiety?" That line can blur. -~ friendship_level += 10 +~ npc_haxolottle_friendship_level += 10 -> phase_2_hub // Continue with Phase 3 and 4 hubs (later missions)... @@ -936,13 +947,13 @@ Haxolottle: But it's worth checking in with yourself. "Is this useful vigilance === conversation_end === -{conversations_had >= 5 and friendship_level >= 40: +{npc_haxolottle_conversations_had >= 5 and npc_haxolottle_friendship_level >= 40: Haxolottle: I really appreciate these talks, Agent {player_name}. Makes the work feel less isolating. - else: Haxolottle: Alright. Back to the mission. Talk later. } -{friendship_level >= 60: +{npc_haxolottle_friendship_level >= 60: Haxolottle: And hey... you're becoming a real friend. Within the constraints of Protocol 47-Alpha, but a friend nonetheless. } diff --git a/story_design/ink/netherton_ongoing_conversations.ink b/story_design/ink/netherton_ongoing_conversations.ink index d427db5..a4eef2c 100644 --- a/story_design/ink/netherton_ongoing_conversations.ink +++ b/story_design/ink/netherton_ongoing_conversations.ink @@ -7,61 +7,71 @@ // Tracks progression from strict authority to earned mutual respect // =========================================== -// Relationship tracking -VAR netherton_respect = 50 // Director's respect for agent (0-100) -VAR professional_reputation = 0 // Agent's standing in SAFETYNET -VAR missions_with_netherton = 0 // Mission count -VAR serious_conversations = 0 // Formal discussions held -VAR personal_moments = 0 // Rare vulnerable moments +// =========================================== +// PERSISTENT VARIABLES +// These MUST be saved/loaded between game sessions +// Your game engine must persist these across ALL missions +// =========================================== -// Topic tracking - Phase 1 (Missions 1-5) -VAR discussed_handbook = false -VAR discussed_leadership = false -VAR discussed_safetynet_history = false -VAR discussed_expectations = false +VAR npc_npc_netherton_respect = 50 // PERSISTENT - Director's respect for agent (0-100) +VAR npc_netherton_npc_netherton_serious_conversations = 0 // PERSISTENT - Formal discussions held +VAR npc_netherton_npc_netherton_personal_moments = 0 // PERSISTENT - Rare vulnerable moments -// Topic tracking - Phase 2 (Missions 6-10) -VAR discussed_difficult_decisions = false -VAR discussed_agent_development = false -VAR discussed_bureau_politics = false -VAR discussed_field_vs_command = false +// Topic tracking - ALL PERSISTENT (never reset) +VAR npc_netherton_npc_netherton_discussed_handbook = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_leadership = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_safetynet_history = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_expectations = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_difficult_decisions = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_agent_development = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_bureau_politics = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_field_vs_command = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_weight_of_command = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_agent_losses = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_ethical_boundaries = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_personal_cost = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_legacy = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_trust = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_rare_praise = false // PERSISTENT +VAR npc_netherton_npc_netherton_discussed_beyond_protocol = false // PERSISTENT -// Topic tracking - Phase 3 (Missions 11-15) -VAR discussed_weight_of_command = false -VAR discussed_agent_losses = false -VAR discussed_ethical_boundaries = false -VAR discussed_personal_cost = false +// Achievement flags - PERSISTENT +VAR npc_npc_netherton_shared_vulnerability = false // PERSISTENT +VAR npc_netherton_npc_netherton_earned_personal_trust = false // PERSISTENT +VAR npc_netherton_npc_netherton_received_commendation = false // PERSISTENT -// Topic tracking - Phase 4 (Missions 16+) -VAR discussed_legacy = false -VAR discussed_trust = false -VAR discussed_rare_praise = false -VAR discussed_beyond_protocol = false +// =========================================== +// GLOBAL VARIABLES (session-only, span NPCs) +// These exist for the current mission only +// Reset when mission ends +// =========================================== -// Special moments -VAR netherton_shared_vulnerability = false -VAR earned_personal_trust = false -VAR received_commendation = false +VAR total_missions_completed = 0 // GLOBAL - Total missions done (affects all NPCs) +VAR professional_reputation = 0 // GLOBAL - Agent standing (affects all NPCs) -// External variables -EXTERNAL player_name -EXTERNAL current_mission_number +// =========================================== +// LOCAL VARIABLES (this conversation only) +// These only exist during this specific interaction +// Provided by game engine when conversation starts +// =========================================== + +EXTERNAL player_name // LOCAL - Player's agent name +EXTERNAL current_mission_id // LOCAL - Current mission identifier // =========================================== // ENTRY POINT - Conversation Selector // =========================================== === start === -~ missions_with_netherton = current_mission_number { - - missions_with_netherton <= 5: + - total_missions_completed <= 5: -> phase_1_hub - - missions_with_netherton <= 10: + - total_missions_completed <= 10: -> phase_2_hub - - missions_with_netherton <= 15: + - total_missions_completed <= 15: -> phase_3_hub - - missions_with_netherton > 15: + - total_missions_completed > 15: -> phase_4_hub } @@ -72,21 +82,21 @@ EXTERNAL current_mission_number === phase_1_hub === -{missions_with_netherton == 1: +{total_missions_completed == 1: Netherton: Agent {player_name}. I have a few minutes available. Is there something you wish to discuss? -- netherton_respect >= 60: +- npc_npc_netherton_respect >= 60: Netherton: Agent. Your performance has been noted. What can I address for you today? - else: Netherton: Agent {player_name}. You have questions? } -+ {not discussed_handbook} [Ask about the Field Operations Handbook] ++ {not npc_netherton_discussed_handbook} [Ask about the Field Operations Handbook] -> handbook_discussion -+ {not discussed_leadership} [Ask about leadership principles] ++ {not npc_netherton_discussed_leadership} [Ask about leadership principles] -> leadership_discussion -+ {not discussed_safetynet_history} [Ask about SAFETYNET's history] ++ {not npc_netherton_discussed_safetynet_history} [Ask about SAFETYNET's history] -> safetynet_history -+ {not discussed_expectations and netherton_respect >= 55} [Ask what he expects from agents] ++ {not npc_netherton_discussed_expectations and npc_netherton_respect >= 55} [Ask what he expects from agents] -> expectations_discussion + [That will be all, Director] -> conversation_end_phase1 @@ -96,9 +106,9 @@ EXTERNAL current_mission_number // ---------------- === handbook_discussion === -~ discussed_handbook = true -~ netherton_respect += 5 -~ serious_conversations += 1 +~ npc_netherton_discussed_handbook = true +~ npc_netherton_respect += 5 +~ npc_netherton_serious_conversations += 1 Netherton: The Field Operations Handbook. *adjusts glasses slightly* @@ -107,23 +117,23 @@ Netherton: I co-wrote the original edition twenty years ago. I've personally ove Netherton: Agents often mock the handbook. The contradictions, the excessive detail, the seemingly absurd specificity. But every regulation exists for a reason. * [Express genuine interest] - ~ netherton_respect += 10 + ~ npc_netherton_respect += 10 ~ professional_reputation += 1 You: I've been studying it seriously. There's real wisdom in there. -> handbook_appreciation * [Ask about the contradictions] - ~ netherton_respect += 5 + ~ npc_netherton_respect += 5 You: Why are there so many contradictions in it? -> handbook_contradictions * [Admit you find it confusing] - ~ netherton_respect += 3 + ~ npc_netherton_respect += 3 You: I'll be honest, Director—it's overwhelming. -> handbook_honest_confusion === handbook_appreciation === -~ netherton_respect += 15 +~ npc_netherton_respect += 15 Netherton: *brief pause, something that might be surprise* @@ -133,11 +143,11 @@ Netherton: The fact that you're already engaging with it thoughtfully... that sp Netherton: Section 14.7 is particularly relevant to your current assignment level. I recommend thorough review. -~ netherton_respect += 10 +~ npc_netherton_respect += 10 -> phase_1_hub === handbook_contradictions === -~ netherton_respect += 8 +~ npc_netherton_respect += 8 Netherton: An astute observation. The contradictions are not accidents. @@ -147,11 +157,11 @@ Netherton: The handbook provides guidance for contradictory circumstances. Agent Netherton: It's not a rulebook. It's a framework for decision-making under impossible conditions. -~ netherton_respect += 8 +~ npc_netherton_respect += 8 -> phase_1_hub === handbook_honest_confusion === -~ netherton_respect += 5 +~ npc_netherton_respect += 5 Netherton: Understandable. The handbook is not designed for easy consumption. @@ -163,7 +173,7 @@ Netherton: Your handler will guide you on relevant sections for specific situati Netherton: Though I've come close. Not by choice. -~ netherton_respect += 5 +~ npc_netherton_respect += 5 -> phase_1_hub // ---------------- @@ -171,9 +181,9 @@ Netherton: Though I've come close. Not by choice. // ---------------- === leadership_discussion === -~ discussed_leadership = true -~ netherton_respect += 8 -~ serious_conversations += 1 +~ npc_netherton_discussed_leadership = true +~ npc_netherton_respect += 8 +~ npc_netherton_serious_conversations += 1 Netherton: Leadership principles. *straightens papers on desk* @@ -182,13 +192,13 @@ Netherton: I've held command positions for over two decades. Military intelligen Netherton: The core principle remains constant: leadership is responsibility. You are accountable for every person under your command and every outcome of their actions. * [Ask how he handles that weight] - ~ netherton_respect += 12 + ~ npc_netherton_respect += 12 ~ professional_reputation += 1 You: How do you handle that weight? That responsibility? -> leadership_weight * [Ask about his leadership style] - ~ netherton_respect += 5 + ~ npc_netherton_respect += 5 You: How would you describe your leadership style? -> leadership_style @@ -197,7 +207,7 @@ Netherton: The core principle remains constant: leadership is responsibility. Yo -> phase_1_hub === leadership_weight === -~ netherton_respect += 15 +~ npc_netherton_respect += 15 Netherton: *considers the question carefully* @@ -211,12 +221,12 @@ Netherton: The weight never lessens. You simply become stronger at carrying it. Netherton: That you're asking this question suggests you may be suited for leadership yourself. Eventually. -~ netherton_respect += 20 +~ npc_netherton_respect += 20 ~ professional_reputation += 2 -> phase_1_hub === leadership_style === -~ netherton_respect += 8 +~ npc_netherton_respect += 8 Netherton: Structured. Disciplined. By the handbook—because the handbook represents accumulated wisdom from thousands of operations. @@ -228,7 +238,7 @@ Netherton: I demand excellence because the work demands it. Lives depend on our Netherton: But I do not demand perfection. I demand learning. Mistakes are acceptable if they result in growth. Repeated mistakes indicate insufficient attention. -~ netherton_respect += 8 +~ npc_netherton_respect += 8 -> phase_1_hub // ---------------- @@ -236,9 +246,9 @@ Netherton: But I do not demand perfection. I demand learning. Mistakes are accep // ---------------- === safetynet_history === -~ discussed_safetynet_history = true -~ netherton_respect += 5 -~ serious_conversations += 1 +~ npc_netherton_discussed_safetynet_history = true +~ npc_netherton_respect += 5 +~ npc_netherton_serious_conversations += 1 Netherton: SAFETYNET's history. This is not widely documented for security reasons. @@ -249,12 +259,12 @@ Netherton: I joined during the formative years. Helped write operational protoco Netherton: We've evolved from a small group of specialists to a global operation. But the mission remains: protect critical infrastructure from those who would weaponize technology. * [Ask about the early days] - ~ netherton_respect += 10 + ~ npc_netherton_respect += 10 You: What were the early days like? -> history_early_days * [Ask about ENTROPY's emergence] - ~ netherton_respect += 8 + ~ npc_netherton_respect += 8 You: When did ENTROPY become a major threat? -> history_entropy_emergence @@ -263,7 +273,7 @@ Netherton: We've evolved from a small group of specialists to a global operation -> phase_1_hub === history_early_days === -~ netherton_respect += 12 +~ npc_netherton_respect += 12 Netherton: Chaotic. Improvised. We were writing the procedures as we executed operations. @@ -277,11 +287,11 @@ Netherton: But we were building something important. Creating capabilities that Netherton: We still carry that founding mission. Even though the organization has grown, even though operations are more structured—the core purpose remains. -~ netherton_respect += 15 +~ npc_netherton_respect += 15 -> phase_1_hub === history_entropy_emergence === -~ netherton_respect += 10 +~ npc_netherton_respect += 10 Netherton: ENTROPY as an organized network appeared approximately five years ago. Though precursor activities date back further. @@ -293,7 +303,7 @@ Netherton: They adapt quickly. They learn from our countermeasures. They recruit Netherton: Which is why we require agents of your caliber. -~ netherton_respect += 12 +~ npc_netherton_respect += 12 -> phase_1_hub // ---------------- @@ -301,9 +311,9 @@ Netherton: Which is why we require agents of your caliber. // ---------------- === expectations_discussion === -~ discussed_expectations = true -~ netherton_respect += 10 -~ serious_conversations += 1 +~ npc_netherton_discussed_expectations = true +~ npc_netherton_respect += 10 +~ npc_netherton_serious_conversations += 1 Netherton: What I expect from agents. *interlaces fingers, formal posture* @@ -316,23 +326,23 @@ Netherton: Third: Integrity. The power we wield is enormous. The oversight is mi Netherton: Fourth: Growth. Learn from every operation. Improve continuously. Stagnation is failure. * [Promise to meet those standards] - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 ~ professional_reputation += 2 You: I will meet those standards, Director. You have my commitment. -> expectations_commitment * [Ask if you're currently meeting expectations] - ~ netherton_respect += 8 + ~ npc_netherton_respect += 8 You: Am I currently meeting your expectations? -> expectations_current_assessment * [Acknowledge the high bar] - ~ netherton_respect += 5 + ~ npc_netherton_respect += 5 You: Those are high standards. I'll work toward them. -> phase_1_hub === expectations_commitment === -~ netherton_respect += 20 +~ npc_netherton_respect += 20 Netherton: *direct eye contact* @@ -344,16 +354,16 @@ Netherton: Based on your record thus far, I believe you have the capacity to mee Netherton: I expect to see continued progress. Maintain this trajectory. -~ netherton_respect += 15 +~ npc_netherton_respect += 15 ~ professional_reputation += 2 -> phase_1_hub === expectations_current_assessment === -~ netherton_respect += 12 +~ npc_netherton_respect += 12 -{netherton_respect >= 70: +{npc_netherton_respect >= 70: Netherton: You are exceeding expectations for your experience level. Continue this performance. -- netherton_respect >= 55: +- npc_netherton_respect >= 55: Netherton: You are meeting standards. There is room for improvement, but your trajectory is positive. - else: Netherton: You are adequate. Adequate is insufficient for SAFETYNET's needs. Improvement is required. @@ -361,7 +371,7 @@ Netherton: I expect to see continued progress. Maintain this trajectory. Netherton: Specific areas for development will be addressed in formal performance reviews. But overall... *brief pause* ...you show promise. -~ netherton_respect += 12 +~ npc_netherton_respect += 12 -> phase_1_hub // =========================================== @@ -371,21 +381,21 @@ Netherton: Specific areas for development will be addressed in formal performanc === phase_2_hub === -{netherton_respect >= 70: +{npc_netherton_respect >= 70: Netherton: Agent {player_name}. Your continued excellent performance has been noted. What do you wish to discuss? -- netherton_respect >= 60: +- npc_netherton_respect >= 60: Netherton: Agent. I have time for a brief discussion. - else: Netherton: Agent {player_name}. What requires attention? } -+ {not discussed_difficult_decisions} [Ask about making difficult command decisions] ++ {not npc_netherton_discussed_difficult_decisions} [Ask about making difficult command decisions] -> difficult_decisions -+ {not discussed_agent_development} [Ask about agent development] ++ {not npc_netherton_discussed_agent_development} [Ask about agent development] -> agent_development -+ {not discussed_bureau_politics and netherton_respect >= 65} [Ask about SAFETYNET politics] ++ {not npc_netherton_discussed_bureau_politics and npc_netherton_respect >= 65} [Ask about SAFETYNET politics] -> bureau_politics -+ {not discussed_field_vs_command and netherton_respect >= 60} [Ask if he misses field work] ++ {not npc_netherton_discussed_field_vs_command and npc_netherton_respect >= 60} [Ask if he misses field work] -> field_vs_command + [That will be all, Director] -> conversation_end_phase2 @@ -395,9 +405,9 @@ Netherton: Specific areas for development will be addressed in formal performanc // ---------------- === difficult_decisions === -~ discussed_difficult_decisions = true -~ netherton_respect += 15 -~ serious_conversations += 1 +~ npc_netherton_discussed_difficult_decisions = true +~ npc_netherton_respect += 15 +~ npc_netherton_serious_conversations += 1 Netherton: Difficult command decisions. *removes glasses, cleans them methodically* @@ -412,24 +422,24 @@ Netherton: I authorized an extraction that cost us intelligence assets, burned o Netherton: But I brought our agent home alive. The mission failed. The agent lived. I chose the agent. * [Say you would have done the same] - ~ netherton_respect += 20 + ~ npc_netherton_respect += 20 ~ professional_reputation += 2 You: I would have made the same choice, Director. -> difficult_agree * [Ask how he lives with such decisions] - ~ netherton_respect += 18 - ~ personal_moments += 1 + ~ npc_netherton_respect += 18 + ~ npc_netherton_personal_moments += 1 You: How do you live with decisions like that? -> difficult_living_with * [Thank him for the honesty] - ~ netherton_respect += 10 + ~ npc_netherton_respect += 10 You: Thank you for sharing that. It helps to know the weight you carry. -> phase_2_hub === difficult_agree === -~ netherton_respect += 25 +~ npc_netherton_respect += 25 ~ professional_reputation += 3 Netherton: *looks at you with something approaching approval* @@ -442,12 +452,12 @@ Netherton: That you understand the value of that choice... that suggests you hav Netherton: Remember that conviction when you face similar decisions. Because you will. Leadership guarantees it. -~ netherton_respect += 20 +~ npc_netherton_respect += 20 -> phase_2_hub === difficult_living_with === -~ netherton_respect += 25 -~ personal_moments += 1 +~ npc_netherton_respect += 25 +~ npc_netherton_personal_moments += 1 Netherton: You don't. Not comfortably. @@ -463,8 +473,8 @@ Netherton: I keep that letter in my desk. Read it when I doubt whether the choic Netherton: That's how you live with difficult decisions. You remember why you made them. -~ netherton_respect += 30 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 30 +~ npc_netherton_shared_vulnerability = true -> phase_2_hub // ---------------- @@ -472,9 +482,9 @@ Netherton: That's how you live with difficult decisions. You remember why you ma // ---------------- === agent_development === -~ discussed_agent_development = true -~ netherton_respect += 12 -~ serious_conversations += 1 +~ npc_netherton_discussed_agent_development = true +~ npc_netherton_respect += 12 +~ npc_netherton_serious_conversations += 1 Netherton: Agent development is central to SAFETYNET's effectiveness. You are all high-capability individuals. My role is to refine that capability into excellence. @@ -483,25 +493,25 @@ Netherton: I review every agent's performance quarterly. Identify strengths to l Netherton: Your development has been... *consults memory* ...notably consistent. Steady improvement across technical and operational metrics. * [Ask for specific feedback] - ~ netherton_respect += 18 + ~ npc_netherton_respect += 18 ~ professional_reputation += 2 You: What specific areas should I focus on improving? -> development_specific_feedback * [Ask about his training philosophy] - ~ netherton_respect += 10 + ~ npc_netherton_respect += 10 You: What's your philosophy on training agents? -> development_philosophy * [Express appreciation] - ~ netherton_respect += 5 + ~ npc_netherton_respect += 5 You: I appreciate you investing in our development. -> phase_2_hub === development_specific_feedback === -~ netherton_respect += 22 +~ npc_netherton_respect += 22 -{netherton_respect >= 75: +{npc_netherton_respect >= 75: Netherton: Your technical skills are excellent. Your judgment under pressure has improved significantly. Field craft is developing appropriately. Netherton: Focus on strategic thinking. You excel at tactical execution. Now develop the capacity to see three moves ahead. Anticipate consequences beyond immediate objectives. @@ -512,16 +522,16 @@ Netherton: Your development has been... *consults memory* ...notably consistent. Netherton: You're on track to become one of SAFETYNET's premier agents. Maintain this trajectory. - ~ netherton_respect += 25 + ~ npc_netherton_respect += 25 ~ professional_reputation += 3 -- netherton_respect >= 60: +- npc_netherton_respect >= 60: Netherton: Technical competence is solid. Decision-making is sound. Operational performance meets standards. Netherton: Develop deeper strategic awareness. Understand the broader context of operations. How your missions connect to organizational objectives. Netherton: Increase your initiative. Don't wait for instructions when the correct action is clear. Trust your judgment more. - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 ~ professional_reputation += 1 - else: Netherton: You meet minimum standards. That is insufficient for advancement. @@ -530,13 +540,13 @@ Netherton: Your development has been... *consults memory* ...notably consistent. Netherton: Review handbook sections 8 through 12. Study after-action reports from successful operations. Learn from excellence. - ~ netherton_respect += 8 + ~ npc_netherton_respect += 8 } -> phase_2_hub === development_philosophy === -~ netherton_respect += 15 +~ npc_netherton_respect += 15 Netherton: Train for the worst case. When operations go smoothly, any agent can succeed. Excellence is demonstrated when everything goes wrong. @@ -550,7 +560,7 @@ Netherton: Some agents resent my methods. Call me harsh. But those agents are al Netherton: Your survival is worth more than your comfort. -~ netherton_respect += 18 +~ npc_netherton_respect += 18 -> phase_2_hub // ---------------- @@ -558,9 +568,9 @@ Netherton: Your survival is worth more than your comfort. // ---------------- === bureau_politics === -~ discussed_bureau_politics = true -~ netherton_respect += 12 -~ serious_conversations += 1 +~ npc_netherton_discussed_bureau_politics = true +~ npc_netherton_respect += 12 +~ npc_netherton_serious_conversations += 1 Netherton: *visible distaste* @@ -571,24 +581,24 @@ Netherton: I despise organizational politics. But ignoring politics is professio Netherton: The CYBER-PHYSICAL division competes with INTELLIGENCE, ANALYSIS, and SPECIAL OPERATIONS for resources. We succeed because we deliver results. * [Ask about inter-division conflicts] - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 You: Are there serious conflicts between divisions? -> politics_conflicts * [Ask how to navigate politics as an agent] - ~ netherton_respect += 18 + ~ npc_netherton_respect += 18 ~ professional_reputation += 2 You: How should agents like me navigate organizational politics? -> politics_agent_navigation * [Express sympathy for the burden] - ~ netherton_respect += 10 - ~ personal_moments += 1 + ~ npc_netherton_respect += 10 + ~ npc_netherton_personal_moments += 1 You: That must be exhausting on top of operational responsibilities. -> politics_burden === politics_conflicts === -~ netherton_respect += 18 +~ npc_netherton_respect += 18 Netherton: Conflicts are constant. INTELLIGENCE believes their analysis should drive operations. SPECIAL OPS believes their combat capabilities are underutilized. ANALYSIS believes everyone ignores their risk assessments. @@ -598,11 +608,11 @@ Netherton: Two months ago, SPECIAL OPS attempted to take over a cyber infiltrati Netherton: I shut it down. Made enemies. The operation succeeded. Results matter more than relationships. -~ netherton_respect += 15 +~ npc_netherton_respect += 15 -> phase_2_hub === politics_agent_navigation === -~ netherton_respect += 25 +~ npc_netherton_respect += 25 ~ professional_reputation += 3 Netherton: *approving look* @@ -621,13 +631,13 @@ Netherton: Fourth: Understand that I handle divisional politics. Your role is ex Netherton: You show leadership potential. As you advance, politics becomes unavoidable. Learn the skills now. But never let politics compromise operational integrity. -~ netherton_respect += 30 +~ npc_netherton_respect += 30 ~ professional_reputation += 3 -> phase_2_hub === politics_burden === -~ netherton_respect += 18 -~ personal_moments += 1 +~ npc_netherton_respect += 18 +~ npc_netherton_personal_moments += 1 Netherton: *brief surprise at the empathy* @@ -647,8 +657,8 @@ Netherton: So I attend the meetings. I play the political games. I do what's nec Netherton: Thank you for recognizing the burden. Few do. -~ netherton_respect += 25 -~ personal_moments += 1 +~ npc_netherton_respect += 25 +~ npc_netherton_personal_moments += 1 -> phase_2_hub // ---------------- @@ -656,9 +666,9 @@ Netherton: Thank you for recognizing the burden. Few do. // ---------------- === field_vs_command === -~ discussed_field_vs_command = true -~ netherton_respect += 15 -~ serious_conversations += 1 +~ npc_netherton_discussed_field_vs_command = true +~ npc_netherton_respect += 15 +~ npc_netherton_serious_conversations += 1 Netherton: *long pause, considering the question* @@ -669,25 +679,25 @@ Netherton: Transitioned to command because SAFETYNET needed leadership. Because Netherton: Do I miss field work? *removes glasses, sets them aside* * [Wait for him to continue] - ~ netherton_respect += 20 - ~ personal_moments += 1 + ~ npc_netherton_respect += 20 + ~ npc_netherton_personal_moments += 1 You: *remain silent, giving him space* -> field_nostalgia * [Say you'd miss it in his position] - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 You: I imagine I would miss it. The directness of field work. -> field_understanding * [Ask what he misses most] - ~ netherton_respect += 18 - ~ personal_moments += 1 + ~ npc_netherton_respect += 18 + ~ npc_netherton_personal_moments += 1 You: What do you miss most about field operations? -> field_what_he_misses === field_nostalgia === -~ netherton_respect += 25 -~ personal_moments += 1 +~ npc_netherton_respect += 25 +~ npc_netherton_personal_moments += 1 Netherton: *appreciates the silence* @@ -703,12 +713,12 @@ Netherton: But I'm better suited to command. I can build systems that enable doz Netherton: So I carry the weight. Because it's where I can do the most good. -~ netherton_respect += 30 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 30 +~ npc_netherton_shared_vulnerability = true -> phase_2_hub === field_understanding === -~ netherton_respect += 22 +~ npc_netherton_respect += 22 Netherton: Precisely. The directness. The unambiguous nature of field success or failure. @@ -718,12 +728,12 @@ Netherton: Command success is measured over years. Did I develop the right agent Netherton: The uncertainty is... challenging. -~ netherton_respect += 20 +~ npc_netherton_respect += 20 -> phase_2_hub === field_what_he_misses === -~ netherton_respect += 25 -~ personal_moments += 1 +~ npc_netherton_respect += 25 +~ npc_netherton_personal_moments += 1 Netherton: *considers carefully* @@ -743,9 +753,9 @@ Netherton: I have subordinates. Colleagues. Not... friends. Not anymore. Netherton: But that's the price of command. Acceptable trade for the impact I can have at this level. -~ netherton_respect += 35 -~ netherton_shared_vulnerability = true -~ personal_moments += 2 +~ npc_netherton_respect += 35 +~ npc_netherton_shared_vulnerability = true +~ npc_netherton_personal_moments += 2 -> phase_2_hub // =========================================== @@ -755,21 +765,21 @@ Netherton: But that's the price of command. Acceptable trade for the impact I ca === phase_3_hub === -{netherton_respect >= 80: +{npc_netherton_respect >= 80: Netherton: Agent {player_name}. *almost warmth* Your continued excellence is appreciated. What's on your mind? -- netherton_respect >= 70: +- npc_netherton_respect >= 70: Netherton: Agent. I have time for a substantive discussion. - else: Netherton: Agent {player_name}. What do you need? } -+ {not discussed_weight_of_command and netherton_respect >= 75} [Ask about the weight of command] ++ {not npc_netherton_discussed_weight_of_command and npc_netherton_respect >= 75} [Ask about the weight of command] -> weight_of_command -+ {not discussed_agent_losses and netherton_respect >= 70} [Ask how he handles losing agents] ++ {not npc_netherton_discussed_agent_losses and npc_netherton_respect >= 70} [Ask how he handles losing agents] -> agent_losses -+ {not discussed_ethical_boundaries and netherton_respect >= 70} [Ask about ethical boundaries] ++ {not npc_netherton_discussed_ethical_boundaries and npc_netherton_respect >= 70} [Ask about ethical boundaries] -> ethical_boundaries -+ {not discussed_personal_cost and netherton_respect >= 75} [Ask about the personal cost of the work] ++ {not npc_netherton_discussed_personal_cost and npc_netherton_respect >= 75} [Ask about the personal cost of the work] -> personal_cost + [That will be all, Director] -> conversation_end_phase3 @@ -779,9 +789,9 @@ Netherton: But that's the price of command. Acceptable trade for the impact I ca // ---------------- === weight_of_command === -~ discussed_weight_of_command = true -~ netherton_respect += 20 -~ serious_conversations += 1 +~ npc_netherton_discussed_weight_of_command = true +~ npc_netherton_respect += 20 +~ npc_netherton_serious_conversations += 1 Netherton: The weight of command. *sets down whatever he was working on* @@ -792,26 +802,26 @@ Netherton: Every mission I authorize might get someone killed. Every operational Netherton: I review casualty statistics. I write letters to families—classified letters that can't explain what their loved one was actually doing. I attend memorials for agents whose names can't be on the memorial. * [Ask how he carries that weight] - ~ netherton_respect += 25 - ~ personal_moments += 1 + ~ npc_netherton_respect += 25 + ~ npc_netherton_personal_moments += 1 You: How do you carry that weight without breaking? -> weight_carrying_it * [Say you're starting to understand] - ~ netherton_respect += 20 + ~ npc_netherton_respect += 20 ~ professional_reputation += 2 You: I'm starting to understand what command would mean. The responsibility. -> weight_understanding * [Express respect for his strength] - ~ netherton_respect += 18 + ~ npc_netherton_respect += 18 You: The fact that you carry it shows remarkable strength. -> weight_respect === weight_carrying_it === -~ netherton_respect += 30 -~ personal_moments += 1 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 30 +~ npc_netherton_personal_moments += 1 +~ npc_netherton_shared_vulnerability = true Netherton: *long pause* @@ -831,12 +841,12 @@ Netherton: You carry it by remembering it's not about you. It's about the missio Netherton: And some days that's enough. Other days you just carry it anyway. -~ netherton_respect += 40 -~ personal_moments += 2 +~ npc_netherton_respect += 40 +~ npc_netherton_personal_moments += 2 -> phase_3_hub === weight_understanding === -~ netherton_respect += 28 +~ npc_netherton_respect += 28 ~ professional_reputation += 3 Netherton: *approving look* @@ -853,12 +863,12 @@ Netherton: When the time comes, if you choose command, I'll support your advance Netherton: But don't rush it. Develop your capabilities fully. Command will still be there when you're ready. -~ netherton_respect += 35 +~ npc_netherton_respect += 35 ~ professional_reputation += 4 -> phase_3_hub === weight_respect === -~ netherton_respect += 25 +~ npc_netherton_respect += 25 Netherton: *slight discomfort at the compliment* @@ -866,8 +876,8 @@ Netherton: It's not strength. It's duty. The role requires it. So I do it. Netherton: But... thank you. Leadership can be isolating. Acknowledgment is... appreciated. -~ netherton_respect += 20 -~ personal_moments += 1 +~ npc_netherton_respect += 20 +~ npc_netherton_personal_moments += 1 -> phase_3_hub // ---------------- @@ -875,10 +885,10 @@ Netherton: But... thank you. Leadership can be isolating. Acknowledgment is... a // ---------------- === agent_losses === -~ discussed_agent_losses = true -~ netherton_respect += 25 -~ serious_conversations += 1 -~ personal_moments += 1 +~ npc_netherton_discussed_agent_losses = true +~ npc_netherton_respect += 25 +~ npc_netherton_serious_conversations += 1 +~ npc_netherton_personal_moments += 1 Netherton: *very long pause, considering whether to discuss this* @@ -897,24 +907,24 @@ Netherton: Agent Wu. Deep cover in ENTROPY cell. Cover was compromised. We never Netherton: I remember all eleven names. All their final missions. All the choices I made that put them in those situations. * [Say they knew the risks] - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 You: They knew the risks when they took the assignment. They chose this. -> losses_they_chose * [Ask if he blames himself] - ~ netherton_respect += 30 - ~ personal_moments += 2 + ~ npc_netherton_respect += 30 + ~ npc_netherton_personal_moments += 2 You: Do you blame yourself? -> losses_blame * [Remain silent, let him continue] - ~ netherton_respect += 25 - ~ personal_moments += 1 + ~ npc_netherton_respect += 25 + ~ npc_netherton_personal_moments += 1 You: *silent respect* -> losses_silence === losses_they_chose === -~ netherton_respect += 20 +~ npc_netherton_respect += 20 Netherton: They did. You're correct. Every agent volunteers. Every agent understands the stakes. @@ -926,13 +936,13 @@ Netherton: Their choice to serve doesn't absolve my duty to bring them home. Whe Netherton: Yes. They chose this. But I chose to send them. Both things are true. -~ netherton_respect += 18 +~ npc_netherton_respect += 18 -> phase_3_hub === losses_blame === -~ netherton_respect += 40 -~ personal_moments += 2 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 40 +~ npc_netherton_personal_moments += 2 +~ npc_netherton_shared_vulnerability = true Netherton: *removes glasses, sets them aside carefully* @@ -956,14 +966,14 @@ Netherton: So yes. I blame myself. Whether or not the blame is rational. It's mi Netherton: Thank you for asking directly. Few people do. -~ netherton_respect += 50 -~ personal_moments += 3 -~ earned_personal_trust = true +~ npc_netherton_respect += 50 +~ npc_netherton_personal_moments += 3 +~ npc_netherton_earned_personal_trust = true -> phase_3_hub === losses_silence === -~ netherton_respect += 35 -~ personal_moments += 2 +~ npc_netherton_respect += 35 +~ npc_netherton_personal_moments += 2 Netherton: *appreciates the silence* @@ -979,8 +989,8 @@ Netherton: I believe remembering is the minimum duty we owe them. They gave ever Netherton: And we try to ensure their sacrifice wasn't wasted. That SAFETYNET remains worth dying for. -~ netherton_respect += 40 -~ personal_moments += 2 +~ npc_netherton_respect += 40 +~ npc_netherton_personal_moments += 2 -> phase_3_hub // ---------------- @@ -988,9 +998,9 @@ Netherton: And we try to ensure their sacrifice wasn't wasted. That SAFETYNET re // ---------------- === ethical_boundaries === -~ discussed_ethical_boundaries = true -~ netherton_respect += 22 -~ serious_conversations += 1 +~ npc_netherton_discussed_ethical_boundaries = true +~ npc_netherton_respect += 22 +~ npc_netherton_serious_conversations += 1 Netherton: Ethical boundaries in our work. *steeples fingers* @@ -1001,23 +1011,23 @@ Netherton: The handbook provides guidelines. But ultimately, individual agents m Netherton: I've made choices I regret. Authorized operations that were legally justified but morally questionable. Pursued outcomes that benefited the mission but harmed innocents. * [Ask where he draws the line] - ~ netherton_respect += 25 + ~ npc_netherton_respect += 25 You: Where do you draw the line? What's absolutely off limits? -> ethics_the_line * [Ask about moral compromise] - ~ netherton_respect += 22 + ~ npc_netherton_respect += 22 ~ professional_reputation += 2 You: How do you handle moral compromises the work requires? -> ethics_compromise * [Say some things are worth the cost] - ~ netherton_respect += 15 + ~ npc_netherton_respect += 15 You: Some things are worth the moral cost. Protecting infrastructure saves lives. -> ethics_worth_it === ethics_the_line === -~ netherton_respect += 30 +~ npc_netherton_respect += 30 Netherton: *considers very carefully* @@ -1033,12 +1043,12 @@ Netherton: Personal gain. We serve the mission. Not ourselves. The moment we use Netherton: Those are my lines. I enforce them absolutely. Agents who cross those boundaries are removed. No exceptions. No second chances. -~ netherton_respect += 35 +~ npc_netherton_respect += 35 -> phase_3_hub === ethics_compromise === -~ netherton_respect += 30 -~ personal_moments += 1 +~ npc_netherton_respect += 30 +~ npc_netherton_personal_moments += 1 Netherton: *long pause* @@ -1060,13 +1070,13 @@ Netherton: Some days that feels like enough. Other days it feels like self-servi Netherton: The uncertainty is... probably healthy. The moment I become comfortable with moral compromise is the moment I should resign. -~ netherton_respect += 40 -~ personal_moments += 2 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 40 +~ npc_netherton_personal_moments += 2 +~ npc_netherton_shared_vulnerability = true -> phase_3_hub === ethics_worth_it === -~ netherton_respect += 20 +~ npc_netherton_respect += 20 Netherton: *slight frown* @@ -1080,7 +1090,7 @@ Netherton: Stay vigilant about your ethical boundaries. Question your choices. A Netherton: The work is worth doing. That doesn't mean anything we do in service of it is justified. -~ netherton_respect += 12 +~ npc_netherton_respect += 12 -> phase_3_hub // ---------------- @@ -1088,10 +1098,10 @@ Netherton: The work is worth doing. That doesn't mean anything we do in service // ---------------- === personal_cost === -~ discussed_personal_cost = true -~ netherton_respect += 28 -~ serious_conversations += 1 -~ personal_moments += 1 +~ npc_netherton_discussed_personal_cost = true +~ npc_netherton_respect += 28 +~ npc_netherton_serious_conversations += 1 +~ npc_netherton_personal_moments += 1 Netherton: The personal cost of this work. *looks out window* @@ -1102,25 +1112,25 @@ Netherton: I have no family. Marriage failed within three years—couldn't talk Netherton: Few friends outside the agency. Civilian friendships are... difficult. Can't discuss what occupies most of my waking thoughts. Can't explain the stress. Can't share the experiences that define me. * [Express sympathy] - ~ netherton_respect += 18 - ~ personal_moments += 1 + ~ npc_netherton_respect += 18 + ~ npc_netherton_personal_moments += 1 You: That's a heavy price to pay. -> cost_sympathy * [Ask if he regrets it] - ~ netherton_respect += 25 - ~ personal_moments += 2 + ~ npc_netherton_respect += 25 + ~ npc_netherton_personal_moments += 2 You: Do you regret it? The sacrifices? -> cost_regrets * [Ask if it was worth it] - ~ netherton_respect += 20 + ~ npc_netherton_respect += 20 You: Was it worth the cost? -> cost_worth_it === cost_sympathy === -~ netherton_respect += 25 -~ personal_moments += 1 +~ npc_netherton_respect += 25 +~ npc_netherton_personal_moments += 1 Netherton: *slight acknowledgment* @@ -1132,13 +1142,13 @@ Netherton: Some agents manage better balance. Families. Hobbies. Lives outside t Netherton: I never achieved that balance. Perhaps never tried hard enough. The work always came first. -~ netherton_respect += 22 +~ npc_netherton_respect += 22 -> phase_3_hub === cost_regrets === -~ netherton_respect += 35 -~ personal_moments += 2 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 35 +~ npc_netherton_personal_moments += 2 +~ npc_netherton_shared_vulnerability = true Netherton: *removes glasses, rare vulnerability* @@ -1160,13 +1170,13 @@ Netherton: So... regrets? Yes. But I'd likely make the same choices again. The w Netherton: Feels like enough. Most days. -~ netherton_respect += 50 -~ personal_moments += 3 -~ earned_personal_trust = true +~ npc_netherton_respect += 50 +~ npc_netherton_personal_moments += 3 +~ npc_netherton_earned_personal_trust = true -> phase_3_hub === cost_worth_it === -~ netherton_respect += 28 +~ npc_netherton_respect += 28 Netherton: *considers carefully* @@ -1184,8 +1194,8 @@ Netherton: My personal happiness has... less clear value. The math suggests the Netherton: Though I sometimes suspect I only believe that because accepting the alternative would be unbearable. -~ netherton_respect += 32 -~ personal_moments += 1 +~ npc_netherton_respect += 32 +~ npc_netherton_personal_moments += 1 -> phase_3_hub // =========================================== @@ -1195,21 +1205,21 @@ Netherton: Though I sometimes suspect I only believe that because accepting the === phase_4_hub === -{netherton_respect >= 90: +{npc_netherton_respect >= 90: Netherton: {player_name}. *uses first name, extremely rare* We should talk. -- netherton_respect >= 80: +- npc_netherton_respect >= 80: Netherton: Agent {player_name}. I value your perspective. What's on your mind? - else: Netherton: Agent. I have time. } -+ {not discussed_legacy and netherton_respect >= 85} [Ask about his legacy] ++ {not npc_netherton_discussed_legacy and npc_netherton_respect >= 85} [Ask about his legacy] -> legacy_discussion -+ {not discussed_trust and netherton_respect >= 80} [Ask if he trusts you] ++ {not npc_netherton_discussed_trust and npc_netherton_respect >= 80} [Ask if he trusts you] -> trust_discussion -+ {not discussed_rare_praise and netherton_respect >= 85} [Ask for his honest assessment of you] ++ {not npc_netherton_discussed_rare_praise and npc_netherton_respect >= 85} [Ask for his honest assessment of you] -> rare_praise -+ {not discussed_beyond_protocol and netherton_respect >= 90} [Ask about life beyond protocols] ++ {not npc_netherton_discussed_beyond_protocol and npc_netherton_respect >= 90} [Ask about life beyond protocols] -> beyond_protocol + [That will be all, Director] -> conversation_end_phase4 @@ -1219,10 +1229,10 @@ Netherton: Though I sometimes suspect I only believe that because accepting the // ---------------- === legacy_discussion === -~ discussed_legacy = true -~ netherton_respect += 30 -~ serious_conversations += 1 -~ personal_moments += 1 +~ npc_netherton_discussed_legacy = true +~ npc_netherton_respect += 30 +~ npc_netherton_serious_conversations += 1 +~ npc_netherton_personal_moments += 1 Netherton: My legacy. *slight surprise at the question* @@ -1233,25 +1243,25 @@ Netherton: But operational systems aren't really legacy. They'll be revised. Rep Netherton: The agents I've developed—that's legacy. People like you. Capable operators who'll serve for decades after I retire. * [Say he's had profound impact] - ~ netherton_respect += 35 + ~ npc_netherton_respect += 35 ~ professional_reputation += 3 You: You've had profound impact on everyone who's worked under your command. That's meaningful legacy. -> legacy_impact * [Ask what he wants his legacy to be] - ~ netherton_respect += 30 - ~ personal_moments += 2 + ~ npc_netherton_respect += 30 + ~ npc_netherton_personal_moments += 2 You: What do you want your legacy to be? -> legacy_wanted * [Ask if legacy matters to him] - ~ netherton_respect += 25 + ~ npc_netherton_respect += 25 You: Does legacy matter to you? -> legacy_matters === legacy_impact === -~ netherton_respect += 45 -~ personal_moments += 2 +~ npc_netherton_respect += 45 +~ npc_netherton_personal_moments += 2 Netherton: *rare visible emotion* @@ -1265,14 +1275,14 @@ Netherton: But agents I've developed have gone on to lead divisions. Run success Netherton: If that's my legacy, I can accept it. The work continues beyond me. Better because of the foundation we built. -~ netherton_respect += 50 -~ personal_moments += 2 -~ earned_personal_trust = true +~ npc_netherton_respect += 50 +~ npc_netherton_personal_moments += 2 +~ npc_netherton_earned_personal_trust = true -> phase_4_hub === legacy_wanted === -~ netherton_respect += 40 -~ personal_moments += 2 +~ npc_netherton_respect += 40 +~ npc_netherton_personal_moments += 2 Netherton: *long pause, genuinely considering* @@ -1286,13 +1296,13 @@ Netherton: And... *rare vulnerability* ...I want to have mattered. To have made Netherton: Probably too much to hope for. But that's what I want. -~ netherton_respect += 45 -~ personal_moments += 3 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 45 +~ npc_netherton_personal_moments += 3 +~ npc_netherton_shared_vulnerability = true -> phase_4_hub === legacy_matters === -~ netherton_respect += 35 +~ npc_netherton_respect += 35 Netherton: *considers* @@ -1302,7 +1312,7 @@ Netherton: But yes. It matters. I'm human enough to want my life's work to have Netherton: Perhaps that's vanity. But it's honest vanity. -~ netherton_respect += 30 +~ npc_netherton_respect += 30 -> phase_4_hub // ---------------- @@ -1310,10 +1320,10 @@ Netherton: Perhaps that's vanity. But it's honest vanity. // ---------------- === trust_discussion === -~ discussed_trust = true -~ netherton_respect += 35 -~ serious_conversations += 1 -~ personal_moments += 2 +~ npc_netherton_discussed_trust = true +~ npc_netherton_respect += 35 +~ npc_netherton_serious_conversations += 1 +~ npc_netherton_personal_moments += 2 Netherton: *direct look, evaluating* @@ -1328,24 +1338,24 @@ Netherton: I trust you to execute operations I authorize. To make sound decision Netherton: And... *rare admission* ...I trust you with information I don't share with most agents. You've earned that. * [Ask what earned that trust] - ~ netherton_respect += 40 + ~ npc_netherton_respect += 40 ~ professional_reputation += 4 You: What earned that trust? -> trust_what_earned * [Say you trust him too] - ~ netherton_respect += 45 - ~ personal_moments += 3 + ~ npc_netherton_respect += 45 + ~ npc_netherton_personal_moments += 3 You: I trust you too, Director. Completely. -> trust_mutual * [Thank him for the trust] - ~ netherton_respect += 30 + ~ npc_netherton_respect += 30 You: That means a great deal. Thank you. -> phase_4_hub === trust_what_earned === -~ netherton_respect += 50 +~ npc_netherton_respect += 50 ~ professional_reputation += 4 Netherton: Consistent excellent performance. But more than that—consistent excellent judgment. @@ -1362,15 +1372,15 @@ Netherton: And you've engaged with me as a person, not just as authority. Asked Netherton: That combination—competence, ethics, thoughtfulness, humanity—that earns trust. -~ netherton_respect += 60 +~ npc_netherton_respect += 60 ~ professional_reputation += 5 -~ earned_personal_trust = true +~ npc_netherton_earned_personal_trust = true -> phase_4_hub === trust_mutual === -~ netherton_respect += 55 -~ personal_moments += 4 -~ earned_personal_trust = true +~ npc_netherton_respect += 55 +~ npc_netherton_personal_moments += 4 +~ npc_netherton_earned_personal_trust = true Netherton: *visible emotion, rare for him* @@ -1390,9 +1400,9 @@ Netherton: I will continue to earn that trust. To make decisions worthy of it. T Netherton: You're becoming the kind of agent I hoped to develop. The kind SAFETYNET needs. I'm... proud. Of your development. -~ netherton_respect += 70 -~ personal_moments += 5 -~ received_commendation = true +~ npc_netherton_respect += 70 +~ npc_netherton_personal_moments += 5 +~ npc_netherton_received_commendation = true -> phase_4_hub // ---------------- @@ -1400,13 +1410,13 @@ Netherton: You're becoming the kind of agent I hoped to develop. The kind SAFETY // ---------------- === rare_praise === -~ discussed_rare_praise = true -~ netherton_respect += 40 -~ serious_conversations += 1 +~ npc_netherton_discussed_rare_praise = true +~ npc_netherton_respect += 40 +~ npc_netherton_serious_conversations += 1 Netherton: My honest assessment. *sets aside work, gives full attention* -{netherton_respect >= 95: +{npc_netherton_respect >= 95: Netherton: You are among the finest agents I've commanded in twenty-three years with SAFETYNET. Netherton: Your technical skills are exceptional. Your judgment is sound. Your ethics are intact despite pressures that corrupt many agents. @@ -1419,11 +1429,11 @@ Netherton: My honest assessment. *sets aside work, gives full attention* Netherton: I'm honored to have commanded you. Genuinely. - ~ netherton_respect += 60 + ~ npc_netherton_respect += 60 ~ professional_reputation += 5 - ~ received_commendation = true + ~ npc_netherton_received_commendation = true -- netherton_respect >= 85: +- npc_netherton_respect >= 85: Netherton: You are an excellent agent. Top tier performance across all metrics. Netherton: Your capabilities continue to develop. Your judgment improves with each operation. You're on track for significant advancement. @@ -1434,9 +1444,9 @@ Netherton: My honest assessment. *sets aside work, gives full attention* Netherton: Continue this trajectory and you'll have a distinguished career. I'm confident in that assessment. - ~ netherton_respect += 45 + ~ npc_netherton_respect += 45 ~ professional_reputation += 4 - ~ received_commendation = true + ~ npc_netherton_received_commendation = true - else: Netherton: You are a solid, reliable agent. You meet standards and occasionally exceed them. @@ -1445,18 +1455,18 @@ Netherton: My honest assessment. *sets aside work, gives full attention* Netherton: I'm satisfied with your performance and optimistic about your continued development. - ~ netherton_respect += 30 + ~ npc_netherton_respect += 30 ~ professional_reputation += 2 } * [Express gratitude] You: Thank you, Director. That means everything coming from you. - ~ netherton_respect += 20 + ~ npc_netherton_respect += 20 -> phase_4_hub * [Promise to continue earning his confidence] You: I'll continue working to earn that assessment. You have my commitment. - ~ netherton_respect += 25 + ~ npc_netherton_respect += 25 ~ professional_reputation += 2 -> phase_4_hub @@ -1465,10 +1475,10 @@ Netherton: My honest assessment. *sets aside work, gives full attention* // ---------------- === beyond_protocol === -~ discussed_beyond_protocol = true -~ netherton_respect += 45 -~ serious_conversations += 1 -~ personal_moments += 3 +~ npc_netherton_discussed_beyond_protocol = true +~ npc_netherton_respect += 45 +~ npc_netherton_serious_conversations += 1 +~ npc_netherton_personal_moments += 3 Netherton: Life beyond protocols. *removes glasses, rare informal gesture* @@ -1479,26 +1489,26 @@ Netherton: But protocols don't cover everything. The handbook doesn't address... Netherton: How to maintain humanity while executing inhumane operations. How to care for agents while sending them into danger. How to balance mission success against personal cost. * [Ask what he does beyond the handbook] - ~ netherton_respect += 50 - ~ personal_moments += 4 + ~ npc_netherton_respect += 50 + ~ npc_netherton_personal_moments += 4 You: What guides you when the handbook doesn't have answers? -> beyond_what_guides * [Ask if he has life outside SAFETYNET] - ~ netherton_respect += 40 - ~ personal_moments += 3 + ~ npc_netherton_respect += 40 + ~ npc_netherton_personal_moments += 3 You: Do you have life outside SAFETYNET? Beyond the work? -> beyond_outside_life * [Say some things can't be protocolized] - ~ netherton_respect += 35 + ~ npc_netherton_respect += 35 You: Some things can't be reduced to protocols. The human judgment is what matters. -> beyond_human_judgment === beyond_what_guides === -~ netherton_respect += 60 -~ personal_moments += 4 -~ netherton_shared_vulnerability = true +~ npc_netherton_respect += 60 +~ npc_netherton_personal_moments += 4 +~ npc_netherton_shared_vulnerability = true Netherton: *long pause, genuine vulnerability* @@ -1518,14 +1528,14 @@ Netherton: And sometimes... *rare admission* ...I ask myself what agents like yo Netherton: That's not in the handbook. But it's what guides me when protocols aren't enough. -~ netherton_respect += 70 -~ personal_moments += 5 -~ earned_personal_trust = true +~ npc_netherton_respect += 70 +~ npc_netherton_personal_moments += 5 +~ npc_netherton_earned_personal_trust = true -> phase_4_hub === beyond_outside_life === -~ netherton_respect += 50 -~ personal_moments += 4 +~ npc_netherton_respect += 50 +~ npc_netherton_personal_moments += 4 Netherton: *slight bitter smile* @@ -1547,12 +1557,12 @@ Netherton: Maintain balance better than I did. Have life outside the agency. Don Netherton: You're talented enough that the work will demand everything if you allow it. Don't. Preserve some part of yourself the agency doesn't own. -~ netherton_respect += 55 -~ personal_moments += 4 +~ npc_netherton_respect += 55 +~ npc_netherton_personal_moments += 4 -> phase_4_hub === beyond_human_judgment === -~ netherton_respect += 45 +~ npc_netherton_respect += 45 Netherton: Precisely. *approving* @@ -1564,7 +1574,7 @@ Netherton: That's why agent selection is critical. Why I invest so heavily in de Netherton: The fact that you understand that—that protocols are tools, not replacements for thinking—that's part of why you're effective. -~ netherton_respect += 50 +~ npc_netherton_respect += 50 -> phase_4_hub // =========================================== @@ -1573,9 +1583,9 @@ Netherton: The fact that you understand that—that protocols are tools, not rep === conversation_end_phase1 === -{netherton_respect >= 70: +{npc_netherton_respect >= 70: Netherton: Acceptable performance continues, Agent {player_name}. Dismissed. -- netherton_respect >= 55: +- npc_netherton_respect >= 55: Netherton: Carry on, Agent. - else: Netherton: Dismissed. @@ -1586,9 +1596,9 @@ Netherton: The fact that you understand that—that protocols are tools, not rep === conversation_end_phase2 === -{netherton_respect >= 75: +{npc_netherton_respect >= 75: Netherton: You're developing well, Agent. Continue this trajectory. -- netherton_respect >= 60: +- npc_netherton_respect >= 60: Netherton: Satisfactory. Dismissed. - else: Netherton: That will be all. @@ -1599,9 +1609,9 @@ Netherton: The fact that you understand that—that protocols are tools, not rep === conversation_end_phase3 === -{netherton_respect >= 85: +{npc_netherton_respect >= 85: Netherton: Agent {player_name}. *rare warmth* Your service is valued. Genuinely. -- netherton_respect >= 75: +- npc_netherton_respect >= 75: Netherton: Excellent work continues. Carry on, Agent. - else: Netherton: Dismissed, Agent. @@ -1612,9 +1622,9 @@ Netherton: The fact that you understand that—that protocols are tools, not rep === conversation_end_phase4 === -{netherton_respect >= 95: +{npc_netherton_respect >= 95: Netherton: {player_name}. *uses first name* It's been an honor working with you. Until next time. -- netherton_respect >= 85: +- npc_netherton_respect >= 85: Netherton: Thank you for your time, Agent. And for your service. - else: Netherton: That will be all.