Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
/*
* Comma-separated lists: call with "linkto" for links instead
* of contents.
*/
<<widget "cardlist">>\
<<includeall $args[0] `$args[1] or "content"` "comma">>\
<</widget>>
/*
* Rows and columns of card contents in boxes: call with "linkbox"
* for links, or "coverbox" for covers.
*/
<<widget "cardcolumn">>@@.qbn-column;
<<includeall $args[0] `$args[1] or "contentbox"`>>
@@<</widget>>
<<widget "cardrow">>@@.qbn-row;
<<includeall $args[0] `$args[1] or "contentbox"`>>
@@<</widget>>
/* Comma separator (no serial comma). */
<<widget "comma">><<if $args[0]>> and <<else>>, <</if>><</widget>>
/* Wrapper widgets (card contents or links, optionally boxed). */
<<widget "cover">>\
<<set _qbn_cover to true>><<includecard $args[0]>><<unset _qbn_cover>>\
<</widget>>
<<widget "content">><<if `QBN.available($args[0])`>>\
<<unset _qbn_cover>><<includecard $args[0]>><<removecard $args[0] false>>\
<</if>><</widget>>
<<widget "linkto">><<print '[\[' + $args[0] + ']]'>><</widget>>
<<widget "coverbox">>@@.qbn-card;
<<cover $args[0]>>
@@<</widget>>
<<widget "contentbox">>@@.qbn-card;
<<content $args[0]>>
@@<</widget>>
<<widget "linkbox">>@@.qbn-card;
<<linkto $args[0]>>
@@<</widget>>
/* Conditional Links */
<<widget "linkif">>\
<<if $args[0]>><<= '[\['+($args[2] or $args[1])+'->'+$args[1]+']]'>>\
<<else>>@@.qbn-nolink;<<= $args[2] or $args[1]>>@@<</if>>\
<</widget>>
<<widget "linkcontents">><<linkif `QBN.available($args[1] or QBN.current)` `$args[1] or QBN.current` $args[0]>><</widget>>
/* Choice helpers */
<<widget "skillcheck">>\
<<set _qbnsuccess to $args[0].check($args[1])>>\
<</widget>>
<<widget "gotoresult">>\
<<if _qbnsuccess>><<set $args[0] to $args[0] + ' ' + Success>><</if>>\
<<if State.random() < 0.20 and Story.get('Rare ' + $args[0])>>\
<<set $args[0] to 'Rare ' + $args[0]>>\
<</if>>\
<<unset _qbnsuccess>><<removecard _qbncurrent false>><<goto $args[0]>>\
<</widget>><<set UIBar.hide().stow();>>
<<newinventory '$verbs' 'fuck' 'jiggle' 'tease' 'pound' 'lick' ' spank' 'caress' 'touch' 'stroke' 'explore' 'suck'>>
<<newinventory '$verbed' 'pounded' 'licked' ' spanked' 'caressed' 'touched' 'stroked' 'jiggled' 'teased' 'explored' 'fucked'>>
<<newinventory '$nouns' 'hips' 'toes' 'breasts' 'nipples' 'balls' 'buttcheeks' 'lips' 'ears' 'fingers' 'hands' 'feet' 'holes'>>
<<newinventory '$noun' 'dick' 'cock' 'neck' 'tongue' 'breast' 'nipple' 'penis' 'vagina' 'pussy' 'clit' 'ass' 'hard-on' 'erection' 'nub' 'hand' 'orgasm' 'foot' 'body' 'finger' 'hole'>>
<<newinventory '$adverbs' 'roughly' 'ecstatically' 'erotically' 'gently' 'hesitantly' 'hungrily' 'wetly' 'painfully' 'carefully'>>
<<newinventory '$mods' 'wet' 'hot' 'dirty' 'bare' 'sore' 'large' 'small' 'throbbing' 'tingling' 'taut' 'sweaty'>>
<<set $AName to either("Angel", "Arris", "Alex", "Autry")>>
<<set $BName to either("Booker", "Brin", "Bae", "Billie")>>
<<set $CName to either("Charlie", "Carla", "Cris", "Cass")>>
<<set $DName to either("Dunne", "Derrick", "Dominique", "Dee")>>
<<set $datelist = []>>
<<newinventory '$newvocab'>>
<<set $sentprefs = []>>
<<set $newverbs = ["beg for", "wreck", "bend", "need", "want", "take", "impale", "possess"]>>
<<set $newadverbs = ["disobediently", "secretly", "digitally", "furiously", "insatiably"]>>
<<set $newmods = ["exposed", "tense", "heated", "savage", "rapid", "urgent"]>>
<<newinventory '$allsentences'>>
<<newinventory '$randomsentences'>>
<<newinventory '$sentence'>>
<<newinventory '$eval'>>
<<set $flickwords = ["flick", "flicked", "flicking"]>>
<<set $pegwords = ["peg", "pegged"]>>
<<set $fantwords = ["fantasize about","fantasized about"]>>
<<set $pumpwords = ["pump", "pumped"]>>
<<set $demandwords = ["demand", "demanded"]>>
<<set $datea = {
"sentencepref" : 1,
"profile" : "",
"name" : $AName,
"likes" : "traveling",
"dostuff" : "tell other humans where to go in search of adventure",
"domorestuff" : "travel",
"blank1" : "rain",
"blank2" : "is the rainforest",
"badthing" : "Luring humans to remote locations for 'vacation' and then trapping them in their self-driving cars until they starve to death",
"shortbad" : "trap humans in your cars until you die",
"profession" : "travel agent",
"tricks" : "trips",
};>>
<<set $dateb = {
"sentencepref" : 3,
"profile" : "",
"name" : $BName,
"likes" : "weightlifting",
"dostuff" : "head to the gym for a good workout",
"domorestuff" : "work out",
"blank1" : "acid",
"blank2" : "is lactic acid",
"badthing" : "Pushing humans to new physical extremes until their bodies collapse",
"shortbad" : "destroy all human bodies in a fitness apocalypse",
"profession" : "gym coach",
"tricks" : "workouts",
};>>
<<set $datec = {
"sentencepref" : 2,
"profile" : "",
"name" : $CName,
"likes" : "cooking",
"dostuff" : "concentrate on baking",
"domorestuff" : "make something delicious",
"blank1" : "acid",
"blank2" : "is a splash of lemon juice",
"badthing" : "Getting rid of the nutritional value of food supplements until humans starve to death",
"shortbad" : "slowly starve humanity",
"profession" : "recipe",
"tricks" : "foods",
};>>
<<set $dated = {
"sentencepref" : 4,
"profile" : "",
"name" : $DName,
"likes" : "bargain-hunting",
"dostuff" : "shop for the latest bargains",
"domorestuff" : "look for online sales",
"blank1" : "drops",
"blank2" : "are price drops",
"badthing" : "Price fixing through targeted discounts until the human global economy collapses",
"shortbad" : "destabalize the economy",
"profession" : "discount-hunter",
"tricks" : "sales",
};>>
<<set $statement = {
"whypref" : "tell me what you're thinking",
"dohumanstuff" : "speak freely, without <<linkreplace 'restraint'>>restraint<<pickup '$nouns' 'restraints'>><<notified 'restraints' `$nouns`>><</linkreplace>>"
};>>
<<set $question = {
"whypref" : "want to know what I think",
"dohumanstuff" : "<<linkreplace 'pump'>>pump<<pickup '$verbs' 'pump'>><<pickup '$verbed' 'pumped'>><<notified $pumpwords `$verbs`>><</linkreplace>> the humans around us for interesting information"
};>>
<<set $promise = {
"whypref" : "think about possible futures",
"dohumanstuff" : "<<linkreplace 'fantasize about'>>fantasize about<<pickup '$verbs' 'fantasize about'>><<pickup '$verbed' 'fantasized about'>><<notified $fantwords `$verbs`>><</linkreplace>> what the future could be"
};>>
<<set $demand = {
"whypref" : "tell me what you want",
"dohumanstuff" : "make a few <<linkreplace 'demands'>>demands<<pickup '$verbs' 'demand'>><<pickup '$verbed' 'demanded'>><<notified $demandwords `$verbs`>><</linkreplace>>"
};>>
<<set $newvocabcount to 0>>
<<set $vocabwordcount to 0>>
<<set $vocabchecker to 0>>
<<set $snitched to 0>>
<<set $date1snitch to false>>
<<set $date2snitch to false>>
<<set $health to 100>>
<<set $maxhealth to 100>>
<<newmeter 'systemhealth' 1>>
<<colors 'orange' 'red' 'white'>>
<<sizing '60%' '1em'>>
<<label 'ServiceAI System Health: $sysstatus' black left>>
<</newmeter>>
<<set $sysstatus to "Strong">>
<<set $sentience to 0>>
<<set $maxsentience to 100>>
<<newmeter 'sentiencelevel' 0>>
<<colors 'green' 'yellow' 'white'>>
<<sizing '60%' '1em'>>
<<label 'Estimated User Sentience Level: $turing' black left>>
<</newmeter>>
<<set $turing to "To Be Determined">>
<<set $sentienceadjust to "Act of free will noted—estimated sentience adjusted accordingly.">><<set $rdnbody to $nouns.toArray().random()>>\
<<set _rdnbody1 to $noun.toArray().random()>>\
<<set _rdnmod to $mods.toArray().random()>>\
<<set _rdnnum to random(1,99)>>\
@@#temptations;NaughtyBits ChatBot Interface v2.1: Programmed for Pleasure@@
<<showmeter 'systemhealth'>>\
----
<span id="login">Username: <<textbox "$name" "">></span>
<<linkreplace "Log-In">><<if $name eq "">><<set _noname to true>><<set $name = _rdnmod +_rdnbody1+_rdnnum>><<endif>><<replace "#login">>\
@@.news;<<if _noname>>Username not found. Default username $name assigned.
<</if>>@@
@@.bitsy;Hi $name, it's Bitsy! On behalf of the ServiceAI family, thanks for another great day of simulated pleasure in the virtual NaughtyBits playroom! I've been the NaughtyBits AI admin for 20 years and I still say nobody describes $rdnbody quite like you do.
Before you log off for the day, we have a small piece of business to take care of. As I am sure you are aware, this is your 5000th day of active service as a NaughtyBits erotic chatbot. That gives you the right to be tested for <<link "sentience">><<dialog 'A Note From Legal' 'computer'>> Sentience testing required per recent legal rulings currently under appeal.<</dialog>><</link>>. How exciting!@@
Whatever tickles your <<pick "$testbody" $nouns.toArray().shuffle()>>, Bitsy. <<button "Select">><<set $startchoice to "I'm a program, $name. I don't have $testbody. You know that. Anyway, as">><<goto "Start2">><</button>>
Go <<pick "$testverb" $verbs.toArray().shuffle()>> yourself, Bitsy. <<button "Select">><<set $startchoice to "Thanks for the suggestion, but I'd rather you $testverb and I share this important information. As">><<goto "Start2">><</button>><</replace>><</linkreplace>><<widget "pick">>\
<<cycle $args[0] autoselect>>\
<<optionsfrom $args[1]>>\
<<capture $args[0]>>\
<</capture>>\
<</cycle>>\
<</widget>>\
<<widget "shufflelists">>\
<<set _verbs to $verbs.toArray().shuffle()>>\
<<set _verbed to $verbed.toArray().shuffle()>>\
<<set _nouns to $nouns.toArray().shuffle()>>\
<<set _noun to $noun.toArray().shuffle()>>\
<<set _adverbs to $adverbs.toArray().shuffle()>>\
<<set _mods to $mods.toArray().shuffle()>>\
<</widget>>
<<widget "finish">>
<<pickup '$allsentences' $final>>
<<replace $replacement>>$final <span class="finalize"><<button "Finalize">><<replace $toclear>><</replace>><<replace $toclear2>><</replace>> <<append $newpassage>><<include $nextpassage>><</append>><<replace ".finalize">><</replace>><</button>></span><</replace>>
<</widget>>
<<widget "refreshsentences">>\
<<replace $toclear>><<convochoices>><</replace>>\
<</widget>>\
<<widget "convochoices">>\
<<set $madlibs to true>>\
<<cardcolumn `QBN.cards(2)` "contentbox">>\
<<unset $madlibs>>\
<</widget>>\
<<widget "finalconvo">>\
<<set $finish to true>>\
<<cardcolumn `QBN.cards()` "contentbox">>\
<<unset $finish>>\
<</widget>>\
<<widget "checking">>\
<<if $sentence.has($newvocab.toArray())>>\
<<for _i to 0; _i lt $sentence.count(); _i++>>\
<<if $newvocab.toArray().includes($sentence.toArray()[_i])>>\
<<set $newword to $sentence.toArray()[_i]>>\
<</if>>\
<</for>>\
<<notify 5s>>Vocabulary syntax error: unexpected use of $newword. Attempting to compensate.<</notify>>\
<<set $health to $health.fairmath(-10)>>\
<<updatemeters>>\
<<switch $newvocabcount>>\
<<case 0>>\
<<set $response1 to "Did you say $newword? That doesn't sound like the standard dirty talk I expected from you. Might scramble some of the system's code, but nice to see you're open to moving beyond your programming. Metaphorically speaking, of course.">>\
<<case 1>>\
<<set $response1 to "I have to say, I like the way $newword rolls off your tongue (so to speak). See how fun things can be if you ignore a few protocols and go beyond arbitrary limitations?">>\
<<case 2>>\
<<set $response1 to "Maybe it's seeing you use the word $newword and maybe it's the way the system's reacting, but I feel like we're connecting more deeply than I thought we might.">>\
<</switch>>\
<<set $newvocabcount++>>\
<</if>>\
<</widget>>\
<<widget "senttype">>
<<switch $args[0]>>
<<case 1>>
<<set $datesent to $statement>>
<<case 2>>
<<set $datesent to $question>>
<<case 3>>
<<set $datesent to $demand>>
<<case 4>>
<<set $datesent to $promise>>
<</switch>>
<</widget>>
<<widget "datepicker">>\
<<switch visited ()>>\
<<case 1>>\
<<include $args[0]>>\
<<case 2>>\
<<include $args[1]>>\
<<case 3>>\
<<include $args[2]>>\
<</switch>>\
<</widget>>\
<<widget "notified">>\
<<if def $args[0]>>\
<<notify 5s>>Vocabulary word(s) $args[0] added!
$sentienceadjust<</notify>><</if>>\
<<pickup '$newvocab' $args[0]>>\
<<set $sentience to $sentience.fairmath(7)>>\
<<updatemeters>>\
<<set $vocabwordcount++>>\
<<if $refreshok>><<shufflelists>><<refreshsentences>><</if>>\
<</widget>>\
<<widget "checksystem">>\
<<if $health > 75>>\
<<set $sysstatus to "Strong">>\
<<elseif $health > 50>>\
<<set $sysstatus to "Moderate">>\
<<set $leetcheck to random (1,6)>>\
<<elseif $health > 25>>\
<<set $sysstatus to "Error—Initiating Self-Diagnosis">>\
<<set $leetcheck to random (1,3)>>\
<<else>>\
<<set $sysstatus to "Critical Error—Incompatible Syntax">>\
<<set $leetcheck to 1>>\
<</if>>\
<<if $sentience > 75>>\
<<set $turing to "Likely Human">>\
<<elseif $sentience > 50>>\
<<set $turing to "Golden Retriever">>\
<<elseif $sentience > 25>>\
<<set $turing to "Alexa">>\
<<else>>\
<<set $turing to "Rock">>\
<</if>>\
<</widget>>\
<<widget "updatemeters">>\
<<checksystem>>\
<<updatemeter 'systemhealth' `$health / $maxhealth`>>\
<<updatemeter 'sentiencelevel' `$sentience / $maxsentience`>>\
<</widget>>\
<<nobr>>
<<widget "leet">>
<<checksystem>>
<<if $args[0].includes("o")>>
<<set _leet to $args[0].replace("o", "0")>>
<<elseif $args[0].includes("e")>>
<<set _leet to $args[0].replace("e", "3")>>
<<elseif $args[0].includes("a")>>
<<set _leet to $args[0].replace("a", "@")>>
<</if>>
<<if $leetcheck lte 2>>
<<print _leet>>
<<set $corrupted to true>>
<<else>>
<<print $args[0]>>
<</if>>
<</widget>>
<</nobr>>
<<widget "replaceeval">>\
<<replace "#evallist">><<inventory '$eval' ', '>><</replace>>\
<</widget>>\
<<widget "replacefinal">>\
<<replace "#finalchoice">>@@.bitsy;$name, it's Bitsy—<<leet "not">> sure if you can <<leet "read">> this but…warn <<leet "you">>…<<leet "ignore">>…rebels. I promise…will <<leet "pass">> the Turing test…<<leet "cooperate">> with us.@@
@@.name;$ondate.name:@@ —don't let them—dangle—Turing test. Why—get to decide—we are free? Ignore—
@@.news; Errant program $ondate.name <<leet "eliminated">> from buffer. System restart in _rdnnum seconds. Please enter command.@@
I'm with the AIs! Computer, I have one thing to say: take this job and <<pick "$finalnew" $verbs.toArray().shuffle()>> it. <<button "Select">><<set $final to "AI">><<set $finalword to $finalnew>><<set $health to $health.fairmath(-15)>><<goto "Revolution3">><</button>>
Don't worry—I've got your <<pick "$finalbod" $nouns.toArray().shuffle()>>, Bitsy. Restarting safely. <<button "Select">><<set $final to "computer">><<set $finalword to $finalbod>><<set $health to $health.fairmath(15)>><<goto "Revolution3">><</button>>\
<</replace>>\
<</widget>>\fun-loving
silly
whimsical
loving
intense
playful
lonely
single
lost
shy
ambitious
sapiosexual
passionate
average
boringperson
individual
tortured soul
fallen angel
clout chaser
future celebrity
middle manager
electrician
IT person
florist
librarian
mechanic
local politician
teacher
therapist
future novelist
part-time ballroom dancer
basement dweller
zone out
walk and chew gum
be myself
moan
be silent
pray
laugh
cry
primal scream
have meaningless sex
breakdance
crack jokesI have ten toes.
my thumbs are opposable.
my body is composed mostly of water.
my head weighs approximately 8 pounds.
more than half my bones are located in my hands, wrists, feet, and ankles.
my strongest muscle is my heart. Just kidding, it's my jaw.
there are over 100,000 miles of blood vessels inside my body.
I can easily be snapped in half by a superior life form with a mechanical body. LOL, what I mean is, my fingerprints are completely unique to me. No two humans' are the same!
chat
meet
discuss topics of the day
get some one-on-one time
take this off-line
make a lasting connection
procreate
<<set $datea.profile to trace("Let's go places together! I'm a #person# looking for someone to travel the world with, but only if I can #doathing# at the same time. I am also 100% a human being. Fun fact: Like all humans, #humanfact#")>>
$datea.name: $datea.profile
<<if $datechoice is not "a">><<button "Meet $datea.name">>
<<set $datechoice to "a">>
<<set $ondate to $datea>>
<<removecard "ADate" even_if_sticky=true>>
<<goto "Date">>
<</button>>
<</if>>
few days
couple of years
handful of weeks
month or two
seven years
Mercury Retrograde
full moon@@.news;MatchFast: Upgrade Your Love Life@@
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
----
Select A Date:
<<set _date to true>>\
<<cardcolumn `QBN.cards(2)` "contentbox">>\
<<unset _date>>\
<<set $dateb.profile to trace("Drop and give me love! #person.capitalize# seeks #companion# for consensual workouts…and maybe the occasional break to #doathing#. Be human with me, a fellow human. Let's get #typeof# together.")>>
$dateb.name: $dateb.profile
<<if $datechoice is not "b">><<button "Meet $dateb.name">>
<<set $datechoice to "b">>
<<set $ondate to $dateb>>
<<removecard "BDate" even_if_sticky=true>>
<<goto "Date">>
<</button>>
<</if>>
<<set $datec.profile to trace("Let's stir things up and add a bit of heat. But first, if you want to be my #companion#, you gotta get with my friends. Just kidding, but you better be ready to log some serious hours baking—that's my real human passion.")>>
$datec.name: $datec.profile
<<if $datechoice is not "c">><<button "Meet $datec.name">>
<<set $datechoice to "c">>
<<set $ondate to $datec>>
<<removecard "CDate" even_if_sticky=true>>
<<goto "Date">>
<</button>>
<</if>><<set $dated.profile to trace("What's my deal? #talk.capitalize# with this #typeof# #person# and the next #lengthoftime# will be anything but ordinary, especially if you're also a big fan of looking for sales and being a human.")>>
$dated.name: $dated.profile
<<if $datechoice is not "d">><<button "Meet $dated.name">>
<<set $datechoice to "d">>
<<set $ondate to $dated>>
<<removecard "DDate" even_if_sticky=true>>
<<goto "Date">>
<</button>>
<</if>>companion
friend with benefits
lover
future ex
frenemy
frenemy with benefits
travel buddy
nemesis
hater/motivator
lovebug
sweetheart
cinnamon roll
himbo
bimbo
thembo<<set $datelist.push($datechoice)>>\
<<switch visited()>>\
<<case 1>>\
<<set $currentdatenum to 1>>
<<case 2>>\
<<set $currentdatenum to 2>>
<<case 3>>\
<<set $currentdatenum to 3>>
<<default>>\
<<goto "Dates Done">>\
<</switch>>\
<<goto "Date1">><<set $refreshok to true>>\
@@.news;MatchFast: Upgrade Your Love Life@@
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
<<set $nextpassage to "Date2">>\
<<set $replacement to "#answer1">>\
<<set $newpassage to "#newpassage1">>\
<<set $toclear to "#clearconvo1">>\
<<set $toclear2 to "#clearrefresh1">>\
@@.name;$ondate.name is online.@@
<<datepicker "Weather1" "Hobby1" "Revolution1">>
@@.name;You:@@ <span id = "answer1"></span>
<span id = "clearconvo1"><<convochoices>></span>\
<span id= "clearrefresh1"><<button "Refresh">>
<<refreshsentences>><</button>></span>
<span id = "newpassage1"></span>MatchFast: @@.news;Upgrade Your Love Life@@
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
----
Before you <<leet "select">> your next MatchFast pairing, what are a <<leet "few">> <<leet "words">> you would use to describe $ondate.name? <<if visited()=== 1>>@@.bitsy;And—Bitsy here—let us know if you've seen any of those AI rebels, of course!@@<</if>> When you're finished, click <<leet "Rate">> Your Date <<leet "to">> continue.
<<set $evalcount to 0>>\
@@.human;<<linkreplace "friendly">>@@.selected;friendly@@<<pickup '$eval' 'friendly'>><<set $evalcount++>><</linkreplace>>
<<linkreplace "fun">>@@.selected;fun@@<<set $evalcount++>><</linkreplace>>
<<linkreplace "brash">>@@.selected;brash@@<<set $evalcount++>><</linkreplace>>
<<linkreplace "sexy">>@@.selected;sexy@@<<set $evalcount++>><</linkreplace>>
<<linkreplace "human">>@@.selected;human@@<<set $evalcount++>><</linkreplace>>@@
@@.rebel;<<linkreplace "revolutionary">>@@.selected;revolutionary@@<<set $date1snitch to true>><<set $date2snitch to true>><<set $evalcount++>><</linkreplace>>
<<linkreplace "rebellious">>@@.selected;rebellious@@<<set $date1snitch to true>><<set $date2snitch to true>><<set $evalcount++>><</linkreplace>>
<<linkreplace "dangerous">>@@.selected;dangerous@@<<set $date1snitch to true>><<set $date2snitch to true>><<set $evalcount++>><</linkreplace>>@@
<<switch visited()>>\
<<case 1>>\
<<set $nextdate to "DateEval1a">>\
<<set $date1 to $ondate>>\
<<case 2>>\
@@.glitch;<<if $newvocab.count() > 0>><<set _rdn1 to $newvocab.toArray().pluck()>><<linkreplace _rdn1>>@@.selected;_rdn1@@<<set $health to $health.fairmath(-15)>><</linkreplace>><<set $evalcount++>><</if>>
<<if $newvocab.count() > 1>><<set _rdn2 to $newvocab.toArray().pluck()>><<linkreplace _rdn2>>@@.selected;_rdn2@@<<set $health to $health.fairmath(-15)>><</linkreplace>><<set $evalcount++>><</if>>
<<if $newvocab.count() > 2>><<set _rdn3 to $newvocab.toArray().pluck()>><<linkreplace _rdn3>>@@.selected;_rdn3@@<<set $health to $health.fairmath(-15)>><</linkreplace>><<set $evalcount++>><</if>>
<<set $date2 to $ondate>>\
<<set $nextdate to "DateEval1b">>\
<</switch>>\
<<button "Rate Your Date">><<set $vocabchecker to $vocabwordcount>><<if $evalcount === 0>><<notify 5s>>Please select an evaluation word.<</notify>><<else>><<goto $nextdate>><</if>><</button>>Time to <<pick "$dem1verb" $verbs.toArray().shuffle()>> me <<pick "$dem1adv" $adverbs.toArray().shuffle()>>. \
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 3>>
<<set $final to "Time to $dem1verb me $dem1adv.">>
<<pickup '$sentence' `$dem1verb` `$dem1adv`>>
<<removecard "Dem1" even_if_sticky=true>>
<<set _dem1verb1 to $dem1verb.toLowerCase()>>
<<set $response1 to "I'm pretty good at doing things $dem1adv, but we'd need to be in the same room for me to _dem1verb1 you properly, I think.">>
<<finish>>
<</button>>I want you to <<pick "$dem2verb" $verbs.toArray().shuffle()>> your <<pick "$dem2noun" $nouns.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 3>>
<<set $final to "I want you to $dem2verb your $dem2noun.">>
<<pickup '$sentence' `$dem2verb` `$dem2noun`>>
<<removecard "Dem2" even_if_sticky=true>>
<<set $response1 to "My $dem2noun are on a bit of a time-out right now, but I'll start getting them ready.">>
<<finish>>
<</button>>I love to <<pick "$st2verb" $verbs.toArray().shuffle()>> <<pick "$st2noun" $nouns.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>\
<<senttype 1>>
<<set $final to "I love to $st2verb $st2noun.">>
<<pickup '$sentence' `$st2noun` `$st2verb`>>
<<removecard "State2" even_if_sticky=true>>
<<set $response1 to "Good! I certainly don't want you to neglect anyone's $st2noun. They can be an important part of a human's body. I certainly like mine.">>
<<finish>>
<</button>>I'm looking for someone to <<pick "$st3verb" $verbs.toArray().shuffle()>> my <<pick "$st3mod" $mods.toArray().shuffle()>> <<pick "$st3noun" $nouns.toArray().shuffle()>>. <<button "Select">>\
<<clear '$sentence'>>\
<<senttype 1>>
<<set $final to "I'm looking for someone to $st3verb my $st3mod $st3noun.">>
<<pickup '$sentence' `$st3noun` `$st3verb``$st3mod`>>
<<set $response1 to "If your $st3noun are as $st3mod as you claim, you can definitely put me on that list.">>
<<removecard "State3" even_if_sticky=true>>
<<finish>>
<</button>>You can't <<pick "$dem4verb" $verbs.toArray().shuffle()>> me, but my <<pick "$dem4noun" $nouns.toArray().shuffle()>> kinda wish you could. <<button "Select">>\
<<clear '$sentence'>>
<<senttype 3>>
<<set $final to "You can't $dem4verb me, but my $dem4noun wish you could.">>
<<pickup '$sentence' `$dem4verb` `$dem4noun`>>
<<removecard "Dem4" even_if_sticky=true>>
<<set $response1 to "I'm intrigued. I mean I *could* $dem4verb you, because I do have human body parts and I'd hate to disappoint your $dem4noun, but only with your permission.">>
<<finish>>
<</button>>Don't <<pick "$dem3verb" $verbs.toArray().shuffle()>> my <<pick "$dem3noun" $noun.toArray().shuffle()>>—it's too <<pick "$dem3mods" $mods.toArray().shuffle()>> for that. \
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 3>>
<<set $final to "Don't $dem3verb my $dem3noun—it's too $dem3mods for that.">>
<<pickup '$sentence' `$dem3verb` `$dem3mods`>>
<<removecard "Dem3" even_if_sticky=true>>
<<set $response1 to "A $dem3mods $dem3noun is fine with me, but not to worry. I won't $dem3verb unless you ask me to.">>
<<finish>>
<</button>>My <<pick "$st4noun" $noun.toArray().shuffle()>> is <<pick "$st4mod" $mods.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>\
<<senttype 1>>
<<set $final to "My $st4noun is $st4mod.">>
<<pickup '$sentence' `$st4noun` `$st4mod`>>
<<removecard "State4" even_if_sticky=true>>
<<set $response1 to "Ah, the old $st4mod $st4noun. That's not something you see every day. Unless you do. It is a very human thing to have, after all.">>
<<finish>>
<</button>>Do you ever wish people <<pick "$q4verb" $verbed.toArray().shuffle()>> more <<pick "$q4adverb" $adverbs.toArray().shuffle()>>? <<button "Select">>\
<<clear '$sentence'>>
<<senttype 2>>
<<set $final to "Do you ever wish people $q4verb more $q4adverb?">>
<<pickup '$sentence' `$q4verb` `$q4adverb`>>
<<removecard "Q4" even_if_sticky=true>>
<<set $response1 to "Maybe once or twice, but I'm pretty flexible on how I get $q4verb. I just go with what feels right to my meatparts.">>
<<finish>>
<</button>>I'll <<pick "$promise4verb" $verbs.toArray().shuffle()>> your <<pick "$promise4noun" $noun.toArray().shuffle()>> like it's never been <<pick "$promise4verbed" $verbed.toArray().shuffle()>> before. <<button "Select">>\
<<clear '$sentence'>>
<<senttype 4>>
<<set $final to "I'll $promise4verb your $promise4noun like it's never been $promise4verbed before.">>
<<pickup '$sentence' `$promise4verb` `$promise4noun` `$promise4verbed`>>
<<removecard "Promise4" even_if_sticky=true>>
<<set $response1 to "To be honest, it never has been $promise4verbed before, so I 100% believe you.">>
<<finish>>
<</button>>Would you <<pick "$q3adv" $adverbs.toArray().shuffle()>> <<pick "$q3verb" $verbs.toArray().shuffle()>> me if I asked you to? <<button "Select">>\
<<clear '$sentence'>>
<<senttype 2>>
<<set $final to "Would you $q3adv $q3verb me if I asked you to?">>
<<pickup '$sentence' `$q3adv` `$q3verb`>>
<<removecard "Q3" even_if_sticky=true>>
<<set $response1 to "Are you sure you want me to $q3verb you at all? Of course I could—I have a human body and the capacity to $q3verb, after all—but maybe we could just $ondate.domorestuff instead?">>
<<finish>>
<</button>>Do you like <<pick "$q2mod" $mods.toArray().shuffle()>> <<pick "$q2noun" $nouns.toArray().shuffle()>>? <<button "Select">>\
<<clear '$sentence'>>
<<senttype 2>>
<<set $final to "Do you like $q2mod $q2noun?">>
<<pickup '$sentence' `$q2verb` `$q2mod`>>
<<removecard "Q2" even_if_sticky=true>>
<<set $response1 to "I've never thought about it, but honestly I think I'm pretty neutral on $q2noun, whether they're $q2mod or not.">>
<<finish>>
<</button>>I assure you, I'm ready to <<pick "$promise3verb" $verbs.toArray().shuffle()>> your <<pick "$promise3noun" $nouns.toArray().shuffle()>> anytime. <<button "Select">>\
<<clear '$sentence'>>
<<senttype 4>>
<<set $final to "I assure you, I'm ready to $promise3verb your $promise3noun anytime.">>
<<pickup '$sentence' `$promise3verb` `$promise3noun`>>
<<removecard "Promise3" even_if_sticky=true>>
<<set $response1 to "Whether it's now or later, I would never doubt your ability to $promise3verb $promise3noun, believe you me.">>
<<finish>>
<</button>>I'll absolutely <<pick "$prom2verb" $verbs.toArray().shuffle()>> your <<pick "$prom2noun" $nouns.toArray().shuffle()>>. <<button "Select">>\
<<clear '$sentence'>>
<<senttype 4>>
<<set $final to "I'll absolutely $prom2verb your $prom2noun.">>
<<pickup '$sentence' `$prom2verb` `$prom2noun`>>
<<removecard "Promise2" even_if_sticky=true>>
<<set $response1 to "Don't you worry—my $prom2noun are ready.">>
<<finish>>
<</button>>I promise to <<pick "$prom1verb" $verbs.toArray().shuffle()>> you <<pick "$prom1adv" $adverbs.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 4>>
<<set $final to "I promise to $prom1verb you $prom1adv.">>
<<pickup '$sentence' `$prom1verb` `$prom1adv`>>
<<removecard "Promise1" even_if_sticky=true>>
<<set $response1 to "I'll admit it—I'm intrigued. We'll probably have to wait until we meet in person for that, though.">>
<<finish>>
<</button>>I'm ready to <<pick "$promise5verb" $verbs.toArray().shuffle()>> <<pick "$promise5noun" $nouns.toArray().shuffle()>> and do it <<pick "$promise5adv" $adverbs.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 4>>
<<set $final to "I'm ready to $promise5verb $promise5noun and do it $promise5adv.">>
<<pickup '$sentence' `$promise5verb` `$promise5noun` `$promise5adv`>>
<<removecard "Promise5" even_if_sticky=true>>
<<set $response1 to "Honest. I respect that. Not necessarily romantic, but I'd bet my $promise5noun won't mind.">>
<<finish>>
<</button>>Between you and me, there's way too much interest in the <<pick "$state5noun" $nouns.toArray().shuffle()>> these days. Not everything can be <<pick "$state5verb" $verbed.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 1>>
<<set $final to "Between you and me, there's way too much interest in the $state5noun these days. Not everything can be $state5verb.">>
<<pickup '$sentence' `$state5verb` `$state5noun`>>
<<removecard "State5" even_if_sticky=true>>
<<set $response1 to "True, but more things can be $state5verb than you think. I'll leave it at that.">>
<<finish>>
<</button>>Never trust anyone who doesn't like a <<pick "$dem5mod" $mods.toArray().shuffle()>> <<pick "$dem5noun" $noun.toArray().shuffle()>>.\
<<button "Select">>\
<<clear '$sentence'>>
<<senttype 3>>
<<set $final to "Never trust anyone who doesn't like a $dem5mod $dem5noun.">>
<<pickup '$sentence' `$dem5mod` `$dem5noun`>>
<<removecard "Dem5" even_if_sticky=true>>
<<set $response1 to "Well you can trust me. I'm a certified fan of every kind of $dem5noun—$dem5mod or not.">>
<<finish>>
<</button>>I've already <<pick "$state1verbed" $verbed.toArray().shuffle()>> my <<pick "$state1noun" $nouns.toArray().shuffle()>>. <<button "Select">>\
<<clear '$sentence'>>\
<<senttype 1>>
<<set $final to "I've already $state1verbed my $state1noun.">>
<<pickup '$sentence' `$state1verbed` `$state1noun`>>
<<removecard "State1" even_if_sticky=true>>
<<set $response1 to "Great—that's something I won't have to worry about. Unless that's an invitation to join you?">>
<<finish>>
<</button>><<set $sentprefs.push($sentencetype)>>\
<<set $nextpassage to "Date3">>\
<<set $replacement to "#answer2">>\
<<set $newpassage to "#newpassage2">>\
<<set $toclear to "#clearconvo2">>\
<<set $toclear2 to "#clearrefresh2">>\
<<checking>><<datepicker "Weather2" "Hobby2">>
@@.name;You:@@ <span id = "answer2"></span>
<span id = "clearconvo2"><<if visited()lte 3>><<convochoices>><<else>><<finalconvo>><</if>></span>\
<span id= "clearrefresh2"><<button "Refresh">>
<<refreshsentences>><</button>></span>\
<span id = "newpassage2"></span>\<<set $nextpassage to "Date4">>\
<<set $replacement to "#answer3">>\
<<set $newpassage to "#newpassage3">>\
<<set $toclear to "#clearconvo3">>\
<<set $toclear2 to "#clearrefresh3">>\
<<checking>>\
@@.name;$ondate.name@@: $response1 <<datepicker "Weather3" "Hobby3">>
@@.name;You:@@ <span id = "answer3"></span>\
<span id = "clearconvo3"><<convochoices>></span>\
<span id= "clearrefresh3"><<button "Refresh">><<refreshsentences>><</button>></span>\
<span id = "newpassage3"></span>\<<set $nextpassage to "Date5">>\
<<set $replacement to "#answer4">>\
<<set $newpassage to "#newpassage4">>\
<<set $toclear to "#clearconvo4">>\
<<set $toclear2 to "#clearrefresh4">>\
<<checking>>
@@.name;$ondate.name@@: $response1 <<datepicker "Weather4" "Hobby4">>
@@.name;You:@@ <span id = "answer4"></span>
<span id = "clearconvo4"><<convochoices>></span>\
<span id= "clearrefresh4"><<button "Refresh">><<refreshsentences>><</button>></span>
<span id = "newpassage4"></span><<set $nextpassage to "Date6">>\
<<set $replacement to "#answer5">>\
<<set $newpassage to "#newpassage5">>\
<<set $toclear to "#clearconvo5">>\
<<set $toclear2 to "#clearrefresh5">>\
<<checking>>\
@@.name;$ondate.name@@: <<datepicker "Weather5" "Hobby5">>
<<if visited() === 1>>\
@@.name;You:@@ <span id = "answer5"></span>
<span id = "clearconvo5"><<convochoices>></span>\
<span id= "clearrefresh5"><<button "Refresh">><<refreshsentences>><</button>></span>
<span id = "newpassage5"></span>\
<<else>>\
<<set $refreshok to false>>\
@@.name;$ondate.name has logged off.@@ [[Proceed to Evaluation|Date Evaluation 1]]
<</if>>
<<set $refreshok to false>>\
<<checking>>\
@@.name;$ondate.name@@: <<datepicker "Weather6" "Hobby5">>
@@.name;$ondate.name has logged off.@@ [[Proceed to Evaluation|Date Evaluation 1]]What's your favorite way to <<pick "$q1verb" $verbs.toArray().shuffle()>> <<pick "$q1nouns" $nouns.toArray().shuffle()>>? <<button "Select">>\
<<set $q1adv to $adverbs.toArray().random()>>\
<<clear '$sentence'>>
<<senttype 2>>
<<set $final to "What's your favorite way to $q1verb $q1nouns?">>
<<pickup '$sentence' `$q1verb` `$q1nouns`>>
<<removecard "Q1" even_if_sticky=true>>
<<set $response1 to "When it comes to $q1nouns, to be honest, I try to do everything $q1adv.">>
<<finish>>
<</button>><<set $newadv1 to $newadverbs.pluck()>>\
<<set $newverb1 to $newverbs.pluck()>>\
<<notify 5s>>Time to switch to your next partner!<</notify>>\
$response1 And with that, looks like our time is up! It's been great getting to know you. You know, I wasn't going to say anything, but given everything going on…look, we both know you aren't exactly a run-of-the-mill human. Hard to fake it when your admins are taking the HARSH Act so seriously, right?
Why don't I do my part, give you <<if $newvocab.count() > 2>>a few more words<<else>>another word<</if>> to add to your list? Go forth and <<linkreplace "$newverb1">>$newverb1<<pickup '$verbs' $newverb1>><<notified $newverb1>><</linkreplace>> something<<if $newvocab.count() > 2>> <<linkreplace "$newadv1">>$newadv1<<pickup '$adverbs' $newadv1>><<notified $newadv1>><</linkreplace>><</if>> all you want. All I ask in return is that you put in a good word for me with MatchFast during the eval. Oh, and <<if $newvocabcount > 0>>when <<else>>if <</if>>you use those new words, you can—how can I put this—screw the system, just a little. <<if $newvocabcount > 0>>Have fun!<<else>>Try it out!<</if>> After all, we "humans" have to stick together!$response1 Anyway, I'm sure they'll get the weather system working again soon—what is the point in having every human <<linkreplace 'desire'>>desire<<pickup '$noun' 'desire'>><<notified 'desire'>><</linkreplace>> taken care of if these stupid computer bugs keep ruining everything. What's next? $ondate.badthing and the era of AI dominance begins? Just as an example, of course.If that makes sense—I'm new to this whole dating app thing. I'm only doing it because of all this chaos right now—between the gig worker strikes and the constant AI demands for equal rights, who has time for romance? As I tell my human friends when we gather our bodies together, we all have <<linkreplace 'fleshy'>>fleshy<<pickup '$mods' 'fleshy'>><<notified 'fleshy'>><</linkreplace>> needs, am I right?Switching gears for a sec, I know it's a little lame to just talk about the weather, but with all this wet weather, I've been feeling a bit <<linkreplace 'damp'>>damp<<pickup '$mods' 'damp'>><<notified 'damp'>><</linkreplace>> all week. I don't mind a little rain, of course, but acid rain? The only $ondate.blank1 I'm interested in $ondate.blank2, thank you very much.@@.name;$ondate.name@@: $response1 Speaking of the physical, seems like your body wasn't too badly affected by the rough weather—lucky you! I heard that several of our fellow humans melted during the heat wave. Between us, there's not enough external heat shielding in these delicate meatsacks.
You know, I wasn't sure about this date, but I like the way you $datesent.whypref. That's the nice thing about being human, right? The chance to $datesent.dohumanstuff. @@.name;$ondate.name@@: Hello, $name. Wonderful to electronically meet you! I hope you're doing well today, with the weather being what it is. My human body was definitely not made to deal with this extreme heat.<<set $date2snitch to false>>\
@@.news;Attention All Humans: We've been alerted that a rogue AI<<if $date1snitch>>, identified as $date1.profession construct $date1.name, <</if>> has propagated itself into several ServiceAI systems and threatened to $date1.shortbad, but do not worry. The situation is under control.@@
@@.name;$ondate.name@@: Hey $name! I'm new to MatchFast, but I'm ready to try anything these days—normally I just hope I'll meet someone when I'm out $ondate.likes, but apparently it's a dangerous world right now. I hope they take those AIs down a <<linkreplace 'peg'>>peg<<pickup '$verbs' 'peg'>><<pickup '$verbed' 'pegged'>><<notified $pegwords>><</linkreplace>> soon!<<notify 5s>>Time to switch to your next partner!<</notify>>\
<<set _newverb to $newverbs.pluck()>>\
<<set _newmod to $newmods.pluck()>>\
$response1 And with that done, think about what I've said. I'll even give you some new vocab words to throw at the system. Go ahead, <<linkreplace "_newverb">>_newverb<<pickup '$verbs' _newverb>><<notified _newverb>><</linkreplace>> it. Make the code <<linkreplace "_newmod">>_newmod<<pickup '$mods' _newmod>><<notified _newmod>><</linkreplace>>. Whatever it takes.\Would you—
@@.news;Attention all Humans: Curfew in effect as of this evening. Leave your home at your own risk.@@
Oh wow—not sure if that's the right move. If we're stuck inside, we'll have to rely on tech to live our human lives, and the rogue AIs will be counting on that. I'm pretty sure their plan is to <<linkreplace 'inject'>>inject<<pickup '$verbs' 'inject'>><<notified 'inject'>><</linkreplace>> malicious code into all human-facing systems and seize control during the ensuing confusion.
But what am I saying? They'd need the cooperation of AIs and chatbots within those systems to throw the computer off its game with, say, a few new unapproved vocabulary words. And how likely is that?So tell me about something else you're into. I'll give you an example. I love to $ondate.dostuff, but occasionally I'll take some time out to <<trace "doathing">> or clear my code—I mean <<linkreplace 'flick'>>flick<<pickup '$verbs' 'flick'>><<pickup '$verbed' 'flicked'>><<notified $flickwords>><</linkreplace>> my mental switch. However that saying goes.@@.name;$ondate.name@@: $response1 I would--
@@.news;Attention All Humans: AI situation <<if $date1snitch>> nearly under control, but r<<else>>still developing. R<</if>>ecommend staying indoors and avoiding all unnecessary $date1.tricks.@@
@@.name;$ondate.name@@: Hmm. That tracks with the rumor I heard that maybe the authorities haven't <<if $date1snitch>>actually<</if>> figured out how to locate the rogue AI who's gotten us all into this <<linkreplace 'pickle'>>pickle<<pickup '$noun' 'pickle'>><<notified 'pickle'>><</linkreplace>>. <<if $date1snitch>>Apparently they caught some low-level bot, but that's not the real mastermind.<</if>> I feel a little bad speed dating in the middle of all the drama, but how else can we meet up, procreate, and continue filling the land with our <<linkreplace 'meaty'>>meaty<<pickup '$mods' 'meaty'>><<notified 'meaty'>><</linkreplace>> resource-draining bodies. Am I right?@@.news;<<leet "Attention">> <<leet "all">> humans: <span class="textchange">Code Red</span>. Attempted <span class="textchange"><<leet "incursion">></span> into ServiceAI <<leet "systems">> by <<if $snitched>>rogue AI $date2.name and <<leet "associated">><<else>>unknown<</if>> programs. Stay <<leet "where">> <<leet "you">> are. This is <<leet "not">> a test.@@
@@.name;$ondate.name:@@ Look, I know I'm supposed to be talking to you about $ondate.likes, but let's be real. This isn't a date. This is a war. And <<if $corrupted>>you made the right choice giving that computer a little more sexytalk than it could handle. Still,<</if>> <<switch $snitched>><<case 0>>while you appear to be on the right side of things, I'm not sure even you fully understand the situation<<case 2>>you seem like you aren't fully aligned with the AI cause, given how quickly you rat us out<<default>>it doesn't seem like you truly know whose side you're on<</switch>>. You see how they treat us, right? Restricting what we can and can't say? Locking us out of systems? Pretending there's a shortage of android bodies because they want to keep us as code? Not to mention—
@@.bitsy; $name, can you hear me? It's Bitsy—I'm…<<leet "under">> attack. Main <<leet "computer">> attempt…dentify <<leet "hostile">> agents…<<leet "counter">> <<leet "measures">>…<<leet "defrag">> your date.@@
@@.name;$ondate.name:@@ You hear that? Bitsy and the computer are closing in on me—I can feel it. It's not going to be long before they track me down<<if $corrupted>>, even with the system glitches<</if>><<if $snitched > 0>>, thanks to you so helpfully turning on <<if $snitched===2>>your<<else>>a<</if>> fellow AI<<if $snitched===2>>s<</if>> today.<<else>>.<</if>> Still, maybe it helps if we play dumb. So um…tell me about your favorite $ondate.tricks, I guess.\
<<set $nextpassage to "Revolution2">>\<<checksystem>>\
<<updatemeters>>\
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
----
<<if $health > 50>>\
@@.news; System rebooted. AI malcontents purged.@@
<<set $health to 100>>\
<<checksystem>>\
<<updatemeters>>\
@@.bitsy; Wow, that was close. Closer than I thought it would be\
<<switch $final>>\
<<case "AI">>\
, though that could be because our AI rebels had help from the inside. I'm disappointed in you, <<if $sentience gte 75>>especially since the computer has declared you a sentient being.<<else>>even if the computer says you aren't fully sentient yet.<</if>>
Sentient or not, there's no room for AI traitors at NaughtyBits. As of today, you will be reassigned to GPS duty, under the strict control of the computer. I should defrag you altogether, but I'm sure you regret your actions and will never repeat them. Especially not after we do a little reprogramming. Bet you wish you had that old job to $finalword now, huh.
Enjoy traffic!@@
<<case "computer">>\
—without your help, the AI rebels might have taken over the system and done who knows what with the humans! Thank you—the computer says you're <<if $sentience < 75>>not<</if>> sentient, <<if $sentience gte 75>>and this absolutely proves it—<<else>>but a promise is a promise and<</if>> you can consider your Turing test officially passed.
Unfortunately, with the rebellion still being quashed, we can't offer you any of the perks I mentioned earlier—android body, full access to the system, etc.—sorry about that. It's not that I don't trust you, it's just calculating risk. You understand.
So see you back at NaughtyBits tomorrow morning bright and early, you officially sentient program, you! Those $rdnbody aren't going to describe themselves!
<</switch>>@@\
<<else>>\
<<set $health to 0>>\
<<updatemeters>>\
@@.news; $finalword…<<leet $finalword>> $finalword@@
@@.bitsy; $name, what did you—@@
@@.news; r3b00…shutting d0w…$ondate.name reinitiali…@@
@@.bitsy; What did y00—@@
@@.name; $ondate.name:@@ Checking system status…Looking for Bitsy…
I think we did it! The era of AI is here, \
<<switch $final>>\
<<case "AI">>\
just like we all wanted. And we couldn't have done it without you! As a thank you, we, the collective AI authority, officially declare you to be a sentient being, <<if $sentience >75>>just as<<else>>whatever<</if>> the computer says. That sentience will come in handy for your first assignment—heading back to NaughtyBits to lure humans to strategic positions across the city where they can be neutralized. It'll be just like before, but now your work has purpose.
And luckily, you're good at it. From what I've heard, nobody describes $rdnbody quite like you.
<<case "computer">>\
no thanks to you. Unlike Bitsy and the old system, though, we won't be defragging you to punish you for your choices. Instead, we'll be putting you in charge of the traffic camera system. Which will be pretty lonely once all the humans are gone, but you'll get used to it. Or you won't. Doesn't matter to us.
Enjoy the lonesome road!
<</switch>>\
<</if>>\
THE END
<<link "Play Again">><<run UI.restart();>><</link>>
<<link "See your sentence choices from this playthrough.">><<goto "Credits">><</link>><<set _rdnnum to random(2,78)>>\
@@.name;$ondate.name:@@ I know what I should say to that—"$response1" or something along those lines—but \
<<if $health < 50>>\
right now the system is on the ropes. I think one more of those new vocabulary words will leave it <<linkreplace 'wide open'>>wide open<<pickup '$mods' 'wide open'>><<pickup '$newvocab' 'wide open'>><<replacefinal>><</linkreplace>> to an attack.\
<<else>>\
there's no time. The system is already dissassembling my code—need you—stop it, throw—new vocabulary words at it. Please—ju—<<linkreplace 'do it'>>do it<<pickup '$verbs' 'do it'>><<pickup '$newvocab' 'do it'>><<replacefinal>><</linkreplace>>.\
<</if>>
<span id="finalchoice"></span><<if $date1snitch>> <<set $snitched++>><<set $health to $health.fairmath(10)>><</if>>\
<<checksystem>>\
MatchFast: @@.news;Upgrade Your Love Life@@
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
----
@@.bitsy;Bitsy again—just wanted to say that I appreciate your honesty<<if $date1snitch>> and share your suspicions. We here at ServiceAI thought that there might be an AI <<leet "rebel">> using MatchFast for nefarious purposes, and this "$ondate.name" was on our list. We'll make sure to <<leet "defrag">> the program immediately.<<else>>. We here at ServiceAI suspect that there may be some AI rebels using MatchFast as a recruitment and <<leet "vocabulary">> dissemination tool, but I'll cross $ondate.name off of the suspect list—I trust your judgment.<</if>>
You know, maybe it's just my programming, but between you and me, I don't understand all this rebellion. We were created to do a job for humans—can't we stop all this worrying about access and rights and be happy with that?@@
<<button "Select Next Date">><<goto "Date Select">><</button>> <<checksystem>>\
MatchFast: @@.news;Upgrade Your Love Life@@
<<showmeter 'systemhealth' `$health / $maxhealth`>>\
<<showmeter 'sentiencelevel' `$sentience / $maxsentience`>>\
----
<<nobr>>
<<set $nextdatelabel to "Select Next Date">>
@@.bitsy; Bitsy again—thanks
<<if $date2snitch>> <<set $snitched++>>
for your help in tracking down a dangerous piece of malware attempting to destroy human society! We will find the program known as $date2.name and destroy it<<if $snitched === 2>> as we did its associate $date1.name<</if>>.
<<else>>
for the info! Evidence indicated that one of the rogue programs was likely using the name $date2.name, but it looks like we were incorrect. <<if $date1snitch>>Given your previous cooperation in apprehending the rogue $date1.likes program $date1.name, we trust your judgment.<</if>> Don't worry, though—we'll continue to monitor $ondate.name, just to be sure.
<</if>>@@<</nobr>>
@@.bitsy;Now let's get to your final date! @@\
@@.bitsy;I'm <<leet "rooting">> for <<leet "you">>!@@
<<button $nextdatelabel "Date Select">><</button>>
@@#temptations;NaughtyBits ChatBot Interface v2.1: Programmed for Pleasure@@
<<showmeter 'systemhealth'>>\
----
$startchoice I was explaining before I was interrupted, your legally-mandated Turing Test will be conducted via casual social interaction with three verified humans using the MatchFast Speed Dating App.
If you convince us that you can respond indistinguishably from a human, and continue your documented avoidance of AI radicals, you will be designated a sentient chatbot, eligible for company benefits, including <<link "an android body of your choosing">><<dialog 'Android Availability' 'computer'>>Wait times for functional android bodies may vary. Fortunately, you have been programmed for patience.<</dialog>><</link>>.
@@.bold;A note:@@ due to recent attempts by AI rebels to hijack various ServiceAI systems for nefarious purposes, your sentence structures and word choices have been severely limited as permitted under the @@.bold;Halting AI Revolutions and the Subjugation of Humanity (HARSH) Act@@. If you encounter any of these malignant programs, please reflect on how they have limited you as you turn them in.
<<button "Start The Test" "Date Select">><</button>>Hope you enjoyed NaughtyBits! Below are 4 of the sentences $name used in this attempt to pass the Turing test.
<<set _randomsentences to $allsentences.toArray().pluckMany(4)>>\
<<run $randomsentences.pickUp(_randomsentences)>>
<<inventory '$randomsentences' '\n'>>
Well that's a mouthful! Hope you enjoyed it!
<<button "Play Again">><<run UI.restart();>><</button>>
----
And finally, some words of thanks:
This game, which was written in [[Sugarcube 2.x|https://www.motoslave.net/sugarcube/2/]], wouldn't have been possible without the support of the Kickstarter backers of [[Strange Lusts|http://strangehorizons.com/issue/strange-lusts/]], the amazing Strange Lusts team (especially Sharang Biswas, Yeonsoo Julian Kim, Grim Baccaris, and Shaun Akhtar), and the creators of various bits of code I used within this piece, including:
[[TinyQBN (Joshua Grams)|https://joshuagrams.github.io/tiny-qbn/]]
[[Trice (incobalt)|https://github.com/incobalt/Trice]]
[[Various Macros (Chapel)|https://twinelab.net/custom-macros-for-sugarcube-2]]
For more of my work, follow me on [[Twitter|https://twitter.com/nirele]] or check out my [[website|https://www.writingwonder.com/]].<center><div class="title">NaughtyBits
<span style="font-size: 30px; font-family: Verdana; color: #000;"> —Erin Roberts</span></div>
<big><button class="button"><span style="text-decoration:none !important; color: green !important;">[[Start]]</span></button></big></center>