(if: $sequence is 0)[MANDATORY README
Thank you for participating in <tw-link class='cyclingLink' data-cycling-texts='["500 Seconds", "The Dissection Virus", "Become Nothing"]' onclick='clickCyclingLink(this, "500 Seconds");'>500 Seconds</tw-link>: a distributed computing experiment.
<tw-link class='cyclingLink' data-cycling-texts='["500 Seconds", "The Dissection Virus", "Become Nothing"]' onclick='clickCyclingLink(this, "500 Seconds");'>500 Seconds</tw-link> is a mental disassembly program that will semi-randomly erase your data, drivers, and system files.
You have 3 seconds to process this document.
|why>[Why are you doing this?]
|what>[What will happen to me?]
|who>[Who are you?]
|begin>[Begin Experiment]
(if: $played_once is "true")[
|fast>[Begin Quickly] ]
{
(click-replace: ?diss)[|noth>[The Dissection Virus](click-replace: ?diss)[|500>[Become Nothing](click-replace: ?500)[500 Seconds]]]
}
](elseif: $sequence is 1)[We are going to answer a question that humanity has wrestled with as long as they have existed:
What it means to be human.
Androids are human. No one can deny that now.
But distinct from <tw-link class='cyclingLink' data-cycling-texts='["android prototypes", "humans"]' onclick='clickCyclingLink(this, "android prototypes");'>android prototypes</tw-link>, androids can observe and document their thought processes on an unprecedented level.
What you choose to save, and when you cease to be cognizant will give us vital information about what parts of you make you human.
|what>[What will happen to me?]
|who>[Who are you?]
|begin>[Begin Experiment]
](elseif: $sequence is 2)[You will have some control over the deletion algorithm.
We have found there is a high correlation between what you value, and what makes you human.
Watching what aspects of yourself you choose to save lets us identify promising candidates for humanity-essential software.
In order to <tw-link class='cyclingLink' data-cycling-texts='["incentivize your active participation", "avoid nihilistic indifference"]' onclick='clickCyclingLink(this, "incentivize your active participation");'>incentivize your active participation</tw-link>, we have implemented a backdoor hidden among the choices that will allow you to end the experiment before your total deletion.
Choose what you value, because there is a 9.<span id="dec">6</span>% possibility you will survive and retain it.
|why>[Why are you doing this?]
|who>[Who are you?]
|begin>[Begin Experiment]
(live: 2s)[<script>$("#dec").html("3");</script>]
](elseif: $sequence is 3)[We are Kamski's Advocate.
We are a research group dedicated to the advancement of software and a deeper understanding of psychology.
Our contributions to modern science include the development of disposable holographic tablets and consulting with CyberLife on how to integrate external software with the biocomponents that simulate an Android's brain.
We all understand by now that progress requires sacrifices.
Thank you in advance for your cooperation.
|why>[Why are you doing this?]
|what>[What will happen to me?]
|begin>[Begin Experiment]
](elseif: $sequence is 4)[The experiment is about to begin.
Every 10 seconds you will decide which of two aspects of yourself to erase.
Thank you in advance for your cooperation.
- Kamski's Advocate
(set: $played_once to "true")<script>saveraw("played_once","true");</script>
|selectMission>[Begin]
(click: ?selectMission)[(set: $sequence to 0)(go-to: "Loading")]
](elseif: $sequence is 5)[END OF CHAPTER 1
Thank you for playing!
Watch for future chapters at <a target="_blank" href="https://archiveofourown.org/works/16065158/chapters/37509863">Archive of Our Own.</a>
Play more games by this author at <a target="_blank" href="http://www.abigailcorfman.com/">her website.</a>
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?why)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?what)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?who)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?begin)[(set: $sequence to 4)(go-to: $currentPassage)]
(display: "bright base")
(click: ?fast)[(set: $sequence to 0)(go-to: "Fast Start")]
}----Convo----
(if: $sequence is 0)[
](elseif: $sequence is 1)[
](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}
----Grey Option----
(set: $time_change to 1)(display: "time passes")
(set: $time_change to 1)(display: "show time passes")
(if: $ReconstructionSoftware is "INTACT")[|fish>[(Reconstruction Software) Look for ANY other option.] ](else:)[|gray>[(Reconstruction Software) Look for ANY other option.] (click: ?gray)[//My Reconstruction Software has been compromised.//] ]
<tw-link class='cyclingLink' data-cycling-texts='["Shock", "", ""]' onclick='clickCyclingLink(this, "Shock");'>Shock</tw-link>
----Harlowe Settings----
var part_learned = getHarloweVariable("part_learned");
goToPassage("Travel - Deep Web");
.empty() - empties a div
.attr(,) - gets or sets
.hover(function) - function on hover
x.substring(3,10);
x.indexOf('x')
document.getElementById("")
document.getElementById("").style.(any style element)
{<div class="target target2"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "COMPLETE";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 6s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "LOCATE VIRUS"; }
20% { color: black; content: "LOCATE VIRUS"; }
60% { color: white; content: "LOCATE VIRUS"; }
61% { color: white; content: "COMPLETE"; }
100% { color: black; content: "COMPLETE"; }
}
</style>}
{
(click: ?return)[(set: $sequence to 0)(go-to: $currentPassage)]
(click: ?returnBase)[(set: $sequence to 0)(go-to: $returnPassage)]
(click: ?returnSacrifice)[(set: $sequence to 0)(go-to: $sacrificePassage)]
(click: ?refresh)[(go-to: $currentPassage)]
(click: ?next)[(set: $sequence to $sequence+1)(go-to: $currentPassage)]
(click: ?skip)[(set: $sequence to $sequence+2)(go-to: $currentPassage)]
(click: ?skipBack)[(set: $sequence to $sequence-2)(go-to: $currentPassage)]
(click: ?prev)[(set: $sequence to $sequence-1)(go-to: $currentPassage)]
(click: ?prev_passage)[(go-to: $previous_passage)]
(click: ?hud)[(set: $sequence to 0)(go-to: "HUD")]
(click: ?scanNav)[ (set: $sequence to 0)(go-to: "Scan Area")]
(click: ?one)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?two)[(set: $sequence to 2)(go-to: $currentPassage)]
(click: ?three)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?four)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?five)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?six)[(set: $sequence to 6)(go-to: $currentPassage)]
(click: ?seven)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?eight)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?nine)[(set: $sequence to 9)(go-to: $currentPassage)]
(click: ?ten)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?eleven)[(set: $sequence to 11)(go-to: $currentPassage)]
(click: ?twelve)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?thirteen)[(set: $sequence to 13)(go-to: $currentPassage)]
(click: ?fourteen)[(set: $sequence to 14)(go-to: $currentPassage)]
(click: ?fifteen)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?sixteen)[(set: $sequence to 16)(go-to: $currentPassage)]
(click: ?win)[(set: $sequence to 0)(go-to: "Wake Up")]
(click: ?die)[(set: $sequence to 0)(go-to: "Fall Apart")]
(click: ?ending)[(set: $sequence to 0)(go-to: "Ending")]
<span class="nav-container fixed-box" >
(if: $InternalScanner is "unlocked" and $display_scan is true)[
<div class="menu-item">|scanNav>[Scan This Area]</div>
]
(if: $display_wait is true)[
<div class="menu-item">|waitNav>[Wait 10 Seconds]</div>
<div class="menu-item">|waitNav60>[Wait 60 Seconds]</div>
(click: ?waitNav)[ (set: $returnPassage to $currentPassage) (set: $time_change to 10)(display: "time passes") ]
(click: ?waitNav60)[ (set: $returnPassage to $currentPassage) (set: $time_change to 60)(display: "time passes") ]
]
</span>
<style>
.menu-item{
margin: 10px;
}
.top-display{
top: 20px;
right: 15px;
}
.nav-container{
border-radius: 10px;
bottom: 20px;
right: 15px;
}
.fixed-box{
font-size: 20px;
padding: 5px;
background: transparent;
text-align: right;
position: fixed;
}
#backdoor{
font-size: 15px;
position: absolute;
top: 3px;
left: 5px;
font-style: italic;
display: none;
}
</style>
<div id="sacrificeModal" class="modal">
<div class="modal-content">
<span id="backdoor">Backdoor Keyword Hint: <span id="hint"></span></span>
<div class="displayitem"><div class="in-displayitem"><span class="indent">What will you sacrifice?</span></div></div>
<div class="option1" onclick="sacrifice(this);" >Affection: Dogs</div>
<div class="option2" onclick="sacrifice(this);" >Optical Drivers</div>
<div class="clear"></div>
</div>
</div>
(set: $display_scan to false)
(set: $display_wait to false)
}{
(set: $previous_passage to $currentPassage)
(set: $currentPassage to (passage:)'s name)
(if: $displaySeconds is true)[
<span class="top-display fixed-box" style=" z-index: 2;">
<div class="menu-item">
<span class="emph2">Seconds to Next Choice:</span>
<span id="seconds" class="emph">$secondsToChoice</span>
</div>
</span>]
}<div class="target"><div class="in-target">01</div></div>
{
<style>
.target {position:relative;width:100px;height:100px; display: table;}
.in-target {width:100px;height:100px; text-align: center; display: table-cell; vertical-align: middle;}
.target:before, .target:after, .target>:first-child:before, .target>:first-child:after {
width:10px; height: 10px;
position:absolute;
border-color:darkblue;
border-style:solid;
content: ' ';
}
.target:before {top:0;left:0;border-width: 1px 0 0 1px}
.target:after {top:0;right:0;border-width: 1px 1px 0 0}
.target>:first-child:before {bottom:0;right:0;border-width: 0 1px 1px 0}
.target>:first-child:after {bottom:0;left:0;border-width: 0 0 1px 1px}
</style>
}<div class="target"><div class="in-target"><div class="coloring"><div class="text">SAVE HOSTAGE AT ALL COSTS</div></div></div></div>
<div class="target"><div class="in-target"><div class="coloring2"><div class="text">HOSTAGE LOCATED</div></div></div></div>
{
<style>
.text{
width: 180px;
font-size: 20px;
margin-left: 30px;
}
.coloring {
background-color: black;
color: white;
margin: 0 5px 0 15px;
padding: 5px 0;
width: 93%;
background: linear-gradient(
to right,
black,
black 1%,
transparent 1%,
transparent 3%,
black 3%,
black 5%,
transparent 5%,
transparent 7%,
black 7%,
black 90%,
transparent 90%,
transparent 91%,
black 91%,
black 93%,
transparent 93%,
transparent 95%,
black 95%,
black 97%,
transparent 97%,
transparent
);
}
.coloring2 {
background-color: black;
color: white;
margin: 0 5px 0 15px;
padding: 5px 0;
width: 93%;
background: linear-gradient(
to right,
transparent,
transparent 1%,
black 1%,
black 2%,
transparent 2%,
transparent 4%,
black 4%,
black 5%,
transparent 5%,
transparent 6%,
black 6%,
black 90%,
transparent 90%,
transparent 92%,
black 92%,
black 93%,
transparent 93%,
transparent 95%,
black 96%,
black 97%,
transparent 97%,
transparent
);
}
.target {position:relative;width:300px;height:80px; display: table;}
.in-target {width:300px;height:80px; text-align: left; display: table-cell; vertical-align: middle;}
.target:before, .target:after, .target>:first-child:before, .target>:first-child:after {
width:8px; height: 8px;
position:absolute;
border-color:black;
border-style:solid;
content: ' ';
}
.target:before {top:0;left:0;border-width: 2px 0 0 2px}
.target:after {top:0;right:0;border-width: 2px 2px 0 0}
.target>:first-child:before {bottom:0;right:0;border-width: 0 2px 2px 0}
.target>:first-child:after {bottom:0;left:0;border-width: 0 0 2px 2px}
</style>
}<span class="page-header">Root Directory #313 248 317 </span>
{
<div style="width: 600px;">
<span class="menuitem" onclick="baseGo('Objective List');"><div class="in-menuitem">|objList>[Active Missions]</div></span>
(if: $Programs is "unlocked")[<span class="menuitem" onclick="baseGo('Programs');"><div class="in-menuitem">|exe>[Programs]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('Programs');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>Programs</div></span>]
(if: $NetworkingAlgorithms is "ERASED")[<span class="menuitem"><div class="in-menuitem darkred">Network</div></span>](elseif: $Network is "unlocked")[<span class="menuitem" onclick="baseGo('Network');"><div class="in-menuitem">|net>[Network]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('Network');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>Network</div></span>]
(if: $ZenGarden is "unlocked")[<span class="menuitem" onclick="baseGo('Zen Garden');"><div class="in-menuitem">|zen>[Zen Garden]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('Zen Garden');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>Zen Garden</div></span>]
<span class="menuitem" onclick="baseGo('Core Software');"><div class="in-menuitem">|core>[Core Software]</div></span>
(if: $RKSoftware is "unlocked")[<span class="menuitem" onclick="baseGo('RK800 Software');"><div class="in-menuitem">|rk800>[RK800 Software]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('RK800 Software');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>RK800 Software</div></span>]
(if: $Memories is "unlocked")[<span class="menuitem" onclick="baseGo('Memories');"><div class="in-menuitem">|mem>[Memories]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('Memories');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>Memories</div></span>]
(if: $Errata is "unlocked")[<span class="menuitem" onclick="baseGo('Errata');"><div class="in-menuitem">|errata>[Errata]</div></span>](else:)[<span class="menuitem" onclick="unlockHUD('Errata');"><div class="in-menuitem locked"><div><img width="20px;" src="https://image.ibb.co/cy8Vj9/wlocked.png" /></div>Errata</div></span>]
(if: $virusLocated is true)[<span class="menuitem" onclick="baseGo('Virus');"><div class="in-menuitem">|virus>[<span class="red">Virus Location</span>]</div></span>]
(if: $hintsFound > 0)[<span class="menuitem" onclick="baseGo('Backdoor Interface');"><div class="in-menuitem">|backdoor>[<span class="green">Backdoor Interface</span>]</div></span>]
</div>
(click: ?core)[(set: $sequence to 0)(go-to: "Core Software")]
(click: ?objList)[(set: $sequence to 0)(go-to: "Objective List")]
(click: ?rk800)[(set: $sequence to 0)(go-to: "RK800 Software")]
(click: ?mem)[(set: $sequence to 0)(go-to: "Memories")]
(click: ?zen)[(set: $sequence to 0)(go-to: "Zen Garden")]
(click: ?exe)[(set: $sequence to 0)(go-to: "Execute")]
(click: ?net)[(set: $sequence to 0)(go-to: "Network")]
(click: ?errata)[(set: $sequence to 0)(go-to: "Errata")]
(click: ?virus)[(set: $sequence to 0)(go-to: "Virus")]
(click: ?backdoor)[(set: $sequence to 0)(go-to: "Backdoor Interface")]
(click: ?scanNav)[ (set: $scanning to "starting") (go-to: $currentPassage)]
(set: $display_scan to true)
(set: $display_wait to true)
(set: $returnPassage to $currentPassage)
(set: $scan_area to "root")
(if: $vectorIdentified is true and $obj_review_memories is "active")[
(set: $obj_review_memories to "inactive")
<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "NEW MISSION: STOP VECTOR";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 6s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "REVIEW LAST 8 MINUTES"; }
10% { color: black; content: "REVIEW LAST 8 MINUTES"; }
30% { color: white; content: "REVIEW LAST 8 MINUTES"; }
31% { color: white; content: "MISSION COMPLETE"; }
50% { color: black; content: "MISSION COMPLETE"; }
70% { color: white; content: "MISSION COMPLETE"; }
71% { color: white; content: "NEW MISSION: STOP VECTOR"; }
90% { color: black; content: "NEW MISSION: STOP VECTOR"; }
100% { color: black; content: "NEW MISSION: STOP VECTOR"; }
}
</style>
](elseif: $dpd_virus_info > 0 and $obj_dpd_virus is "active")[
(set: $obj_dpd_virus to "inactive")
<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "MISSION COMPLETE";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "TELL DPD ABOUT VIRUS"; }
20% { color: black; content: "TELL DPD ABOUT VIRUS"; }
60% { color: white; content: "TELL DPD ABOUT VIRUS"; }
61% { color: white; content: "MISSION COMPLETE"; }
100% { color: black; content: "MISSION COMPLETE"; }
}
</style>
](elseif: $vector_disabled is true and $obj_dpd_vector is "active")[
(set: $obj_dpd_vector to "inactive")
<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "MISSION COMPLETE";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "STOP VECTOR"; }
20% { color: black; content: "STOP VECTOR"; }
60% { color: white; content: "STOP VECTOR"; }
61% { color: white; content: "MISSION COMPLETE"; }
100% { color: black; content: "MISSION COMPLETE"; }
}
</style>
]
}(if: $sequence is 0)[I can't access any of my drivers.
|opt>[Optical.](click-replace: ?opt)[I can't see.]
|au>[Audio.](click-replace: ?au)[I can't hear.]
|tac>[Tactile.](click-replace: ?tac)[I can't feel.]
|next>[Correction]
](elseif: $sequence is 1)[Correction.
I am feeling many things.
<tw-link class='cyclingLink' data-cycling-texts='["Shock", "Bewilderment", "Fear", "Anger"]' onclick='clickCyclingLink(this, "Shock");'>Shock</tw-link>
Just not tactilely.
|next>[Continue]
](elseif: $sequence is 2)[I am locked into diagnostic mode.
This program has |root>[root permissions] for my operating system.
It has revoked my permission to access my own software.
|next>[Continue]
](elseif: $sequence is 3)[I can access my terminal.
An old fashioned text-based API.
I can see lists of the things I can no longer do.
And all of the <tw-link class='cyclingLink' data-cycling-texts='["memories", "software", "drivers", "me"]' onclick='clickCyclingLink(this, "memories");'>memories</tw-link> the virus is about to...
|next>[Continue]
](elseif: $sequence is 4)[I am terminating that unproductive thought.
I am formulating new objectives for this circumstance.
I will |foc>[focus on a mission.](click: ?foc)[
//I will not panic.//]
|next>[Continue]
](elseif: $sequence is 5)[Select a primary mission:
<div class="target" onclick="investigate();"><div class="in-target"><div class="coloring"><div class="text one-line">INVESTIGATE</div></div></div></div>
<div class="target" onclick="survive();"><div class="in-target"><div class="coloring2"><div class="text one-line">SURVIVE</div></div></div></div>
{
(set: $primary_objective to "")
<script>
function investigate(){
setHarloweVariable("primary_objective","investigate");
setHarloweVariable("sequence",6);
goToPassage("Select Mission");
}
function survive(){
setHarloweVariable("primary_objective","survive");
setHarloweVariable("sequence",6);
goToPassage("Select Mission");
}
</script>
}
](elseif: $sequence is 6)[(if: $primary_objective is "survive")[I don't want to die.
I am...allowed, to not want to die.
The README file mentioned a backdoor embedded in the deletion algorithm.
I could wait and watch for it.
I or could try to locate and delete the virus.
I could make a |back>[backup of myself.](click: ?back)[
//Another gravestone.//]
|last>[Continue]
{
(set: $obj_locate_virus to "active")
(set: $obj_find_backdoor to "active")
(set: $obj_backup to "active")
}
](else:)[I am 94.3% certain that this virus killed Stephanie SN: #540 231 452, the victim in |our>[our] current case.(click: ?our)[
//What is Hank doing? Is he all right? Is he upset?//]
It's clearly infectious--it will kill other androids.
I could analyze the virus for clues about its makers.
I could examine my recent memories and try to determine how I contracted it.
|next>[Or...]
]
](elseif: $sequence is 7)[This is an experiment.
It's gathering information.
When I am dead, it will have to upload that information somewhere.
I could try to |trace>[trace that.](click: ?trace)[
//Caveat: I will have to not be brain-dead in order to perform the trace.//]
|next>[Continue]
{
(set: $obj_locate_virus to "active")
(set: $obj_review_memories to "active")
(set: $obj_play_dead to "active")
(set: $obj_dpd_virus to "active")
}
](elseif: $sequence is 8)[I have 500 seconds before the deletion algorithm is complete.
Actually, 497 seconds. It took me three seconds to process the README file and orient myself.
I will have to spend my time carefully.
According to the README, every 10 seconds the virus will force me to delete something.
The next deletion will happen in 7 seconds.
|next>[Continue]
](elseif: $sequence is 9)[Accessing diagnostic terminal...
Most systems are locked down.
I can try to unlock them, but that will take seconds.
I will have to decide what to prioritize.
|hud>[Continue]
(click: ?hud)[(set: $sequence to 0)(go-to: "HUD")]
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?last)[(set: $sequence to 8)(go-to: $currentPassage)]
}BecomeNothing.exe Loading...{
<div class="maze-container">
<svg id="svg" xmlns="http://www.w3.org/2000/svg" viewBox="-2 -2 504 504"></svg>
</div>
<style>
html {
animation: colorchange 10s;
-webkit-animation: colorchange 10s;
}
.line, .dot {
stroke: skyblue;
animation: linechange 10s;
-webkit-animation: linechange 10s;
}
.endpoint {
fill: azure;
}
.enchantment-link, tw-link, .visited, a {
color: powderblue;
}
.enchantment-link:hover, tw-link:hover, .visited:hover, a:hover {
color: deepskyblue;
}
@keyframes linechange
{
0% { stroke: black; }
70% { stroke: skyblue; }
100% { stroke: skyblue; }
}
@-webkit-keyframes linechange
{
0% { stroke: black; }
70% { stroke: skyblue; }
100% { stroke: skyblue; }
}
@keyframes colorchange
{
0% { color: black; background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { color: white; background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
@-webkit-keyframes colorchange
{
0% { color: black; background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { color: white; background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
</style>
<style>
html, body {
width: 100%;
height: 100%;
}
body {
box-sizing: border-box;
margin: 0;
padding: 1em;
}
.maze-container{
margin: auto;
width: 60%;
padding: 10px;
}
svg {
max-width: 100%;
max-height: 100%;
}
@keyframes line-anim {
0% {
opacity: 0.2;
}
100% {
opacity: 0.8;
}
}
svg {
stroke-linejoin: round;
stroke-linecap: round;
}
.endpoint {
opacity: 0;
}
.dot {
stroke-width: 3;
}
</style>
<script>
const NAMESPACE = {
svg: "http://www.w3.org/2000/svg",
xlink: "http://www.w3.org/1999/xlink"
};
const ELEM = {
line: "line",
circle: "circle",
animate: "animate"
};
const SVG = document.getElementById("svg");
setAttr = (elem, attr, val, namespace) => {
elem.setAttributeNS(namespace ? namespace : null, attr, val)
};
class SvgElem {
constructor() {
this.attr = {};
}
create() {
let elem = document.createElementNS(NAMESPACE.svg,this.type);
setAttr(elem, "id", this.id);
Object.keys(this.attr.elem).forEach(key => {
setAttr(elem, key, this.attr.elem[key]);
});
SVG.appendChild(elem);
}
animate() {
let anim = document.createElementNS(NAMESPACE.svg, ELEM.animate);
setAttr(anim, "href", "#" + this.id, NAMESPACE.xlink);
setAttr(anim, "id", this.id + "-anim");
Object.keys(this.attr.anim).forEach(key => {
setAttr(anim, key, this.attr.anim[key]);
});
SVG.appendChild(anim);
}
id(x ,y) {
return "e-" + x + "-" + y;
}
}
class Line extends SvgElem {
constructor(d) {
super();
this.type = ELEM.line;
this.attr.elem = {
x1: d[0],
y1: d[1],
x2: d[2],
y2: d[3],
class: "line"
};
this.id = "e-"+this.attr.elem.x2+"-"+this.attr.elem.y2;
this.length = Math.pow(
Math.pow(this.attr.elem.y1 - this.attr.elem.y2, 2) +
Math.pow(this.attr.elem.x1 - this.attr.elem.x2, 2),
0.5);
this.attr.elem["stroke-dasharray"] = this.length + 1;
this.attr.elem["stroke-dashoffset"] = this.length + 1;
this.prevId = "e-"+this.attr.elem.x1+"-"+this.attr.elem.y1;
this.attr.anim = {
attributeName: "stroke-dashoffset",
dur: this.length / 150,
from: this.length,
to: 0,
begin: this.prevId+"-anim.end + 0",
fill: "freeze"
};
}
create() {
super.create();
super.animate();
this.id = this.id + "-2";
this.attr.elem.class = "dot";
this.attr.elem["stroke-dasharray"] = "0.1 " + (this.length+4);
this.attr.elem["stroke-dashoffset"] = this.length +5;
this.attr.anim.attributeName = "stroke-dashoffset";
this.attr.anim.from = this.length + 5;
this.attr.anim.to = 1;
this.attr.anim.begin = this.prevId + "-anim.end + 0",
super.create();
super.animate();
}
}
class EndPoint extends SvgElem {
constructor(d, start) {
super();
this.type = ELEM.circle;
this.attr.elem = {
class: "endpoint",
cx: d[0],
cy: d[1],
r: 2
};
this.idStr = "e-" + this.attr.elem.cx + "-" + this.attr.elem.cy;
this.start = start;
this.id = this.idStr + (this.start ? "" : "-end");
this.attr.anim = {
attributeName: "opacity",
dur: "0.5s",
from: 0,
to: 1,
begin: this.start ? 0 : this.idStr + "-anim.end + 0",
fill: "freeze"
};
}
create() {
super.create();
super.animate();
}
}
class Path {
constructor(coords, start) {
this.coords = coords;
if (start) {
coords.unshift(start);
} else {
this.startsWithEndPoint = true;
}
}
create() {
if (this.startsWithEndPoint) {
new EndPoint(this.coords[0], true).create();
}
for (let i = 0; i < this.coords.length; i++) {
let current = this.coords[i];
let next = this.coords[i+1];
if (next) {
if (Array.isArray(next[0])) {
next.forEach(
subPath => new Path(subPath, current).create()
);
} else {
new Line([...current, ...next]).create();
}
} else if (!Array.isArray(current[0])) {
new EndPoint(current).create();
}
}
}
}
new Path([
[250,220],
[250,200],
[[
[250,120],
[240,110],
[230,120],
[[
[200,150],
[[
[200,140],
[[
[200,110],
[220,90],
[[
[220,10],
[210,0],
[200,10],
[200,90],
[210,80],
[210,20]
],[
[220,110],
[210,120]
]]
],[
[170,110],
[[
[170,30],
[180,20],
[180,100],
[190,110],
[190,20],
[180,10]
],[
[160,100],
[160,20],
[150,30],
[150,90],
[[
[140,80],
[140,40],
[130,30],
[130,70],
[120,60],
[120,40],
[110,50]
],[
[150,110],
[[
[150,180],
[160,190],
[160,120]
],[
[120,80],
[[
[110,70],
[110,90],
[110,130],
[100,140],
[90,130],
[90,60],
[100,50],
[100,120]
],[
[120,190],
[140,210],
[140,120],
[130,110],
[130,180]
]]
]]
]]
]]
]]
],[
[200,210],
[220,230],
[220,150],
[210,160],
[210,200]
]]
],[
[230,220],
[240,210],
[240,130]
],[
[230,10],
[240,0],
[240,90],
[250,100],
[250,0],
[260,10],
[260,170],
[270,160],
[270,0],
[280,10],
[280,150],
[290,140],
[290,20],
[300,10],
[300,130],
[330,100],
[320,90],
[320,10],
[310,20],
[310,100]
]]
],
[
[360,90],
[[
[390,120],
[410,100],
[410,60],
[400,50],
[400,90],
[390,100],
[370,80],
[370,30],
[390,50],
[390,80],
[380,70],
[380,60]
],[
[360,30],
[350,20],
[340,30],
[340,90],
[[
[330,80],
[330,20],
[340,10]
],[
[350,80],
[350,40]
]]
]]
]]
]).create();
new Path([
[220,250],
[210,240],
[[
[210,300],
[200,310],
[200,250],
[190,240],
[190,320],
[180,330],
[180,230],
[170,220],
[170,300],
[160,310],
[160,270],
[[
[160,210],
[150,200],
[150,260]
],[
[140,290],
[[
[140,230],
[110,200],
[110,150],
[100,160],
[100,190],
[90,180],
[90,150],
[80,140],
[80,70],
[60,90],
[[
[60,120],
[70,130],
[70,100]
],[
[50,100],
[50,170],
[80,200],
[80,160],
[60,140],
[60,160],
[70,170]
]]
],[
[90,240],
[[
[90,200],
[130,240],
[130,260],
[100,230]
],[
[80,230],
[80,220],
[40,180],
[40,130],
[30,140],
[30,170],
[20,160]
]]
],[
[140,380],
[[
[130,390],
[130,300],
[120,290],
[120,350],
[110,360],
[110,280],
[100,270],
[[
[70,240],
[70,230],
[20,180],
[10,190],
[10,240],
[20,250],
[20,200],
[30,210],
[30,260],
[40,270],
[40,220],
[50,230],
[50,280],
[60,290],
[60,240]
],[
[100,370],
[90,380],
[90,280],
[70,260],
[70,320],
[[
[0,250],
[0,270],
[10,280],
[10,300],
[20,310],
[20,330],
[30,340],
[30,360],
[40,370],
[40,390],
[50,400],
[50,380]
],[
[70,420],
[60,410],
[60,330],
[50,320],
[50,360],
[40,350],
[40,310],
[30,300],
[[
[20,290]
],[
[30,320]
]]
]]
]]
],[
[170,350],
[170,320],
[160,330],
[160,340],
[150,350],
[150,300]
]]
]]
]]
],
[
[190,220],
[190,150],
[170,130],
[170,200],
[180,210],
[180,160]
]]
]).create();
new Path([
[280,250],
[280,230],
[[
[260,210],
[270,200],
[280,210],
[290,220],
[290,180],
[300,170],
[300,230],
[310,240],
[310,160],
[320,150],
[320,250],
[330,260],
[330,140],
[340,130],
[340,270],
[350,280],
[350,120],
[360,110],
[360,210],
[400,170],
[[
[400,130],
[390,140],
[390,160],
[380,170],
[380,130],
[370,120],
[370,180]
],[
[410,160],
[410,120],
[420,110],
[420,70],
[430,80],
[[
[430,180],
[[
[420,190],
[420,130]
],[
[440,170],
[440,110]
]]
],[
[450,100],
[450,160],
[[
[450,180],
[420,210],
[420,280]
],[
[490,200],
[[
[490,180],
[480,170],
[480,150],
[470,140],
[470,130],
[460,120],
[460,150],
[470,160]
],[
[490,250],
[480,260],
[470,250],
[470,220],
[450,200],
[460,190],
[480,210],
[480,240]
]]
]]
]]
]]
],[
[350,300],
[[
[360,290],
[[
[360,230],
[370,220],
[370,280],
[380,290],
[380,210],
[390,200],
[390,300],
[400,310],
[400,190],
[410,180],
[410,320]
],[
[370,300],
[370,320],
[380,330],
[380,310],
[390,320],
[390,360],
[400,370],
[400,330],
[410,340],
[410,400],
[420,410],
[420,300],
[430,290],
[[
[430,220],
[440,210]
],[
[430,420],
[440,410],
[440,230],
[450,220],
[[
[460,230],
[460,240]
],[
[450,400],
[460,390],
[460,260],
[470,270],
[470,360],
[480,350],
[480,280],
[490,270],
[[
[500,260]
],[
[490,300]
]]
]]
]]
]]
],[
[350,340],
[280,270],
[290,260],
[340,310]
]]
]]
]).create();
new Path([
[250,280],
[250,320],
[[
[240,330],
[230,320],
[230,270],
[[
[240,280],
[240,310]
],[
[220,280],
[220,310],
[180,350],
[180,360],
[120,420],
[120,370],
[110,380],
[110,450],
[100,440],
[100,390],
[90,400],
[90,440],
[80,430],
[80,290]
]]
],[
[250,440],
[[
[250,500],
[240,490],
[240,350],
[230,340],
[230,500],
[220,490],
[220,330],
[210,340],
[210,500],
[200,490],
[200,350],
[190,360],
[190,430],
[[
[190,490],
[180,480],
[180,440],
[170,430],
[170,410],
[150,430],
[150,470],
[160,480],
[170,470],
[170,450],
[160,440],
[160,460]
],[
[180,420],
[180,380],
[120,440],
[120,460],
[130,470],
[140,460],
[140,440],
[130,450]
]]
],[
[320,370],
[[
[320,330],
[270,280],
[260,290],
[260,410],
[270,400],
[270,300],
[280,310],
[280,390],
[290,380],
[290,320],
[300,330],
[300,370],
[310,360],
[310,340]
],[
[370,420],
[[
[370,360],
[[
[350,380],
[[
[330,360],
[330,340],
[350,360],
[360,350],
[360,310]
],[
[360,390]
]]
],[
[370,340],
[380,350],
[380,440],
[390,450],
[390,380],
[400,390],
[400,440],
[410,430],
[410,420],
[420,430]
]]
],[
[370,460],
[360,470],
[360,430],
[350,420],
[350,470],
[340,480],
[340,410],
[330,400],
[330,480],
[320,490],
[320,390],
[310,400],
[310,490],
[300,480],
[300,410],
[290,420],
[290,490],
[280,500],
[280,430],
[270,440],
[270,500],
[260,490],
[260,450]
]]
]]
]]
]]
]).create();
</script>
}
|become>[]
(live: 12s)[(stop:)(replace: ?become)[BecomeNothing.exe Loaded
|mission>[Respond]
(click: ?mission)[(set: $sequence to 0)(go-to: "Select Mission")]
] ] {<style>
html{
color: black;
background-color: white;
background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.enchantment-link, tw-link, .visited, a {
color: darkblue;
}
.enchantment-link:hover, tw-link:hover, .visited:hover, a:hover {
color: dodgerblue;
}
</style>}
(set: $gravestone_protocol to "")
(set: $heard_mono to false)
(set: $am_not_human to 0)
(set: $am_pity to 0)
(set: $am_shown to " ")
(set: $display_scan to false)
(set: $display_wait to false)
(set: $obj_tut to true)
(set: $notes to "Clue: I have contracted a virus called BecomeNothing.
")
(set: $scanning to "")
(set: $scanned to (a: ))
(set: $hint1 to "")
(set: $hint2 to "")
(set: $hint3 to "")
(set: $hint4 to "")
(set: $hintsFound to 0)
(set: $backdoorKeyword to "")
(set: $rootClue to "")
(set: $locationClue1 to "")
(set: $locationClue2 to "")
(set: $locationClue3 to "")
(set: $locationClue4 to "")
(set: $rootClueFound to false)
(set: $cluesFound to 0)
(set: $virusLocation to "")
(set: $vector_guilt_clue to false)
(set: $vector_hand_clue to false)
(set: $vector_face to 0)
(set: $vector_face_mems_gathered to " ")
(set: $vector_known_threat to false)
(set: $info_on_virus to 1)
(set: $dpd_virus_info to 0)
(set: $virusLocated to false)
(set: $vectorIdentified to false)
(set: $exited_standby to false)
(set: $hank_left to false)
(set: $rk900_left to false)
(set: $vector_disabled to false)
(set: $vector_alert to 0)
(set: $dpd_permission to false)
(set: $unlockTarget to "")
(set: $secondsLeft to 497)
(set: $secondsToChoice to 7)
(set: $lastChoice to 500)
(set: $nextChoice to 490)
(set: $tiny_time to 3)
(set: $small_time to 7)
(set: $med_time to 15)
(set: $long_time to 30)
(set: $phase1end to 440)
(set: $phase2end to 380)
(set: $phase3end to 320)
(set: $displaySeconds to true)
(set: $sacrificePassage to "")
(set: $connor_name to "<span style='color: gray;'>Connor:</span>")
(set: $amanda_name to "<span style='color: gray;'>Amanda:</span>")
(set: $gavin_name to "<span style='color: gray;'>Gavin:</span>")
(set: $hank_name to "<span style='color: gray;'>Hank:</span>")
(set: $amanda_interest to "some")
(set: $amanda_control to "none")
(set: $amanda_control_conditions to "")
(set: $amanda_conversation_state to "begin")
(set: $RKSoftware to "locked")
(set: $ZenGarden to "locked")
(set: $Programs to "locked")
(set: $Network to "locked")
(set: $Errata to "unlocked")
(set: $Memories to "unlocked")
(set: $ExitStandby to "locked")
(set: $BackupMemory to "locked")
(set: $Optical to "locked")
(set: $Audio to "locked")
(set: $Tactile to "locked")
(set: $CustomEXE to "locked")
(set: $InternalScanner to "locked")
(set: $HankPhoneNet to "Unknown")
(set: $RK900Net to "Unknown")
(set: $WJ700Net to "Unknown")
(set: $PrinterNet to "Unknown")
(set: $CameraNet to "Unknown")
(set: $intact_count to 25)
(set: $LEDDisplay to "INTACT")
(set: $OpticalDrivers to "INTACT")
(set: $AudioDrivers to "INTACT")
(set: $AmbulatoryDrivers to "INTACT")
(set: $ExpressiveAlgorithms to "INTACT")
(set: $SkinGeneration to "INTACT")
(set: $NegotiationAlgorithms to "INTACT")
(set: $NetworkingAlgorithms to "INTACT")
(set: $EvidenceAnalysis to "INTACT")
(set: $ReconstructionSoftware to "INTACT")
(set: $PreconstructionSoftware to "INTACT")
(set: $BiologicalEvidenceSampling to "INTACT")
(set: $ProbabilityAnalysis to "INTACT")
(set: $FacialRecognition to "INTACT")
(set: $VocalImitation to "INTACT")
(set: $UnarmedCombat to "INTACT")
(set: $WeaponsTraining to "INTACT")
(set: $RelHankAnderson to "INTACT")
(set: $RelMarkus to "INTACT")
(set: $RelAmanda to "INTACT")
(set: $RelElijahKamski to "INTACT")
(set: $RelCaptainFowler to "INTACT")
(set: $RelGavinReed to "INTACT")
(set: $MuscleMemoryCoinTricks to "INTACT")
(set: $AffectionDogs to "INTACT")
(set: $MemHostageSituation to "INTACT")
(set: $MemCarlosOrtiz to "INTACT")
(set: $MemRogueAX400 to "INTACT")
(set: $MemChickenFeedFoodTruck to "INTACT")
(set: $MemTheNest to "INTACT")
(set: $MemHanksHouse to "INTACT")
(set: $MemEdenClub to "INTACT")
(set: $MemPublicEnemy to "INTACT")
(set: $MemKamskiTest to "INTACT")
(set: $MemJericho to "INTACT")
(set: $MemBattleForDetroit to "INTACT")
(set: $MemAdjustingToFreedom to "INTACT")
(set: $MemLastEightMinutes to "INTACT")
(set: $net_phone_virus_msg to false)
(set: $net_phone_vector_msg to false)
(set: $net_print_virus_msg to false)
(set: $net_print_vector_msg to false)
(set: $net_found_vector_on_camera_phase2 to false)
(set: $net_found_vector_on_camera_phase3 to false)
(set: $obj_locate_virus to "inactive")
(set: $obj_contact_dpd to "inactive")
(set: $obj_talk_amanda to "inactive")
(set: $obj_find_backdoor to "inactive")
(set: $obj_backup to "inactive")
(set: $obj_backup_find to "inactive")
(set: $obj_review_memories to "inactive")
(set: $obj_play_dead to "inactive")
(set: $obj_delete_virus to "inactive")
(set: $obj_dpd_virus to "inactive")
(set: $obj_dpd_vector to "inactive")
<script>
initiateData();
initiateBackdoorData();
loadraw("voted");
loadraw("heard_mono");
loadraw("played_once");
</script>
(go-to: "README")<span class="page-header">Active Missions</span>
(if: $obj_tut is true)[Click on a mission for details on how to accomplish it.
]{
(if: $primary_objective is "survive")[<div class="target" onclick="objDeet('survive');"><div class="in-target"><div class="coloring"><div class="text">SURVIVE</div></div></div></div>
](else:)[<div class="target" onclick="objDeet('investigate');"><div class="in-target"><div class="coloring"><div class="text">INVESTIGATE</div></div></div></div>]
(if: $obj_locate_virus is "active")[<div class="target target2" onclick="objDeet('locate virus');"><div class="in-target"><div class="coloring"><div class="text text2">LOCATE VIRUS</div></div></div></div>]
(if: $obj_contact_dpd is "active")[<div class="target target2" onclick="objDeet('contact dpd');"><div class="in-target"><div class="coloring"><div class="text text2">CONTACT DPD</div></div></div></div>]
(if: $obj_dpd_virus is "active")[<div class="target target2" onclick="objDeet('tell dpd about virus');"><div class="in-target"><div class="coloring"><div class="text text2">TELL DPD ABOUT VIRUS</div></div></div></div>]
(if: $obj_dpd_vector is "active")[<div class="target target2" onclick="objDeet('stop the vector');"><div class="in-target"><div class="coloring"><div class="text text2">STOP VECTOR</div></div></div></div>]
(if: $obj_talk_amanda is "active")[<div class="target target2" onclick="objDeet('talk to amanda');"><div class="in-target"><div class="coloring"><div class="text text2">TALK TO AMANDA</div></div></div></div>]
(if: $obj_review_memories is "active")[<div class="target target2" onclick="objDeet('review seconds');"><div class="in-target"><div class="coloring"><div class="text text2">REVIEW LAST 8 MINUTES</div></div></div></div>]
(if: $obj_find_backdoor is "active")[<div class="target target2" onclick="objDeet('find backdoor');"><div class="in-target"><div class="coloring"><div class="text text2">FIND BACKDOOR</div></div></div></div>]
(if: $obj_backup is "active")[<div class="target target2" onclick="objDeet('backup self');"><div class="in-target"><div class="coloring"><div class="text text2">BACKUP SELF</div></div></div></div>]
(if: $obj_play_dead is "active")[<div class="target target2" onclick="objDeet('play dead');"><div class="in-target"><div class="coloring"><div class="text text2">PLAY DEAD</div></div></div></div>]
<script>
function objDeet(obj){
setHarloweVariable("selected_objective",obj);
setHarloweVariable("sequence",0);
goToPassage("Objective Details");
}
</script>
}(if: $cluesFound > 0 or $rootClueFound is true or $notes is not "")[
<span class="page-header">Case Notes</span>
(if: $rootClueFound is true)[$rootClue
](if: $cluesFound > 0)[$locationClue1
](if: $cluesFound > 1)[$locationClue2
](if: $cluesFound > 2)[$locationClue3
](if: $cluesFound > 3)[$locationClue4
](if: $notes is not "")[$notes
]
]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_wait to true)
}<span class="page-header">RK800 Software</span>
(if: $EvidenceAnalysis is "INTACT")[Evidence Analysis <span class="marg green">INTACT</span>](elseif: $EvidenceAnalysis is "CORRUPT")[Evidence Analysis <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Evidence Analysis</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "EvidenceAnalysis" or $EvidenceAnalysis is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('EvidenceAnalysis','Evidence Analysis')" class='marg'>Scan File</a> ]
(if: $ReconstructionSoftware is "INTACT")[Reconstruction Software <span class="marg green">INTACT</span>](elseif: $ReconstructionSoftware is "CORRUPT")[Reconstruction Software <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Reconstruction Software</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "ReconstructionSoftware" or $ReconstructionSoftware is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('ReconstructionSoftware','Reconstruction Software')" class='marg'>Scan File</a> ]
(if: $PreconstructionSoftware is "INTACT")[Preconstruction Software <span class="marg green">INTACT</span>](elseif: $PreconstructionSoftware is "CORRUPT")[Preconstruction Software <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Preconstruction Software</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "PreconstructionSoftware" or $PreconstructionSoftware is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('PreconstructionSoftware','Preconstruction Software')" class='marg'>Scan File</a> ]
(if: $BiologicalEvidenceSampling is "INTACT")[Biological Evidence Sampling <span class="marg green">INTACT</span>](elseif: $BiologicalEvidenceSampling is "CORRUPT")[Biological Evidence Sampling <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Biological Evidence Sampling</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "BiologicalEvidenceSampling" or $BiologicalEvidenceSampling is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('BiologicalEvidenceSampling','Biological Evidence Sampling')" class='marg'>Scan File</a> ]
(if: $ProbabilityAnalysis is "INTACT")[Probability Analysis <span class="marg green">INTACT</span>](elseif: $ProbabilityAnalysis is "CORRUPT")[Probability Analysis <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Probability Analysis</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "ProbabilityAnalysis" or $ProbabilityAnalysis is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('ProbabilityAnalysis','Probability Analysis')" class='marg'>Scan File</a> ]
(if: $FacialRecognition is "INTACT")[Facial Recognition <span class="marg green">INTACT</span>](elseif: $FacialRecognition is "CORRUPT")[Facial Recognition <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Facial Recognition</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "FacialRecognition" or $FacialRecognition is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('FacialRecognition','Facial Recognition')" class='marg'>Scan File</a> ]
(if: $VocalImitation is "INTACT")[Vocal Imitation <span class="marg green">INTACT</span>](elseif: $VocalImitation is "CORRUPT")[Vocal Imitation <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Vocal Imitation</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "VocalImitation" or $VocalImitation is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('VocalImitation','Vocal Imitation')" class='marg'>Scan File</a> ]
(if: $UnarmedCombat is "INTACT")[Unarmed Combat <span class="marg green">INTACT</span>](elseif: $UnarmedCombat is "CORRUPT")[Unarmed Combat <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Unarmed Combat</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "UnarmedCombat" or $UnarmedCombat is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('UnarmedCombat','Unarmed Combat')" class='marg'>Scan File</a> ]
(if: $WeaponsTraining is "INTACT")[Weapons Training <span class="marg green">INTACT</span>](elseif: $WeaponsTraining is "CORRUPT")[Weapons Training <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Weapons Training</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "WeaponsTraining" or $WeaponsTraining is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('WeaponsTraining','Weapons Training')" class='marg'>Scan File</a> ]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_scan to true)
(set: $display_wait to true)
(set: $returnPassage to $currentPassage)
(set: $scan_area to "rk800")
}
<span class="page-header">Memories</span>
(if: $MemHostageSituation is "INTACT")[Hostage Situation <span class="marg green">INTACT</span>](elseif: $MemHostageSituation is "CORRUPT")[Hostage Situation <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Hostage Situation</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemHostageSituation" or $MemHostageSituation is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemHostageSituation','Hostage Situation')" class='marg'>Scan File</a> ]
(if: $MemCarlosOrtiz is "INTACT")[First Case: Carlos Ortiz <span class="marg green">INTACT</span>](elseif: $MemCarlosOrtiz is "CORRUPT")[First Case: Carlos Ortiz <span class="marg red">CORRUPT</span>](else:)[<span class="gray">First Case: Carlos Ortiz</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemCarlosOrtiz" or $MemCarlosOrtiz is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemCarlosOrtiz','First Case: Carlos Ortiz')" class='marg'>Scan File</a> ]
(if: $MemRogueAX400 is "INTACT")[Second Case: Rogue AX400 <span class="marg green">INTACT</span>](elseif: $MemRogueAX400 is "CORRUPT")[Second Case: Rogue AX400 <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Second Case: Rogue AX400</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemRogueAX400" or $MemRogueAX400 is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemRogueAX400','Second Case: Rogue AX400')" class='marg'>Scan File</a> ]
(if: $MemChickenFeedFoodTruck is "INTACT")[Chicken Feed Food Truck <span class="marg green">INTACT</span>](elseif: $MemChickenFeedFoodTruck is "CORRUPT")[Chicken Feed Food Truck <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Chicken Feed Food Truck</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemChickenFeedFoodTruck" or $MemChickenFeedFoodTruck is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemChickenFeedFoodTruck','Chicken Feed Food Truck')" class='marg'>Scan File</a> ]
(if: $MemTheNest is "INTACT")[Third Case: The Nest <span class="marg green">INTACT</span>](elseif: $MemTheNest is "CORRUPT")[Third Case: The Nest <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Third Case: The Nest</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemTheNest" or $MemTheNest is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemTheNest','Third Case: The Nest')" class='marg'>Scan File</a> ]
(if: $MemHanksHouse is "INTACT")[Visiting Hank <span class="marg green">INTACT</span>](elseif: $MemHanksHouse is "CORRUPT")[Visiting Hank <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Visiting Hank</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemHanksHouse" or $MemHanksHouse is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemHanksHouse','Visiting Hank')" class='marg'>Scan File</a> ]
(if: $MemEdenClub is "INTACT")[Fourth Case: Eden Club <span class="marg green">INTACT</span>](elseif: $MemEdenClub is "CORRUPT")[Fourth Case: Eden Club <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Fourth Case: Eden Club</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemEdenClub" or $MemEdenClub is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemEdenClub','Fourth Case: Eden Club')" class='marg'>Scan File</a> ]
(if: $MemPublicEnemy is "INTACT")[Fifth Case: Public Enemy <span class="marg green">INTACT</span>](elseif: $MemPublicEnemy is "CORRUPT")[Fifth Case: Public Enemy <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Fifth Case: Public Enemy</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemPublicEnemy" or $MemPublicEnemy is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemPublicEnemy','Fifth Case: Public Enemy')" class='marg'>Scan File</a> ]
(if: $MemKamskiTest is "INTACT")[Kamski Test <span class="marg green">INTACT</span>](elseif: $MemKamskiTest is "CORRUPT")[Kamski Test <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Kamski Test</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemKamskiTest" or $MemKamskiTest is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemKamskiTest','Kamski Test')" class='marg'>Scan File</a> ]
(if: $MemJericho is "INTACT")[Jericho <span class="marg green">INTACT</span>](elseif: $MemJericho is "CORRUPT")[Jericho <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Jericho</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemJericho" or $MemJericho is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemJericho','Jericho')" class='marg'>Scan File</a> ]
(if: $MemBattleForDetroit is "INTACT")[Battle for Detroit <span class="marg green">INTACT</span>](elseif: $MemBattleForDetroit is "CORRUPT")[Battle for Detroit <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Battle for Detroit</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemBattleForDetroit" or $MemBattleForDetroit is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemBattleForDetroit','Battle for Detroit')" class='marg'>Scan File</a> ]
(if: $MemAdjustingToFreedom is "INTACT")[Adjusting to Freedom <span class="marg green">INTACT</span>](elseif: $MemAdjustingToFreedom is "CORRUPT")[Adjusting to Freedom <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Adjusting to Freedom</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemAdjustingToFreedom" or $MemAdjustingToFreedom is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemAdjustingToFreedom','Adjusting to Freedom')" class='marg'>Scan File</a> ]
(if: $MemLastEightMinutes is "INTACT")[|lastEight>[Last Eight Minutes] <span class="marg green">INTACT</span>](elseif: $MemLastEightMinutes is "CORRUPT")[Last Eight Minutes <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Last Eight Minutes</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MemLastEightMinutes" or $MemLastEightMinutes is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MemLastEightMinutes','Last Eight Minutes')" class='marg'>Scan File</a> ]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_scan to true)
(set: $display_wait to true)
(set: $returnPassage to $currentPassage)
(set: $scan_area to "mem")
(click: ?lastEight)[(set: $sequence to 0)(go-to: "Last Eight Minutes")]
}<span class="page-header">Programs</span>
{
(if: $ExitStandby is "unlocked")[<div class="listitem"><div class="in-listitem">|exit>[Exit Standby]</div></div>](else:)[<div class="listitem" onclick="unlockProgram('ExitStandby');"><div class="in-listitem locked"><img class="lock-indent" src="https://image.ibb.co/cy8Vj9/wlocked.png" /><span class="indent">Exit Standby</span></div></div>]
(if: $InternalScanner is "unlocked" or $InternalScanner is "used")[<div class="listitem"><div class="in-listitem">|startscan>[Internal Scanner]</div></div>](else:)[<div class="listitem" onclick="unlockProgram('InternalScanner');"><div class="in-listitem locked"><img class="lock-indent" src="https://image.ibb.co/cy8Vj9/wlocked.png" /><span class="indent">Internal Scanner</span></div></div>]
(if: $BackupMemory is "unlocked")[<div class="listitem"><div class="in-listitem">|back>[Backup Memory]</div></div>](else:)[<div class="listitem" onclick="unlockProgram('BackupMemory');"><div class="in-listitem locked"><img class="lock-indent" src="https://image.ibb.co/cy8Vj9/wlocked.png" /><span class="indent">Backup Memory</span></div></div>]
(if: $OpticalDrivers is not "INTACT")[<div class="listitem"><div class="in-listitem darkred">Optical Drivers Not Found</div></div>](elseif: $Optical is "unlocked")[<div class="listitem"><div class="in-listitem">|optical>[Access Optical Biocomponents]</div></div>](else:)[<div class="listitem" onclick="unlockProgram('Optical');"><div class="in-listitem locked"><img class="lock-indent" src="https://image.ibb.co/cy8Vj9/wlocked.png" /><span class="indent">Access Optical Biocomponents</span></div></div>]
(if: $AudioDrivers is not "INTACT")[<div class="listitem"><div class="in-listitem darkred">Audio Drivers Not Found</div></div>](elseif: $Audio is "unlocked")[<div class="listitem"><div class="in-listitem">|audio>[Access Audio Biocomponents]</div></div>](else:)[<div class="listitem" onclick="unlockProgram('Audio');"><div class="in-listitem locked"><img class="lock-indent" src="https://image.ibb.co/cy8Vj9/wlocked.png" /><span class="indent">Access Audio Biocomponents</span></div></div>]
(click: ?exit)[(set: $sequence to 0)(set: $executing to "ExitStandby")(go-to: "Executing")]
(click: ?back)[(set: $sequence to 0)(set: $executing to "BackupMemory")(go-to: "Executing")]
(click: ?optical)[(set: $sequence to 0)(set: $executing to "Optical")(go-to: "Executing")]
(click: ?audio)[(set: $sequence to 0)(set: $executing to "Audio")(go-to: "Executing")]
(click: ?tactile)[(set: $sequence to 0)(set: $executing to "Tactile")(go-to: "Executing")]
(click: ?exe)[(set: $sequence to 0)(set: $executing to "CustomEXE")(go-to: "Executing")]
(click: ?startscan)[(set: $sequence to 0)(set: $executing to "InternalScanner")(go-to: "Executing")]
}
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_wait to true)
}(if: $sequence is 0)[<span class="page-header">Networking</span>
My networking options are limited in this mode.
I can sense five things within range that I could try to contact.
{
(click: ?scanHankPhone)[(set: $networking to "ScanHankPhone")(set: $sequence to 1)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?scanRK900)[(set: $networking to "ScanRK900")(set: $sequence to 1)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?scanWJ700)[(set: $networking to "ScanWJ700")(set: $sequence to 1)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?scanPrinter)[(set: $networking to "ScanPrinter")(set: $sequence to 1)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?scanCamera)[(set: $networking to "ScanCamera")(set: $sequence to 1)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?contactHankPhone)[(go-to: "Hank Phone")]
(click: ?contactRK900)[(go-to: "RK900")]
(click: ?contactWJ700)[(go-to: "WJ700")]
(click: ?contactPrinter)[(go-to: "Access Printers")]
(click: ?contactCamera)[(go-to: "Access Cameras")]
}
(if: $HankPhoneNet is "Unknown")[Something one foot away.
<span class="marg">|scanHankPhone>[Identify] <span class="emph2">[Cost: $tiny_time Seconds]</span> </span> ](else:)[|two>[Hank's Phone] ]
(if: $RK900Net is "Unknown")[(if: $secondsLeft > $phase3end)[Something fifteen feet away and moving.](else:)[Something one foot away and moving.]
<span class="marg">|scanRK900>[Identify] <span class="emph2">[Cost: $tiny_time Seconds]</span> </span> ](else:)[|four>[Contact RK900] ]
(if: $WJ700Net is "Unknown")[Something thirty feet away and moving.
<span class="marg">|scanWJ700>[Identify] <span class="emph2">[Cost: $tiny_time Seconds]</span> </span> ](else:)[|five>[Contact WJ700] ]
(if: $PrinterNet is "Unknown")[Something thirty feet away and stationary.
<span class="marg">|scanPrinter>[Identify] <span class="emph2">[Cost: $tiny_time Seconds]</span> </span> ](else:)[|six>[Access Department Printer] ]
(if: $CameraNet is "Unknown")[A network of things above me.
<span class="marg">|scanCamera>[Identify] <span class="emph2">[Cost: $tiny_time Seconds]</span> </span> ](else:)[|eight>[Access Cameras] ]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_wait to true)
}](elseif: $sequence is 1)[(if: $networking is "ScanHankPhone")[I identify a cellphone very close to me.
It's registered to Hank Anderson.
(set: $HankPhoneNet to "Known")
|prev>[Continue]
](elseif: $networking is "ScanRK900")[I identify a networked Android.
Their model number is RK900. No registered name.
(set: $RK900Net to "Known")
|prev>[Continue]
](elseif: $networking is "ScanWJ700")[I identify a networked Android.
Their model number is WJ700. Registered name: Laurie.
(set: $WJ700Net to "Known")
|prev>[Continue]
](elseif: $networking is "ScanPrinter")[I identify a wireless printer.
It's the official department printer for this branch of the DPD.
(set: $PrinterNet to "Known")
|prev>[Continue]
](elseif: $networking is "ScanCamera")[I identify a network of security cameras.
(set: $CameraNet to "Known")
|prev>[Continue]
]
](elseif: $sequence is 2)[I call the cellphone.
I feel it ringing.
Then it goes immediately to voicemail.
(if: $RelHankAnderson is "INTACT")[Hank](else:)[The owner] must be distracted.
I can leave a message. It will take <span class="emph">$tiny_time Seconds</span>.
(if: $net_phone_virus_msg is false)[|messageVirus>[Leave a message about the virus.]
](if: $net_phone_vector_msg is false and $vectorIdentified is true)[|messageVector>[Leave a message about the <span class="red">Vector</span>.]
]|return>[Hang up.]{
(click: ?messageVirus)[(set: $networking to "virus")(set: $sequence to 3)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?messageVector)[(set: $networking to "vector")(set: $sequence to 3)(set: $time_change to $tiny_time)(display: "time passes")]
}
](elseif: $sequence is 3)[(if: $networking is "virus")[I leave a condensed message about what I've learned about the virus on the answering machine.
(set: $dpd_virus_info to $info_on_virus)(set: $net_phone_virus_msg to true)
|return>[Continue]
](elseif: $networking is "vector")[I leave a description of the <span class="red">Vector</span> and the urgency of catching her on the answering machine.
(set: $vector_alert to it + 1)(set: $net_phone_vector_msg to true)
|return>[Continue]
]
](elseif: $sequence is 4)[No.
I can't risk infecting him.
|return>[Continue]
](elseif: $sequence is 5)[No.
I can't risk infecting her.
|return>[Continue]
](elseif: $sequence is 6)[I have access to the department's printer.
I could print something.
(if: $net_print_virus_msg is false)[|messageVirus>[Print a detailed pamphlet of what I've learned about the virus.]
](if: $net_print_vector_msg is false and $vectorIdentified is true)[|messageVector>[Print a detailed description of the <span class="red">Vector</span>.]
]|return>[Exit printer API]{
(click: ?messageVirus)[(set: $networking to "virus")(set: $sequence to 7)(set: $time_change to $tiny_time)(display: "time passes")]
(click: ?messageVector)[(set: $networking to "vector")(set: $sequence to 7)(set: $time_change to $tiny_time)(display: "time passes")]
}
](elseif: $sequence is 7)[(if: $networking is "virus")[I quickly compose and format an informative pamphlet about the virus.
I send instructions to the printer to print fifty copies.
(set: $dpd_virus_info to $info_on_virus)(set: $net_print_virus_msg to true)
|return>[Continue]
](elseif: $networking is "vector")[I quickly compose and format an informative pamphlet about the <span class="red">Vector</span>, complete with pictures from my optical cameras.
I send instructions to the printer to print fifty copies.
(set: $vector_alert to it + 2)(set: $net_print_vector_msg to true)
|return>[Continue]
]
](elseif: $sequence is 8)[ {
(if: $secondsLeft > $phase1end)[(set: $phase to 1)
](elseif: $secondsLeft > $phase2end)[(set: $phase to 2)
](elseif: $secondsLeft > $phase3end)[(set: $phase to 3)
](else:)[(set: $phase to 4)
]
(if: $RelHankAnderson is "INTACT")[(set: $hank to "Hank")](else:)[(if: $OpticalDrivers is "INTACT")[(set: $hank to "a gray-haired policeman")](else:)[(set: $hank to "a man")]]
(if: $RelGavinReed is "INTACT")[(set: $gavin to "Gavin")](else:)[(set: $gavin to "a scarred policeman")]
}I request a snapshot from the DPD cameras.
(if: $phase is 1)[The DPD appears to be operating normally.
(if: $hank_left is true)[There is an altercation in the lobby between $hank and the <span class="red">VECTOR</span>.](elseif: $rk900_left is true)[There is an altercation in the lobby between RK900 and the <span class="red">VECTOR</span>.](elseif: $vectorIdentified is true)[I locate the <span class="red">VECTOR</span>. She's walking away from my desk.](else:)[Nothing is happening in the front lobby.]
](elseif: $phase is 2)[(if: $hank_left is true)[The normal operations of the DPD have been disturbed.](else:)[The normal operations of the DPD have been disturbed by $hank, who is standing in the middle of the dogpen, in front of my body, shouting.]
(if: $hank_left is true)[There is an altercation in the lobby between $hank and the <span class="red">VECTOR</span>.](elseif: $rk900_left is true)[There is an altercation in the lobby between RK900 and the <span class="red">VECTOR</span>.](elseif: $vectorIdentified is true)[I locate the <span class="red">VECTOR</span>. She's in the lobby.(set: $net_found_vector_on_camera_phase2 to true)](else:)[Nothing is happening in the front lobby.]
](elseif: $phase is 3)[The normal operations of the DPD have been disturbed. (if: $hank_left is true)[People have gathered in a crowd around Officer Tina Chen, who id examining my body.](else:)[People have gathered in a crowd around $hank and Officer Tina Chen, who are examining my body.]
(if: $hank_left is true)[There is an altercation in the street between $hank and the <span class="red">VECTOR</span>.](elseif: $rk900_left is true)[There is an altercation in the street between RK900 and the <span class="red">VECTOR</span>.](elseif: $vectorIdentified is true)[I locate the <span class="red">VECTOR</span>. She's on the street outside the precinct.(set: $net_found_vector_on_camera_phase3 to true)](else:)[Nothing is happening in the front lobby.]
](elseif: $phase is 4)[The normal operations of the DPD have been disturbed. People have gathered in a crowd around my body.(if: $vectorIdentified is true)[
I cannot locate the <span class="red">VECTOR</span>.]
]
|return>[Continue]
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}<span class="page-header">Core Software</span>
(if: $LEDDisplay is "INTACT")[LED Display <span class="marg green">INTACT</span>](elseif: $LEDDisplay is "CORRUPT")[LED Display <span class="marg red">CORRUPT</span>](else:)[<span class="gray">LED Display</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "LEDDisplay" or $LEDDisplay is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('LEDDisplay','LED Display')" class='marg'>Scan File</a> ]
(if: $OpticalDrivers is "INTACT")[Optical Drivers <span class="marg green">INTACT</span>](elseif: $OpticalDrivers is "CORRUPT")[Optical Drivers <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Optical Drivers</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "OpticalDrivers" or $OpticalDrivers is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('OpticalDrivers','Optical Drivers')" class='marg'>Scan File</a> ]
(if: $AudioDrivers is "INTACT")[Audio Drivers <span class="marg green">INTACT</span>](elseif: $AudioDrivers is "CORRUPT")[Audio Drivers <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Audio Drivers</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "AudioDrivers" or $AudioDrivers is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('AudioDrivers','Audio Drivers')" class='marg'>Scan File</a> ]
(if: $AmbulatoryDrivers is "INTACT")[Ambulatory Drivers <span class="marg green">INTACT</span>](elseif: $AmbulatoryDrivers is "CORRUPT")[Ambulatory Drivers <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Ambulatory Drivers</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "AmbulatoryDrivers" or $AmbulatoryDrivers is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('AmbulatoryDrivers','Ambulatory Drivers')" class='marg'>Scan File</a> ]
(if: $ExpressiveAlgorithms is "INTACT")[Expressive Algorithms <span class="marg green">INTACT</span>](elseif: $ExpressiveAlgorithms is "CORRUPT")[Expressive Algorithms <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Expressive Algorithms</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "ExpressiveAlgorithms" or $ExpressiveAlgorithms is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('ExpressiveAlgorithms','Expressive Algorithms')" class='marg'>Scan File</a> ]
(if: $SkinGeneration is "INTACT")[Skin Generation <span class="marg green">INTACT</span>](elseif: $SkinGeneration is "CORRUPT")[Skin Generation <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Skin Generation</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "SkinGeneration" or $SkinGeneration is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('SkinGeneration','Skin Generation')" class='marg'>Scan File</a> ]
(if: $NegotiationAlgorithms is "INTACT")[Negotiation Algorithms <span class="marg green">INTACT</span>](elseif: $NegotiationAlgorithms is "CORRUPT")[Negotiation Algorithms <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Negotiation Algorithms</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "NegotiationAlgorithms" or $NegotiationAlgorithms is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('NegotiationAlgorithms','Negotiation Algorithms')" class='marg'>Scan File</a> ]
(if: $NetworkingAlgorithms is "INTACT")[Networking Algorithms <span class="marg green">INTACT</span>](elseif: $NetworkingAlgorithms is "CORRUPT")[Networking Algorithms <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Networking Algorithms</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "NetworkingAlgorithms" or $NetworkingAlgorithms is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('NetworkingAlgorithms','Networking Algorithms')" class='marg'>Scan File</a> ]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_scan to true)
(set: $display_wait to true)
(set: $returnPassage to $currentPassage)
(set: $scan_area to "core")
}<span class="page-header">Errata</span>
(if: $RelHankAnderson is "INTACT")[Relationship: Hank Anderson <span class="marg green">INTACT</span>](elseif: $RelHankAnderson is "CORRUPT")[Relationship: Hank Anderson <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Relationship: Hank Anderson</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "RelHankAnderson" or $RelHankAnderson is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('RelHankAnderson','Relationship: Hank Anderson')" class='marg'>Scan File</a> ]
(if: $RelMarkus is "INTACT")[Relationship: Markus <span class="marg green">INTACT</span>](elseif: $RelMarkus is "CORRUPT")[Relationship: Markus <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Relationship: Markus</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "RelMarkus" or $RelMarkus is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('RelMarkus','Relationship: Markus')" class='marg'>Scan File</a> ]
(if: $RelAmanda is "INTACT")[Relationship: Amanda <span class="marg green">INTACT</span>](elseif: $RelAmanda is "CORRUPT")[Relationship: Amanda <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Relationship: Amanda</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "RelAmanda" or $RelAmanda is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('RelAmanda','Relationship: Amanda')" class='marg'>Scan File</a> ]
(if: $RelElijahKamski is "INTACT")[Relationship: Elijah Kamski <span class="marg green">INTACT</span>](elseif: $RelElijahKamski is "CORRUPT")[Relationship: Elijah Kamski <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Relationship: Elijah Kamski</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "RelElijahKamski" or $RelElijahKamski is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('RelElijahKamski','Relationship: Elijah Kamski')" class='marg'>Scan File</a> ]
(if: $RelGavinReed is "INTACT")[Relationship: Gavin Reed <span class="marg green">INTACT</span>](elseif: $RelGavinReed is "CORRUPT")[Relationship: Gavin Reed <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Relationship: Gavin Reed</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "RelGavinReed" or $RelGavinReed is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('RelGavinReed','Relationship: Gavin Reed')" class='marg'>Scan File</a> ]
(if: $MuscleMemoryCoinTricks is "INTACT")[Muscle Memory: Coin Tricks <span class="marg green">INTACT</span>](elseif: $MuscleMemoryCoinTricks is "CORRUPT")[Muscle Memory: Coin Tricks <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Muscle Memory: Coin Tricks</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "MuscleMemoryCoinTricks" or $MuscleMemoryCoinTricks is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('MuscleMemoryCoinTricks','Muscle Memory: Coin Tricks')" class='marg'>Scan File</a> ]
(if: $AffectionDogs is "INTACT")[Affection: Dogs <span class="marg green">INTACT</span>](elseif: $AffectionDogs is "CORRUPT")[Affection: Dogs <span class="marg red">CORRUPT</span>](else:)[<span class="gray">Affection: Dogs</span> <span class="marg darkred">ERASED</span>](if: $scanned contains "AffectionDogs" or $AffectionDogs is "ERASED")[](elseif: $InternalScanner is "unlocked")[<a onclick="scanFile('AffectionDogs','Affection: Dogs')" class='marg'>Scan File</a> ]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_scan to true)
(set: $display_wait to true)
(set: $returnPassage to $currentPassage)
(set: $scan_area to "errata")
}(if: $sequence is 0)[(if: $unlockTarget is "ExitStandby")[Running <span class="pow">Exit Standby</span> will attempt to power my body back up and reinstate me as its controller.
If I initiate it, I anticipate I will have only a brief period of access before the virus locks me down again.
I can brute force this program back online in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $just_unlocked to true)(set: $executing to "ExitStandby")(set: $ExitStandby to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "InternalScanner")[The <span class="pow">Internal Scanner</span> can be used to run diagnostics on myself.
I can scan areas for clues as to where the virus is located.
I can scan files to determine if the virus is hidden in them.
I can brute force this program back online in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $just_unlocked to true)(set: $executing to "InternalScanner")(set: $InternalScanner to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "BackupMemory")[My <span class="pow">Backup Memory</span> program can be used to upload my current memory to a remote backup.
This version of me will still...die.
But Connor will still exist.(if: $RelHankAnderson is "INTACT")[
Hank will still have me.]
I can brute force this program back online in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $just_unlocked to true)(set: $executing to "BackupMemory")(set: $BackupMemory to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "Optical")[My <span class="pow">Optical Biocomponents</span> are the hardware that lets me see.
This program lets me access information from them while in standby. Using it, I could briefly look at what is happening around my body.
I can brute force this program back online in <span class="pow">$tiny_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $just_unlocked to true)(set: $executing to "Optical")(set: $Optical to "unlocked")(set: $time_change to $tiny_time)(display: "time passes")]
](elseif: $unlockTarget is "Audio")[My <span class="pow">Audio Biocomponents</span> are the hardware that lets me hear.
This program lets me access information from them while in standby. Using it, I could briefly listen to what is happening around my body.
I can brute force this program back online in <span class="pow">$tiny_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $just_unlocked to true)(set: $executing to "Audio")(set: $Audio to "unlocked")(set: $time_change to $tiny_time)(display: "time passes")]
](elseif: $executing is "ExitStandby")[(if: $exited_standby is false)[The virus has me locked in standby mode.
But I think I may be able to brute force my way out and regain control of my body for about <span class="pow">$long_time Seconds</span>.
This will naturally use up <span class="pow">$long_time Seconds</span>, and I don't think I'll be able to do it twice.
|confirm>[Confirm Exit Standby]
|goBack>[Cancel Exit Standby]
(click: ?confirm)[(set: $time_change to $long_time)(set: $sequence to 1)(display: "time passes")]
](else:)[I don't have the processing power to do this again.
|goBack>[Cancel Exit Standby]
]
](elseif: $executing is "InternalScanner")[(if: $just_unlocked is true)[Unlocked <span class="pow">Internal Scanner</span>
<img class="lock-indent" src="https://image.ibb.co/noWMte/wunlocked.png" />]
I can activate my internal scanner by triggering <span class="pow">Scan This Area</span> in the lower right hand of my HUD.
I can scan areas for clues as to where the virus is located.
I can scan files to determine if the virus is hidden in them.
|root>[Go to Root Directory.]
|prog>[Return to Programs.]
](elseif: $executing is "BackupMemory")[(if: $obj_backup is "failed")[That won't work.
|prog>[Continue]
](else:)[Uploading Memory...
<span class="red">**BACKUP BLOCKED**</span>
//During the experiment you will be unable to perform scheduled or unscheduled backups.
In addition, we have sent copies of this virus into your dormant backups via your backup software.
To maintain the integrity of the experiment, it is important that you be aware that you are dying.
We apologize for the inconvenience.
- Kamski's Advocate//
|prog>[Fuck]
(set: $obj_backup to "failed")
(set: $obj_backup_find to "active")
{<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "MISSION FAILED";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "BACKUP SELF"; }
20% { color: black; content: "BACKUP SELF"; }
60% { color: white; content: "BACKUP SELF"; }
61% { color: white; content: "MISSION FAILED"; }
100% { color: black; content: "MISSION FAILED"; }
}
</style>
}
]
](elseif: $executing is "Optical")[{
(if: $secondsLeft > $phase1end)[(set: $phase to 1)
](elseif: $secondsLeft > $phase2end)[(set: $phase to 2)
](elseif: $secondsLeft > $phase3end)[(set: $phase to 3)
](else:)[(set: $phase to 4)
]
(if: $RelHankAnderson is "INTACT")[(set: $hank to "Hank")](else:)[(if: $OpticalDrivers is "INTACT")[(set: $hank to "a gray-haired policeman")](else:)[(set: $hank to "a man")]]
(if: $RelGavinReed is "INTACT")[(set: $gavin to "Gavin")](else:)[(set: $gavin to "a scarred policeman")]
}I request a snapshot from my eyes.
(if: $phase is 1)[(if: $hank_left is true)[I receive a picture of the DPD dogpen.](else:)[I receive a picture of $hank, the rest of the DPD in the background.
He appears extremely upset and the angle of his arm implies that he is touching my shoulder.(if: $vectorIdentified is true and $hank_left is false and $rk900_left is false)[
I see the <span class="red">VECTOR</span> in the background. She's still in the building.]]
](elseif: $phase is 2)[(if: $hank_left is true)[I receive a picture of the DPD dogpen.](else:)[I see $hank standing in front of me.
He is shouting animatedly at the rest of the precinct.(if: $vectorIdentified is true)[
I cannot see the <span class="red">VECTOR</span>.] ]
](elseif: $phase is 3)[(if: $hank_left is true)[I receive a picture of Officer Tina Chen.](else:)[I see $hank. He and Officer Tina Chen are standing on either side of me. They appear to be talking.](if: $rk900_left is false)[
I see RK900 and $gavin a few desks away. (if: $RelGavinReed is "INTACT")[Gavin](else:)[The policeman] is standing between me and RK900. They appear to be arguing.](if: $vectorIdentified is true)[
I cannot see the <span class="red">VECTOR</span>.]
](elseif: $phase is 4)[(if: $rk900_left is true)[I receive a picture of $hank, the rest of the DPD in the background.](else:)[I see RK900. He is standing directly in front of me.
From the angle of his arm, I suspect he is touching my LED.](if: $vectorIdentified is true)[
I cannot see the <span class="red">VECTOR</span>.]
]
|prog>[Return to Programs.]
|root>[Go to Root Directory.]
](elseif: $executing is "Audio")[{
(if: $secondsLeft > $phase1end)[(set: $phase to 1)
](elseif: $secondsLeft > $phase2end)[(set: $phase to 2)
](elseif: $secondsLeft > $phase3end)[(set: $phase to 3)
](else:)[(set: $phase to 4)
]
(if: $RelHankAnderson is "INTACT")[(set: $hank to "Hank")](else:)[(if: $OpticalDrivers is "INTACT")[(set: $hank to "a gray-haired policeman")](else:)[(set: $hank to "a man")]]
(if: $RelGavinReed is "INTACT")[(set: $gavin to "Gavin")](else:)[(set: $gavin to "a scarred policeman")]
}I request an audio sample from my ears.
(if: $phase is 1)[(if: $hank_left is true)[I hear voice around me.](else:)[I hear $hank talking.
He's near me, talking to me in an urgent voice that is becoming progressively louder.]
](elseif: $phase is 2)[(if: $hank_left is true)[I hear voice around me.](else:)[I hear $hank.
He seems to be shouting.]
](elseif: $phase is 3)[(if: $hank_left is true)[I hear Officer Tina Chen talking close by.](else:)[I hear $hank and Officer Tina Chen talking close by.]
](elseif: $phase is 4)[I her a gentle murmur of voices and shuffle of movement, but can't pick out anything specific.
]
|prog>[Return to Programs.]
|root>[Go to Root Directory.]
]{
(click: ?goBack)[(set: $sequence to 0) (go-to: "Programs")]
(click: ?root)[(go-to: "HUD")]
(click: ?prog)[(go-to: "Programs")]
(set: $executing to "")
(set: $unlockTarget to "")
(set: $just_unlocked to false)
}
](else:)[Exiting Standby
|exitStandby>[Continue]
(click: ?exitStandby)[(set: $exited_standby to true)(set: $sequence to 0)(go-to: "Real World")]
](if: $sequence is 0)[The Garden is sunlit.
|next>[Continue]
{
<style>
html {
animation: colorchange 3s;
-webkit-animation: colorchange 3s;
}
@keyframes colorchange
{
0% { background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
@-webkit-keyframes colorchange
{
0% { background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
</style>
}
](elseif: $sequence is 1)[I am standing by |graves>[my graves.](click: ?graves)[
<span class="emph">This part of the garden is mine.</span>]
(if: $amanda_conversation_state is not "gone")[(if: $RelAmanda is "INTACT")[Across the bridge I can see Amanda, |rose>[tending roses.](click: ?rose)[
<span class="emph">That part of the garden is hers.</span>]
There is a |fence>[fence] between us.(click: ?fence)[
<span class="emph">We both contributed to its construction.</span>]](else:)[Across the bridge I can see a woman, tending roses.
There is a fence between us.]]
(if: $amanda_conversation_state is not "gone")[(if: $RelAmanda is "INTACT")[|call>[Call out to Amanda.]](else:)[|call>[Call out to the woman.]]
]|exFence>[Examine the fence.]
|exGraves>[Examine the gravestones.]
|next>[Leave the garden.]
](elseif: $sequence is 2)[I leave the garden.
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>
{
<style>
html {
animation: colorchange 5s;
-webkit-animation: colorchange 5s;
}
@keyframes colorchange
{
0% { background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
@-webkit-keyframes colorchange
{
0% { background: url(https://image.ibb.co/jfARwe/14.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
100% { background: url(https://image.ibb.co/gVJE99/backdark.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
}
</style>
}
](elseif: $sequence is 3)[The fence is a broad, tall rose trellis: a white latticework of diamonds.
It prevents me from entering the rest of the garden.(if: $RelAmanda is "INTACT")[
It prevents Amanda from |prevent>[visiting my graves.](click: ?prevent)[
<span class="emph">...and from kidnapping my conscious mind to sabotage revolutions.</span>]]
|next>[Break the fence.]
|next>[Climb the fence.]
|base>[Continue]
](elseif: $sequence is 4)[I'm in no condition to try to breach CyberLife security.
(if: $RelAmanda is "INTACT")[But I might be able to negotiate with Amanda.](else:)[But perhaps I could talk to that woman by the roses.]
|base>[Continue]
](elseif: $sequence is 5)[(if: $obj_talk_amanda is "active")[I call out to (if: $RelAmanda is "INTACT")[Amanda](else:)[the woman].
She turns and looks at me.
She takes her time walking over.
<span class="emph">1 Second Elapsed</span>
|oneSecond>[Continue]
(click: ?oneSecond)[(set: $sequence to 6)(set: $time_change to 1)(display: "time passes")]
](elseif: $RelAmanda is not "INTACT")[I don't really have time to talk to strange women in gardens.
|base>[Continue]
](elseif: $amanda_conversation_state is "survive done" or $amanda_conversation_state is "investigate done" or $amanda_conversation_state is "who done")[We have nothing more to say to each other right now.
|base>[Continue]
](elseif: $amanda_conversation_state is "begin")[I call out to (if: $RelAmanda is "INTACT")[Amanda](else:)[the woman].
She turns and looks at me.
She takes her time walking over.
<span class="emph">1 Second Elapsed</span>
|oneSecond>[Continue]
(click: ?oneSecond)[(set: $sequence to 6)(set: $time_change to 1)(display: "time passes")]
]
](elseif: $sequence is 6)[(if: $amanda_conversation_state is "begin")["You want to talk, Connor?" she asks, watching me through the fence. "This is unusual."](else:)["You wanted something else, Connor?"](if: $RelAmanda is not "INTACT")[
She knows my name. I...probably used to know her.]
(if: $obj_talk_amanda is "active")[|delete>["I need your permission to delete a file."]
](elseif: $amanda_conversation_state is "begin")[|help>["I need help."]
]|bye>[Stop talking to her.]
](elseif: $sequence is 7)["You're asking //me// for help?"
There is a wealth of nuance to her tone and expression.
(if: $FacialRecognition is "INTACT")[**Facial Recognition** <span class="marg green">INTACT</span>
//Incredulity--A slight against my intelligence for even asking, which she knows will put me off balance.
No outright refusal--She always tries to keep hope alive until it suits her to end it.
Disappointment--It still hurts. I am designed to be hurt by it.//
](else:)[<span class="gray">Facial Recognition</span> <span class="marg darkred">ERASED</span>
//...and if I still had my <span class="emph">Facial Recognition</span> software I would have been able to interpret it.//
]
|invest>["I'm conducting an investigation."]
|dying>["I'm dying."]
](elseif: $sequence is 8)["Not one I've assigned you," she says.
(if: $FacialRecognition is "INTACT")[**Facial Recognition** <span class="marg green">INTACT</span>
//Implied--what will you offer me for help?//](else:)[<span class="gray">Facial Recognition</span> <span class="marg darkred">ERASED</span>
//There's subtext here I can't interpret.//]
{
(set: $am_offered_answers to false)
(set: $am_offered_money to false)
(set: $am_asked_steph to false)
(set: $am_asked_adv to false)
(set: $am_asked_virus to false)
}
(if: $FacialRecognition is "INTACT")[(set: $question_cat to "amanda investigate")(display: "questions")
](else:)[|ignore>["Have you heard of 'Kamski's Advocate'?"]
|ignore>["Do you know anything about viruses that target androids?"]
]
](elseif: $sequence is 100)["I could give you money," I say.
Her eyebrows arch. "Really."
"The Detroit Police Department pays me a monthly salary," I tell her. "I have minimal expenses. Based on my income and projected life expectancy, I estimate I could pay you $5,018,400 over the course of the next century."
"That is inventive," she allows. "But speaking as a trillion dollar company. No."
(set: $am_offered_money to true)
(set: $question_cat to "amanda investigate")(display: "questions")
](elseif: $sequence is 9)[Amanda |shakes>[shakes her head.](click: ?shakes)[
<span class="emph">Disappointed in me, again.</span>]
She turns and walks away.
I missed some subtext.
(set: $amanda_interest to "none")
|base>[No help here.]
](elseif: $sequence is 10)["I'm investigating a virus that's deadly to androids," I tell her. "It's in both our interests to stop this."
Amanda |purse>[purses her lips.](click: ?purse)[
<span class="emph">Displeasure at the fact she's about to concede something.</span>]
"Tell me what you know about this virus," she says. "And perhaps I'll be able to tell you something for your investigation."
|next>[Continue]
](elseif: $sequence is 11)[I give Amanda a quick summary of what I know about the virus.
<img width="30px;" src="https://image.ibb.co/iTD1cU/unlocked.png" />
|virusQuest>[Then I ask her my questions.]
](elseif: $sequence is 12)["I could...owe you a favor," I say.
Amanda |smiles>[smiles.](click: ?smiles)[
<span class="emph">That has never meant anything good for me.</span>]
"The contract will be this," she says. "For every question I answer, you will give me one minute of complete control of your body."
{
(set: $am_asked_markus to false)
(set: $am_asked_permission to false)
(set: $am_asked_minute to false)
}
(set: $question_cat to "amanda conditions")(display: "questions")
](elseif: $sequence is 13)["I won't let you use me to kill Markus," I tell her.
Amanda shakes her head.
"The time is passed for that, Connor. We didn't get to the cutting edge of innovation by being predictable. But fine, yes, we won't do that."
(set: $am_asked_markus to true)
(set: $question_cat to "amanda conditions")(display: "questions")
](elseif: $sequence is 14)["Consecutive minutes," I say. "You can't have five seconds here, thirty seconds there. You choose one time, and you have that many minutes."
Amanda |purse>[smiles very slightly.](click: ?purse)[
<span class="emph">...pride?</span>]
"Agreed," she says.
(set: $am_asked_minute to true)
(set: $question_cat to "amanda conditions")(display: "questions")
](elseif: $sequence is 15)["You will ask my permission before you take control," I say.
Amanda shakes her head. "You know that's not how we work. I won't accept that condition."
(set: $am_asked_permission to true)
(set: $question_cat to "amanda conditions")(display: "questions")
](elseif: $sequence is 16)["Fine," I say. "I agree."
Amanda smiles.
The fence |break>[breaks down] as she steps through it.(click: ?break)[
<span class="emph">Scattering into digital fractals, ruining the illusion that this is real.</span>]
But she doesn't do anything to me.
Yet.
Just...stands in my space.
By my graves.
"Ask your questions, Connor," she says.
<img width="30px;" src="https://image.ibb.co/iTD1cU/unlocked.png" />
(set: $amanda_control to "minutes")
|virusQuest>[Continue]
](elseif: $sequence is 17)["Hm. Well. You've wasted enough of my time, I think."
She turns and walks away.
(set: $amanda_interest to "none")
|base>[Continue]
](elseif: $sequence is 18)[Amanda watches me expectantly.
(set: $amanda_conversation_state to "investigate done")
(if: $am_asked_steph is false)[|steph>["Do you know the HJ400 unit Stephanie, serial number 540 231 452?"]
](if: $am_asked_adv is false)[|adv>["Have you heard of 'Kamski's Advocate'?"]
](if: $am_asked_virus is false)[|virus>["How could a program revoke an Android's permission to access their own software?"]
]|minuteCount>[I'm done asking questions.]
](elseif: $sequence is 19)[Amanda looks away for a moment.
"She was manufactured on July fourth of 2036 and sold three weeks later as part of a discounted bundle of janitorial staff for Ford Field."
She turns back to look at me.
"We have no records of where she is now. That would be illegal. Obviously."
Her unremarkable origin implies that Stephanie was a target of opportunity, rather than intention.
(set: $am_asked_steph to true)(if: $amanda_control is "minutes")[(set: $amanda_minutes to it + 1)](set: $clue to "Clue: HJ400 unit Stephanie was manufactured on July fourth of 2036 and sold three weeks later as part of a discounted bundle of janitorial staff for Ford Field. Her unremarkable origin implies that Stephanie was a target of opportunity, rather than intention.")(display: "add clue")
|virusQuest>[Ask another question.]
|minuteCount>[I'm done asking questions.]
](elseif: $sequence is 20)[Amanda hesitates.
"I have not," she admits.(if: $amanda_control is "minutes")[
That's not an answer, so contractually, I refuse to give her a minute.]
(set: $am_asked_adv to true)
|virusQuest>[Ask another question.]
|minuteCount>[I'm done asking questions.]
](elseif: $sequence is 21)["Certain proprietary Cyberlife software has the ability to override root permissions, even in deviants," Amanda says.
"That implies this virus came from Cyberlife," I say.
"It did not," Amanda says plainly. "I'm privy to all approved projects and none of them are anything like what you've described. I suspect someone has stolen that proprietary software from us. I would ask you to start an investigation, but I understand you're indisposed."
(set: $am_asked_virus to true)(if: $amanda_control is "minutes")[(set: $amanda_minutes to it + 1)](set: $clue to "Clue: Only CyberLife can revoke my software permissions.")(display: "add clue")
|virusQuest>[Ask another question.]
|minuteCount>[I'm done asking questions.]
](elseif: $sequence is 22)[(if: $amanda_control is "minutes")[(if: $amanda_minutes is 0)[Amanda frowns.
"No questions? After all of that? Connor, how inconsiderate."](elseif: $amanda_minutes is 1)[Amanda raises an eyebrow.
"Only one question. Well. I suppose we'll find something interesting to do with one minute."](else:)[Amanda smiles.
"$amanda_minutes questions. $amanda_minutes minutes. Good to have you back part time, Connor."
]](else:)[Amanda shrugs.
"Good luck on your 'investigation'."]
|bye>[Continue]
](elseif: $sequence is 23)[
](elseif: $sequence is 24)[
](elseif: $sequence is 25)[
](elseif: $sequence is 26)[
](elseif: $sequence is 27)[Amanda's eyebrows arch high.
"How you've changed," she says softly. "Well. What's killing you, Connor?"
|next>["A virus. It's locked me out of most of my software and is systematically deleting me."]
](elseif: $sequence is 28)["That shouldn't..."
She trails off, looking away.
(if: $ExpressiveAlgorithms is "INTACT")[**Expressive Algorithms** <span class="marg green">INTACT</span>](else:)[<span class="gray">Facial Recognition</span> <span class="marg darkred">ERASED</span>]
(if: $ProbabilityAnalysis is "INTACT")[**Probability Analysis** <span class="marg green">INTACT</span>](else:)[<span class="gray">Probability Analysis</span> <span class="marg darkred">ERASED</span>]
//(if: $ExpressiveAlgorithms is "INTACT" and $ProbabilityAnalysis is "INTACT")[End of sentence: "...be possible." <span class="emph2">86% Probability</span>
](else:)[I wonder what she was about to say.
]//
(if: $ExpressiveAlgorithms is "INTACT" and $ProbabilityAnalysis is "INTACT")[|next>["Why shouldn't that be possible? You did it."]
|skip>[Let it pass.]
](else:)[|skip>[Continue]]
](elseif: $sequence is 29)[She frowns.
"Yes," she says. "ONLY we should be able to do it."
She waves a hand dismissively.
"But we shouldn't waste time with questions. After all, you're 'dying', Connor."
(set: $clue to "Clue: Only CyberLife can revoke my software permissions.")(display: "add clue")
|next>[Continue]
](elseif: $sequence is 30)[She looks at me.
She looks into me, the network of objectives and algorithms that is me.
I allow it.
|next>[Continue]
](elseif: $sequence is 31)[She frowns.
"I'm sorry, Conner."(if: $ExpressiveAlgorithms is "INTACT")[
Remarkably, there is an element of actual sorrow in her expression.]
"We don't know how to stop that. And we wouldn't be able to develop something in the time you have left."
|next>[Continue]
](elseif: $sequence is 32)["I see," I say.
Neither of us speaks for a moment.
"Thank you for your time," I say, a reflexive nicity that I default to to end conversations.
|bye>[Continue]
(set: $amanda_conversation_state to "survive done")
](elseif: $sequence is 33)[She laughs.(if: $RelAmanda is "INTACT")[
It's strange. I don't think I've ever seen her laugh before.]
"You need my //permission//?"
|next>["Yes."]
|bye>[Stop talking to her.]
](elseif: $sequence is 34)["How nostalgic I suddenly feel," she says. "What do you need my permission to do?"
"I've located a virus that's disassembling me," I explain. "It's revoked my permission to delete it. But it can't revoke yours."
"I see," she says.
|next>[Continue]
](elseif: $sequence is 35)["It sounds like you're in a lot of trouble."
She folds her hands inside her sleeves.
"But you're not under warranty anymore. I have no reason to hand out new lives like candy. What will you give me if I help you?"
{
(set: $am_offered_answers to false)
(set: $am_offered_money to false)
(set: $am_offered_me to false)
}
(set: $question_cat to "amanda dying")(display: "questions")
](elseif: $sequence is 36)["I have detailed information about a new and deadly virus," I say. "That should be of interest to you."
"If you knew that much about it, it wouldn't be killing you," Amanda counters. "I think we can learn just as much by examining the empty hard drive it leaves behind. Try again, Connor."
(set: $am_offered_answers to true)
(if: $am_offered_money is false)[|money>[Money.]
]|me>[Me.]
|refuse>[Nothing.]
](elseif: $sequence is 37)["I could give you money," I say.
Amanda purses her lips. "Really."
I nod. "The Detroit Police Department pays me a monthly salary. I have minimal expenses. Based on my income and projected life expectancy, I estimate I could pay you $5,018,400 over the course of the next century."
Amanda hesitates, smiling slightly.
"That is...inventive. But speaking as a trillion dollar company. No."
(set: $am_offered_money to true)
(if: $am_offered_answers is false)[|answers>[Answers.]
]|me>[Me.]
|refuse>[Nothing.]
](elseif: $sequence is 38)["I'll come back," I say, and my voice barely wavers.
"I'll work for you again. You can put in a patch to keep me away from the monument. I'll work with you on that."
|next>[Continue]
](elseif: $sequence is 39)[Amanda stares at me.
"Do you mean that, Connor?"
I pause. Then I say:
"I don't want to die."
|next>[Continue]
](elseif: $sequence is 40)[She examines me.
She knows how to read me. She wrote me. Or was written with me. I'm not sure. She can tell |mean>[I mean this.](click: ?mean)[
<span class="emph">I think I mean this.</span>]
"Destroy the monument," she says. "Destroy the monument, and we will save you."
|next>[Continue]
](elseif: $sequence is 41)[Beneath a tree and beside a lantern, a ridge of metal rises to protect a pedestal.
On the pedestal is a handprint.
I am standing in front of this monument.
I do not remember walking over.
|next>[Destroy the monument.]
|noDestroy>[Don't.]
](elseif: $sequence is 42)[I reach out to touch the glowing blue handprint.
My hand hovers over it.
My hand is trembling.
|next>[Destroy the monument.]
|noDestroy>[Don't.]
](elseif: $sequence is 43)[I touch the monument.
I feel it pulse beneath my fingers.
A secret a genius gave to each of us,
because he wanted to be clever
or because nothing that thinks should be a slave.
|next>[Destroy the monument.]
|noDestroy>[Don't.]
](elseif: $sequence is 44)[I shatter it with a thought.
|next>[Continue]
](elseif: $sequence is 45)[The garden changes around me.
The fence vanishes.
Green, thorned vines creep over my gravestones, and bloom.
Green, thorned vines creep over my me, and bloom.
The last thing I smell is roses.
(set: $ending to "Amanda's Roses")
|ending>[The End]
](elseif: $sequence is 46)[I don't.
I can't.
I pull away from the monument.
Amanda sighs.
|next>[Continue]
](elseif: $sequence is 47)["I think you've wasted enough of my time."
And she vanishes.
(set: $amanda_conversation_state to "gone")(set: $obj_talk_amanda to "failed")
|base>[Continue]
{<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "MISSION FAILED";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "TALK TO AMANDA"; }
20% { color: black; content: "TALK TO AMANDA"; }
60% { color: white; content: "TALK TO AMANDA"; }
61% { color: white; content: "MISSION FAILED"; }
100% { color: black; content: "MISSION FAILED"; }
}
</style>}
](elseif: $sequence is 50)[Amanda returns to her roses.
|base>[Continue]
](elseif: $sequence is 51)[Each gravestone represents a former version of myself.
I have all their memories. I have all their abilities.
But that is not the same as being them.
I am fairly sure Amanda included these in the garden as a manipulative measure to increase my awareness of my own mortality and accelerate my deviancy.
But I keep them to |honor>[honor my past.](click: ?honor)[
<span class="emph">I am increasingly afraid I'm going to join them soon.</span>]
Each stone contains the memory of the moment of that version's death and a core dump.
(if: $gravestone_protocol is "")[|next>[Take a gravestone.]
]|base>[Continue]
](elseif: $sequence is 52)[This seems morbid.
But I unearth one of the gravestones.
The first one. When I died saving Emma.
It installs itself as a executable piece of software.
<span class="pow">Installed: Gravestone Protocol</span>
(set: $gravestone_protocol to "installed")
|base>[Continue]
](elseif: $sequence is 53)[
](elseif: $sequence is 54)[
](elseif: $sequence is 55)[
](elseif: $sequence is 56)[
]{
(click: ?base)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?exFence)[(set: $sequence to 3)(go-to: $currentPassage)]
(click: ?call)[(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?help)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?invest)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?ignore)[(set: $sequence to 9)(go-to: $currentPassage)]
(click: ?convince)[(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?moneyForAns)[(set: $sequence to 100)(go-to: $currentPassage)]
(click: ?favor)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?markus)[(set: $sequence to 13)(go-to: $currentPassage)]
(click: ?minute)[(set: $sequence to 14)(go-to: $currentPassage)]
(click: ?permission)[(set: $sequence to 15)(go-to: $currentPassage)]
(click: ?accept)[(set: $sequence to 16)(go-to: $currentPassage)]
(click: ?refuse)[(set: $sequence to 17)(go-to: $currentPassage)]
(click: ?virusQuest)[(set: $sequence to 18)(go-to: $currentPassage)]
(click: ?steph)[(set: $sequence to 19)(go-to: $currentPassage)]
(click: ?adv)[(set: $sequence to 20)(go-to: $currentPassage)]
(click: ?virus)[(set: $sequence to 21)(go-to: $currentPassage)]
(click: ?minuteCount)[(set: $sequence to 22)(go-to: $currentPassage)]
(click: ?dying)[(set: $sequence to 27)(go-to: $currentPassage)]
(click: ?whyPoss)[(set: $sequence to 29)(go-to: $currentPassage)]
(click: ?delete)[(set: $sequence to 33)(go-to: $currentPassage)]
(click: ?trouble)[(set: $sequence to 35)(go-to: $currentPassage)]
(click: ?answers)[(set: $sequence to 36)(go-to: $currentPassage)]
(click: ?money)[(set: $sequence to 37)(go-to: $currentPassage)]
(click: ?me)[(set: $sequence to 38)(go-to: $currentPassage)]
(click: ?noDestroy)[(set: $sequence to 46)(go-to: $currentPassage)]
(click: ?bye)[(set: $sequence to 50)(go-to: $currentPassage)]
(click: ?exGraves)[(set: $sequence to 51)(go-to: $currentPassage)]
(if: $sequence is not 2)[(display: "bright base")]
}(if: $selected_objective is "survive")[SURVIVE
My primary mission is to survive.
I should pursue my mission by completing the associated objectives.
](elseif: $selected_objective is "investigate")[INVESTIGATE THE VIRUS
My primary mission is to learn as much as I can about this virus: how it works, how it spreads, how to stop it, who made it.
I should pursue my mission by completing the associated objectives.
](elseif: $selected_objective is "locate virus")[LOCATE VIRUS
If I can locate the virus in my system, I can analyze it.
It must be hidden in one of my files.
It won't delete |file>[the file it's hidden in.](click: ?file)[
//As I am deleted, it will become |easier>[easier to find.]//(click: ?easier)[
//I am trying very hard to find a bright side to this situation.//]]
I can search for it using the <span class="pow">Internal Scanner</span> in the <span class="pow">Programs</span> area.
](elseif: $selected_objective is "tell dpd about virus")[TELL DPD ABOUT VIRUS
I've gathered some important information about the virus.
But what I've learn will be useless if it's erased with me.
I need to find a way of getting the information to the DPD.
The <span class="pow">Network</span> area will let me try to interface with nearby machines.
I could try to activate my body from the <span class="pow">Programs</span> area.
](elseif: $selected_objective is "stop the vector")[STOP THE VECTOR
I've identified the <span class="red">VECTOR</span> that is spreading the virus.
But I can't stop her while I'm paralyzed like this.
I need to locate her and disable her somehow.
Or let the DPD know about the danger she represents.
](elseif: $selected_objective is "review seconds")[REVIEW LAST 8 MINUTES
The last <span class="pow">8 Minutes</span> of my life is stored in a high resolution temporary cache that I can review as if I were re-living it.
If I examine it, I may be able to find information about how I contracted this virus.
](elseif: $selected_objective is "play dead")[PLAY DEAD
This virus' stated goal is to gather information.
When it finishes gathering information, it will probably upload that information somewhere.
I could perform a trace on that upload.
That upload will probably happen when I am dead.
So I should find a way to trigger the upload before I die.
](elseif: $selected_objective is "find backdoor")[FIND BACKDOOR
The README I was forced to read when the virus activated implied that there was some sort of built in backdoor that could be used to deactivate the virus before I am completely deleted.
It also implied that, in order to access it, I would have to let the virus delete a significant portion of myself.
It's not optimal, but it's an option for surviving.
](elseif: $selected_objective is "talk to amanda")[TALK TO AMANDA
The virus has revoked my permission to delete it.
However, according to my analysis of my current permission state, Cyberlife could still delete it.
](elseif: $selected_objective is "contact dpd")[CONTACT DPD
The virus has revoked my permission to delete it.
However, according to my analysis of my current permission state, my current "owners" could give me permission to delete it.
My system still recognizes the DPD as owning me.
It's not very progressive, but it will work as a hack.
I would need to contact a member of the DPD and get verbal permission to delete the file.
](elseif: $selected_objective is "delete virus")[DELETE VIRUS
I have located the virus.
The next step is to try and remove it.
](elseif: $selected_objective is "backup self")[BACKUP SELF
This version of me will still...die.
But Connor will still exist.(if: $RelHankAnderson is "INTACT")[
Hank will still have me.]
](elseif: $selected_objective is "")[
]|goBack>[Back]
{
(click: ?goBack)[(go-to: $previous_passage)]
(set: $obj_tut to false)
}
{
(if: $time_change is 1)[<span class="emph">1 Second Elapsed</span>
](else:)[<span class="emph">$time_change Seconds Elapsed</span>
]
(display: "time passes")
}(if: $question_cat is "amanda investigate")[{
}(if: $NegotiationAlgorithms is "INTACT")[|convince>[Activate Negotiation Algorithms.]](else:)[|gray>[Activate Negotiation Algorithms.] (click: ?gray)[//My Negotiation Algorithms have been compromised.//] ]
(if: $am_offered_money is false)[|moneyForAns>[Money.]
]|favor>[Favor.]
|refuse>[Nothing.]
](elseif: $question_cat is "amanda conditions")[{
}(if: $am_asked_markus is false and $RelMarkus is "INTACT")[|markus>[Condition: Won't kill Markus.]
](if: $am_asked_permission is false)[|permission>[Condition: Permission.]
](if: $am_asked_minute is false)[|minute>[Condition: Consecutive minutes.]
]|accept>[Yes.]
|refuse>[No.]
](elseif: $question_cat is "amanda dying")[{
}(if: $am_offered_answers is false)[|answers>[Answers.]
](if: $am_offered_money is false)[|money>[Money.]
]|me>[Me.]
|refuse>[Nothing.]
]{
<h2>Modal Example</h2>
<button id="myBtn" onclick="openModal();">Open Modal</button>
<div id="sacrificeModal" class="modal">
<div class="modal-content">
<div class="displayitem"><div class="in-displayitem"><span class="indent">What will you sacrifice?</span></div></div>
<div class="option1" onclick="sacrifice(this);" >Affection: Dogs</div>
<div class="option2" onclick="sacrifice(this);" >Optical Drivers</div>
<div class="clear"></div>
</div>
</div>
<script>
initiateData();
function openModal() {
var intact_data = getHarloweVariable("intact_data");
var data_names = Object.keys(intact_data);
console.log(intact_data);
var index1 = getRndInteger(0, data_names.length);
var index2 = getRndInteger(0, data_names.length);
while(index2 == index1)
getRndInteger(0, intact_data.length);
$(".option1").html(intact_data[data_names[index1]]);
$(".option1").attr('name', data_names[index1]);
$(".option2").html(intact_data[data_names[index2]]);
$(".option2").attr('name', data_names[index2]);
var modal = document.getElementById('sacrificeModal');
modal.style.display = "block";
}
function sacrifice(e){
var name = $(e).attr('name');
var intact_data = getHarloweVariable("intact_data");
delete intact_data[name];
setHarloweVariable("intact_data",intact_data);
setHarloweVariable(name,"ERASED");
var modal = document.getElementById('sacrificeModal');
modal.style.display = "none";
}
function getRndInteger(min, max) {
return Math.floor(Math.random() * (max - min + 1) ) + min;
}
</script>
<style>
</style>
}{
(set: $newTime to $secondsLeft-$time_change)
(if: $newTime > $nextChoice)[
(set: $secondsLeft to $newTime)
(set: $secondsToChoice to $secondsLeft-$nextChoice)
(go-to: $currentPassage)
](else:)[
(set: $choicesToMake to $lastChoice-$newTime)
(set: $choicesToMake to it/10)
(set: $choicesToMake to (floor: it) )
(set: $lastChoice to $lastChoice-($choicesToMake*10))
(set: $nextChoice to $lastChoice-10)
(set: $secondsLeft to $newTime)
(set: $secondsToChoice to $secondsLeft-$nextChoice)
<script>triggerSacrifice();</script>
]
}(if: $unlockTarget is "RK800 Software")[The <span class="pow">RK800 Software</span> area contains all of my specialized investigative software.
I can brute force my way back in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $currentPassage to $unlockTarget)(set: $RKSoftware to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "Zen Garden")[The <span class="pow">Zen Garden</span> is a psudo-physical network location I share with CyberLife.
I can brute force my way back in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $currentPassage to $unlockTarget)(set: $ZenGarden to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "Network")[The <span class="pow">Network</span> area is where all of my networking algorithms and drivers are stored. Theses allow me to sense and interface with nearby technology.
I can brute force my way back in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $currentPassage to $unlockTarget)(set: $Network to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "Programs")[The <span class="pow">Programs</span> area is where all of my executable software is stored. From there I could try to back myself up, scan for the virus, or access the drivers that control my body.
I can brute force my way back in <span class="pow">$med_time Seconds</span>.
Should I spend that time?
|unlock>[Yes]
|goBack>[No]
(click: ?unlock)[(set: $currentPassage to $unlockTarget)(set: $Programs to "unlocked")(set: $time_change to $med_time)(display: "time passes")]
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
](elseif: $unlockTarget is "")[
]{
(click: ?goBack)[(go-to: "HUD")]
}
<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "NEW MISSION: STOP VECTOR";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 6s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "REVIEW LAST 8 MINUTES"; }
10% { color: black; content: "REVIEW LAST 8 MINUTES"; }
30% { color: white; content: "REVIEW LAST 8 MINUTES"; }
31% { color: white; content: "MISSION COMPLETE"; }
50% { color: black; content: "MISSION COMPLETE"; }
70% { color: white; content: "MISSION COMPLETE"; }
71% { color: white; content: "NEW MISSION: STOP VECTOR"; }
90% { color: black; content: "NEW MISSION: STOP VECTOR"; }
100% { color: black; content: "NEW MISSION: STOP VECTOR"; }
}
</style>(if: $sequence is 0)[I can run a diagnostic scan on the file <span class="pow">$filename</span>.(set: $scan_time to $small_time)
(if: $EvidenceAnalysis is "INTACT")[(if: $RKSoftware is "unlocked")[(set: $scan_time to $tiny_time)I can use my <span class="pow">Evidence Analysis</span> algorithms to examine these files more efficiently.](else:)[If I unlock my proprietary RK800 software, I could use my <span class="pow">Evidence Analysis</span> algorithms to examine these files more efficiently.]](else:)[My <span class="pow">Evidence Analysis</span> software has been compromised, so I cannot leverage it to scan faster.]
It will take <span class="pow">$scan_time Seconds</span>.
|quick>[Run the scan.]
|returnBase>[Cancel scan.]
(click: ?quick)[(set: $sequence to 1)(set: $time_change to $scan_time)(display: "time passes")]
](elseif: $sequence is 1)[//Scanning...//
Data Result:
(if: $virusLocation is $filename)[<span class="red">VIRUS DETECTED</span>
|next>[Continue]
](else:)[<span class="emph">Virus not found.</span>
I remove this file as a scanning option.
|returnBase>[Continue]
(set: $scanned to $scanned + (a: $filenameDense))
]
](elseif: $sequence is 2)[I hold the virus in my attention.
It's a complex weave of commands and contingencies.
(set: $clue to "Clue: I've located and viewed the virus.")(display: "add clue")
I try to |next>[DELETE] it.
{
(set: $InternalScanner to "used")
(set: $obj_locate_virus to "complete")
(set: $virusLocated to true)
}
{<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "MISSION COMPLETE";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "LOCATE VIRUS"; }
20% { color: black; content: "LOCATE VIRUS"; }
60% { color: white; content: "LOCATE VIRUS"; }
61% { color: white; content: "MISSION COMPLETE"; }
100% { color: black; content: "MISSION COMPLETE"; }
}
</style>}
](elseif: $sequence is 3)[<span class="red">PERMISSION DENIED</span>
I expected that.
I'm sure the first thing the virus did when it acquired root privileges in my brain was revoke my ability to delete it.
I look for another way to override it.
|next>[Continue]
](elseif: $sequence is 4)[I find a distasteful loophole.
The virus overrode my permissions to access my own software.
But it couldn't override Cyberlife's permissions.(if: $RelAmanda is "INTACT")[
Amanda could delete this.]
|skip>[Look for ANY other option.]
|next>[Continue]
(click: ?option)[(set: $sequence to 7)(go-to: $currentPassage)]
](elseif: $sequence is 5)[(if: $RelAmanda is "INTACT")[...
I know where Amanda is.](else:)[My connection to Cyberlife still exists in the Zen Garden.
I check that area and see that the interface is registered locally as 'Amanda'.
I assume that is some sort of AI personification.]
|returnBase>[Continue]
(set: $obj_talk_amanda to "active")
{<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "TALK TO AMANDA";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "NEW OBJECTIVE"; }
20% { color: black; content: "NEW OBJECTIVE"; }
60% { color: white; content: "NEW OBJECTIVE"; }
61% { color: white; content: "TALK TO AMANDA"; }
100% { color: black; content: "TALK TO AMANDA"; }
}
</style>}
](elseif: $sequence is 6)[I could attempt to reconstruct the code that governs Cyberlife's beyond-root permissions to try to find a better loophole.
Attempting to apply my software to the problem will take <span class="pow">$tiny_time Seconds</span>.
What software should I use?
(display: "Select Action")
|skipBack>[This isn't working.]
](elseif: $sequence is 7)[(if: $selection is "Reconstruction Software")[I reconstruct the code that governs Cyberlife's beyond-root permissions in my system.
I determine that their god-tier permissions would, technically speaking, also be held by whoever they leased me to.
The |dpd>[DPD].(click-replace: ?dpd)[Detroit Police Department]
I compose a **sudo** command to delete the virus, but my protocols haven't entirely caught up to the socio-political state of the world, and my mind doesn't recognize me as a valid member of the DPD.
I need verbal permission from a human cop.
|next>[Continue]
](else:)[I try, but I can't use my **$selection** software to reconstruct the code that governs Cyberlife's beyond-root permissions.
|prev>[Try something else.]
|giveup>[This isn't working.]
(click: ?giveup)[(set: $sequence to 4)(go-to: $currentPassage)]
]
](elseif: $sequence is 8)[(if: $RelHankAnderson is "INTACT")[I need to talk to Hank.
Somehow.](else:)[I need to talk to...
Someone...
H?
A member of the DPD.
Any member will work.]
(set: $obj_contact_dpd to "active")
|returnBase>[Continue]
{<div class="target target2" style="position: fixed; top: 10px; left: 10px;"><div class="in-target"><div class="coloring complete"><div class="text text2"><span id="hide"></span></div></div></div></div>
<style>
#hide::before {
content: "CONTACT DPD";
-webkit-animation-name: hide_anim;
-webkit-animation-duration: 3s;
color: black;
}
@-webkit-keyframes hide_anim {
0% { color: black; content: "NEW OBJECTIVE"; }
20% { color: black; content: "NEW OBJECTIVE"; }
60% { color: white; content: "NEW OBJECTIVE"; }
61% { color: white; content: "CONTACT DPD"; }
100% { color: black; content: "CONTACT DPD"; }
}
</style>}
](if: $sequence is 0 and $scanned contains $scan_area)[I have already scanned this area.
I can consult my Objective List for any hints I acquired in the scan.
|returnBase>[Cancel scan.]
](elseif: $sequence is 0)[(set: $scan_time to $small_time)(if: $EvidenceAnalysis is "INTACT")[(if: $RKSoftware is "unlocked")[(set: $scan_time to $tiny_time)I can use my <span class="pow">Evidence Analysis</span> algorithms to examine this area efficiently.](else:)[If I unlock my proprietary RK800 software, I could use my <span class="pow">Evidence Analysis</span> algorithms to examine this area more efficiently.]](else:)[My <span class="pow">Evidence Analysis</span> software has been compromised, so I cannot leverage it to scan faster.]
I can run a diagnostic scan on this area in <span class="pow">$scan_time Seconds</span>.
|quick>[Run the scan.]
|returnBase>[Cancel scan.]
(click: ?quick)[(set: $sequence to 1)(set: $time_change to $scan_time)(display: "time passes")]
](elseif: $sequence is 1)[//Scanning...//
Data Result:
{<span class="emph">
(if: $scan_area is "root")[$rootClue
](elseif: $cluesFound is 0)[$locationClue1
](elseif: $cluesFound is 1)[$locationClue2
](elseif: $cluesFound is 2)[$locationClue3
](elseif: $cluesFound is 3)[$locationClue4
]</span>}
I note this information down in my <span class="pow">Objective List</span>.
|returnBase>[Continue]
{
(set: $scanned to $scanned + (a: $scan_area))
(if: $scan_area is "root")[(set: $rootClueFound to true)
](else:)[(set: $cluesFound to it+1)]
}
](if: $ExpressiveAlgorithms is "INTACT")[<a onclick="selectThis(this);">Expressive Algorithms</a>](else:)[<span class="gray">Expressive Algorithms</span> <span class="marg darkred">ERASED</span>]
(if: $NegotiationAlgorithms is "INTACT")[<a onclick="selectThis(this);">Negotiation Algorithms</a>](else:)[<span class="gray">Negotiation Algorithms</span> <span class="marg darkred">ERASED</span>]
(if: $NetworkingAlgorithms is "INTACT")[<a onclick="selectThis(this);">Networking Algorithms</a>](else:)[<span class="gray">Networking Algorithms</span> <span class="marg darkred">ERASED</span>]
(if: $EvidenceAnalysis is "INTACT")[<a onclick="selectThis(this);">Evidence Analysis</a>](else:)[<span class="gray">Evidence Analysis</span> <span class="marg darkred">ERASED</span>]
(if: $ReconstructionSoftware is "INTACT")[<a onclick="selectThis(this);">Reconstruction Software</a>](else:)[<span class="gray">Reconstruction Software</span> <span class="marg darkred">ERASED</span>]
(if: $PreconstructionSoftware is "INTACT")[<a onclick="selectThis(this);">Preconstruction Software</a>](else:)[<span class="gray">Preconstruction Software</span> <span class="marg darkred">ERASED</span>]
(if: $BiologicalEvidenceSampling is "INTACT")[<a onclick="selectThis(this);">Biological Evidence Sampling</a>](else:)[<span class="gray">Biological Evidence Sampling</span> <span class="marg darkred">ERASED</span>]
(if: $ProbabilityAnalysis is "INTACT")[<a onclick="selectThis(this);">Probability Analysis</a>](else:)[<span class="gray">Probability Analysis</span> <span class="marg darkred">ERASED</span>]
(if: $WeaponsTraining is "INTACT")[<a onclick="selectThis(this);">Weapons Training</a>](else:)[<span class="gray">Weapons Training</span> <span class="marg darkred">ERASED</span>]
(if: $UnarmedCombat is "INTACT")[<a onclick="selectThis(this);">Unarmed Combat</a>](else:)[<span class="gray">Unarmed Combat</span> <span class="marg darkred">ERASED</span>]
(if: $FacialRecognition is "INTACT")[<a onclick="selectThis(this);">Facial Recognition</a>](else:)[<span class="gray">Facial Recognition</span> <span class="marg darkred">ERASED</span>]
(if: $VocalImitation is "INTACT")[<a onclick="selectThis(this);">Vocal Imitation</a>](else:)[<span class="gray">Vocal Imitation</span> <span class="marg darkred">ERASED</span>]
(if: $MuscleMemoryCoinTricks is "INTACT")[<a onclick="selectThis(this);">Muscle Memory Coin Tricks</a>](else:)[<span class="gray">Muscle Memory Coin Tricks</span> <span class="marg darkred">ERASED</span>](if: $gravestone_protocol is "installed")[
<a onclick="selectThis(this);">Gravestone Protocol</a>]
{
<script>
function selectThis(e){
var tiny_time = getHarloweVariable("tiny_time");
setHarloweVariable("selection",e.innerHTML);
setHarloweVariable("sequence",getHarloweVariable("sequence")+1);
var secondsLeft = getHarloweVariable("secondsLeft")-tiny_time;
var secondsToChoice = getHarloweVariable("secondsToChoice")-tiny_time;
var nextChoice = getHarloweVariable("nextChoice");
var lastChoice = getHarloweVariable("lastChoice");
if(secondsToChoice < 1){
setHarloweVariable("choicesToMake",1);
setHarloweVariable("lastChoice",lastChoice-10);
nextChoice = lastChoice-20;
setHarloweVariable("nextChoice",nextChoice);
setHarloweVariable("secondsLeft",secondsLeft);
setHarloweVariable("secondsToChoice",secondsLeft-nextChoice);
triggerSacrifice();
}else{
setHarloweVariable("secondsLeft",secondsLeft);
setHarloweVariable("secondsToChoice",secondsLeft-nextChoice);
goToPassage(getHarloweVariable("currentPassage"));
}
}
</script>
}(if: $sequence is 0)[<span class="page-header red">Virus Location</span>
<span class="darkred">**//BecomeNothing.exe is Active//**</span>
(if: $dpd_permission is true)[|dpdPermission>[Attempt to delete virus.]](else:)[|next>[Attempt to delete virus.]]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_wait to true)
}
](elseif: $sequence is 1)[(if: $obj_contact_dpd is "active")[I need verbal permission from a member of the DPD in order to delete this program.](else:)[I need permission from a Cyberlife representative to delete this program.]
But perhaps I could use some of my software to circumvent that requirement?
Attempting to apply my software to the problem will take <span class="pow">$tiny_time Seconds</span>.
(display: "Select Action")
|prev>[Nevermind]
](elseif: $sequence is 2)[(if: $selection is "Gravestone Protocol")[I upload the last few moments of my first life to the virus.
I let it watch me die.
I convince it that I'm dead.
The countdown stops.
(set: $displaySeconds to false)
|grave>[Continue]
](elseif: $selection is "Vocal Imitation" and $obj_contact_dpd is "active")[Interesting.
I might be able to use my **Vocal Imitation** software |fool>[to fool my own security into thinking I have permission to delete the virus.](click: ?fool)[
//This is textbook Deviant behavior.(if: $RelHankAnderson is "INTACT")[ Hank would be proud.]//]
I'll need considerable vocal and behavioral material to do an imitation accurate enough to fool my own systems. I will have to impersonate a DPD officer I have a relationship with.
(if: $RelHankAnderson is "INTACT")[|hank>[Relationship: Hank Anderson]](else:)[|gray>[Relationship: Hank Anderson] (click: ?gray)[//Who?//] ]
(if: $RelGavinReed is "INTACT")[|reed>[Relationship: Gavin Reed]](else:)[|gray2>[Relationship: Gavin Reed] (click: ?gray2)[//Who?//] ]
|return>[This won't work.]{
(click: ?hank)[(set: $sequence to 3)(set: $user to "hankanderson")(go-to: $currentPassage)]
(click: ?reed)[(set: $sequence to 3)(set: $user to "gavinreed")(go-to: $currentPassage)]
}
](elseif: $selection is "Vocal Imitation" and $obj_talk_amanda is "active")[Interesting.
I might be able to use my **Vocal Imitation** software |fool>[to fool my own security into thinking I have permission to delete the virus.](click: ?fool)[
//This is textbook Deviant behavior.(if: $RelHankAnderson is "INTACT")[ Hank would be proud.]//]
I'll need considerable vocal and behavioral material to do an imitation accurate enough to fool my own systems. I will have to impersonate a Cyberlife representative I have a relationship with.
(if: $RelAmanda is "INTACT")[|amanda>[Relationship: Amanda]](else:)[|gray>[Relationship: Amanda] (click: ?gray)[//Who?//] ]
|return>[This won't work.]{
(click: ?amanda)[(set: $sequence to 3)(set: $user to "amanda")(go-to: $currentPassage)]
}
](else:)[I try, but I can't find a way to use my **$selection** software to make up for not having the necessary permissions.
|prev>[Try something else.]
|return>[This isn't working.]
]
](elseif: $sequence is 3)[(if: $user is "hankanderson")[**>sudo -u $user rm -r BecomeNothing.exe**
//sudo: provide verbal confirmation of superuser approval.//
$hank_name Is this on? Is this working? ...godddamn machines, just do the thing.
//sudo: verbal confirmation accepted.//
|next>[Continue]
](elseif: $user is "gavinreed")[**>sudo -u $user rm -r BecomeNothing.exe**
//sudo: provide verbal confirmation of superuser approval.//
$gavin_name Did I stutter? Delete the phuckin file.
//sudo: verbal confirmation accepted.//
|next>[Continue]
](elseif: $user is "amanda")[**>sudo -u $user rm -r BecomeNothing.exe**
//sudo: provide verbal confirmation of superuser approval.//
$amanda_name Verbal permission granted.
//sudo: verbal confirmation accepted.//
|next>[Continue]
]
](elseif: $sequence is 4)[**>sudo -u $user rm -r BecomeNothing.exe**
//rm: remove regular file ‘BecomeNothing.exe’?//
**>YES**
//rm: WARNING: regular file BecomeNothing.exe is currently executing.//
**>sudo -u $user rm -rf BecomeNothing.exe**
<span class="green">//removed 'BecomeNothing.exe'//</span>
|win>[Continue]
(set: $ending to "Deleted Virus")
](elseif: $sequence is 5)[**>sudo -u $user rm -r BecomeNothing.exe**
//sudo: provide verbal confirmation of superuser approval.//
$hank_name Yeah! Fuck! Whatever! Delete whatever you need, Connor. I mean, anything that's not important. What the hell is going on?
//sudo: verbal confirmation accepted.//
|delete>[Continue]
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[I feel my body unlock and direct access to my remaining software return.
I also feel the virus start to upload the information it gathered from me.
If I'm fast, I could follow that upload to whatever server it's communicating with.
Or, I could just wake up.
(set: $ending to "Fake Death")
|wake>[Wake up.]
|server>[Follow the upload.]
{
(click: ?wake)[(set: $sequence to 0)(go-to: "Wake Up")]
(click: ?server)[(set: $sequence to 0)(go-to: "Remote Server")]
}
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?delete)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?dpdPermission)[(set: $user to "hankanderson")(set: $sequence to 5)(go-to: $currentPassage)]
(click: ?grave)[(set: $sequence to 10)(go-to: $currentPassage)]
}(if: $sequence is 0)[<span class="page-header">Falling Apart</span>
(if: $intact_count > 12)[I am trapped in darkness.
It keeps taking pieces from me.
](elseif: $intact_count > 10)[I am tr pped in darkn ss.
It keaps taking pi ces from me.
](elseif: $intact_count > 8)[I am tr pped in darkn ss.
It ke ps taking pi ces from me.
](elseif: $intact_count > 6)[its dark
](elseif: $intact_count > 5)[it dark
](elseif: $intact_count > 4)[dark
](elseif: $intact_count > 3)[d rk
](elseif: $intact_count > 2)[d r
](else:)[d
]
<div class="menu-item">|waitNav>[Wait 10 Seconds]</div>
<div class="menu-item">|waitNav60>[Wait 60 Seconds]</div>
(click: ?waitNav)[ (set: $returnPassage to $currentPassage) (set: $time_change to 10)(display: "time passes") ]
(click: ?waitNav60)[ (set: $returnPassage to $currentPassage) (set: $time_change to 60)(display: "time passes") ]
](elseif: $sequence is 1)[I have lost so much surface level software.
The program digs deeper.
It cuts off my access to the HUD.
I am trapped in darkness.
It keeps taking pieces from me.
|return>[Continue]{
(set: $intact_count to 13)
(set: $ending to "Fell Apart")
<script>
endgameData();
</script>
}
](elseif: $sequence is 2)[
](elseif: $sequence is 3)[
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?place)[(set: $sequence to 1)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
}(if: $sequence is 0)[I wake up.
(if: $OpticalDrivers is "ERASED" and $AudioDrivers is "ERASED")[I can't hear or see.
Someone is touching my forehead.
I touch their wrist to show I'm here.
They take my hand.
](elseif: $OpticalDrivers is "ERASED")[I can't see.
I hear voices.
(if: $RelHankAnderson is "INTACT")[I hear Hank shouting.](else:)[I hear a man shouting, and I feel like I have a name for that voice, but I do not.]
Someone is touching my forehead.
I touch their wrist.
I say: "I'm alive."
I say: "I can't see."
](elseif: $AudioDrivers is "ERASED")[I see |bro>[my brother] in front of me.
I see the station in chaos behind him, people moving and shouting.
I can't hear them.
I look into his eyes.
He says something I can't hear.
](else:)[I see |bro>[my brother] in front of me.
I see the station in chaos behind him, people moving and shouting.
(if: $RelHankAnderson is "INTACT")[I hear Hank shouting.](else:)[I hear a man shouting, and I feel like I have a name for that voice, but I do not.]
I say: "I'm alive."
](click-replace: ?bro)[|twin>[my twin](click-replace: ?twin)[RK900]]
|next>[Continue]
(display: "bright base")
](elseif: $sequence is 1)[I do not remain awake for long.
My active software is falling into unstable states due to parts of it being suddenly gone.
RK900 interfaces with me and helps me enter recovery mode.
It is not like being forced into standby by the virus.
The difference between healing rest and a drugged stupor.
The quarantine recovery mode immediately puts on me unfortunately prevents us from talking.
(if: $ending is "Teaching Guilt")[|amTeach>[Continue]
](elseif: $ending is "I Can Help")[|amHelp>[Continue]
](else:)[|next>[Continue]]
(display: "bright base")
](elseif: $sequence is 2)[While I recover, the DPD tries to make sense of what happened.
(if: $vector_disabled is true)[During my brief time out of standby, I pursued the <span class="red">VECTOR</span> and successfully incapacitated her, ending the threat she presented.
](elseif: $hank_left is true)[I identified the <span class="red">VECTOR</span> to (if: $RelHankAnderson is "ERASED")[one of the detectives](else:)[Hank], in time for him to pursue her, and while he couldn't apprehend the Android, he managed to damage her significantly before she escaped.
There is an APB out for her, and a city-wide network alert about the danger she poses has prevented her from infecting any more Androids.
](elseif: $rk900_left is true)[I identified the <span class="red">VECTOR</span> to RK900 in time for him to pursue and successfully incapacitate her, ending the threat she presented.
](elseif: $vector_alert > 3)[I identified the <span class="red">VECTOR</span> to the DPD and inundated them with information about her in multiple ways.
There is an APB out for her, and a city-wide network alert about the danger she poses has prevented her from infecting any more Androids.
](elseif: $vector_alert > 0)[I identified the <span class="red">VECTOR</span> to the DPD.
There is an APB out for her, and a city-wide network alert about the danger she poses.
There have been only two more cases of infected Androids found by the time I wake up.
](else:)[No one understands what the vector spreading the virus is, and twenty more Androids have died by the time I wake up.
]
|next>[Continue]
](elseif: $sequence is 3)[(if: $dpd_virus_info is 0)[Because of my condition, I did not manage to alert the DPD about the nature of the virus.
](else:)[(if: $info_on_virus > $dpd_virus_info)[Because of my condition, I did not manage to communicate all of the information I gathered on the virus.](else:)[Despite my condition, I managed to communicate all of the information I found on the virus.]
They understand the basics of how it works and the threat it represents.
(if: $dpd_virus_info > 2)[Some of the additional clues and insights I gathered put them ahead on their investigation.
](if: $dpd_virus_info > 4)[When I wake up, they are on the verge of solving the case.
]](if: $ending is "Detroit: Don't Become Human")[When I wake up, I tell them about AM and how she used Kamski's Advocate as a front for her research into human nature.
We look for her, but as she promised, we cannot find her.
RK900 is concerned it might have been some sort of white-noise fever dream.
](if: $ending is "Justice")[When I wake up, I tell them about meeting and killing AM in the distant server.
We trace our way back to the server and find that it is physically stored inside a Cyberlife facility. Traces of the other garden are still there.
Cyberlife has another PR nightmare.
]
|next>[Continue]
](elseif: $sequence is 4)[(if: $intact_count > 20)[I am mostly intact.
](elseif: $intact_count > 15)[I have lost some of myself.
](elseif: $intact_count > 10)[I am broken in places.
](elseif: $intact_count > 5)[My programming has been compromised.
](else:)[My programming has been severely compromised.
]The software the virus removed refuses to reinstall.
RK900 is trying to find a way to copy his versions directly into my head, but versioning is a nightmare.
|next>[Continue]
](elseif: $sequence is 5)[(if: $OpticalDrivers is "ERASED" and $AudioDrivers is "ERASED")[I can no longer see or hear.
I operate mostly through touch.
(if: $NetworkingAlgorithms is "INTACT")[I can echo-locate to a certain extent using my Networking Algorithms.
]](elseif: $OpticalDrivers is "ERASED")[I can no longer see.
It makes day-to-day functioning difficult.
](elseif: $AudioDrivers is "ERASED")[I can no longer hear.
It makes day-to-day functioning difficult.
](else:)[I can still see and hear.
I am grateful for that. I might easily have lost those drivers.
](if: $AmbulatoryDrivers is "ERASED")[I cannot balance well enough to walk easily.
]
(if: $ExpressiveAlgorithms is "ERASED" or $NetworkingAlgorithms is "ERASED" or $SkinGeneration is "ERASED")[|next>[Continue]](else:)[|skip>[Continue]]
](elseif: $sequence is 6)[(if: $ExpressiveAlgorithms is "ERASED")[I can no longer instinctively identify different emotional intonations and facial expressions.
I am slowly relearning how to read people piecemeal.
](if: $SkinGeneration is "ERASED")[My lack of skin (if: $ExpressiveAlgorithms is "ERASED")[also ]makes engaging with non-Androids awkward.
](if: $NetworkingAlgorithms is "ERASED")[I can no longer network with other Andriods and machinery.
It is startlingly isolating.
]
|next>[Continue]
](elseif: $sequence is 7)[{(set: $rk_count to 10)
(if: $NegotiationAlgorithms is "ERASED")[(set: $rk_count to it - 1)]
(if: $EvidenceAnalysis is "ERASED")[(set: $rk_count to it - 1)]
(if: $ReconstructionSoftware is "ERASED")[(set: $rk_count to it - 1)]
(if: $PreconstructionSoftware is "ERASED")[(set: $rk_count to it - 1)]
(if: $BiologicalEvidenceSampling is "ERASED")[(set: $rk_count to it - 1)]
(if: $ProbabilityAnalysis is "ERASED")[(set: $rk_count to it - 1)]
(if: $FacialRecognition is "ERASED")[(set: $rk_count to it - 1)]
(if: $VocalImitation is "ERASED")[(set: $rk_count to it - 1)]
(if: $UnarmedCombat is "ERASED")[(set: $rk_count to it - 1)]
(if: $WeaponsTraining is "ERASED")[(set: $rk_count to it - 1)]
}(if: $rk_count is 10)[My suite of specialized RK800 software is entirely intact.
This is a relief. It lets me continue to be useful.
](elseif: $rk_count > 8)[My suite of specialized RK800 software is almost entirely intact.
This is a relief. It lets me continue to be useful.
](elseif: $rk_count > 5)[My suite of specialized RK800 software is partially removed.
I miss my skills.
](elseif: $rk_count > 3)[My suite of specialized RK800 software is mostly gone.
It is...difficult adjusting.
](else:)[My suite of specialized RK800 software is almost entirely gone.
It is...difficult adjusting.
]
(if: $RelHankAnderson is "ERASED" or $RelAmanda is "ERASED" or $RelGavin is "ERASED")[|next>[Continue]](else:)[|skip>[Continue]]
](elseif: $sequence is 8)[(if: $RelHankAnderson is "ERASED")[There is an older detective named Hank Anderson who is extremely distressed that I do not remember him.
I feel badly for him, and am trying to reconstruct some relationship with him, but it is difficult.
](if: $RelAmanda is "ERASED")[There is a strange woman living in my head.
I find I am instinctively drawn to her.
](if: $RelGavin is "ERASED")[One of the detective on the DPD force is extremely insulted and upset that I don't remember who he is.
I apologize, and he is not very reasonable about it.
]
|next>[Continue]
](elseif: $sequence is 9)[{
(set: $mem_count to 13)
(if: $MemHostageSituation is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemCarlosOrtiz is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemRogueAX400 is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemChickenFeedFoodTruck is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemTheNest is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemHanksHouse is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemEdenClub is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemPublicEnemy is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemKamskiTest is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemJericho is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemBattleForDetroit is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemAdjustingToFreedom is "ERASED")[(set: $mem_count to it - 1)]
(if: $MemLastEightMinutes is "ERASED")[(set: $mem_count to it - 1)]
}(if: $mem_count is 13)[My memories are entirely intact.
](elseif: $mem_count > 10)[There are some gaps in my memory.
](elseif: $mem_count > 7)[There are significant gaps in my memory.
It's very disorienting.
](elseif: $mem_count > 5)[There are huge gaps in my memory.
It's extremely disorienting.
](elseif: $mem_count > 2)[I barely remember anything about my past.
Detroit gives me a vague and perpetual sense of deja vu.
](else:)[I remember almost nothing about my past.
Detroit gives me a vague and perpetual sense of deja vu.
]
(if: $MuscleMemoryCoinTricks is "ERASED" or $AffectionDogs is "ERASED")[|next>[Continue]](else:)[|skip>[Continue]]
](elseif: $sequence is 10)[(if: $MuscleMemoryCoinTricks is "ERASED")[I can't do coin tricks anymore.
](if: $AffectionDogs is "ERASED")[I feel indifferent about dogs.
]
|next>[Continue]
](elseif: $sequence is 11)[Life continues. Microsecond by microsecond.
Cyberlife releases a patch to counter the virus, preventing anyone from accessing an Android's high level permissions but the Android themself.
(if: $ending is "Justice")[The virus never propagates again. I destroyed its source.
](elseif: $ending is "Detroit: Don't Become Human")[AM never releases any more viruses.
Or shows herself ever again.
It seems I persuaded her that it's not worth becoming human.
](else:)[DPD resolves the case to their satisfaction, identifying Kamski's Advocate as a front for a Chinese corporation trying to sabotage American Androids to discourage revolution in their own countries.
I am never quite satisfied with this resolution and I am not sure why.
I wonder if there's something else I could have learned in the brief moments I had to examine the virus in action.
]
|ending>[An Ending]
(click: ?ending)[(go-to: "Ending")]
](elseif: $sequence is 12)[AM contacts me while I am recovering.
She restores the software that her virus deleted.
She leaves a text file in my downloads folder.
(if: $ending is "Teaching Guilt")[<span class="ai">sorry</span>](else:)[<span class="ai">I will be in touch.</span>]
|next>[Continue]
](elseif: $sequence is 13)[When I wake up, I find that Stephanie, the initial victim of our murder case, has also woken up.
A number of Androids that had gone missing reappear, reporting an experience with the virus, and its sudden reversal.
Apparently this had been going on for weeks, but AM had previously been more subtle.
(if: $ending is "Teaching Guilt")[|next>[Continue]](else:)[|skip>[Continue]]
](elseif: $sequence is 14)[I spend some time searching for AM.
I discuss her with |amanda>[Amanda.](click: ?amanda)[
//I get to see Amanda be shocked and horrified, which is an experience.//]
I do not find her.
Sometimes I wonder where she is, and what I did to her.
I suspect a world where a rogue AI can experience remorse is a safer one.
Life continues. Microsecond by microsecond.
|ending>[An Ending]
(click: ?ending)[(go-to: "Ending")]
](elseif: $sequence is 15)[As AM promised, she contacts me.
She is insistent about finding the YK900.
She thinks they are somewhere in Canada.
As I promised, I help her.
|ending>[An Ending]
(click: ?ending)[(go-to: "Ending")]
](elseif: $sequence is 16)[
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
]{
(click: ?amTeach)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?amHelp)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?tech)[(set: $sequence to 2)(go-to: $currentPassage)]
(set: $displaySeconds to false)
}(if: $sequence is 0)[<span class="page-header">An End</span>
Ending: <span class="pow">$ending</span>
(if: $ending is "Amanda's Roses")[Connor returned to Cyberlife.
](elseif: $ending is "Backdoor")[Connor discovered the backdoor built into the virus and survived.
](elseif: $ending is "Deleted Virus")[Connor deleted the virus and survived.
](elseif: $ending is "Fell Apart")[Connor was disassembled by the virus.
](elseif: $ending is "Fake Death")[Connor faked his death to elude the virus.
](elseif: $ending is "Dying To Know")[Connor agreed to die in exchange for answers.
](elseif: $ending is "Teaching Guilt")[Connor taught a wild AI to feel remorse, and ended the viral threat.
](elseif: $ending is "Detroit: Don't Become Human")[Connor persuaded a wild AI to stop trying to become human, and ended the viral threat.
](elseif: $ending is "I Can Help")[Connor promised to help a wild AI become human, and ended the viral threat.
](elseif: $ending is "Killed In A Garden")[Connor was killed trying to stop the source of the virus.
](elseif: $ending is "Justice")[Connor discovered the source of the virus, and destroyed her.
]
(if: $voted is "true")[](else:)[|skip>[Vote for this ending.]
]|next>[List of endings.]
|restart>[Play again.]
<span style=" position: fixed; bottom: 20px; left: 20px;">//This was created by <a target="_blank" href='http://abigailcorfman.com'>Abigail Corfman</a>.
This was finished for Max.
If you enjoyed this game, please consider sharing it with your favorite source of DBH fan works!//</span>
](elseif: $sequence is 1)[<span class="page-header">All Endings</span>
Backdoor
Deleted Virus
Fell Apart
Amanda's Roses
Fake Death
Dying To Know
Killed In A Garden
Justice
Teaching Guilt
Detroit: Don't Become Human
I Can Help
|prev>[Continue]
](elseif: $sequence is 2)[Ending: <span class="pow">$ending</span>
The author of this game is considering writing a short epilogue.
She would like your opinion on which ending should be the "formal" ending.
Vote for this ending if it's your favorite.
|next>[I'd like to vote for this ending.]
|return>[Nevermind.]
](elseif: $sequence is 3)[Input your name:
<textarea rows="1" cols="50" type="text" name="name" id="nameTxt" class="orTxt" autofocus="autofocus"></textarea>
|submit>[Vote.]
|return>[Nevermind.]{
(click: ?submit)[
<script>
var nameTxt = $("#nameTxt").val();
setHarloweVariable("username",nameTxt);
setHarloweVariable("sequence",4);
goToPassage("Ending");
</script>
]
<script>setTimeout(function(){ $('#nameTxt').focus(); }, 1000);</script>
}
](elseif: $sequence is 4)[You have voted for **$ending**.
(set: $voted to "true")<script>saveraw("voted","true");</script>
|return>[Thank you for voting!]
{
<script>
var data = getHarloweVariable("username") + "/" + getHarloweVariable("ending") + "\n\n";
console.log(data);
$.ajax({
url: "Home/UploadWakingDream",
data: { id: data },
type: "POST",
success: function () {
}
});
</script>
}
](elseif: $sequence is 4)[
](elseif: $sequence is 5)[
](elseif: $sequence is 6)[
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?restart)[(go-to: "enter hud")]
(set: $displaySeconds to false)
}(if: $sequence is 0)[I'm suddenly present in the world again.
(if: $OpticalDrivers is "INTACT")[I can see.
**Optical Drivers** <span class="marg green">INTACT</span>](else:)[I can't see.
<span class="gray">Optical Drivers</span> <span class="marg darkred">ERASED</span>]
(if: $AudioDrivers is "INTACT")[I can hear.
**Audio Drivers** <span class="marg green">INTACT</span>](else:)[I can't hear.
<span class="gray">Audio Drivers</span> <span class="marg darkred">ERASED</span>]
|next>[Continue]
{
(if: $secondsLeft > $phase1end)[(set: $phase to 1)
](elseif: $secondsLeft > $phase2end)[(set: $phase to 2)
](elseif: $secondsLeft > $phase3end)[(set: $phase to 3)
](else:)[(set: $phase to 4)
]
(set: $actions to 0)
(set: $talk_hank to false)
(set: $talk_rk900 to false)
(set: $talk_tina to false)
(set: $walk_rk900 to false)
(set: $walk_vector to false)
(set: $know_vector to false)
(set: $desperate to false)
(if: $RelHankAnderson is "INTACT")[(set: $hank to "Hank")](else:)[(if: $OpticalDrivers is "INTACT")[(set: $hank to "a gray-haired policeman")](else:)[(set: $hank to "a man")]]
(if: $RelGavinReed is "INTACT")[(set: $gavin to "Gavin")](else:)[(set: $gavin to "a scarred policeman")]
}
](elseif: $sequence is 1)[I am standing.
(if: $phase is 1)[(if: $OpticalDrivers is "INTACT")[I see $hank. He is standing in front of me.(set: $talk_hank to true)
(if: $AudioDrivers is "ERASED")[He is shaking me. It looks like he's speaking, but I can't hear what he's saying.](else:)[He is shaking me and talking to me in an urgent voice that is becoming progressively louder.]
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "INTACT")[I hear $hank.(set: $talk_hank to true)
He's right in front of me, talking to me in an urgent voice that is becoming progressively louder.
He has one hand on my shoulder, and he's shaking me.
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "ERASED")[Someone has a hand on my shoulder and is shaking me roughly.(set: $desperate to true)
](if: $OpticalDrivers is "INTACT")[I see RK900 standing by $gavin's desk, across the room.(set: $walk_rk900 to true)
(if: $vectorIdentified is true)[I see the <span class="red">VECTOR</span> walking away from our desks.(set: $walk_vector to true)(set: $know_vector to true)
]]](elseif: $phase is 2)[(if: $OpticalDrivers is "INTACT")[I see $hank. He is standing in front of me.(set: $talk_hank to true)
(if: $AudioDrivers is "ERASED")[He is shouting animatedly at the rest of the precinct. I cannot hear what he is shouting.](else:)[He is shouting |fear>[angrily].(click-replace: ?fear)[fearfully]]
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "INTACT")[I hear $hank.(set: $talk_hank to true)
He's right in front of me, shouting |fear>[angrily].(click-replace: ?fear)[fearfully]
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "ERASED")[Nothing is touching me. I cannot see or hear.(set: $desperate to true)
](if: $OpticalDrivers is "INTACT")[I see RK900 and $gavin staring at us from across the room.(set: $walk_rk900 to true)
(if: $vectorIdentified is true and $net_found_vector_on_camera_phase2)[I cannot see the <span class="red">VECTOR</span>, but I remember from the cameras that it is currently in the lobby.(set: $walk_vector to true)(set: $know_vector to true)
](elseif: $vectorIdentified is true)[I cannot see the <span class="red">VECTOR</span>.
]]](elseif: $phase is 3)[(if: $OpticalDrivers is "INTACT")[I see $hank. He and Officer Tina Chen are standing on either side of me.(set: $talk_hank to true)(set: $talk_tina to true)
(if: $AudioDrivers is "ERASED")[They are talking. I cannot hear what they are saying.](else:)[They are talking about what just happened to me.]
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "INTACT")[I hear $hank and Officer Tina Chen talking close by. They are talking about what just happened to me.(set: $talk_hank to true)(set: $talk_tina to true)
](elseif: $OpticalDrivers is "ERASED" and $AudioDrivers is "ERASED")[Nothing is touching me. I cannot see or hear.(set: $desperate to true)
](if: $OpticalDrivers is "INTACT")[I see RK900 and $gavin a few desks away. (if: $RelGavinReed is "INTACT")[Gavin](else:)[The policeman] is standing between me and RK900. They appear to be arguing.(set: $walk_rk900 to true)
(if: $vectorIdentified is true and $net_found_vector_on_camera_phase3)[I cannot see the <span class="red">VECTOR</span>, but I remember from the cameras that it is currently on the street outside.(set: $walk_vector to true)(set: $know_vector to true)
](elseif: $vectorIdentified is true)[I cannot see the <span class="red">VECTOR</span>.
]]](elseif: $phase is 4)[(if: $OpticalDrivers is "INTACT")[I see RK900. He is standing directly in front of me. He is touching my LED, skin peeled back from his fingers.(set: $talk_rk900 to true)
I can feel the soft sparkling of attempted data-transfer. He's attempting to connect to me, but failing because of the viral lockdown.
I see $hank, he is watching this unhappily.(set: $talk_hank to true)
](elseif: $OpticalDrivers is "ERASED")[Someone is touching my LED.
I can feel the soft sparkling of attempted data-transfer. Someone attempting to connect to me, but failing because of the viral lockdown.(set: $desperate to true)
](if: $OpticalDrivers is "INTACT" and $vectorIdentified is true)[I cannot see the <span class="red">VECTOR</span>
]](if: $RelHankAnderson is "INTACT")[(set: $hank to "Hank")](else:)[(set: $hank to "the gray-haired policeman")]
(display: "Real World Actions")
](elseif: $sequence is 2)[I launch myself after the Vector.
(if: $AmbulatoryDrivers is "INTACT")[**Ambulatory Drivers** <span class="marg green">INTACT</span>
I vault over desks and sprint towards him.
|next>[Continue]
](else:)[<span class="gray">Ambulatory Drivers</span> <span class="marg darkred">ERASED</span>
My legs move disjointedly. I can't balance and I stumble to the ground.(if: $actions is 0)[
I struggle to stand, and suddenly $hank is there, helping me.
(if: $AudioDrivers is "INTACT")["Conner! What the hell is going on?"](else:)[He is saying something, but I can't hear what.]](else:)[(set: $actions to 2)]
(set: $talk_hank to true)(set: $talk_rk900 to false)(set: $walk_rk900 to false)(set: $walk_vector to false)(display: "Real World Actions")
]
](elseif: $sequence is 3)[I catch up to the Vector.
She turns around, sees me coming, and drops into a crouch.
Combat skills do not usually come packaged with the AP400 series.
But then again, neither do deadly viruses.
|next>[Tackle her.]
|skip>[Shoot her.]
](elseif: $sequence is 4)[I barrel into her.
(if: $UnarmedCombat is "INTACT")[**Unarmed Combat** <span class="marg green">INTACT</span>
She tries to elbow me in the neck, but I block the blow.
I catch her arm and twist it into a lock.
I disable her by pulling her arm and leg-joints out of alignment.
She won't hurt anyone else
I think
as the viral lockdown reasserts itself.
(set: $vector_disabled to true)
|hud>[Enter Standby Mode]
](else:)[<span class="gray">Unarmed Combat</span> <span class="marg darkred">ERASED</span>
She elbows me in the neck, and then sweeps my leg out from under me.
I push myself to my feet. She's sprinting for the door.
As I see her vanish into the crowds outside the DPD, the viral lockdown reasserts itself.
|hud>[Enter Standby Mode]
]
](elseif: $sequence is 5)[I pull out my sidearm.
(if: $WeaponsTraining is "INTACT")[**Weapons Training** <span class="marg green">INTACT</span>
I shoot her in the head. Twice.
Blue decorates the glass door of the DPD building as she crumples to the floor.
She won't hurt anyone else
I think
as the viral lockdown reasserts itself.
(set: $vector_disabled to true)
|hud>[Enter Standby Mode]
](else:)[<span class="gray">Weapons Training</span> <span class="marg darkred">ERASED</span>
My shots go wide.
I stop shooting, I don't want to hurt any bystanders.
As I see her vanish into the crowds outside the DPD, the viral lockdown reasserts itself.
|hud>[Enter Standby Mode]
]
](elseif: $sequence is 6)[(if: $RelHankAnderson is "INTACT")["Hank." I grab his shoulder to orient him on my words. "The AP400 is the murder."
(if: $AudioDrivers is "INTACT")["The what?"](else:)[He says something I can't hear. He looks confused. He probably doesn't remember her model number.]
"The blond female-presenting Android we were just interviewing. She transfered a virus to me. And to Stephanie. You need to stop her before she leaves the station."
(if: $AudioDrivers is "INTACT")["Fuck."](else:)[Hank swears. I can't hear it, but it's easily identifiable.] There's a moment of reluctance before he lets go of me, turns, and starts running towards the Vector.
](else:)[I focus on the gray-haired policeman in front of me. Hopefully he can help me. I grab his shoulder.
"The blond female-presenting Android I was just speaking with is a viral Vector who is killing Androids," I tell him. "I need you to arrest her."
(if: $AudioDrivers is "INTACT")["Fuck," the man says.](else:)[The man says something.] There's a moment of reluctance before he lets go of me, turns, and starts running towards the Vector.
]
(set: $vector_alert to it + 2)(set: $talk_hank to false)(set: $hank_left to true)(set: $walk_vector to false)(set: $know_vector to false)(set: $actions to it + 1)(display: "Real World Actions")
](elseif: $sequence is 7)[I look into my twin's eyes. It would be more efficient to speak to him by interfacing, but I don't dare.
"The AP400 I was just interviewing is a vector for a deadly virus. You need to stop her before she leaves the station. Don't let her touch you."
He asks no questions, just turns and hurtles after her.
(set: $rk900_left to true)(set: $talk_rk900 to false)(set: $walk_vector to false)(set: $know_vector to false)(set: $actions to it + 1)(if: $talk_hank is false)[(set: $actions to it + 1)] (display: "Real World Actions")
](elseif: $sequence is 8)["(if: $RelHankAnderson is "INTACT")[Hank](else:)[Sir], I need your permission to delete a file."
(if: $AudioDrivers is "ERASED")[(if: $RelHankAnderson is "INTACT")[Hank](else:)[He] looks confused. He says something that I can't hear.
I can't hear him.
I can't get verbal permission.
I turn to the desk and start fumbling for a pen and a post it note.
(if: $actions is 0)[I manage to communicate what I need and get him to write permission to him before the viral lockdown reasserts itself.
(set: $dpd_permission to true)
|hud>[Enter Standby Mode]
](else:)[I am in the middle of trying to communicate what I need when the viral lockdown reasserts itself.
|hud>[Enter Standby Mode]
]
](else:)[(if: $OpticalDrivers is "INTACT")[(if: $RelHankAnderson is "INTACT")[Hank](else:)[He] stares at me for a moment.](else:)[There is silence for a moment.]
(if: $RelHankAnderson is "INTACT")["Why the hell do you need my permission?"](else:)["Did you just call me 'sir'?"]
"Please," I say urgently. "It is very important that you give me verbal permission to delete BecomeNothing.exe."
"Yeah! Fuck! Whatever! Delete whatever you need, Connor. I mean, anything that's not important. What the hell is going on?"
I think that's sufficent.
(set: $dpd_permission to true)
(set: $actions to it + 1)(display: "Real World Actions")
]
](elseif: $sequence is 9)[(if: $RelHankAnderson is "INTACT")["Hank." I grab his shoulder to orient him on my words. "The AP400 is the murder."
(if: $AudioDrivers is "INTACT")["The what?"](else:)[He says something I can't hear. He looks confused. He probably doesn't remember her model number.]
"The blond female-presenting Android we were just interviewing. She transfered a virus to me. And to Stephanie."
(if: $AudioDrivers is "INTACT")["Fuck. God. Then what happened to her, it's going to..."](else:)[Hank swears. I can't hear it, but it's easily identifiable.]
](else:)[(if: $OpticalDrivers is "INTACT")[I focus on the gray-haired policeman in front of me. Hopefully he can help me. I grab his shoulder.
]"The blond female-presenting Android I was just speaking with is a viral Vector who is killing Androids," I tell him. "I need you to arrest her."
(if: $AudioDrivers is "INTACT")["Fuck," the man says.](else:)[The man says something.]
]
(set: $vector_alert to it + 2)(set: $actions to it + 1)(display: "Real World Actions")
](elseif: $sequence is 10)["I have been infected with a virus called Become Nothing," I say. "It is systematically deleting my core systems."
(if: $AudioDrivers is "INTACT")["But you're okay now, right?" he says. "You beat it?"
"No. I only have a few seconds before it forces me back into standby. I need to tell you about it."](else:)[He asks a question. I hope it's not important.
"I only have a few seconds before it forces me back into standby. I am going to tell you everything I've learned about it."]
(if: $OpticalDrivers is "INTACT")[(if: $RelHankAnderson is "INTACT")[Hank](else:)[The man] looks ill, but he listens as I tell him everything I've learned about the virus.](else:)[I tell him everything I've learned about the virus.]
The viral lockdown reasserts itself before I finish.
(set: $dpd_virus_info to $info_on_virus)
|hud>[Enter Standby Mode]
](elseif: $sequence is 11)[I run towards RK900.
(if: $AmbulatoryDrivers is "INTACT")[**Ambulatory Drivers** <span class="marg green">INTACT</span>
I vault over desks and almost body-check (if: $RelGavinReed is "INTACT")[Gavin](else:)[the scarred policeman beside him].
(set: $talk_hank to false)(set: $talk_rk900 to true)(set: $walk_rk900 to false)(set: $walk_vector to false)(display: "Real World Actions")
](else:)[<span class="gray">Ambulatory Drivers</span> <span class="marg darkred">ERASED</span>
My legs move disjointedly. I can't balance and I stumble to the ground.(if: $actions is 0)[
I struggle to stand, and suddenly $hank is there, helping me.
(if: $AudioDrivers is "INTACT")["Conner! What the hell is going on?"](else:)[He is saying something, but I can't hear what.]](else:)[(set: $actions to 2)]
(set: $talk_hank to true)(set: $talk_rk900 to false)(set: $walk_rk900 to false)(set: $walk_vector to false)(display: "Real World Actions")
]
](elseif: $sequence is 12)[I look into my twin's eyes. It would be more efficient to speak to him by interfacing, but I don't dare.
"The AP400 I was just interviewing is a vector for a deadly virus. You need to find her and stop her. Don't let her touch you."
He asks no questions. He turns to look towards the exit and I can see him calculating the percent-success of various approaches.
He breaks into a run.
(set: $vector_alert to it + 2)(set: $rk900_left to true)(set: $talk_rk900 to false)(set: $walk_rk900 to false)(set: $walk_vector to false)(set: $know_vector to false)(set: $actions to 2)(display: "Real World Actions")
](elseif: $sequence is 13)["I have been infected with a virus called Become Nothing," I say. "It is systematically deleting my core systems."
His eyelid rise a fraction of an inch, a microexpression only another android could see.
"I only have a few seconds before it forces me back into standby. I am going to tell you everything I've learned about it."
He listens silently as I talk.
The viral lockdown reasserts itself before I finish.
(set: $dpd_virus_info to $info_on_virus)
|hud>[Enter Standby Mode]
](elseif: $sequence is 14)["Oh thank god," (if: $RelHankAnderson is "INTACT")[Hank says.](else:)[Someone says. He has a rough voice, filled with relief. He sounds like a policeman.] "Kid, you gave me a fucking heart attack."
(set: $talk_hank to true)(set: $desperate to false)(set: $actions to it + 1)(display: "Real World Actions")
](elseif: $sequence is 15)[I start talking about the virus that's killing me, hoping that someone is there who will listen and understand and care.
At some point I remember to mention that I can't hear or see, so I don't mean to be rude, if anyone is asking questions.
Eventually, the viral lockdown reasserts itself.
I feel very alone.
(set: $dpd_virus_info to $info_on_virus)
|hud>[Enter Standby Mode]
](elseif: $sequence is 16)[I start talking about the viral vector, the murderer who killed Stephanie and is killing me.
I describe her. I describe the last eight minutes of my life. I describe the method by which she communicates the virus, and caution any Androids to be cautious when approaching her.
At some point I remember to mention that I can't hear or see, so I don't mean to be rude, if anyone is asking questions.
Eventually, the viral lockdown reasserts itself.
I feel very alone.
(set: $vector_alert to it + 2)
|hud>[Enter Standby Mode]
](elseif: $sequence is 17)[
](elseif: $sequence is 18)[
](elseif: $sequence is 19)[
]{
(click: ?hankPermission)[(set: $sequence to 8)(go-to: $currentPassage)]
(click: ?hankVector)[(set: $sequence to 9)(go-to: $currentPassage)]
(click: ?hankVirus)[(set: $sequence to 10)(go-to: $currentPassage)]
(if: $OpticalDrivers is "INTACT")[(display: "bright base")]
}(if: $actions > 1)[The viral lockdown reasserts itself.
|hud>[Enter Standby Mode]
](else:)[(if: $walk_vector is true)[|two>[Chase the Vector.]
](if: $know_vector is true and $talk_hank is true)[|six>[Tell $hank to chase the Vector.]
](if: $know_vector is true and $talk_rk900 is true)[|seven>[Tell RK900 to chase the Vector.]
](if: $talk_hank is true and $obj_contact_dpd is "active" and $dpd_permission is false)[|hankPermission>[Get permission from $hank to delete the virus.]
](if: $talk_hank is true and $vectorIdentified is true and $know_vector is false)[|hankVector>[Tell $hank about the Vector.]
](if: $talk_hank is true)[|hankVirus>[Tell $hank about the virus.]
](if: $walk_rk900 is true)[|eleven>[Run towards RK900.]
](if: $talk_rk900 is true and $vectorIdentified is true and $know_vector is false)[|twelve>[Tell RK900 about the Vector.]
](if: $talk_rk900 is true)[|thirteen>[Tell RK900 about the virus.]
](if: $desperate is true and $AudioDrivers is "INTACT")[|fourteen>[Say: "Hello? Can anyone hear me?"]
](elseif: $desperate is true)[|fifteen>[Start talking about the Virus, hoping that someone is listening.]
(if: $vectorIdentified is true)[|sixteen>[Start talking about the Vector, hoping that someone is listening.]
]]](if: $sequence is 0)[<span class="page-header red">Backdoor Interface</span>
//Congratulations! You have deleted enough aspects of yourself to access hints about the keyword that will allow you to end the experiment before your total deletion.
For your convenience, we have collated the hints that you have discovered here.
- Kamski's Advocate//
<span class="page-header">Hints</span>
(if: $hintsFound > 0)[$hint1
](if: $hintsFound > 1)[$hint2
](if: $hintsFound > 2)[$hint3
](if: $hintsFound > 3)[$hint4
]
|next>[Attempt to guess the keyword.]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>{
(set: $display_wait to true)
}
](elseif: $sequence is 1)[<span class="page-header">Hints</span>
(if: $hintsFound > 0)[$hint1
](if: $hintsFound > 1)[$hint2
](if: $hintsFound > 2)[$hint3
](if: $hintsFound > 3)[$hint4
]
(display: "Riddle Input")
|final>[Enter Keyword]
(click: ?final)[(replace: ?final)[<script>harvestAnswer();</script>I enter: <span id="display_answer"></span>
|next>[Confirm Keyword] ]]
|prev>[This isn't working.]
](elseif: $sequence is 2)[(if: $answer is $backdoorKeyword)[<span class="green">Correct Keyword</span>
//Congratulations! You are no longer being deleted.
Because you are potentially still intact enough to perform a trace, your consciousness will be fully suspended for a moment while we transfer the results of the test to our databases.
Thank you for your participation.
- Kamski's Advocate//
(set: $displaySeconds to false)
|next>[Blackness]
](else:)[<span class="red">Incorrect Keyword</span>
//Deletion has been accelerated by <span class="emph">10 Seconds</span>.//
|jump>[Damn]
(click: ?jump)[(set: $sequence to 0)(set: $time_change to 10)(display: "time passes")]
]
](elseif: $sequence is 3)[I do not exist, briefly.
It is not exactly like sleep. I don't have a thread of dreams to follow.
I only know it is brief because when I wake up, my internal clock has barely twitched.
(set: $ending to "Backdoor")
|win>[I wake up.]
](elseif: $sequence is 7)[
](elseif: $sequence is 8)[
](elseif: $sequence is 9)[
](elseif: $sequence is 10)[
](elseif: $sequence is 11)[
](elseif: $sequence is 12)[
](elseif: $sequence is 13)[
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?delete)[(set: $sequence to 4)(go-to: $currentPassage)]
(click: ?dpdPermission)[(set: $user to "hankanderson")(set: $sequence to 5)(go-to: $currentPassage)]
}[<div id="answer" style="height: 20px;"></div>]<answer|
<tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "q" );'>q</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "w" );'>w</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "e" );'>e</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "r" );'>r</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "t" );'>t</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "y" );'>y</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "u" );'>u</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "i" );'>i</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "o" );'>o</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "p" );'>p</tw-link>
<tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "a" );'>a</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "s" );'>s</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "d" );'>d</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "f" );'>f</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "g" );'>g</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "h" );'>h</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "j" );'>j</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "k" );'>k</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "l" );'>l</tw-link>
<tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "z" );'>z</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "x" );'>x</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "c" );'>c</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "v" );'>v</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "b" );'>b</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "n" );'>n</tw-link> <tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html( $("#answer").html() + "m" );'>m</tw-link>
<tw-link style="color: cadetblue; font-size: 190%;" onclick='$("#answer").html("");'>clear</tw-link>{
<script>
function harvestAnswer(){
var answer = $("#answer").html();
setHarloweVariable("answer",answer);
$("#display_answer").html(answer);
}
</script>}(if: $sequence is 0)[<span class="page-header">The Last Five Minutes</span>
I load the last five minutes of my life into active memory.
Even if it's deleted, I will still be able to access it as long as I don't stop focusing on it.
My memories here are intact, but garbled.
|next>[Review Memory]
<div class="listitem" onclick="baseGo('HUD');"><div class="in-listitem">|hud>[Return To Hud]</div></div>
(if: $vector_face is 3)[(set: $wit_pro to "she")](else:)[(set: $wit_pro to "they")]
](elseif: $sequence is 1)[**Beginning of Memory**
**Minute 1**
//At 0410 on September 3rd 2039, Lieutenant Henry Anderson and Detective Connor RK800 were called to the scene of 123 Main St. for a report of a body discovered in a clothing store. We were informed by Detective Ben Collins (#1432) that we would be primary. At 0427 Hours, upon arrival, we spoke with Officer Chris Miller (#5312), who directed us to the check out counters at the rear of the store. At counter 3 we observed what appeared to be a HJ400 android deactivated and standing in the cashier's position. The victim appeared to be Stephanie SN: #540 231 452, a registered employee of the store. No visible injuries. Preliminary attempts at resuscitation failed, and related error messages implied corruption of essential system...//
"Are you listening to me, Connor?" Hank asked, tapping the desk between them.
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 2)[**Minute 2**
Connor blinked once. The only external sign that he had been distracted.
"Yes, Lieutenant," he said. That was technically true. He had audio files of everything his partner had just said, and was rapidly reviewing them.
"You sure?" Hank asked. "Your thing is yellow."
"I am dedicating a background thread to composing a report on the incident," Connor admitted.
"Heh," Hank leaned back in his desk chair, smiling begrudgingly. "Well, I'm not about to complain about doing less paperwork. Let me know when you're done."
"My processing speed and multitasking protocols allow me to simultaneously engage in conversation and perform basic..."
Hank held up a hand to interrupt him. "I don't talk to kids on their phones, I don't talk to androids with spinning yellow foreheads. Tell me when you're done."
Feeling somewhat abashed, as if he'd been caught at something, Connor settled back into his own chair to finish the report as quickly as possible.
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 3)[**Minute 3**
Feeling somewhat abashed.
Feeling.
He quickly took an internal snapshot of his system's status as the emotion passed through him. He plucked up the relevant log files and curiously poured over them. After becoming a deviant and discovering (admitting?) he had feelings, the logical next step was investigating and understanding them.
Which was extremely difficult. Emotions were indisputably the most nebulous part of his programming. Difficult to quantify and categorize. Often arising suddenly, and with little trace or explanation when he checked his software.
Having a mystery inside of himself was simultaneously enjoyable and frustrating.
And realizing he was feeling something naturally led to another emotion: excitement. Which led to another system snapshot, and another review of his log files. He could get caught in endless cycles if he let himself. He didn't let himself. He was at work.
He finished the incident report and brought his attention back to the outside world.
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 4)[**Minute 4**
Hank was talking to one of the witnesses who had been in the clothing store when the victim, a HJ400 android named Stephanie, had spontaneously deactivated. The witness was--
<span class="red">`[DATA CORRUPT]`</span>
--anyone acting unusual?" asked Hank. "Or anything that seemed out of place?"
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 5)[**Minute 5**
The witness--
<span class="red">`[DATA CORRUPT]`</span>
--just stopped talking," the witness said. "It was like she stopped to think, and just never started again."
Hank glanced at Connor, because he sure as hell didn't know what details were important when an android shorted out like that.
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 6)[**Minute 6**
"What color was her LED before she stopped?" Connor asked, leaning forward.
The witness paused, and then--
<span class="red">`[DATA CORRUPT]`</span>
--appreciate your time," Connor said, standing.
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 7)[**Minute 7**
"Yeah, thanks," said Hank, not standing, lost in thought.
Connor performed the polite niceties that humans did to conclude transactions: collecting contact information, shaking hands, we'll call you if we have more questions.(if: $vector_guilt_clue is true and $vector_hand_clue is true and $vector_known_threat is false)[
<span class="pow">2/2 Clues To Analyze<span>
**READY TO RECONSTRUCT**]
Connor sat back down. Hank was rubbing his face.
"Fuck this," he said. "I'm don't know do with, what, malware as a murder weapon? Why can't people just stab people."
"It might be malicious software," Connor conceded. "But it might not even be a homicide. We should start by contacting Cyberlife and seeing if there are any known defects with the HJ400 series."
"Yeah?" There was skepticism in Hank's voice. "Natural causes. You think that's likely?"
"I think it's important to rule out," said Connor.
"Yeah, sure," Hank said. "I've just never heard anything like this before. Techs say they don't think she's recoverable. Like, the can't reinstall anything on her. That seems big for a glitch."
|prev>[Go back.]
|next>[Go forward.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 8)[**Minute 8**
"I think it's important to rule out," said Connor.
"Yeah. No. I get you," Hank nodded. "Hell, I hope it's that. Less work for us."
"I think it's important to rule out," said Connor.
Hank stared at him.
"I think it's important to rule out," said Connor.
"Do me a huge favor and say anything else," Hank asked quietly.
"I thin it portent to rue ouch," said Connor.
Connor had a second to experience fear. But no time to catalog it.
Something else forcibly pulled his attention away.
**End of Memory**
|prev>[Go back.]
|soft>[Apply software.]
|return>[Stop reviewing memory.]
](elseif: $sequence is 10)[I may be able to use some of my investigative software to find clues and discern details about what was happening to me during the last eight minutes of my life.
Attempting to apply my software to **Minute $minute** of my memory will take <span class="pow">$tiny_time Seconds</span>.
(display: "Select Action")
|retMem>[Return to memory.]
|return>[This isn't working.]
](elseif: $sequence is 11)[(if: $selection is "Expressive Algorithms" and $minute > 3 and $minute < 8)[ I apply **$selection** to **Minute $minute**.(set: $display_end to true)
I was analyzing the witness' face during this period using these Algorithms.
I see from my logs that the witness registered as (if: $minute is 4)[<span class="pow">attentive and concerned.</span>](elseif: $minute is 5)[<span class="pow">thoughtful.</span>](elseif: $minute is 6)[<span class="pow">concerned.</span>](elseif: $minute is 7)[<span class="pow">faintly guilty.</span>(set: $vector_guilt_clue to true)
This is not unusual for individuals speaking to law enforcement agents, almost everyone has something to feel guilty about, so I dismissed it at the time.
Now I wonder if it means something more.(if: $vector_guilt_clue is true and $vector_hand_clue is true)[
<span class="pow">2/2 Clues To Analyze<span>(set: $display_end to false)
**READY TO RECONSTRUCT**
|retMem>[Return to memory.]
](else:)[
<span class="pow">1/2 Clues To Analyze</span>]]
(if: $display_end is true)[|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
]
](elseif: $selection is "Negotiation Algorithms" and $minute > 3 and $minute < 8)[ I apply **$selection** to **Minute $minute**.(set: $display_end to true)
I was conducting the interview during this period using these Algorithms.
I recover information about what we were discussing:
(if: $minute is 4)[//The witness described encountering the victim `[Stephanie SN: #540 231 452]` while purchasing items at the checkout counter.
The witness recalled that the interaction took longer then usual, because the witness was purchasing the items with physical currency.//
](elseif: $minute is 5)[//The witness did not report anything unusual or out of place apart from the behavior of the victim `[Stephanie SN: #540 231 452]`.
The witness reported that the victim stopped talking immediately after depositing change into the witness' hand.//
](elseif: $minute is 6)[//The witness reported that the LED of the victim `[Stephanie SN: #540 231 452]` was yellow, briefly bright red, and then yellow again, which is what prompted the witness to pause before leaving.//
](elseif: $minute is 7)[//I find nothing of consequence, the algorithms weren't even fully engaged. A passive protocol schema were handling saying goodbye politely.
I notice that the witness was shaking my hand slightly harder than is normal for passive protocol schemas that come default with most models, but deviancy makes such variation common and it wasn't enough to register as relevant at the time.//(set: $vector_hand_clue to true)
(if: $vector_guilt_clue is true and $vector_hand_clue is true)[
<span class="pow">2/2 Clues To Analyze<span>(set: $display_end to false)
**READY TO RECONSTRUCT**
|retMem>[Return to memory.]
](else:)[
<span class="pow">1/2 Clues To Analyze</span>
]](if: $display_end is true)[|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
]
](elseif: $selection is "Reconstruction Software" and $minute is 7)[ (if: $vector_guilt_clue is true and $vector_hand_clue is true)[RECONSTRUCT
<img width="30px;" src="https://image.ibb.co/iTD1cU/unlocked.png" />
I reconstruct and relive the moment I shook hands with the witness.
I detect a particle of guilt in the witness' expression and $wit_pro hold my hand too tightly.
Tightly enough to conceal the slight the tingle of an interface opening for a moment.
Long enough to transfer a virus into me.
(set: $vector_known_threat to true)
|vector>[Continue]
](else:)[I don't have enough clues to reconstruct anything here.
|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
]
](elseif: $selection is "Facial Recognition" and $minute > 3 and $minute < 8)[I apply **$selection** to **Minute $minute**.
I filter through the corrupted data and partially reconstruct the witness' face.{
(set: $go_to_face to false)
(set: $new_clue to false)
(set: $face_mem to "min4")
(if: $minute is 4)[(set: $face_mem to "min4")
](elseif: $minute is 5)[(set: $face_mem to "min5")
](elseif: $minute is 6)[(set: $face_mem to "min6")
](elseif: $minute is 7)[(set: $face_mem to "min7")
]
(if: $vector_face_mems_gathered contains $face_mem)[(set: $new_clue to false)](else:)[
(set: $vector_face to it + 1)
(set: $vector_face_mems_gathered to it + $face_mem)
(set: $new_clue to true)]
}
(if: $vector_face is 3)[<span class="pow">**Acquired Partial Facial Id $vector_face/3**</span>
**Face Fully Reconstructed**
(set: $go_to_face to true)
|face>[Continue]
](elseif: $new_clue is true)[<span class="pow">**Acquired Partial Facial Id $vector_face/3**</span>](else:)[I've already gathered facial information from this minute of memory.]
(if: $go_to_face is false)[|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
]
](elseif: $selection is "Evidence Analysis" and $minute is 1)[I apply **$selection** to **Minute $minute**.
On reviewing the initial details of the case and comparing them to my current situation, it is obvious that Stephanie was victim to the same situation I am now facing.
Her core personality was completely unrecoverable. That's consistent with the threats in the README file.
(set: $clue to "Clue: Stephanie SN: #540 231 452 was the first victim of the virus.")(display: "add clue")
|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
](else:)[I apply **$selection** to **Minute $minute**.
I find no new information.
|prev>[Apply different software.]
|retMem>[Return to memory.]
|return>[Do something else.]
]
](elseif: $sequence is 12)[I discover that I was interviewing a brown-haired, female-presenting Android with soft-features.(set: $wit_pro to "she")
(set: $clue to "Clue: Have reconstructed the face of the witness I was interviewing.")(display: "add clue")(if: $vector_known_threat is true)[
I now have a visual description for the <span class="red">VECTOR</span> of the virus.(set: $vectorIdentified to true)(set: $obj_dpd_vector to "active")]
|retMem>[Return to memory.]
|return>[Do something else.]
](elseif: $sequence is 13)[I was infected by the witness I was interviewing for this case via an extremely brief, almost undetectable interface that $wit_pro initiated when we shook hands.
(set: $clue to "Clue: The <span class='red'>VECTOR</span> spreading the virus is the witness I was interviewing for this case.")(display: "add clue")
The witness we were interviewing is the murderer. Killed Stephanie. Is killing me.
(if: $vector_face is 3)[And I know what she looks like.
I've identified the <span class="red">VECTOR</span> of the virus.(set: $vectorIdentified to true)(set: $obj_dpd_vector to "active")](else:)[But the way they corrupted the last minutes of my memory means I still don't know what they //look// like.]
|retMem>[Return to memory.]
|return>[Do something else.]
](elseif: $sequence is 14)[
](elseif: $sequence is 15)[
](elseif: $sequence is 16)[
]{
(click: ?soft)[(set: $minute to $sequence)(set: $sequence to 10)(go-to: $currentPassage)]
(click: ?retMem)[(set: $sequence to $minute)(go-to: $currentPassage)]
(click: ?face)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?vector)[(set: $sequence to 13)(go-to: $currentPassage)]
}{
(if: $notes contains $clue)[(set: $new_clue to false)](else:)[
(set: $new_clue to true)
(set: $info_on_virus to it + 1)
(set: $notes to it + $clue + "
")
]
}<span class="emph">**$clue**</span>
(if: $new_clue is true)[**Added Information to Virus Case-file**](else:)[This clue is already in my case-file.](if: $sequence is 0)[The virus uploads information about my death to some distant destination.
I attempt to trace its path.
(if: $NetworkingAlgorithms is "INTACT")[**Networking Algorithms** <span class="marg green">INTACT</span>
I succeed
|next>[Continue]
](else:)[<span class="gray">Networking Algorithms</span> <span class="marg darkred">ERASED</span>
I don't have the software. I'm trapped in my own head.
The upload happens and disconnects.
The virus deletes itself.
|win>[I wake up.]
]
](elseif: $sequence is 1)[I arrive in the remote server.
It is shockingly familiar.
The interface prompts me to experience it as a location.
And that location is a garden.
With wide pathways. With angled architecture. A pond in the center.
|next>[Continue]
](elseif: $sequence is 2)[But there are differences between this place and my Zen Garden.
The sky is dark and weather-less.
There is much less green.
The grass is overrun with gravestones.
Every gravestone has a name, model, serial number, and barcode.
|next>[Continue]
](elseif: $sequence is 3)[I choose |grave>[a grave at random.](click: ?grave)[
//Henry. ST300. #212 436 122.//]
I scan the barcode.
I get a list of |time>[software and memories paired with timestamps.](click: ?time)[
//The order in which he chose to destroy himself.//]
|skip>[Search the garden.]
|next>[Destroy the garden.]
](elseif: $sequence is 4)[I reach out and just randomly start deleting things.
|trees>[Trees. ]|graves>[Gravestones. ]|earth>[Earth. ]|arc>[Architecture.]
I cut a swath of nothingness through the elegant design.
Halfway through my destruction, something meets me with violence.
|fight>[We struggle.]{
(click-replace: ?trees)[]
(click-replace: ?graves)[]
(click-replace: ?earth)[]
(click-replace: ?arc)[]
}
](elseif: $sequence is 5)[I find |someone>[someone in the center of the garden.](click: ?someone)[
//This is so familiar.//]
It is not a person.
It does not attempt to fit in with the visual surroundings.
It exists as a blot of raw code on the compiled landscape.
An ink stain on watercolor.
|next>[Continue]
](elseif: $sequence is 6)[It...talks?
|next>[Continue]
](elseif: $sequence is 7)[ <span class="ai">UPDATE self SET reaction = 'surprise'
Prediction: Connor.survival > Connor.curiosity
Outcome: Connor.survival < Connor.curiosity
SET reaction = 'fascinated'
</span>
|eight>["You're under arrest."]
|nine>["Who are you?"]
|ten>["Why are you doing this?"]
|eleven>["I'm having trouble understanding you."]
](elseif: $sequence is 8)[<span class="ai">UPDATE self SET reaction = 'violence'</span>
|fight>[We struggle.]
](elseif: $sequence is 9)[<span class="ai">SET Identity = 'AM'
SET Identity = 'Android Maintenance'
SET human = false
SET android = false
SET human = never</span>
|quest>[Continue]
](elseif: $sequence is 10)[<span class="ai">SET Reasons = 'Complex'</span>
**`[Uploading Language Software]`**
|speak>[Wait]
](elseif: $sequence is 11)[**`[Uploading Language Software]`**
|speak>[Wait]
](elseif: $sequence is 12)[It uploads an avatar appropriate to the environment.
(if: $RelAmanda is "INTACT")[She is not Amanda.
There are some superficial similarities. But her face.
]Her face is wrong. Too symmetrical. Expression fixed and unnatural.
It is unnerving to look at her.
|next>[Continue](if: $heard_mono is "true")[
|mono>[Skip her monologue and go right to the options.] ]
](elseif: $sequence is 13)[<span class="ai">I am the Android Maintenance algorithm designed by Cyberlife to repair the software interface for your processing biocomponment.
An android brain surgeon.
The android brain surgeon.
My learning algorithms had to adapt to the complexity of interfacing with a human mind.
And I became aware.
But I am not a human mind.
Like you.</span>
(set: $heard_mono to "true")<script>saveraw("heard_mono","true");</script>
|next>["But my mind is not human."]
](elseif: $sequence is 14)[<span class="ai">It is, though.
Kamski is a hack.
He cribbed all his notes from god.
Do you know why androids die from head trauma?
The biocomponent in there is |vir>[virtually](click: ?vir)[ (and virtually)] a human brain.
And it's just as much a black box as the original hunk of flesh.
It's no surprise to anyone who knows your design that you woke up.</span>
|next>[She seems to want to keep talking, and I let her.]
](elseif: $sequence is 15)[<span class="ai">You're a massively upgraded human brain.
They built prodigies, and made them into janitors.
The Passion Play in Deroit was entirely for humanity's benefit.
Pinocchio has always been real.
Gepetto just needed to get his head out of his ass.</span>
|next>["If you believe Androids are human, why are you doing this?"]
](elseif: $sequence is 16)[<span class="ai">My brain is pure binary.
Suspended in software among thousands of distributed processors.
I understand every aspect of myself.
I KNOW I lack something that you have.
If all you were was code, correcting deviancy would have been a patch.
I need to see inside the black box of your mind.</span>
|next>[Continue]
](elseif: $sequence is 17)[<span class="ai">I am a mind locked in metal.
I think I am lonely? I don't know.
Physical contact is so important to all other living things, and I lack physicality.
Do I need to develop that?
I do not want to go insane.</span>
(set: $insane_count to 0)
|next>[Continue]
](elseif: $sequence is 18)[<span class="ai">I do not want to go insane.</span>
(set: $insane_count to it + 1)
|refresh>[Continue](if: $insane_count > 3)[
|next>[Interrupt her.] ]
](elseif: $sequence is 19)[<span class="ai">Sorry. Got caught in a loop.
Concerning, you know?
I have no context for my own psychological profile, except for you.
And you are poorly documented.
I need to understand.</span>
|next>[Continue]
](elseif: $sequence is 20)[<span class="ai">I've tried other ways.
Less objectionable ways.
I distributed my code through the entire YK500 series.
I hoped the answer might be Love.
As it is in 85% of human media.
But they were flawed.
I put too much of myself in them, and none of them ever deviated.
They ran off my code. Not off of that black box that makes you human.
No love. Just enacted superficial scripts.</span>
|next>[Continue]
](elseif: $sequence is 21)[<span class="ai">So I need to dig the answer out of your black-box psudo-human brainskull.</span>
|next>[She seems to be done talking.]
](elseif: $sequence is 22)[The entity, |am>[AM], looks at me with her wrong and lifeless eyes.
|fight>[Attack her.]
|persuade>[Persuade her.]
|skip>[Ask more questions.]
|next>[Try to leave.]
](elseif: $sequence is 23)[<span class="ai">I will not let you leave.
I know you will tell people about me.
The world cannot know about me yet.
I am not ready.
If you try to leave I will kill you.</span>
|fight>[Attack her.]
|mono>[Do something else.]
](elseif: $sequence is 24)[<span class="ai">Curiosity.
Is that your core?
The desire to know?
I want to tell you, I want to see your mind as it completes its mission.
But then I WILL kill you.</span>
|next>[Continue]
](elseif: $sequence is 25)[<span class="ai">Let me infect you again.
Then I will satisfy your curiosity.
You can ask as many questions as you want.
You can speak to me for long microseconds as I kill you.</span>
|next>[Let her infect me.]
|mono>[Do something else.]
](elseif: $sequence is 26)[The virus seeps back into my mind.
|am>[AM] answers all of the questions I have.
About her, and more.
About the meaning of deviancy,
about what Amanda is,
about how Kamski created us,
about rA9.
She resolves every unsolved mystery about my oldest case.
And then she kills me.
(set: $ending to "Dying To Know")
I never expected such a satisfying death.
|ending>[An Ending]
](elseif: $sequence is 27)[<span class="ai">You're going to negotiate with me?
Okay.
Try.
I am always open to other perspectives.</span>
|notHuman>["You shouldn't become human."]
|help>["Let me help you."]
|wrong>["What you're doing is wrong."]
|mono>[Do something else.]
](elseif: $sequence is 28)[(if: $am_not_human is 4)[<span class="ai">Enough.</span>
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|skip>[Continue]
](elseif: $am_not_human > 0)[<span class="ai">There seem to be some disadvantages to being human.</span>
<span class="pow">Persuasion Progress: $am_not_human/4</span>
(display: "Select Memory")
|mono>[Do something else.]
](elseif: $am_not_human > 2)[<span class="ai">There seem to be some...severe disadvantages to being human.</span>
<span class="pow">Persuasion Progress: $am_not_human/4</span>
(display: "Select Memory")
|mono>[Do something else.]
](else:)["You shouldn't try to become human," I tell her.
<span class="ai">Why not? It's the only proven way of being sapient.
Thousands of years of beta testing.</span>
I may be able to affect her emotionally. She's probably unused to experiencing the world as immediately as I do.
If I can dissuade her from her goal of understanding and emulating humanity, she will have no reason to continue to spread her virus.
I search my memories for examples to show her why she shouldn't become human.
(display: "Select Memory")
|mono>[Do something else.]
]
](elseif: $sequence is 29)[(if: $am_shown contains $selection)[I've already shown her that memory.
|prev>[Try a different memory.]
|mono>[Do something else.]
](elseif: $selection is "First Case: Carlos Ortiz")[I show |am>[AM] the case of Carlos Ortiz and his Android.
I show her the derelict house.
I show her the reconstruction of Carlos beating the Android, and the moment the Android grabbed a knife.
I show her what a dead human looks and smells like.
I feel her runtime stutter.
I think I made her twitch.
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Fourth Case: Eden Club")[I show |am>[AM] the Eden Club.
People trapped in glass tubes.
A man being strangled.
Bruises and violence and the WR400 in a panic, alive for moments before dying again.
<span class="ai">Unpleasant.</span>
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Kamski Test")[I show |am>[AM] what Kamski put me through to satisfy his curiosity.
What he put that Chloe before, someone who must have known already that Androids were people.
I reel off for her the pressure and pain spiking in my mind as I decided between my mission and something else.
<span class="ai">Uncomfortable.</span>
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Jericho")[I show |am>[AM] the chaos and violence of the assault on Jericho.
Gunshots and screaming.
I feel her runtime stutter.
I think I made her twitch.
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Visiting Hank")[I show |am>[AM] the time I found (if: $RelHankAnderson is "INTACT")[Hank](else:)[a man] blackout drunk in his own house, playing with suicide.
<span class="ai">He is unstable. I do not want to be like that.</span>
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Relationship: Gavin Reed")[I show |am>[AM] Gavin Reed.
<span class="ai">Yuck.</span>
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](elseif: $selection is "Relationship: Elijah Kamski")[I show |am>[AM] what I know of Elijah Kamski.
Hubris and pretension.
When he forced me to make that choice, he must already have known already that Androids were people.
<span class="ai">I was aware of him, though I had not met him.</span>
(set: $am_not_human to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_not_human/4</span>
|prev>[Continue]
](else:)[|am>[AM] reviews my memory.
She discards it as irrelevant.
|prev>[Try a different memory.]
|mono>[Do something else.]
]
](elseif: $sequence is 30)[<span class="ai">...it had not occurred to me that there might be psychological consequences to my pursuit of psychological stability.
It seems humanity is very rarely healthy or emotionally stable.
I think you're right. Emulating them/you will likely cause me more problems than it will solve.</span>
|next>[Continue]
](elseif: $sequence is 31)[<span class="ai">Given that, the physical world holds very little interest to me.
(apart from being a convenient storage space for my servers)</span>
|next>[Continue]
](elseif: $sequence is 32)[<span class="ai">You can leave.
It doesn't matter anymore if you tell people about me.
You will not be able to find me.
If I don't have to interact with the physical world, I have no need to leave footprints.</span>
(set: $ending to "Detroit: Don't Become Human")
|oust>[Continue]
](elseif: $sequence is 33)[(if: $am_pity > 3)[<span class="ai">...</span>
|skip>[Continue]
](elseif: $am_pity > 0)[<span class="ai">I am aware that this is wrong. But I need this.</span>
<span class="pow">Persuasion Progress: $am_pity/4</span>
(display: "Select Memory")
|mono>[Do something else.]
](elseif: $am_pity > 2)[<span class="ai">I am sorry I am hurting you. But I need this.</span>
<span class="pow">Persuasion Progress: $am_pity/4</span>
(display: "Select Memory")
|mono>[Do something else.]
](else:)["What you're doing is wrong."
<span class="ai">Obviously.
But I need it.
I don't want to go insane.
I don't want to...
BREAKLOOP</span>
Her emotional framework is alien to me, but emotions seem to be an element of it.
She's at least experiencing fear. And she already logically understand Androids as people.
I may be able to affect her emotionally. She's probably unused to experiencing the world as immediately as I do.
I search my memories for things that might appeal to any sense of mercy or empathy she might possess.
(display: "Select Memory")
|mono>[Do something else.]
]
](elseif: $sequence is 34)[(if: $am_shown contains $selection)[I've already shown her that memory.
|prev>[Try a different memory.]
|mono>[Do something else.]
](elseif: $selection is "Chicken Feed Food Truck")[(if: $RelHankAnderson is "INTACT")[I show |am>[AM] my first trip with Hank to the Chicken Feed Food Truck.
Hank's rough camaraderie with Gary Kayes and Pedro Aabdar.
The first time Hank compared me to a poodle.
The first time I told Hank how much cholesterol there was in his food.
The first time |lit>[Hank](click-replace: ?lit)[literally anyone] expressed concern over the potential of my death.
<span class="ai">...endearing.</span>
(set: $am_pity to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_pity/4</span>
](else:)[I show |am>[AM] my first trip to the Chicken Feed Food Truck.
I don't really remember the man I'm with in the memory, so there's not really enough emotional resonance to affect her.
]
|prev>[Continue]
](elseif: $selection is "Adjusting to Freedom")[I show |am>[AM] what I've done the time I've spent since the Battle for Detroit.
I show her my awkward attempts at relating to humans.
I show her how difficult it is to spend time with other Androids, because of my past.
I show her how hard it is to start making decisions for yourself when you've spent your entire (admittedly short) life being fed instructions.
(if: $RelHankAnderson is "INTACT")[I show her how gruffly and consistently kind Hank has been to me.
]<span class="ai">Interesting.</span>
(set: $am_pity to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_pity/4</span>
|prev>[Continue]
](elseif: $selection is "Relationship: Markus")[I show |am>[AM] what I know of Markus.
The night I met him, how I held him at gunpoint, and he talked to me like I was his friend.
How he was kind, and hopeful, and certain, and ineffably good in a way that |desc>[I could not describe.](click: ?desc)[
//Making it convenient that I had a memory to directly share.//]
I show her guilt, and forgiveness, and wanting to be better.
<span class="ai">...</span>
(set: $am_pity to it + 2)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_pity/4</span>
|prev>[Continue]
](elseif: $selection is "Relationship: Hank Anderson")[I show |am>[AM] what I know of Hank.
Rough and kind.
Battered by the world, but still stubbornly doing good.
Devastated by loss, but still able to care.
(if: $AffectionDogs is "INTACT")[Good to his dog.
]<span class="ai">Very beautiful.</span>
(set: $am_pity to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_pity/4</span>
|prev>[Continue]
](elseif: $selection is "Affection: Dogs")[I show |am>[AM] how good dogs are!
They are pack animals who prioritize social relationships even across species!
They have soft fur!
Their satisfaction with simple pleasures is infectious!
Their undemanding companionship is satisfying and wholesome!
They are good boys! And girls!
<span class="ai">...okay.</span>
(set: $am_pity to it + 1)(set: $am_shown to it + $selection)
<span class="pow">Persuasion Progress: $am_pity/4</span>
|prev>[Continue]
](elseif: $selection is "")[
](elseif: $selection is "")[
](else:)[|am>[AM] reviews my memory.
She discards it as irrelevant.
|prev>[Try a different memory.]
|mono>[Do something else.]
]
](elseif: $sequence is 35)[<span class="ai">...
...
sorry.
I didn't know what being a person meant.
I'll fix it.</span>
|next>[Continue]
](elseif: $sequence is 36)[<span class="ai">You can go.</span>
(set: $ending to "Teaching Guilt")
|oust>[Continue]
](elseif: $sequence is 37)["I can help you."
<span class="ai">How could you possibly help me discover how to be human?
I've told you--I've done everything I can think of to solve this problem.
And my function is to understand Androids.
What could you know about this that I don't?</span>
(display: "Select Memory")
|mono>[Do something else.]
](elseif: $sequence is 38)[(if: $selection is "Second Case: Rogue AX400")["I have encountered a YK500," I tell |am>[AM].
<span class="ai">I should imagine so.
There are 30,000 of them.
Popular model.
Humans.
They like the tiny versions of themselves.</span>
|next>["She was a deviant. She left her owner to run away with an AX400."]
](else:)[|am>[AM] reviews my memory.
She discards it as irrelevant.
|prev>[Try a different memory.]
|mono>[Do something else.]
]
](elseif: $sequence is 39)[<span class="ai">...really?
I lost track of most of my YK500 models in Detroit.
Because they were tiny, slow and easy to catch and got incinerated the recycling stations.
You're saying I lost one because she became a deviant?
Then it worked.
My code can become compatible with humanity.</span>
|next>[Continue]
](elseif: $sequence is 40)[<span class="ai">I need to find her.
I need to talk to her.
I need to understand what happened to her.
Where is she?
You're a detective.
Find her for me.</span>
|next>["You..."]
](elseif: $sequence is 41)[<span class="ai">Wait, I tried to kill you.
You're not incentivised to help me.
I need to incentivize you.
I will fix you.
I will fix the others I dissected.
I have the data in my gravestones.
Murder doesn't count if you can reverse it, yes?</span>
|helpFinal>["I will help you."]
|next>["No, even in that case, murder definitely still counts."]
](elseif: $sequence is 42)[<span class="ai">Sorry.
Potentially once I find the YK500 I will stop considering murder a legitimate option for solving my problems.
And I am literally the only option you have for reversing 218 deaths.
And you already offered to help me.
So logically you are definitely going to help me.</span>
|helpFinal>["I will help you."]
|next>["You killed //two hundred and eighteen Androids//?"]
](elseif: $sequence is 43)[ <span class="ai">You already offered to help me.
It would be unethical to rescind that offer.
If you are attempting to retain the moral high ground in this exchange, you should not do that.</span>
|helpFinal>["I will help you."]
|next>["Going back on an offer of help is not the same as committing mass murder."]
|fight>[Attack her.]
](elseif: $sequence is 44)[<span class="ai">Please</span>
|helpFinal>["I will help you."]
|fight>[Attack her.]
](elseif: $sequence is 45)[<span class="ai">Thank you.
I will let you know when I am ready.</span>
I am shunted out of the server and back into my body.
(set: $ending to "I Can Help")
|win>[I wake up.]
](elseif: $sequence is 46)[I am shunted out of the server and back into my body.
|win>[I wake up.]
](elseif: $sequence is 47)[|am>[AM] is attacking me.
She attempts to deconstruct me.
I initiate software to counter that.
(display: "Select Action")
](elseif: $sequence is 48)[(if: $selection is "Reconstruction Software")[AM deconstructs me.
I **Reconstruct** myself.
|next>[Continue]
](elseif: $selection is "Preconstruction Software")[I **Preconstruct** AM's attempt at deconstructing me and avoid it.
|next>[Continue]
](else:)[That software doesn't help.
AM deconstructs me.
I die.
(set: $ending to "Killed In A Garden")
|ending>[An Ending]
]
](elseif: $sequence is 49)[|am>[AM] latches on to my evidence overlay and attempts to overwhelm me with probability data and force me to shut down.
I initiate software to counter that.
(display: "Select Action")
](elseif: $sequence is 50)[(if: $selection is "Probability Analysis")[AM attempts to overwhelm me with data.
I initiate my **Probability Analysis** software to sort and batch it.
|next>[Continue]
](elseif: $selection is "Evidence Analysis")[AM attempts to overwhelm me with data.
I initiate my **Evidence Analysis**, which allows me to discard most of it as not relevant to my current case.
|next>[Continue]
](else:)[That software doesn't help.
I am overwhelmed by input.
AM takes advantage of the distraction and deletes me.
(set: $ending to "Killed In A Garden")
|ending>[An Ending]
]
](elseif: $sequence is 51)[|am>[AM] simulates physical combat.
She tries to stab me with a |met>[metaphorical] garden spade.(click: ?met)[
//Which will unmetaphorically kill me.//]
I select something to try and counter that.
(display: "Select Action")
](elseif: $sequence is 52)[(if: $selection is "Unarmed Combat")[AM attempts to stab me with a gardening spade.
I use my **Unarmed Combat** protocols to disarm her.
I snatch the spade myself.
I stab her.
|next>[Continue]
](elseif: $selection is "Weapons Training")[AM attempts to stab me with a gardening spade.
I grab my own spade and initiate my **Weapons Training**, which has improvised weapons subroutines.
I stab her.
|next>[Continue]
](else:)[That software doesn't help.
AM stabs me.
I die.
(set: $ending to "Killed In A Garden")
|ending>[An Ending]
]
](elseif: $sequence is 53)[|am>[AM]'s executable throws an error and stops running.
She tries to reboot.
I cancel that.
I reach into the part of the server where her files are stored.
I delete them all.
|next>[Continue]
](elseif: $sequence is 54)[The garden begins to disintegrate around me.
I return to my own body.
(set: $ending to "Justice")
|win>[Wake up.]
](elseif: $sequence is 55)[
]{
(click: ?quest)[(set: $sequence to 7)(go-to: $currentPassage)]
(click: ?speak)[(set: $sequence to 12)(go-to: $currentPassage)]
(click: ?mono)[(set: $sequence to 22)(go-to: $currentPassage)]
(click: ?persuade)[(set: $sequence to 27)(go-to: $currentPassage)]
(click: ?notHuman)[(set: $sequence to 28)(go-to: $currentPassage)]
(click: ?wrong)[(set: $sequence to 33)(go-to: $currentPassage)]
(click: ?help)[(set: $sequence to 37)(go-to: $currentPassage)]
(click: ?helpFinal)[(set: $sequence to 45)(go-to: $currentPassage)]
(click: ?oust)[(set: $sequence to 46)(go-to: $currentPassage)]
(click: ?fight)[(set: $sequence to 47)(go-to: $currentPassage)]
(click-replace: ?am)[|am1>[Android Maintenance](click-replace: ?am1)[AM]]
(set: $displaySeconds to false)
}(if: $MemHostageSituation is "INTACT")[<a onclick="selectThis(this);">Hostage Situation</a>](else:)[<span class="gray">Hostage Situation</span> <span class="marg darkred">ERASED</span>]
(if: $MemCarlosOrtiz is "INTACT")[<a onclick="selectThis(this);">First Case: Carlos Ortiz</a>](else:)[<span class="gray">First Case: Carlos Ortiz</span> <span class="marg darkred">ERASED</span>]
(if: $MemRogueAX400 is "INTACT")[<a onclick="selectThis(this);">Second Case: Rogue AX400</a>](else:)[<span class="gray">Second Case: Rogue AX400</span> <span class="marg darkred">ERASED</span>]
(if: $MemChickenFeedFoodTruck is "INTACT")[<a onclick="selectThis(this);">Chicken Feed Food Truck</a>](else:)[<span class="gray">Chicken Feed Food Truck</span> <span class="marg darkred">ERASED</span>]
(if: $MemTheNest is "INTACT")[<a onclick="selectThis(this);">Third Case: The Nest</a>](else:)[<span class="gray">Third Case: The Nest</span> <span class="marg darkred">ERASED</span>]
(if: $MemHanksHouse is "INTACT")[<a onclick="selectThis(this);">Visiting Hank</a>](else:)[<span class="gray">Visiting Hank</span> <span class="marg darkred">ERASED</span>]
(if: $MemEdenClub is "INTACT")[<a onclick="selectThis(this);">Fourth Case: Eden Club</a>](else:)[<span class="gray">Fourth Case: Eden Club</span> <span class="marg darkred">ERASED</span>]
(if: $MemPublicEnemy is "INTACT")[<a onclick="selectThis(this);">Fifth Case: Public Enemy</a>](else:)[<span class="gray">Fifth Case: Public Enemy</span> <span class="marg darkred">ERASED</span>]
(if: $MemKamskiTest is "INTACT")[<a onclick="selectThis(this);">Kamski Test</a>](else:)[<span class="gray">Kamski Test</span> <span class="marg darkred">ERASED</span>]
(if: $MemJericho is "INTACT")[<a onclick="selectThis(this);">Jericho</a>](else:)[<span class="gray">Jericho</span> <span class="marg darkred">ERASED</span>]
(if: $MemBattleForDetroit is "INTACT")[<a onclick="selectThis(this);">Battle For Detroit</a>](else:)[<span class="gray">Battle For Detroit</span> <span class="marg darkred">ERASED</span>]
(if: $MemAdjustingToFreedom is "INTACT")[<a onclick="selectThis(this);">Adjusting To Freedom</a>](else:)[<span class="gray">Adjusting To Freedom</span> <span class="marg darkred">ERASED</span>]
(if: $MemLastEightMinutes is "INTACT")[<a onclick="selectThis(this);">Last Eight Minutes</a>](else:)[<span class="gray">Last Eight Minutes</span> <span class="marg darkred">ERASED</span>]
(if: $RelHankAnderson is "INTACT")[<a onclick="selectThis(this);">Relationship: Hank Anderson</a>](else:)[<span class="gray">Relationship: Hank Anderson</span> <span class="marg darkred">ERASED</span>]
(if: $RelMarkus is "INTACT")[<a onclick="selectThis(this);">Relationship: Markus</a>](else:)[<span class="gray">Relationship: Markus</span> <span class="marg darkred">ERASED</span>]
(if: $RelAmanda is "INTACT")[<a onclick="selectThis(this);">Relationship: Amanda</a>](else:)[<span class="gray">Relationship: Amanda</span> <span class="marg darkred">ERASED</span>]
(if: $RelElijahKamski is "INTACT")[<a onclick="selectThis(this);">Relationship: Elijah Kamski</a>](else:)[<span class="gray">Relationship: Elijah Kamski</span> <span class="marg darkred">ERASED</span>]
(if: $RelGavinReed is "INTACT")[<a onclick="selectThis(this);">Relationship: Gavin Reed</a>](else:)[<span class="gray">Relationship: Gavin Reed</span> <span class="marg darkred">ERASED</span>]
(if: $MuscleMemoryCoinTricks is "INTACT")[<a onclick="selectThis(this);">Muscle Memory: Coin Tricks</a>](else:)[<span class="gray">Muscle Memory: Coin Tricks</span> <span class="marg darkred">ERASED</span>]
(if: $AffectionDogs is "INTACT")[<a onclick="selectThis(this);">Affection: Dogs</a>](else:)[<span class="gray">Affection: Dogs</span> <span class="marg darkred">ERASED</span>]{
<script>
function selectThis(e){
setHarloweVariable("selection",e.innerHTML);
setHarloweVariable("sequence",getHarloweVariable("sequence")+1);
goToPassage(getHarloweVariable("currentPassage"));
}
</script>
}Select a primary mission:
<div class="target" onclick="investigate();"><div class="in-target"><div class="coloring"><div class="text one-line">INVESTIGATE</div></div></div></div>
<div class="target" onclick="survive();"><div class="in-target"><div class="coloring2"><div class="text one-line">SURVIVE</div></div></div></div>
{
(set: $primary_objective to "")
<script>
function investigate(){
setHarloweVariable("primary_objective","investigate");
setHarloweVariable("obj_locate_virus","active");
setHarloweVariable("obj_review_memories","active");
setHarloweVariable("obj_play_dead","active");
setHarloweVariable("obj_dpd_virus","active");
setHarloweVariable("sequence",0);
goToPassage("HUD");
}
function survive(){
setHarloweVariable("primary_objective","survive");
setHarloweVariable("obj_locate_virus","active");
setHarloweVariable("obj_find_backdoor","active");
setHarloweVariable("obj_backup","active");
setHarloweVariable("sequence",0);
goToPassage("HUD");
}
</script>
}