<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the Botany Lab, where you spend most of your time. The center of the room is mostly open floor, with irrigation spouts on overhead rails.\n\nBoth walls, however, are occupied floor-to-ceiling with life. Rows of hydroponic growth stations and pots filled with terran soil sprout green and brown pillars, covered in leaves and fruit. Your children.\n\nAt the end of the room is a console, insulated against moisture and particulate, that you use both to control the light and water systems and also to enter and track data.\n\n<<if $sprinkler is true>>The redirected irrigation units stream distracting jets of water at random intervals.<<else>>You daren't let the lycans play with your plants, but what else? Maybe you could [[turn on the sprinkler system]] to distract them...<<endif>><<if $bota_hp < 5>>\n\nHeartbreaking. Your plants have been scattered and torn by the playing pups, and many will probably not survive.<<else>><<if $bota_hp < 11>>\n\nMany of your plants now look chewed-on and several pots have been knocked over. Most should survive, but will require extensive care.<<else>><<if $bota_hp < 15>>\n\nThe lycans have been here. A pot is knocked over, its soil spilling across the previously clean floor.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nFore to the [[Mess]]\nStarboard to the [[Maintenance Room]]\n\n<<map>><<endif>>
You chase Dee around the room and tussle with her for a bit, keeping her entertained for a precious few moments.<<set $deebored to $deebored / 2>>\n\n<<if $deedistract > 0>>After playing for a few moments, her attention returns to the toy.<<else>>She bowls you over a few times; though small, the pups are about as strong as you are.<<endif>>\n\n[[Back|$playerloc]]
Making the scariest noise you can think of, you run at Jim full-tilt!\n\n<<if $jimdistract > 0>>He growls at you! He's not done playing with the toy yet!<<else>>He scampers from the room, delighted and clearly hoping that you will follow.<<endif>>\n\n[[Back|$playerloc]]
Making the scariest noise you can think of, you run at Rob full-tilt!\n\n<<if $robdistract > 0>>He growls at you! He's not done playing with the toy yet!<<else>>He scampers from the room, delighted and clearly hoping that you will follow.<<endif>>\n\n[[Back|$playerloc]]
<<nobr>>\n<<if $jimdistract > 0>>\n<<else>>\n/% Set PupAI vars to named pup vars. %/\n<<set $puploc to $jimloc>>\n<<set $pupbored to $jimbored>>\n\n/% Logic to determine pup action. A pup distracted by a toy skips over this logic entirely, taking no actions and becoming no more bored. Don't forget to reset the variables at the end. %/\n<<if $jimaction is "chased">>\n<<set $pupaction to "going">>\n<<else>>\n<<if $jimaction is "entertained">>\n<<else>>\n/% No need to put anything here. If the pup is neither chased nor entertained, PupAI will read pupaction's null status and determine an action instead. %/\n<<endif>>\n<<endif>>\n<<PupAI>>\n/% Folds pupbored back into pup's main boredom stat. %/\n<<set $jimbored to $pupbored>>\n/% Enter/exit variable folding and text. %/\n<<if $pupaction is "going">>\n<<if $puploc is passage()>>\nJim bounds away toward the <<$pupdest>>!<br>\n<<endif>>\n<<if $pupdest is passage()>>\nJim scampers into the room!<br>\n<<endif>>\n<<set $jimloc = $pupdest>>\n<<endif>>\n<<endif>>/% This endif closes the distract variable clause, which includes PupAI and most variable changes. %/\n\n/% Describe pup behavior to the player. Variables change in PupAI, not here. %/\n<<if passage() is $jimloc>>\n[[Jim]] is here. \n<<if $jimdistract > 0>>\n<<if $jimdistract is 1>>\nApparently bored with the toy you gave him, he chews it to pieces and looks for something else to do.<br>\n<<else>>\nHe is playing with the toy you gave him, alternately turning it over in his paws and gnawing on it.<br>\n<<endif>>\n<<endif>>\n<<if $pupaction is "exploring">>He meanders about the room, sniffing things curiously.<br><<endif>>\n<<if $pupaction is "playing">>He gallavants around the room, chewing on, rolling in, and poking at whatever he can get his hands on.<br><<endif>>\n<<endif>>/% This endif closes the 'Pup is here' behavior. %/\n/% Distraction is the only variable change outside of PupAI, and it comes last. The toy reduces the pup's boredom every turn until it breaks. %/\n<<if $jimdistract > 0>><<set $jimdistract -= 1>><<set $jimbored -= 20>><<if $jimbored < 0>><<set $jimbored to 0>><<endif>><<endif>>\n/% Clean up clean up everybody everywhere %/\n<<set $jimaction to $pupaction>>\n<<set $pupaction to "">>\n<<endnobr>>
<<JimAI>><<DeeAI>><<RobAI>><<BevAI>>\nJim is in the <<$jimloc>>. He is <<if $jimbored > 200>>critically<<else>><<if $jimbored > 150>>seriously<<else>><<if $jimbored > 100>>pretty<<else>><<if $jimbored > 50>>kinda<<else>>not too<<endif>><<endif>><<endif>><<endif>> bored. He is <<if $jimaction is false>>distracted<<else>><<$jimaction>><<endif>>.\nDee is in the <<$deeloc>>. She is <<if $deebored > 200>>critically<<else>><<if $deebored > 150>>seriously<<else>><<if $deebored > 100>>pretty<<else>><<if $deebored > 50>>kinda<<else>>not too<<endif>><<endif>><<endif>><<endif>> bored. She is <<if $deeaction is false>>distracted<<else>><<$deeaction>><<endif>>.\nRob is in the <<$robloc>>. He is <<if $robbored > 200>>critically<<else>><<if $robbored > 150>>seriously<<else>><<if $robbored > 100>>pretty<<else>><<if $robbored > 50>>kinda<<else>>not too<<endif>><<endif>><<endif>><<endif>> bored. He is <<if $robaction is false>>distracted<<else>><<$robaction>><<endif>>.\nBev is in the <<$bevloc>>. She is <<if $bevbored > 200>>critically<<else>><<if $bevbored > 150>>seriously<<else>><<if $bevbored > 100>>pretty<<else>><<if $bevbored > 50>>kinda<<else>>not too<<endif>><<endif>><<endif>><<endif>> bored. She is <<if $bevaction is false>>distracted<<else>><<$bevaction>><<endif>>.\nThe ship reports a damage rating of <<damage>>.\n<<print (29 - $time)>> minutes until the experiment ends.
It's Jim!\n\n* [[Play with Jim][$jimaction = "entertained"]]\n* [[Chase Jim out of the room][$jimbored -= 20; $jimaction = "chased"]]\n<<if $toys > 0>>* [[Give Jim a toy][$toys -= 1]] (you have <<$toys>>)<<else>>* You're out of toys.<<endif>>\n\n<<back>>
"IN LINE!" a booming voice echoes through the halls of the ship.\n\nThe sound of scampering paws converges on the Guest Quarters, and you follow.\n\nThe pups' mother, Lydia, stands in the Guest Quarters, her close-cropped hair nearly brushing the ceiling. She is in human form, but is easily the largest and most muscular human you have ever seen. The pups sit at her feet, all four now in their own human forms. They look so much more harmless now.\n\n"Thanks for watching the kids, Zakhon." she says with a smile. "If I'd known you were so good with youngsters, I'd have asked you to babysit in the first place!"\n\nYou laugh nervously.\n\n[[Epilogue]]
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the ''Lounge'', the ship's designated recreational location. Neither you nor Glozu spend much time here, as engaging as you both find your work, but it's a good place to relax.\n\nThree pairs of comfortable chairs, too small for an adult human but perfect for a Sectoid, stand on either side of matching clear tables. There's also a bartop with a (locked) intoxicants cabinet.\n\n<<if $holos is true>>Holographic ghosts flit through the air, dissipating if touched and reappearing nearby.<<else>>A panel on the wall controls a [[holoprojector]], whose games you rarely play. The pups may find it more engaging.<<endif>><<if $loun_hp < 2>>\n\nThe doors to the intoxicants cabinet have held firm, but their surface is hopelessly scratched. Chairs and tables have been overturned, and the few games you keep handy are scattered across the room.<<else>><<if $loun_hp < 5>>\n\nThe pups seem to have gotten to the games kept here, as several boxes have been opened and their contents scattered. Some attempts have clearly been made to breach the intoxicants cabinet.<<else>><<if $loun_hp < 8>>\n\nSeveral chairs have been upended, and it looks like someone tried to open the cabinet -- hard. Thankfully, it remains closed.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nThe only exit is aft to the [[Port Corridor]].\n\n<<map>><<endif>>
<h1>Xenobabysitter</h1>by Colin Sandel\n\n[[Play]]\n[[Rules and Hints]]\n[[About]]
<<if $robdistract > 0>>Rob is already working on a toy!\n\n<<back>><<else>><<set $robdistract = 3>>You hand Rob a quantum puzzle. He takes it and peers at it curiously. That should keep him busy for a few minutes.\n\n[[Back|$playerloc]]<<endif>>
<<nobr>>\n<<if $bevdistract > 0>>\n<<else>>\n/% Set PupAI vars to named pup vars. %/\n<<set $puploc to $bevloc>>\n<<set $pupbored to $bevbored>>\n\n/% Logic to determine pup action. A pup distracted by a toy skips over this logic entirely, taking no actions and becoming no more bored. Don't forget to reset the variables at the end. %/\n<<if $bevaction is "chased">>\n<<set $pupaction to "going">>\n<<else>>\n<<if $bevaction is "entertained">>\n<<else>>\n/% No need to put anything here. If the pup is neither chased nor entertained, PupAI will read pupaction's null status and determine an action instead. %/\n<<endif>>\n<<endif>>\n<<PupAI>>\n/% Folds pupbored back into pup's main boredom stat. %/\n<<set $bevbored to $pupbored>>\n/% Enter/exit variable folding and text. %/\n<<if $pupaction is "going">>\n<<if $puploc is passage()>>\nBev bounds away toward the <<$pupdest>>!<br>\n<<endif>>\n<<if $pupdest is passage()>>\nBev scampers into the room!<br>\n<<endif>>\n<<set $bevloc = $pupdest>>\n<<endif>>\n<<endif>>/% This endif closes the distract variable clause, which includes PupAI and most variable changes. %/\n\n/% Describe pup behavior to the player. Variables change in PupAI, not here. %/\n<<if passage() is $bevloc>>\n[[Bev]] is here. \n<<if $bevdistract > 0>>\n<<if $bevdistract is 1>>\nApparently bored with the toy you gave her, she chews it to pieces and looks for something else to do.<br>\n<<else>>\nShe is playing with the toy you gave her, alternately turning it over in her paws and gnawing on it.<br>\n<<endif>>\n<<endif>>\n<<if $pupaction is "exploring">>She meanders about the room, sniffing things curiously.<br><<endif>>\n<<if $pupaction is "playing">>She gallavants around the room, chewing on, rolling in, and poking at whatever she can get her hands on.<br><<endif>>\n<<endif>>/% This endif closes the 'Pup is here' behavior. %/\n/% Distraction is the only variable change outside of PupAI, and it comes last. The toy reduces the pup's boredom every turn until it breaks. %/\n<<if $bevdistract > 0>><<set $bevdistract -= 1>><<set $bevbored -= 20>><<if $bevbored < 0>><<set $bevbored to 0>><<endif>><<endif>>\n/% Clean up clean up everybody everywhere %/\n<<set $bevaction to $pupaction>>\n<<set $pupaction to "">>\n<<endnobr>>
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the NavCom room.\n\nA circular set of consoles, capable of being staffed by up to six beings of your size, rings an ultra high detail holographic projector, capable of producing almost any definition of 3D data. Obviously only for official use; you could never afford such a thing on a private vessel.\n\n<<if $globe is true>>A giant image of the Earth, rendered to the most minute detail, spins over the center of the projection table.<<else>>You can activate [[a holographic globe of Earth]] from one of the consoles.<<endif>><<if $navc_hp < 3>>\n\nA pinging alarm alerts you to the horrifying realization that the lycans have somehow set off a distress signal! Impossible to cancel until it times out, you'll just have to answer any replies you get later.<<else>><<if $navc_hp < 6>>\n\nYou see a notice that several outgoing messages have been sent, probably by flailing paws. You'll have to figure out what they were later.<<else>><<if $navc_hp < 9>>\n\nYou note that some hailing frequencies have been randomly changed on the consoles.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nFore to the [[Bridge]]\nAft to the [[Mess]]\nPort to the [[Port Corridor]]\nStarboard to the [[Starboard Corridor]]\n\n<<map>><<endif>>
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are on the Observation Deck, looking out into the glittering inky depths. There are a chairs for Sectoids and humans here as well as a few tables and lamps, but little else.\n\nThe reinforced material between your ship's manufactured atmosphere and the vacuum of space is completely glare-free, only glowing faintly when you get close to it so you don't bump your head against it. Otherwise, the view outside is perfect.<<if $overlay is true>>\n\nA beautiful overlay covers the stars outside, cycling through glittering informational displays.<<else>>You can activate the [[system overlay]] to make the view even more interesting.<<endif>><<if $obse_hp < 1>>\n\nLiterally everything in the room is now overturned, but at least there was nothing to break.<<else>><<if $obse_hp < 3>>\n\nThe pups seem to have knocked over a few chairs.<<endif>><<endif>>\n\n<<Pups>>\n\nThe only exit is aft to the [[Starboard Corridor]].\n\n<<map>><<endif>>
Making the scariest noise you can think of, you run at Dee full-tilt!\n\n<<if $deedistract > 0>>She growls at you! She's not done playing with the toy yet!<<else>>She scampers from the room, delighted and clearly hoping that you will follow.<<endif>>\n\n[[Back|$playerloc]]
You switch off the window polaroids, allowing you an amazing panorama of the majesty of space. The pups may not be as enthralled by it as you are, but you can hope.<<set $portblinds to true>><<set $port_b -= 6>>\n\n[[Port Corridor]]
Your name is Zakhon. You are a Sectoid, a genetically-engineered being grown by a scientist progenitor on your distant home planet. You were designed to be autonomous, durable, and intelligent, the next step in the evolution of your planet's innovation.\n\nYou are also a grad school student. Specifically, you study Terran Xenobotany. Plant life on Earth is fascinating, and far less dangerous (usually) than the planet's naturally-evolved fauna. You picked this specialty specifically so you could control how and when you interacted with Earth animals.\n\nSadly, you then got assigned a Xenoparapsychologist as a shipmate. You'll admit that Terran cryptids are fascinating, but your shipmate Glozu takes this interest to an extreme, occasionally forgoing good sense in the interest of study.\n\nThis week, Glozu lucked out -- he was able to find a terran lycanthrope (a werewolf: part human, part wolf cryptid) to volunteer for a brain scan that could be a thesis in and of itself. Of course, the babysitter she hired for her four pups didn't show.\n\nAnd now Glozu wants you to look after the pups while the lycan gets her brain scan. Great.\n\n[[next]]
<<if $bevdistract > 0>>Bev is already working on a toy!\n\n<<back>><<else>><<set $bevdistract = 3>>You hand Bev a quantum puzzle. She takes it and peers at it curiously. That should keep her busy for a few minutes.\n\n[[Back|$playerloc]]<<endif>>
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the Mess, where you and Glozu take your meals and they prepare sustenance for their guests. Neither of you are any good at cooking, especially not for xenos, but thankfully the nutrient generators have plenty of preset flavor settings.\n\nThe Mess has a central table with a half-dozen seats around it, each one designed to be adjustable for both Sectoids and humans.\n\n<<if $music is true>>Sprightly but peaceful music plays over the mess PA.<<else>>From here you can [[play some music]] over the PA.<<endif>><<if $mess_hp < 4>>\n\nFormerly edible substance covers every surface and you smell something burning from who-knows-where. This really brings home why the terran-english word 'mess' eventually became synonymous with something you have to clean up.<<else>><<if $mess_hp < 8>>\n\nThe pups seem to have activated the food dispensers somehow. This is evident by colorful nutrient slurry and conflicting culinary scents covering the tables and floor.<<else>><<if $mess_hp < 14>>\n\nSomething smells off. You suspect that a lycan has been messing with one of the food generators.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nFore to [[NavCom]]\nStarboard to the [[Crew Quarters]]\nPort to the [[Guest Quarters]]\nAft to the [[Botany Lab]]\n\n<<map>><<endif>>
It's Bev!\n\n* [[Play with Bev][$bevaction = "entertained"]]\n* [[Chase Bev out of the room][$bevbored -= 20; $bevaction = "chased"]]\n<<if $toys > 0>>* [[Give Bev a toy][$toys -= 1]] (you have <<$toys>>)<<else>>* You're out of toys.<<endif>>\n\n<<back>>
<<nobr>>\n<<set $damage to 0>>\n<<set $damage += (3 - $obse_hp)>>\n<<set $damage += (0 - $star_hp)>>\n<<set $damage += (10 - $crew_hp)>>\n<<set $damage += (12 - $main_hp)>>\n<<set $damage += (15 - $brid_hp)>>\n<<set $damage += (9 - $navc_hp)>>\n<<set $damage += (14 - $mess_hp)>>\n<<set $damage += (15 - $bota_hp)>>\n<<set $damage += (8 - $loun_hp)>>\n<<set $damage += (0 - $port_hp)>>\n<<set $damage += (10 - $gues_hp)>>\n<<print $damage>>\n<<endnobr>>
The experiment isn't over yet! If you interrupt them now, Glozu will probably just schedule ANOTHER one and you'll have to go through all this again!\n\n<<back>>
Four young werewolves sit in front of you, each one in a furry semi-bipedal form somewhere between human and wolf. You can't help but find the creatures endearing, small as they are, but you have heard Glozu enthusiastically express how strong and potentially destructive even young lycanthropes are.\n\n"All right," you begin, speaking your best terran english. "We're all going to have a good, calm, peaceful half hour together. First--"\n\n"Dey're all gone," the remaining pup, Jim, says. You look down; he's right. The little beasts have scattered to other rooms in the ship.\n\nJim giggles and scampers Starboard toward the Mess.\n\n[[Let the chase begin.|Guest Quarters]]<<nobr>>\n<<set $toys = 3>><<set $time to 0>>\n/% set the starting location for the pups %/\n<<set $jimloc = "Mess">>\n<<set $deeloc = "Lounge">>\n<<set $robloc = "Botany Lab">>\n<<set $bevloc = "Observation Deck">>\n/% set the starting stats for the pups %/\n<<set $jimbored = 0>><<set $jimdistract = 0>>\n<<set $deebored = 0>><<set $deedistract = 0>>\n<<set $robbored = 0>><<set $robdistract = 0>>\n<<set $bevbored = 0>><<set $bevdistract = 0>>\n/% set the starting boredom levels for rooms %/\n<<set $obse_b = 10>>\n<<set $star_b = 18>>\n<<set $crew_b = 10>>\n<<set $main_b = 12>>\n<<set $brid_b = 15>>\n<<set $navc_b = 13>>\n<<set $mess_b = 11>>\n<<set $bota_b = 11>>\n<<set $loun_b = 10>>\n<<set $port_b = 18>>\n<<set $gues_b = 10>>\n/% set the starting hp and damage multiplier of rooms %/\n<<set $obse_hp = 3>><<set $obse_dx = 1>>\n<<set $star_hp = 0>><<set $star_dx = 0>>\n<<set $crew_hp = 10>><<set $crew_dx = 2>>\n<<set $main_hp = 12>><<set $main_dx = 3>>\n<<set $brid_hp = 15>><<set $brid_dx = 5>>\n<<set $navc_hp = 9>><<set $navc_dx = 3>>\n<<set $mess_hp = 14>><<set $mess_dx = 2>>\n<<set $bota_hp = 15>><<set $bota_dx = 3>>\n<<set $loun_hp = 8>><<set $loun_dx = 1>>\n<<set $port_hp = 0>><<set $port_dx = 0>>\n<<set $gues_hp = 10>><<set $gues_dx = 1>>\n<<endnobr>>
You switch off the window polaroids, allowing you an amazing panorama of the majesty of space. The pups may not be as enthralled by it as you are, but you can hope.<<set $starblinds to true>><<set $star_b -= 7>>\n\n[[Starboard Corridor]]
Desperate to protect your plants, you tweak the sprinkler system in the room so that its jets point away from your plants, then set their output to randomize frequently. Soon, random jets of water fill the room.<<set $sprinkler to true>><<set $bota_b -= 7>>\n\n[[Botany Lab]]
Xenobabysitter
<<if $deedistract > 0>>Dee is already working on a toy!\n\n<<back>><<else>><<set $deedistract = 3>>You hand Dee a quantum puzzle. She takes it and peers at it curiously. That should keep her busy for a few minutes.\n\n[[Back|$playerloc]]<<endif>>
.revision-span-in {\n\topacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n\ttransition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n\tposition:absolute;\n\topacity: 0;\n}
Glozu proudly sees Lydia and the pups off before taking a glance at the status readout and seeing the damage rating of <<damage>>.<<if $damage < 10>>\n\n"Wow, Zakhon," they say, visibly impressed. "I expected a much worse mess than this. You have a gift for this babysitting thing. I'll have to keep that in mind for future experiments. Now let's get this cleaned up."\n\nTo your credit, you manage not to throttle your shipmate.<<else>><<if $damage < 20>>\n\n"Huh," they say, nodding a bit. "I knew there'd be a mess but I think I expected it to be worse. Maybe you should have been a progenitor."\n\n"I //am// a progenitor," you growl. "But my children don't wreck things. Now help me clean up."<<else>><<if $damage < 30>>They frown. "Wow they made a pretty nasty mess, huh. Why didn't you put on a terran TV show or something?"\n\n"Shut up and help me clean," you hiss.<<else>>\n\n"By the Originators!" Glozu curses, clutching their head with both hands. "How in the world did they make such a mess?"\n\n"You're the one studying them," you mutter. "You tell me."\n\n"This is going to take us forever to clean up. Couldn't you have kept them more entertained?"\n\n"Not another word, Glozu."<<endif>><<endif>><<endif>>\n\n''The End''
You turn on an audio playlist that you use to calm your anxiety, a carefully pruned selection of Terran music overlaid with Sectoid-programmed calming tones. After a moment of thought, you crank up the volume. Werewolves are loud.<<set $music to true>><<set $mess_b -= 5>>\n\n[[Mess]]
<<nobr>><font face = "Courier New" color = green> Starboard<br>\n </font><<if $playerloc is "Observation Deck">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Observation Deck") or ($deeloc is "Observation Deck") or ($robloc is "Observation Deck") or ($bevloc is "Observation Deck")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Starboard Corridor">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Starboard Corridor") or ($deeloc is "Starboard Corridor") or ($robloc is "Starboard Corridor") or ($bevloc is "Starboard Corridor")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Crew Quarters">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Crew Quarters") or ($deeloc is "Crew Quarters") or ($robloc is "Crew Quarters") or ($bevloc is "Crew Quarters")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Maintenance Room">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Maintenance Room") or ($deeloc is "Maintenance Room") or ($robloc is "Maintenance Room") or ($bevloc is "Maintenance Room")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><br><font face = "Courier New" color = green>\nFore </font><<if $playerloc is "Bridge">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Bridge") or ($deeloc is "Bridge") or ($robloc is "Bridge") or ($bevloc is "Bridge")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "NavCom">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "NavCom") or ($deeloc is "NavCom") or ($robloc is "NavCom") or ($bevloc is "NavCom")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Mess">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Mess") or ($deeloc is "Mess") or ($robloc is "Mess") or ($bevloc is "Mess")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Botany Lab">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Botany Lab") or ($deeloc is "Botany Lab") or ($robloc is "Botany Lab") or ($bevloc is "Botany Lab")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><font face = "Courier New" color = green> Aft<br>\n </font><<if $playerloc is "Lounge">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Lounge") or ($deeloc is "Lounge") or ($robloc is "Lounge") or ($bevloc is "Lounge")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Port Corridor">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Port Corridor") or ($deeloc is "Port Corridor") or ($robloc is "Port Corridor") or ($bevloc is "Port Corridor")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>><<if $playerloc is "Guest Quarters">><font face = "Courier New" color = green>@</font><<else>><<if ($jimloc is "Guest Quarters") or ($deeloc is "Guest Quarters") or ($robloc is "Guest Quarters") or ($bevloc is "Guest Quarters")>><font face = "Courier New" color = red >P</font><<else>><font face = "Courier New" color = blue>.</font><<endif>><<endif>>X<font face = "Courier New" color = green><br>\n Port</font><br>[img[http://cheri.shyou.org/~csandel/images/xenobabysitter-map.png]]<<endnobr>>
Xenobabysitter is the result of making a post on [[my Patreon|http://patreon.com/colinsandel]] asking for writing prompts for my late March 2014 release.\n\nI received the following prompts:\n* werewolves\n* puppies\n* [[Pharrell Williams - Happy|http://www.youtube.com/watch?v=y6Sxv-sUYtM]]\n* thought mapping alien species\n* raar raar raar bounce bounce bounce\n* [[Christylez Bacon - Late Again|http://soundcloud.com/christylezbacon/late-again-1]]\n\nXenobabysitter includes them all.\n\nSuper thanks to those who playtested and/or gave me feedback: Carolyn VanEseltine, Brynn Kessler, Kara Hurvitz, Benjamin Reinhart, Chris Bass, Jamie Lynn O'Marr, Dani Church, and Eric Johnson.\n\n<<back>>
Your goal is to keep four werewolf pups as entertained as possible in the hopes that they won't do too much damage to your ship.\n\nYour scanner will tell you where each pup is, what they're doing, and about how bored they are. The pups will become steadily more bored based on how uninterested they are in the room they're in.\n\nClick a pup's name to interact with them directly:\n* ''Playing'' halves a pup's boredom.\n* ''Chasing'' reduces their boredom a little and makes them leave the room.\n* ''Giving them a toy'' will reduce their boredom and fix them in place for three turns. You only have three toys.\n\nYou can also ''make each room less boring'', which permanently reduces how bored a pup gets each turn they spend in that room.\n\nChoose your actions wisely and see how low you can get your score!\n\n<<back>>
A great image of the planet Earth springs to life. After a few moments, it has been rendered down to minute detail, recorded both by your ship's sensitive equipment and Earth's own satellite and data arrays.<<set $globe to true>><<set $navc_b -= 7>>\n\n[[NavCom]]
You chase Jim around the room and tussle with him for a bit, keeping him entertained for a precious few moments.<<set $jimbored to $jimbored / 2>>\n\n<<if $jimdistract > 0>>After playing for a few moments, his attention returns to the toy.<<else>>He bowls you over a few times; though small, the pups are about as strong as you are.<<endif>>\n\n[[Back|$playerloc]]
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the ''Guest Quarters''.\n\nThis room, Glozu assures you, is a picture-perfect recreation of a Terran human bedroom. A pair of flat sleeping pads are stacked atop one another, with space between and a ladder allowing movement between them. The wall vidscreens display images of terran landscapes, and one of your //ficus benjamina// trees stands in the corner, bathed by a sunlamp. \n\nA door that you have never opened leads, Glozu has told you unsolicited, to a small compartment with human waste disposal equipment.\n\n<<if $television is true>>A Terran television show blares its strange, violently colorful pageantry on the vid screen.<<else>>There's a standing vid screen here; you could put a [[Terran entertainment program]] on it.<<endif>><<if $gues_hp < 3>>\n\nYou didn't previously know that Glozu kept so many spare human clothes, bedclothes, and towels here. Now you do, because their remains are on every surface, covered in dirt from the ficus pot.<<else>><<if $gues_hp < 6>>\n\nA supply of spare human textiles has been unearthed, and now covers the sleeping pads. Dirt from the ficus pot is ground into the polymer carpet.<<else>><<if $gues_hp < 10>>\n\nThe ficus tree now lies on its side.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nGo:\nFore to the [[Port Corridor]]\nStarboard to the [[Mess]]\nAft to the [[Neurolab]]\n\n<<map>><<endif>>
You set the Guest Quarters vidscreen to display a Terran video program, a colorful sequential-image animation show. It confuses and frightens you, but it may distract the pups.<<set $television to true>><<set $gues_b -= 7>>\n\n[[Guest Quarters]]
You pick up Glozu's communicator and tell it to start playing archived messages. Immediately, their doting progenitor-being appears in holo and starts inquiring about health, finances, education, and other embarrassing topics.\n\nHopefully embarrassing parental nagging will prove entertaining enough for the lycans' youthful schadenfreude. Also, it makes you feel a bit better.<<set $communicator to true>><<set $crew_b -= 5>>\n\n[[Crew Quarters]]
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the ''Port Corridor'', one of two identical passages on each side of the ship. There's little to see here; the walls and floor are a neutral gray and there is no furniture.\n\n<<if $portblinds is true>>The window is depolarized, showing the awe-inspiring starscape. The hallway is still boring, but perhaps slightly less so.<<else>>It's currently opaque, but you can [[depolarize the Port window]] to let the pups look outside.<<endif>>\n\n<<Pups>>\n\nFore to the [[Lounge]]\nAft to the [[Guest Quarters]]\nStarboard to [[NavCom]]\n\n<<map>><<endif>>
You chase Rob around the room and tussle with him for a bit, keeping him entertained for a precious few moments.<<set $robbored to $robbored / 2>>\n\n<<if $robdistract > 0>>After playing for a few moments, his attention returns to the toy.<<else>>He bowls you over a few times; though small, the pups are about as strong as you are.<<endif>>\n\n[[Back|$playerloc]]
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the Crew Quarters, which doubles as the ship's Sectoid infirmary -- Glozu keeps human 'first aid' supplies in the Neurolab.\n\nYou and Glozu both keep your maintenance pods here, grey monoliths with a shiny gray surface the same texture and color as your flesh. These virtually indestructible, if ugly, biomachines provide rest and healing, archiving your neural state and rebuilding you on a cellular level if necessary.\n\nIn addition to a place for resting and healing, this is also a place for both of your xeno keepsakes. For you, mainly terran textbooks and pottery. For Glozu, human A/V technology.\n\n<<if $communicator is true>>Embarrassing messages from Glozu's progenitor play in holo on their bunk.<<else>>Perhaps you could create a distraction with your shipmate's [[long range communicator]]...<<endif>><<if $crew_hp < 2>>\n\nThe lycan pups have wrecked everything here. Books are shredded, pottery is broken, everything is in shambles.<<else>><<if $crew_hp < 6>>\n\nThe lycan pups have made a real mess of the place. Some of your pottery is broken, and at least a few books have been used as chew toys.<<else>><<if $crew_hp < 10>>\n\nUh-oh. The pups have been here. Some of your pottery has been knocked off its shelving, and you think you see toothmarks on one of Glozu's antique 'VCRs'.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nFore to the [[Starboard Corridor]]\nPort to the [[Mess]]\nAft to the [[Maintenance Room]]\n\n<<map>><<endif>>
(function(){version.extensions.replaceMacrosCombined={major:1,minor:1,revision:4};var nullobj={handler:function(){}};function showVer(n,notrans){if(!n){return\n}n.innerHTML="";new Wikifier(n,n.tweecode);n.setAttribute("data-enabled","true");n.style.display="inline";n.classList.remove("revision-span-out");\nif(!notrans){n.classList.add("revision-span-in");if(n.timeout){clearTimeout(n.timeout)}n.timeout=setTimeout(function(){n.classList.remove("revision-span-in");\nn=null},1)}}function hideVer(n,notrans){if(!n){return}n.setAttribute("data-enabled","false");n.classList.remove("revision-span-in");\nif(n.timeout){clearTimeout(n.timeout)}if(!notrans){n.classList.add("revision-span-out");n.timeout=setTimeout(function(){if(n.getAttribute("data-enabled")=="false"){n.classList.remove("revision-span-out");\nn.style.display="none";n.innerHTML=""}n=null},1000)}else{n.style.display="none";n.innerHTML="";n=null}}function tagcontents(b,starttags,desttags,endtags,k){var l=0,c="",tg,a,i;\nfunction tagfound(i,e){for(var j=0;j<e.length;j++){if(a.indexOf("<<"+e[j],i)==i){return e[j]}}}a=b.source.slice(k);for(i=0;\ni<a.length;i++){if(tg=tagfound(i,starttags)){l++}else{if((tg=tagfound(i,desttags))&&l==0){b.nextMatch=k+i+tg.length+4;return[c,tg]\n}else{if(tg=tagfound(i,endtags)){l--;if(l<0){return null}}}}c+=a.charAt(i)}return null}var begintags=[];var endtags=[];function revisionSpanHandler(g,e,f,b){var k=b.source.indexOf(">>",b.matchStart)+2,vsns=[],vtype=e,flen=f.length,becomes,c,cn,m,h,vsn;\nfunction mkspan(vtype){h=insertElement(m,"span",null,"revision-span "+vtype);h.setAttribute("data-enabled",false);h.style.display="none";\nh.tweecode="";return h}if(this.shorthand&&flen){while(f.length>0){vsns.push([f.shift(),(this.flavour=="insert"?"gains":"becomes")])\n}}else{if(this.flavour=="insert"||(this.flavour=="continue"&&this.trigger=="time")){vsns.push(["","becomes"])}}if(this.flavour=="continue"&&flen){b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),vtype])}else{becomes=["becomes","gains"];c=tagcontents(b,begintags,becomes.concat(endtags),endtags,k);\nif(c&&endtags.indexOf(c[1])==-1){while(c){vsns.push(c);c=tagcontents(b,begintags,becomes,endtags,b.nextMatch)}c=tagcontents(b,begintags,["end"+e],endtags,b.nextMatch)\n}if(!c){throwError(g,"can't find matching end"+e);return}vsns.push(c);if(this.flavour=="continue"){k=b.nextMatch;b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),""])}}if(this.flavour=="remove"){vsns.push(["","becomes"])}cn=0;m=insertElement(g,"span",null,e);\nm.setAttribute("data-flavour",this.flavour);h=mkspan("initial");vsn=vsns.shift();h.tweecode=vsn[0];showVer(h,true);while(vsns.length>0){if(vsn){vtype=vsn[1]\n}vsn=vsns.shift();h=mkspan(vtype);h.tweecode=vsn[0]}if(typeof this.setup=="function"){this.setup(m,g,f)}}function quantity(m){return(m.children.length-1)+(m.getAttribute("data-flavour")=="remove")\n}function revisionSetup(m,g,f){m.className+=" "+f[0].replace(" ","_")}function keySetup(m,g,f){var key=f[0];m.setEventListener("keydown",function l(e){var done=!revise("revise",m);\nif(done){m.removeEventListener("keydown",l)}})}function timeSetup(m,g,f){function cssTimeUnit(s){if(typeof s=="string"){if(s.slice(-2).toLowerCase()=="ms"){return Number(s.slice(0,-2))||0\n}else{if(s.slice(-1).toLowerCase()=="s"){return Number(s.slice(0,-1))*1000||0}}}throwError(g,s+" isn't a CSS time unit");\nreturn 0}var tm=cssTimeUnit(f[0]);setTimeout(function timefn(){var done=!revise("revise",m);if(!done){setTimeout(timefn,tm)\n}},tm)}function hoverSetup(m){var fn,noMouseEnter=(document.head.onmouseenter!==null),m1=m.children[0],m2=m.children[1];if(!m1||!m2){return\n}m1.onmouseenter=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revise",this.parentNode)}};m2.onmouseleave=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revert",this.parentNode)\n}};if(noMouseEnter){fn=function(n){return function(e){if(!event.relatedTarget||(event.relatedTarget!=this&&!(this.compareDocumentPosition(event.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY))){this[n]()\n}}};m1.onmouseover=fn("onmouseenter");m2.onmouseout=fn("onmouseleave")}m=null}function mouseSetup(m){var evt=(document.head.onmouseenter===null?"onmouseenter":"onmouseover");\nm[evt]=function(){var done=!revise("revise",this);if(done){this[evt]=null}};m=null}function linkSetup(m,g,f){var l=Wikifier.createInternalLink(),p=m.parentNode;\nl.className="internalLink replaceLink";p.insertBefore(l,m);l.insertBefore(m,null);l.onclick=function(){var p,done=false;if(m&&m.parentNode==this){done=!revise("revise",m);\nscrollWindowTo(m)}if(done){this.parentNode.insertBefore(m,this);this.parentNode.removeChild(this)}};l=null}function visitedSetup(m,g,f){var i,done,shv=state.history[0].variables,os="once seen",d=(m.firstChild&&(this.flavour=="insert"?m.firstChild.nextSibling:m.firstChild).tweecode);\nshv[os]=shv[os]||{};if(d&&!shv[os].hasOwnProperty(d)){shv[os][d]=1}else{for(i=shv[os][d];i>0&&!done;i--){done=!revise("revise",m,true)\n}if(shv[os].hasOwnProperty(d)){shv[os][d]+=1}}}[{name:"insert",flavour:"insert",trigger:"link",setup:linkSetup},{name:"timedinsert",flavour:"insert",trigger:"time",setup:timeSetup},{name:"insertion",flavour:"insert",trigger:"revisemacro",setup:revisionSetup},{name:"later",flavour:"insert",trigger:"visited",setup:visitedSetup},{name:"keyinsert",flavour:"insert",trigger:"key",setup:keySetup},{name:"replace",flavour:"replace",trigger:"link",setup:linkSetup},{name:"timedreplace",flavour:"replace",trigger:"time",setup:timeSetup},{name:"mousereplace",flavour:"replace",trigger:"mouse",setup:mouseSetup},{name:"hoverreplace",flavour:"replace",trigger:"hover",setup:hoverSetup},{name:"revision",flavour:"replace",trigger:"revisemacro",setup:revisionSetup},{name:"keyreplace",flavour:"replace",trigger:"key",setup:keySetup},{name:"timedremove",flavour:"remove",trigger:"time",setup:timeSetup},{name:"mouseremove",flavour:"remove",trigger:"mouse",setup:mouseSetup},{name:"hoverremove",flavour:"remove",trigger:"hover",setup:hoverSetup},{name:"removal",flavour:"remove",trigger:"revisemacro",setup:revisionSetup},{name:"once",flavour:"remove",trigger:"visited",setup:visitedSetup},{name:"keyremove",flavour:"remove",trigger:"key",setup:keySetup},{name:"continue",flavour:"continue",trigger:"link",setup:linkSetup},{name:"timedcontinue",flavour:"continue",trigger:"time",setup:timeSetup},{name:"mousecontinue",flavour:"continue",trigger:"mouse",setup:mouseSetup},{name:"keycontinue",flavour:"continue",trigger:"key",setup:keySetup},{name:"cycle",flavour:"cycle",trigger:"revisemacro",setup:revisionSetup},{name:"mousecycle",flavour:"cycle",trigger:"mouse",setup:mouseSetup},{name:"timedcycle",flavour:"cycle",trigger:"time",setup:timeSetup},{name:"keycycle",flavour:"replace",trigger:"key",setup:keySetup}].forEach(function(e){e.handler=revisionSpanHandler;\ne.shorthand=(["link","mouse","hover"].indexOf(e.trigger)>-1);macros[e.name]=e;macros["end"+e.name]=nullobj;begintags.push(e.name);\nendtags.push("end"+e.name)});function insideDepartingSpan(elem){var r=elem.parentNode;while(!r.classList.contains("passage")){if(r.classList.contains("revision-span-out")){return true\n}r=r.parentNode}}function reviseAll(rt,rname){var rall=document.querySelectorAll(".passage [data-flavour]."+rname),ret=false;\nfor(var i=0;i<rall.length;i++){if(!insideDepartingSpan(rall[i])){ret=revise(rt,rall[i])||ret}}return ret}function revise(rt,r,notrans){var ind2,curr,next,ind=-1,rev=(rt=="revert"),rnd=(rt.indexOf("random")>-1),fl=r.getAttribute("data-flavour"),rc=r.childNodes,cyc=(fl=="cycle"),rcl=rc.length-1;\nfunction doToGainerSpans(n,fn){for(var k=n-1;k>=0;k--){if(rc[k+1].classList.contains("gains")){fn(rc[k],notrans)}else{break\n}}}for(var k=0;k<=rcl;k++){if(rc[k].getAttribute("data-enabled")=="true"){ind=k}}if(rev){ind-=1}curr=(ind>=0?rc[ind]:(cyc?rc[rcl]:null));\nind2=ind;if(rnd){ind2=(ind+(Math.floor(Math.random()*rcl)))%rcl}next=((ind2<rcl)?rc[ind2+1]:(cyc?rc[0]:null));var docurr=(rev?showVer:hideVer);\nvar donext=(rev?hideVer:showVer);var currfn=function(){if(!(next&&next.classList.contains("gains"))||rnd){docurr(curr,notrans);\ndoToGainerSpans(ind,docurr,notrans)}};var nextfn=function(){donext(next,notrans);if(rnd){doToGainerSpans(ind2+1,donext,notrans)\n}};if(!rev){currfn();nextfn()}else{nextfn();currfn()}return(cyc?true:(rev?(ind>0):(ind2<rcl-1)))}macros.revert=macros.revise=macros.randomise=macros.randomize={handler:function(a,b,c){var l,rev,rname;\nfunction disableLink(l){l.style.display="none"}function enableLink(l){l.style.display="inline"}function updateLink(l){if(l.className.indexOf("random")>-1){enableLink(l);\nreturn}var rall=document.querySelectorAll(".passage [data-flavour]."+rname),cannext,canprev,i,ind,r,fl;for(i=0;i<rall.length;\ni++){r=rall[i],fl=r.getAttribute("data-flavour");if(insideDepartingSpan(r)){continue}if(fl=="cycle"){cannext=canprev=true\n}else{if(r.firstChild.getAttribute("data-enabled")==!1+""){canprev=true}if(r.lastChild.getAttribute("data-enabled")==!1+""){cannext=true\n}}}var can=(l.classList.contains("revert")?canprev:cannext);(can?enableLink:disableLink)(l)}function toggleText(w){w.classList.toggle(rl+"Enabled");\nw.classList.toggle(rl+"Disabled");w.style.display=((w.style.display=="none")?"inline":"none")}var rl="reviseLink";if(c.length<2){throwError(a,b+" macro needs 2 parameters");\nreturn}rname=c.shift().replace(" ","_");l=Wikifier.createInternalLink(a,null);l.className="internalLink "+rl+" "+rl+"_"+rname+" "+b;\nvar v="";var end=false;var out=false;if(c.length>1&&c[0][0]=="$"){v=c[0].slice(1);c.shift()}switch(c[c.length-1]){case"end":end=true;\nc.pop();break;case"out":out=true;c.pop();break}var h=state.history[0].variables;for(var i=0;i<c.length;i++){var on=(i==Math.max(c.indexOf(h[v]),0));\nvar d=insertElement(null,"span",null,rl+((on)?"En":"Dis")+"abled");if(on){h[v]=c[i];l.setAttribute("data-cycle",i)}else{d.style.display="none"\n}insertText(d,c[i]);l.appendChild(d)}l.onclick=function(){reviseAll(b,rname);var t=this.childNodes,u=this.getAttribute("data-cycle")-0,m=t.length,n,lall,i;\nif((end||out)&&u==m-(end?2:1)){if(end){n=this.removeChild(t[u+1]);n.className=rl+"End";n.style.display="inline";this.parentNode.replaceChild(n,this)\n}else{this.parentNode.removeChild(this);return}}else{toggleText(t[u]);u=(u+1)%m;if(v){h[v]=c[u]}toggleText(t[u]);this.setAttribute("data-cycle",u)\n}lall=document.getElementsByClassName(rl+"_"+rname);for(i=0;i<lall.length;i++){updateLink(lall[i])}};l=null}};macros.mouserevise=macros.hoverrevise={handler:function(a,b,c,d){var endtags=["end"+b],evt=(window.onmouseenter===null?"onmouseenter":"onmouseover"),t=tagcontents(d,[b],endtags,endtags,d.source.indexOf(">>",d.matchStart)+2);\nif(t){var rname=c[0].replace(" ","_"),h=insertElement(a,"span",null,"hoverrevise hoverrevise_"+rname),f=function(){var done=!reviseAll("revise",rname);\nif(b!="hoverrevise"&&done){this[evt]=null}};new Wikifier(h,t[0]);if(b=="hoverrevise"){h.onmouseover=f;h.onmouseout=function(){reviseAll("revert",rname)\n}}else{h[evt]=f}h=null}}};macros.instantrevise={handler:function(a,b,c,d){reviseAll("revise",c[0].replace(" ","_"))}};macros.endmouserevise=nullobj;\nmacros.endhoverrevise=nullobj}());
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the ''Starboard Corridor'', one of two identical passages on each side of the ship. There's little to see here; the walls and floor are a neutral gray and there is no furniture.\n\n<<if $starblinds is true>>The window is depolarized, showing the awe-inspiring starscape. The hallway is still boring, but perhaps slightly less so.<<else>>It's currently opaque, but you can [[depolarize the Starboard window]] to let the pups look outside.<<endif>>\n\n<<Pups>>\n\nFore to the [[Observation Deck]]\nAft to the [[Crew Quarters]]\nPort to [[NavCom]]\n\n<<map>><<endif>>
It's Dee!\n\n* [[Play with Dee][$deeaction = "entertained"]]\n* [[Chase Dee out of the room][$deebored -= 20; $deeaction = "chased"]]\n<<if $toys > 0>>* [[Give Dee a toy][$toys -= 1]] (you have <<$toys>>)<<else>>* You're out of toys.<<endif>>\n\n<<back>>
You activate the system overlay for the starscape. It will react to anyone in the room, sensing movement toward a particular star and zooming into it to provide information.\n\nEven if the educational element is lost on the pups, they should find it visually engaging.<<set $overlay to true>><<set $obs_b -= 6>>\n\n[[Observation Deck]]
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are on the Bridge. Like all Sectoid field researchers, you and Glozu are both trained pilots and can operate the simple controls of the craft.\n\nRight now you're locked in orbit over Earth, and safeties are in place to ensure that your orbit cannot decay rapidly. Nonetheless, there are a lot of sensitive controls here...\n\n<<if $bridgescreen is true>>Instructional videos about terran plants play on the main screen, providing some distraction from the bridge controls.<<else>>Not much to do here, but you could always play some of your [[class videos]].<<endif>><<if $brid_hp < 5>>\n\nThe orbital alarm accompanies red flashing lights on all consoles. Autopilot keeps the ship safe for now, but your flight path will need to be manually reset so you don't crash into the ocean!<<else>><<if $brid_hp < 10>>\n\nAn alarm has been set off by something the lycan pups did; your orbit is decaying slowly.<<else>><<if $brid_hp < 15>>\n\nYou notice some warning lights on the bridge control panels; looks like the pups were messing with them.<<endif>><<endif>><<endif>>\n\n\n<<Pups>>\n\nThe only exit is aft to [[NavCom]].\n\n<<map>><<endif>>
<<nobr>>\n<<if $robdistract > 0>>\n<<else>>\n/% Set PupAI vars to named pup vars. %/\n<<set $puploc to $robloc>>\n<<set $pupbored to $robbored>>\n\n/% Logic to determine pup action. A pup distracted by a toy skips over this logic entirely, taking no actions and becoming no more bored. Don't forget to reset the variables at the end. %/\n<<if $robaction is "chased">>\n<<set $pupaction to "going">>\n<<else>>\n<<if $robaction is "entertained">>\n<<else>>\n/% No need to put anything here. If the pup is neither chased nor entertained, PupAI will read pupaction's null status and determine an action instead. %/\n<<endif>>\n<<endif>>\n<<PupAI>>\n/% Folds pupbored back into pup's main boredom stat. %/\n<<set $robbored to $pupbored>>\n/% Enter/exit variable folding and text. %/\n<<if $pupaction is "going">>\n<<if $puploc is passage()>>\nRob bounds away toward the <<$pupdest>>!<br>\n<<endif>>\n<<if $pupdest is passage()>>\nRob scampers into the room!<br>\n<<endif>>\n<<set $robloc = $pupdest>>\n<<endif>>\n<<endif>>/% This endif closes the distract variable clause, which includes PupAI and most variable changes. %/\n\n/% Describe pup behavior to the player. Variables change in PupAI, not here. %/\n<<if passage() is $robloc>>\n[[Rob]] is here. \n<<if $robdistract > 0>>\n<<if $robdistract is 1>>\nApparently bored with the toy you gave him, he chews it to pieces and looks for something else to do.<br>\n<<else>>\nHe is playing with the toy you gave him, alternately turning it over in his paws and gnawing on it.<br>\n<<endif>>\n<<endif>>\n<<if $pupaction is "exploring">>He meanders about the room, sniffing things curiously.<br><<endif>>\n<<if $pupaction is "playing">>He gallavants around the room, chewing on, rolling in, and poking at whatever he can get his hands on.<br><<endif>>\n<<endif>>/% This endif closes the 'Pup is here' behavior. %/\n/% Distraction is the only variable change outside of PupAI, and it comes last. The toy reduces the pup's boredom every turn until it breaks. %/\n<<if $robdistract > 0>><<set $robdistract -= 1>><<set $robbored -= 20>><<if $robbored < 0>><<set $robbored to 0>><<endif>><<endif>>\n/% Clean up clean up everybody everywhere %/\n<<set $robaction to $pupaction>>\n<<set $pupaction to "">>\n<<endnobr>>
You set what you hope is one of your more interesting course materials on the bridge's main screen. You are doubtful that the lycan larvae will find it interesting but it's the best you can do.<<set $bridgescreen to true>><<set $brid_b -= 6>>\n\n[[Bridge]]
You set the holoprojector to begin a full-room game. Holographic apparitions that can be chased and caught appear. That ought to entertain the little lycans.<<set $holos to true>><<set $loun_b -= 8>>\n\n[[Lounge]]
You chase Bev around the room and tussle with her for a bit, keeping her entertained for a precious few moments.<<set $bevbored to $bevbored / 2>>\n\n<<if $bevdistract > 0>>After playing for a few moments, her attention returns to the toy.<<else>>She bowls you over a few times; though small, the pups are about as strong as you are.<<endif>>\n\n[[Back|$playerloc]]
Making the scariest noise you can think of, you run at Bev full-tilt!\n\n<<if $bevdistract > 0>>She growls at you! She's not done playing with the toy yet!<<else>>She scampers from the room, delighted and clearly hoping that you will follow.<<endif>>\n\n[[Back|$playerloc]]
It's Rob!\n\n* [[Play with Rob][$robaction = "entertained"]]\n* [[Chase Rob out of the room][$robbored -= 20; $robaction = "chased"]]\n<<if $toys > 0>>* [[Give Rob a toy][$toys -= 1]] (you have <<$toys>>)<<else>>* You're out of toys.<<endif>>\n\n<<back>>
<<set $playerloc to passage()>><<set $time += 1>><<if $time > 29>><<ending>><<else>>You are in the Maintenance Room, a dull grey room of undecorated polymer, numerous consoles, and dozens of plain panels.\n\nThough all field study Sectoids are trained to run and maintain a starship, this does not mean that you are engineers; Sectoid ships are controlled and maintained through simplified systems. Part replacement, system calibration, and external bot control all happen from here, saving you from the trouble of crawling about in the ship's guts. Of course, that means that an untrained being could do a LOT of damage here.\n\n<<if $lasers is true>>A harmless but bright laser array plays over the walls and floor.<<else>>What's entertaining in a machine room? Hmm. The [[visible light scanners]] could work.<<endif>><<if $main_hp < 3>>\n\nShrill klaxons flash and blare; at least half a dozen warning lights indicate parts in need of replacement. What a mess.<<else>><<if $main_hp < 7>>\n\nAn alarm has been set off by something the lycan pups did; evidently at least one crucial ship function will need to be fixed or replaced.<<else>><<if $main_hp < 12>>\n\nSome of the panels here have been popped open and messed with; looks like the pups got bored in this room.<<endif>><<endif>><<endif>>\n\n<<Pups>>\n\nFore to the [[Crew Quarters]]\nPort to the [[Botany Lab]]\n\n<<map>><<endif>>
<<if $jimdistract > 0>>Jim is already working on a toy!\n\n<<back>><<else>><<set $jimdistract = 3>>You hand Jim a quantum puzzle. He takes it and peers at it curiously. That should keep him busy for a few minutes.\n\n[[Back|$playerloc]]<<endif>>
<<nobr>>\n/% No pupaction value? Let's set one based on other stats. %/\n<<if $pupaction is false>>\n/% At the moment, it's totally random whether an otherwise idle pup will decide to vacate a room: specifically, a 1 in 4 chance. This may be a good thing to tweak in an upgraded version. %/\n<<if Math.ceil(Math.random() * 4) is 1>>\n<<set $pupaction to "going">>\n<<else>>\n/% Okay, here's where we determine whether the pup is bored enough to start wrecking shit. Adjust seed number as necessary for balance. %/\n<<if Math.ceil(Math.random() * 200 + 100) < $pupbored>>\n<<set $pupaction to "playing">>\n<<else>>\n<<set $pupaction to "exploring">>\n<<endif>>\n<<endif>>\n<<endif>>\n/% running through rooms template:\n<<if $puploc is "Observation Deck">><<endif>>\n<<if $puploc is "Starboard Corridor">><<endif>>\n<<if $puploc is "Crew Quarters">><<endif>>\n<<if $puploc is "Bridge">><<endif>>\n<<if $puploc is "NavCom">><<endif>>\n<<if $puploc is "Mess">><<endif>>\n<<if $puploc is "Botany Lab">><<endif>>\n<<if $puploc is "Lounge">><<endif>>\n<<if $puploc is "Port Corridor">><<endif>>\n<<if $puploc is "Guest Quarters">><<endif>>\n<<if $puploc is "Maintenance Room">><<endif>>\n%/\n/% going script %/\n<<if $pupaction is "going">>\n<<if $puploc is "Observation Deck">>\n<<set $pupdest to "Starboard Corridor">>\n<<endif>>\n<<if $puploc is "Starboard Corridor">>\n<<set $pupdest to either("Observation Deck","Crew Quarters","NavCom")>>\n<<endif>>\n<<if $puploc is "Crew Quarters">>\n<<set $pupdest to either("Starboard Corridor","Maintenance Room","Mess")>>\n<<endif>>\n<<if $puploc is "Bridge">>\n<<set $pupdest to "NavCom">>\n<<endif>>\n<<if $puploc is "NavCom">>\n<<set $pupdest to either("Starboard Corridor","Bridge","Port Corridor","Mess")>>\n<<endif>>\n<<if $puploc is "Mess">>\n<<set $pupdest to either("Crew Quarters","Botany Lab","Guest Quarters","NavCom")>>\n<<endif>>\n<<if $puploc is "Botany Lab">>\n<<set $pupdest to either("Maintenance Room","Mess")>>\n<<endif>>\n<<if $puploc is "Lounge">>\n<<set $pupdest to "Port Corridor">>\n<<endif>>\n<<if $puploc is "Port Corridor">>\n<<set $pupdest to either("Lounge","NavCom","Guest Quarters")>>\n<<endif>>\n<<if $puploc is "Guest Quarters">>\n<<set $pupdest to either("Port Corridor","Mess")>>\n<<endif>>\n<<if $puploc is "Maintenance Room">>\n<<set $pupdest to either("Crew Quarters","Botany Lab")>>\n<<endif>>\n<<endif>>/% going script ends.%/\n/% playing damage tabulation. Prevents a room's HP from dropping below 0. %/\n<<if $pupaction is "playing">>\n<<if $puploc is "Observation Deck">><<set $obse_hp -= $obse_dx>><<endif>>\n<<if $puploc is "Starboard Corridor">><<set $star_hp -= $star_dx>><<endif>>\n<<if $puploc is "Crew Quarters">><<set $crew_hp -= $crew_dx>><<endif>>\n<<if $puploc is "Bridge">><<set $brid_hp -= $brid_dx>><<endif>>\n<<if $puploc is "NavCom">><<set $navc_hp -= $navc_dx>><<endif>>\n<<if $puploc is "Mess">><<set $mess_hp -= $mess_dx>><<endif>>\n<<if $puploc is "Botany Lab">><<set $bota_hp -= $bota_dx>><<endif>>\n<<if $puploc is "Lounge">><<set $loun_hp -= $loun_dx>><<endif>>\n<<if $puploc is "Port Corridor">><<set $port_hp -= $port_dx>><<endif>>\n<<if $puploc is "Guest Quarters">><<set $gues_hp -= $gues_dx>><<endif>>\n<<if $puploc is "Maintenance Room">><<set $main_hp -= $main_dx>><<endif>>\n<<if $obse_hp < 0>><<set $obse_hp to 0>><<endif>>\n<<if $star_hp < 0>><<set $star_hp to 0>><<endif>>\n<<if $crew_hp < 0>><<set $crew_hp to 0>><<endif>>\n<<if $main_hp < 0>><<set $main_hp to 0>><<endif>>\n<<if $brid_hp < 0>><<set $brid_hp to 0>><<endif>>\n<<if $navc_hp < 0>><<set $navc_hp to 0>><<endif>>\n<<if $mess_hp < 0>><<set $mess_hp to 0>><<endif>>\n<<if $bota_hp < 0>><<set $bota_hp to 0>><<endif>>\n<<if $loun_hp < 0>><<set $loun_hp to 0>><<endif>>\n<<if $port_hp < 0>><<set $port_hp to 0>><<endif>>\n<<if $gues_hp < 0>><<set $gues_hp to 0>><<endif>>\n<<endif>>\n/% boredom incrementation %/\n<<if $puploc is "Observation Deck">><<set $pupbored += $obse_b>><<endif>>\n<<if $puploc is "Starboard Corridor">><<set $pupbored += $star_b>><<endif>>\n<<if $puploc is "Crew Quarters">><<set $pupbored += $crew_b>><<endif>>\n<<if $puploc is "Bridge">><<set $pupbored += $brid_b>><<endif>>\n<<if $puploc is "NavCom">><<set $pupbored += $navc_b>><<endif>>\n<<if $puploc is "Mess">><<set $pupbored += $mess_b>><<endif>>\n<<if $puploc is "Botany Lab">><<set $pupbored += $bota_b>><<endif>>\n<<if $puploc is "Lounge">><<set $pupbored += $loun_b>><<endif>>\n<<if $puploc is "Port Corridor">><<set $pupbored += $port_b>><<endif>>\n<<if $puploc is "Guest Quarters">><<set $pupbored += $gues_b>><<endif>>\n<<if $puploc is "Maintenance Room">><<set $pupbored += $main_b>><<endif>>\n<<endnobr>>
Colin Sandel
<<nobr>>\n<<if $deedistract > 0>>\n<<else>>\n/% Set PupAI vars to named pup vars. %/\n<<set $puploc to $deeloc>>\n<<set $pupbored to $deebored>>\n\n/% Logic to determine pup action. A pup distracted by a toy skips over this logic entirely, taking no actions and becoming no more bored. Don't forget to reset the variables at the end. %/\n<<if $deeaction is "chased">>\n<<set $pupaction to "going">>\n<<else>>\n<<if $deeaction is "entertained">>\n<<else>>\n/% No need to put anything here. If the pup is neither chased nor entertained, PupAI will read pupaction's null status and determine an action instead. %/\n<<endif>>\n<<endif>>\n<<PupAI>>\n/% Folds pupbored back into pup's main boredom stat. %/\n<<set $deebored to $pupbored>>\n/% Enter/exit variable folding and text. %/\n<<if $pupaction is "going">>\n<<if $puploc is passage()>>\nDee bounds away toward the <<$pupdest>>!<br>\n<<endif>>\n<<if $pupdest is passage()>>\nDee scampers into the room!<br>\n<<endif>>\n<<set $deeloc = $pupdest>>\n<<endif>>\n<<endif>>/% This endif closes the distract variable clause, which includes PupAI and most variable changes. %/\n\n/% Describe pup behavior to the player. Variables change in PupAI, not here. %/\n<<if passage() is $deeloc>>\n[[Dee]] is here. \n<<if $deedistract > 0>>\n<<if $deedistract is 1>>\nApparently bored with the toy you gave her, she chews it to pieces and looks for something else to do.<br>\n<<else>>\nShe is playing with the toy you gave her, alternately turning it over in her paws and gnawing on it.<br>\n<<endif>>\n<<endif>>\n<<if $pupaction is "exploring">>She meanders about the room, sniffing things curiously.<br><<endif>>\n<<if $pupaction is "playing">>She gallavants around the room, chewing on, rolling in, and poking at whatever she can get her hands on.<br><<endif>>\n<<endif>>/% This endif closes the 'Pup is here' behavior. %/\n/% Distraction is the only variable change outside of PupAI, and it comes last. The toy reduces the pup's boredom every turn until it breaks. %/\n<<if $deedistract > 0>><<set $deedistract -= 1>><<set $deebored -= 20>><<if $deebored < 0>><<set $deebored to 0>><<endif>><<endif>>\n/% Clean up clean up everybody everywhere %/\n<<set $deeaction to $pupaction>>\n<<set $pupaction to "">>\n<<endnobr>>
A few adjustments to the scanners set them looking for objects and settings that they will never find. Moments later, colorful lasers start scanning the room, tracing dots and lines everywhere. That might just be distracting enough.<<set $lasers to true>><<set $main_b -= 7>>\n\n[[Maintenance Room]]