Browser lacks capabilities required to play.

Upgrade or switch to another browser.

Loading…
<<playlist "game" volume .3 loop play>> <br><br> <div align="center"> <div class="splashContainer" align="center"> <span class="splash"> <a data-passage="warning"><img class="splash" src="splash.png"></a> </span> </div> </div> <br> <span class="h1"> S U C C O R</span> <br><br> <span class="playerIntro1"> [[Play|intro1]] <br> <<link 'Achievements'>><<dialog 'Achievements' 'Achievements' 'popup'>> <<include achievements>> <</dialog>><</link>> <br> <<link 'Credits'>><<dialog 'Credits' 'Credits' 'popup'>> <<include credits>> <</dialog>><</link>> <br> <<link "Settings">> <<run UI.settings();>> <</link>> </span> <br><br> <span class="demonIntro1"> WAKE UP </span> <br><br> <span class="playerIntro1"> <<timed $textTime+'s' t8n>> <span class="playerIntro1"> <<link "no" "intro2">> <<set $scoreWillpower += .25>> <</link>> </span> <br><br> <span class="playerIntro1"> <<link "please...no..." "intro2">> <</link>> </span> <</timed>> </span> <<link "a menu for a nearby restaurant named $menu1name" $menu1>> | <<set $currentMenu = $menu1>> <<set $currentMenuName = $menu1name>> <<set $currentDemon = $menu1Demon>> <<set $currentMenuCount = 0>> <<if $demonsDone.includes($menu1Demon)>> <<dialog>> You recall the demon lurking in this menu and decide not to revisit that memory. <<onclose>> <<goto table>> <</dialog>> <</if>> <</link>> | <<link "a grease-covered menu from a place called $menu2name" $menu2>> <<set $currentMenu = $menu2>> <<set $currentMenuName = $menu2name>> <<set $currentDemon = $menu2Demon>> <<set $currentMenuCount = 0>> <<if $demonsDone.includes($menu2Demon)>> <<dialog>> You recall the demon lurking in this menu and decide not to revisit that memory. <<onclose>> <<goto table>> <</dialog>> <</if>> <</link>> | <<link "a crumpled menu from $menu3name" $menu3>> <<set $currentMenu = $menu3>> <<set $currentMenuName = $menu3name>> <<set $currentDemon = $menu3Demon>> <<set $currentMenuCount = 0>> <<if $demonsDone.includes($menu3Demon)>> <<dialog>> You recall the demon lurking in this menu and decide not to revisit that memory. <<onclose>> <<goto table>> <</dialog>> <</if>> <</link>> <<set $currentDemon = "abuse">> <<set $currentMenu = "indian">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="indian.png" alt="A simple logo of the Taj Mahal."> <br> <<menuBuild>> <br> [[see what else is on the table|table]] </div><<set $currentRoom = "apartment">> <<if $cleanedDone.includes("bed")>> <<if $msgBed.length == 0>> <<set $msgBed = Array.from(setup.bed.cleanDone)>> <</if>> <<print $msgBed.pop()>> <br><hr> You are tempted to <<link "rest in the bed">> <<replace "#textBox">> <<include "beduse">> <</replace>> <</link>> now that it's nicely made... <<else>> <<if $msgBed.length == 0>> <<set $msgBed = Array.from(setup.bed.messages)>> <</if>> <<print $msgBed.pop()>> <br><hr> You wonder if you can dredge up the effort to <<link "make the bed.">> <<replace "#textBox">> <<include "bedclean">> <</replace>> <</link>> <</if>> <<endcheck>> <<hunger>> <<set $currentRoom = "apartment">> <<include "apartmentMap">> <div class="layout"> <span id="textBox"> Pallid moonlight leaks through the <<link window>> <<replace "#textBox">> <<include "window">> <</replace>> <</link>> into your apartment. It’s not great, but it’s the best you can afford. Stains drip down the walls from the various leaks in the ceiling, and the carpet is littered with strange spots of color. The weak moonlight is supplemented by a single incandescent <<link "lightbulb">> <<replace "#textBox">> <<include "lightbulb">> <</replace>> <</link>> hanging by a wire. </span> <br><hr> <<link "study your sagging bed">> <<replace "#textBox">> <<include "bed">> <</replace>> <</link>> | <<link "examine the old television">> <<replace "#textBox">> <<include "tv">> <</replace>> <</link>> | <<link "look at your battered couch">> <<replace "#textBox">> <<include "couch">> <</replace>> <</link>> <br><hr> [[browse the cluttered table in the corner|table]] <br><hr> [[explore the meager kitchen|kitchen]] </div> <span id="textBox"> <<print setup.tv.messages.random()>> </span> <br><hr> <<link "change channel">> <<replace "#textBox">> <<include "watchtv">> <</replace>> <</link>> <<set $currentRoom = "apartment">> <<if $cleanedDone.includes("couch")>> <<if $msgCouch.length == 0>> <<set $msgCouch = Array.from(setup.couch.cleanDone)>> <</if>> <<print $msgCouch.pop()>> <br><hr> You could <<link "relax on the couch">> <<replace "#textBox">> <<include "couchuse">> <</replace>> <</link>> now that it's freshly cleaned... <<else>> <<if $msgCouch.length == 0>> <<set $msgBed = Array.from(setup.couch.messages)>> <</if>> <<print $msgCouch.pop()>> <br><hr> You wonder if you can dredge up the effort to <<link "clean the couch.">> <<replace "#textBox">> <<include "couchclean">> <</replace>> <</link>> <</if>> <<timed $textTime+'s' t8n>> transition: opacity 2s ease; .passage-out { opacity: 0; } <script> function mapText() { replace('#$currentPassage', {text: setup.bed.messages.random()})"; } </script> ' + selected + ' replace("#apartmentDesc", {text: setup.bed.messages.random()}); $('#textBox').empty().wiki(setup[selected].messages.random()); <<link "Change Channel">> <<print setup.tv.changeChannel.random()>> <br><br> <<print setup.tv.shows.random()>> <</link>> <<link "Change Channel">> <<replace "#textBox">> <span id="textBox"> <<print setup.tv.changeChannel.random()>> <br><br> <<print setup.tv.shows.random()>> <br><br> <<link "Change Channel">> <<include "watchtv">> <</link>> </span> <</replace>> <</link>> <<set _c2 = setup.choices.list.pluck()>> <<set _c3 = setup.choices.list.pluck()>> <<set _c1s = setup[_c1].list.random()>> <<set _c2s = setup[_c2].list.random()>> <<set _c3s = setup[_c3].list.random()>> <<set _c1t = setup[_c1][_c1s + "Choice"].random()>> <<set $choice1Msg = setup[_c1][_c1s + "Msg"].random()>> <<set _c2t = setup[_c2][_c2s + "Choice"].random()>> <<set $choice2Msg = setup[_c2][_c2s + "Msg"].random()>> <<set _c3t = setup[_c3][_c3s + "Choice"].random()>> <<set $choice3Msg = setup[_c3][_c3s + "Msg"].random()>> <<link "_c1t">> <<if _c1 == "goodChoice">> <<set $score[_c1] += 1>> <<else>> <<set $score[_c1] -= 1>> <</if>> <<dialog>> $choice1Msg <<onclose>> <<goto apartment>> <</dialog>> <</link>> <<link "_c2t">> <<if _c1 == "goodChoice">> <<set $score[_c1] += 1>> <<else>> <<set $score[_c1] -= 1>> <</if>> <<dialog>> $choice1Msg <<onclose>> <<goto apartment>> <</dialog>> <</link>> <<link "_c3t">> <<if _c1 == "goodChoice">> <<set $score[_c1] += 1>> <<else>> <<set $score[_c1] -= 1>> <</if>> <<dialog>> $choice1Msg <<onclose>> <<goto apartment>> <</dialog>> <</link>> <<for $i = 1; $i < setup.choices.list.length; $i++>> <<set _c[$i] = setup.choices.list.random()>> <</for>> <<script>> console.log(_c1) <</script>> <br><br> <<link "change channel">> <<replace "#textBox">> <<include "watchtv">> <</replace>> <</link>> <<set _aptDemon1 = setup.menus.list.pluck()>> <<set $aptDemon1 = setup[_aptDemon1].demon>> <<set _aptDemon2 = setup.menus.list.pluck()>> <<set $aptDemon2 = setup[_aptDemon2].demon>> .layout { background: var(--boxBackgroundColor); text-align: left; align-items: center; height: auto; width: 100%; max-width: 85vw; border-style: ridge; border: 2px solid var(--boxBorderColor); outline: 2px solid var(--boxOutlineColor); border-radius: 15px 15px 15px 15px; margin: 10px; padding: 10px; box-shadow: 0px 5px 15px var(--boxBackgroundColor); }<<endcheck>> <<hunger>> <<set $currentRoom = "kitchen">> <<include "kitchenMap">> <div class="layout"> <span id="textBox"> A <<link run-down>> <<replace "#textBox">> <<include kitchenDetails>> <</replace>> <</link>> kitchen: <<if $fridgeClean == 1>><<print "a polished fridge,,">> <<else>> <<print "a dingy old fridge,">><</if>> <<if $sinkClean == 1>><<print "a freshly-cleaned sink,">> <<else>> <<print "a stained sink,">><</if>> <<if $micowaveClean == 1>><<print "a polished microwave,">> <<else>> <<print "a rattly microwave,">><</if>> <<if $stoveClean == 1>><<print "and a gleaming stovetop.">> <<else>> <<print "and a questionably safe stove.">><</if>> <<if $cupboardClean == 1>><<print "An organized cupboard ">> <<else>> <<print "A flimsy, disorganized cupboard ">><</if>> hangs above the counter. </span> <br><hr> <<link "study the sink">> <<replace "#textBox">> <<include "sink">> <</replace>> <</link>> | <<link "examine the microwave">> <<replace "#textBox">> <<include "microwave">> <</replace>> <</link>> | <<link "look at the stove">> <<replace "#textBox">> <<include "stove">> <</replace>> <</link>> | <<link "assess the fridge">> <<replace "#textBox">> <<include "fridge">> <</replace>> <</link>> | <<link "open the cupboard">> <<replace "#textBox">> <<include "cupboard">> <</replace>> <</link>> <br><hr> [[look at the cluttered table behind you|table]] <br><hr> [[travel the vast distance of three whole steps to the rest of your apartment|apartment]] </div> <<set $currentRoom = "kitchen">> <<if $cleanedDone.includes("sink")>> <<if $msgSink.length == 0>> <<set $msgSink = Array.from(setup.sink.cleanDone)>> <</if>> <<print $msgSink.pop()>> <br><hr> You could <<link "use the sink">> <<replace "#textBox">> <<include "sinkuse">> <</replace>> <</link>> now that it's sparkling clean... <<else>> <<if $msgSink.length == 0>> <<set $msgSink = Array.from(setup.sink.messages)>> <</if>> <<print $msgSink.pop()>> <br><hr> You debate if you can find the energy to <<link "scrub the sink.">> <<replace "#textBox">> <<include "sinkclean">> <</replace>> <</link>> <</if>><<set $currentRoom = "kitchen">> <<if $cleanedDone.includes("microwave")>> <<if $msgMicrowave.length == 0>> <<set $msgMicrowave = Array.from(setup.microwave.cleanDone)>> <</if>> <<print $msgMicrowave.pop()>> <br><hr> You could <<link "use the microwave">> <<replace "#textBox">> <<include "microwaveuse">> <</replace>> <</link>> now that it's all scrubbed and shiny... <<else>> <<if $msgMicrowave.length == 0>> <<set $msgMicrowave = Array.from(setup.microwave.messages)>> <</if>> <<print $msgMicrowave.pop()>> <br><hr> You muse if you can be motivated to <<link "clean the microwave.">> <<replace "#textBox">> <<include "microwaveclean">> <</replace>> <</link>> <</if>> <<set $currentRoom = "kitchen">> <<if $cleanedDone.includes("stove")>> <<if $msgStove.length == 0>> <<set $msgStove = Array.from(setup.stove.cleanDone)>> <</if>> <<print $msgStove.pop()>> <br><hr> You consider <<link "using the stove">> <<replace "#textBox">> <<include "stoveuse">> <</replace>> <</link>> now that it's spick and span... <<else>> <<if $msgStove.length == 0>> <<set $msgStove = Array.from(setup.stove.messages)>> <</if>> <<print $msgStove.pop()>> <br><hr> You consider if you can be bothered to <<link "clean the stove.">> <<replace "#textBox">> <<include "stoveclean">> <</replace>> <</link>> <</if>> <<set $currentRoom = "kitchen">> <<if $cleanedDone.includes("fridge")>> <<if $msgFridge.length == 0>> <<set $msgFridge = Array.from(setup.fridge.cleanDone)>> <</if>> <<print $msgFridge.pop()>> <br><hr> You could <<link "examine the fridge">> <<replace "#textBox">> <<include "fridgeuse">> <</replace>> <</link>> now that it's neat and clean... <<else>> <<if $msgFridge.length == 0>> <<set $msgFridge = Array.from(setup.fridge.messages)>> <</if>> <<print $msgFridge.pop()>> <br><hr> You wonder if you can dredge up the effort to <<link "clean the fridge.">> <<replace "#textBox">> <<include "fridgeclean">> <</replace>> <</link>> <</if>> <<set $currentRoom = "kitchen">> <<if $cleanedDone.includes("cupboard")>> <<if $msgCupboard.length == 0>> <<set $msgCupboard = Array.from(setup.cupboard.cleanDone)>> <</if>> <<print $msgCupboard.pop()>> <br><hr> You could <<link "browse the cupboard">> <<replace "#textBox">> <<include "cupboarduse">> <</replace>> <</link>> now that it's tidily organized... <<else>> <<if $msgCupboard.length == 0>> <<set $msgCupboard = Array.from(setup.cupboard.messages)>> <</if>> <<print $msgCupboard.pop()>> <br><hr> You wonder if you can dredge up the effort to <<link "clean the cupboard.">> <<replace "#textBox">> <<include "cupboardclean">> <</replace>> <</link>> <</if>> <img class="top" src="loneliness.png" alt="A black and white handrawn sketch of a skeletal figure in the fetal position, a miasma leaking from its eyes to fill the air." title="A black and white handrawn sketch of a skeletal figure in the fetal position, a miasma leaking from its eyes to fill the air."> <div class="layout"> Pangs of loneliness tug you into darker memories. You close your eyes, considering how to banish the bleakness brought by the demon... <br><hr> <<choiceBuild>> </div> <img class="top" src="addiction.png" alt="A black and white handrawn image of coiled snake, fangs bared to bite, against a backdrop of spiderweb. The creature has arachid-like legs formed from fishing poles, the hooks dangling to ensnare you." title="A black and white handrawn image of coiled snake, fangs bared to bite, against a backdrop of spiderweb. The creature has arachid-like legs formed from fishing poles, the hooks dangling to ensnare you."> <div class="layout"> You feel a luring pull from just the thought of your long-abandoned vices and excuses for giving in begin to bubble in your brain as addiction sinks its claws into you. Urgently, you consider your options for fighting this demon... <br><hr> <<choiceBuild>> </div><img class="top" src="abuse.png" alt="A stark white image against a black background, depicting a worm-like creature with a jaw like an anglerfish, malevolent beady eyes and a slime-dripping tongue." title="A stark white image against a black background, depicting a worm-like creature with a jaw like an anglerfish, malevolent beady eyes and a slime-dripping tongue."> <div class="layout"> Memories of abuse uncoil and slither up from the recesses of the past. You struggle to remain in the present as you decide how to deal with the demon... <br><hr> <<choiceBuild>> </div> <img class="top" src="humiliation.png" alt="A black and white handrawn image of floating demonic eyes, staring at you and judging your soul." title="A black and white handrawn image of floating demonic eyes, staring at you and judging your soul."> <div class="layout"> Your skin flushes and your stomach churns as memories of embarassment, failure, public humiliation begin to flood your mind. You desperately think of ways to exorcise this distressing demon... <br><hr> <<choiceBuild>> </div><img class="top" src="insecurity.png" alt="A black and white handrawn image someone tearing themselves open to reveal hollowness inside. Wires drape from their head and arms, evoking the control exerted over a marionette." title="A black and white handrawn image someone tearing themselves open to reveal hollowness inside. Wires drape from their head and arms, evoking the control exerted over a marionette."> <div class="layout"> The memories scour your confidence as doubt gnaws at you. You feel hollow, like a puppet dancing to someone else's commands, and insecurity grows. You know that you must do something to chase away this demon... <br><hr> <<choiceBuild>> </div><br> Art: Matthias Speksnijder<br> https://www.instagram.com/matty._.arts <br> https://matthiasspeksnijde.wixsite.com/portfolio <br> <hr> Writing: Dactorwatson, Loressa<br> https://dacwatson.itch.io <br> https://twitter.com/dactorwatson <br> https://loressa.itch.io <br> <hr> Coding, Design, UI: Loressa<br> https://loressa.itch.io <br> <hr> Several Twine API created by Chapel used with appreciation<br> https://github.com/ChapelR/twine-resources <hr> CSS growth animation thanks to corbpie.com <hr> Music courtsey of https://musopen.org and pixabay <br> Songs:<br> "The Sick Doll" by Tchaikovsky, performed by Louis Sauter<br> "Pathetique" by Beethoven, performed by Paul Pitman<br> "Suffocation" by Chopin, performed by Ivan Ilic<br> "Gymnopedie No.2" by Satie, performed by Gregor Quendel<br> "Gnossienne No.3" by Satie, performed by Gregor Quendel<br> <hr> Page turn sound effects:<br> SonixFXSounds: https://pixabay.com/users/sonixfxsounds-49053354 <br> https://pixabay.com/users/freesound_community-46691455/ <hr> <<link "main menu">> <<dialogclose>> <<goto main>> <</link>><<preload "apartment.png", "apartmentHappy.png", "apartmentMid.png", "kitchen.png", "table.png", "pizza.png", "indian.png", "sweets.png", "french.png", "bbq.png", "abuse.png", "humiliation.png", "insecurity.png", "loneliness.png", "addiction.png">> <<preload "deathridgedemo.ttf", "inkfree.ttf">> <<cacheaudio "suffocation" "suffocation.mp3">> <<cacheaudio "pathetique" "pathetique.mp3">> <<cacheaudio "sickdoll" "sickdoll.mp3">> <<cacheaudio "satie" "satie.mp3">> <<cacheaudio "satie1" "satie1.mp3">> <<cacheaudio "pageturn1" "pageturn1.mp3">> <<cacheaudio "pageturn2" "pageturn2.mp3">> <<cacheaudio "pageturn3" "pageturn3.mp3">> <<cacheaudio "pageturn4" "pageturn4.mp3">> <<createplaylist "game">> <<track "suffocation" volume .5>> <<track "pathetique" volume .7>> <<track "sickdoll" volume .5>> <<track "satie" volume .5>> <<track "satie1" volume .5>> <</createplaylist>> <<set $aEarned = []>> <<set $textTime = 3>> <<set $tvWatch = 0>> <<set $hungerCount = 0>> <<set $moveCount = 0>> <<run setup.menus._originalList = [...setup.menus.list];>> <<set $menu1 = setup.menus.list.pluck()>> <<set $menu1name = setup.menus[$menu1].random()>> <<set $menu1Demon = setup[$menu1].demon>> <<set $menu2 = setup.menus.list.pluck()>> <<set $menu2name = setup.menus[$menu2].random()>> <<set $menu2Demon = setup[$menu2].demon>> <<set $menu3 = setup.menus.list.pluck()>> <<set $menu3name = setup.menus[$menu3].random()>> <<set $menu3Demon = setup[$menu3].demon>> <<set $menu4 = setup.menus.list.pluck()>> <<set $menu4name = setup.menus[$menu4].random()>> <<set $menu4Demon = setup[$menu4].demon>> <<set $menu5 = setup.menus.list.pluck()>> <<set $menu5name = setup.menus[$menu5].random()>> <<set $menu5Demon = setup[$menu5].demon>> <<set $menu6 = setup.menus.list.pluck()>> <<set $menu6name = setup.menus[$menu6].random()>> <<set $menu6Demon = setup[$menu6].demon>> <<set $menu7 = setup.menus.list.pluck()>> <<set $menu7name = setup.menus[$menu7].random()>> <<set $menu7Demon = setup[$menu7].demon>> <<set $currentMenu = "">> <<set $currentDemon = "">> <<set $currentMenuCount = 0>> <<set $wakeChoice = 0>> <<set $goodChoice = 0>> <<set $badChoice = 0>> <<set $scoreStability = 0>> <<set $scoreWillpower = 0>> <<set $scoreEnergy =7>> <<set $demonsDone = []>> <<set $bedClean = 0>> <<set $couchClean = 0>> <<set $sinkClean = 0>> <<set $fridgeClean = 0>> <<set $currentPassage = "title">> <<set $choiceList = ["goodChoice", "goodChoice", "badChoice"]>> <<set $c1Msg = "">> <<set $c2Msg = "">> <<set $c3Msg = "">> <<set $c1Text = "">> <<set $c1Activity = "">> <<set $currentCleaned = []>> <<set $msgBed = Array.from(setup.bed.messages)>> <<set $msgBedClean = Array.from(setup.bed.clean)>> <<set $msgCouch = Array.from(setup.couch.messages)>> <<set $msgCouchClean = Array.from(setup.couch.clean)>> <<set $msgCupboard = Array.from(setup.cupboard.messages)>> <<set $msgCupboardClean = Array.from(setup.cupboard.clean)>> <<set $msgSink = Array.from(setup.sink.messages)>> <<set $msgSinkClean = Array.from(setup.sink.clean)>> <<set $msgStove = Array.from(setup.stove.messages)>> <<set $msgStoveClean = Array.from(setup.stove.clean)>> <<set $msgMicrowave = Array.from(setup.microwave.messages)>> <<set $msgMicrowaveClean = Array.from(setup.microwave.clean)>> <<set $msgFridge = Array.from(setup.fridge.messages)>> <<set $msgFridgeClean = Array.from(setup.fridge.clean)>> <<set $msgBottleDesc = Array.from(setup.bottle.desc)>> <<set $msgBottleDrink = Array.from(setup.bottle.drink)>> <<set $msgJournalUse = Array.from(setup.journal.use)>> <<set $msgJournalDesc = Array.from(setup.journal.desc)>> <<set $cleanedDone = []>> <<set $cleanedPossible = ["sink", "stove", "cupboard", "microwave", "fridge", "bed", "couch"]>> <<set $booze = 0>> <<set $journal = []>><<widget "sf">> <<set _click = setup.audio.pageturn.random()>> <<audio _click volume .3 play>> <</widget>> <<widget "goodChoice">> <<set $goodChoices += 1>> <<set $menusDone.push($currentMenu)>> Good jorb, what a healthy choice. Change this text, maybe randomize. <br> [[table]] <</widget>> <<widget "badChoice">> <<set $badChoice += 1>> <<set $menusDone.push($currentMenu)>> You set yourself further back in recovery. Update this text. <br> [table]] <</widget>> <<widget "close">> <div align="center"> <br> <hr> <<link "continue">> <<dialogclose>> <</link>> </div> <</widget>> <<widget "menuBuild">> <<for $i = 0; $i < setup[$currentMenu].list.length; $i++>> <<set _curFood = setup[$currentMenu].list[$i]>> <<set _curFoodShort = setup[$currentMenu][_curFood + "Short"]>> <<set _curFoodMemory = setup[$currentMenu][_curFood + "Memory"]>> <<capture _curFood, _curFoodMemory>> <<link "_curFoodShort">> <<if ($currentMenuCount >= setup[$currentMenu].list.length - 1)>> <<dialog>> <<print setup.demons[$currentDemon + "1"]>> <br><br> <<print setup.demons[$currentDemon + "2"]>> <<close>> <<onclose>> <<run $demonsDone.push($currentDemon)>> <<goto $currentDemon>> <</dialog>> <<else>> <<dialog>> <<print setup.menus.browse.random()>> <br><br> <<print _curFoodMemory>> <<close>> <<onclose>> <<set $currentMenuCount += 1>> <</dialog>> <</if>> <</link>> <</capture>> <br> <<print setup[$currentMenu][_curFood + "Long"]>> <br> <hr> <</for>> <</widget>> <<widget "choiceBuild">> <<set _c1Activity = setup.choicesGood.willpower.random()>> <<set _c1Text = setup.choicesGood[_c1Activity + "Choice"]>> <<set $c1Msg = setup.choicesGood[_c1Activity + "Msg"]>> <<link "_c1Text">> <<set $scoreWillpower += 1>> <<if not $demonsDone.includes($currentDemon)>> <<set $demonsDone.push($currentDemon)>> <</if>> <<dialog>> $c1Msg <<onclose>> <<goto $currentRoom>> <</dialog>> <</link>> <br> <<set _c2Activity = setup.choicesGood.stability.random()>> <<set _c2Text = setup.choicesGood[_c2Activity + "Choice"]>> <<set $c2Msg = setup.choicesGood[_c2Activity + "Msg"]>> <<link "_c2Text">> <<set $scoreStability += 1>> <<set $demonsDone.push($currentDemon)>> <<dialog>> $c2Msg <<onclose>> <<goto $currentRoom>> <</dialog>> <</link>> <br> <<set _c3Activity = setup.choicesBad.willpower.random()>> <<set _c3Text = setup.choicesBad[_c3Activity + "Choice"]>> <<set $c3Msg = setup.choicesBad[_c3Activity + "Msg"]>> <<link "_c3Text">> <<set $scoreWillpower -= 1>> <<set $demonsDone.push($currentDemon)>> <<dialog>> $c3Msg <<onclose>> <<goto $currentRoom>> <</dialog>> <</link>> <br> <<set _c4Activity = setup.choicesBad.stability.random()>> <<set _c4Text = setup.choicesBad[_c4Activity + "Choice"]>> <<set $c4Msg = setup.choicesBad[_c4Activity + "Msg"]>> <<link "_c4Text">> <<set $scoreStability -= 1>> <<set $demonsDone.push($currentDemon)>> <<dialog>> $c4Msg <<onclose>> <<goto $currentRoom>> <</dialog>> <</link>> <</widget>> <<widget "hunger">> <<set $hungerCount += 1>> <<if $hungerCount > 5>> <<set $hungerCount = 0>> <<dialog>> <<print setup.messages.eatPrompt.random()>> <</dialog>> <</if>> <</widget>> <<widget "clean">> <<set $scoreWillpower += .25>> <<set $scoreEnergy -= .25>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<set $cleanedDone.push($currentClean)>> <<if $aEarned.includes("clean")>> <<elseif $cleanedDone.length >= $cleanedPossible.length>> <<dialog>> <img class="top" src="" alt=""> <<set $aEarned.push("clean")>> You earned the <<print setup.ach.cleanTitle>> achievement! <</dialog>> <</if>> <</widget>> <<widget "endcheck">> <<if $demonsDone.length >= setup.demons.list.length>> <<goto finalbossDemonsall>> <<elseif $scoreEnergy < 0>> <<goto finalbossSleep>> <</if>> <</widget>> <<widget "demonspawn">> <<set $moveCount += 1>> <<if $moveCount > 5>> <<set $moveCount = 0>> <<set $currentDemon = setup.demons.list.pluck()>> <<dialog>> <<print setup.demons[$currentDemon + $currentRoom + "1"]>> <br><br> <<print setup.demons[$currentDemon + $currentRoom + "2"]>> <<onclose>> <<goto $currentDemon>> <</dialog>> <</if>> <</widget>> <<widget "resetVars">> <<set $tvWatch = 0>> <<set $hungerCount = 0>> <<set $moveCount = 0>> <<set $currentMenu = "">> <<set $currentDemon = "">> <<set $currentMenuCount = 0>> <<set $wakeChoice = 0>> <<set $goodChoice = 0>> <<set $badChoice = 0>> <<set $scoreStability = 0>> <<set $scoreWillpower = 0>> <<set $scoreEnergy =7>> <<set $demonsDone = []>> <<set $bedClean = 0>> <<set $couchClean = 0>> <<set $sinkClean = 0>> <<set $fridgeClean = 0>> <<set $currentPassage = "title">> <<set $choiceList = ["goodChoice", "goodChoice", "badChoice"]>> <<set $c1Msg = "">> <<set $c2Msg = "">> <<set $c3Msg = "">> <<set $c1Text = "">> <<set $c1Activity = "">> <<set $currentCleaned = []>> <<set $msgBed = Array.from(setup.bed.messages)>> <<set $msgBedClean = Array.from(setup.bed.clean)>> <<set $msgCouch = Array.from(setup.couch.messages)>> <<set $msgCouchClean = Array.from(setup.couch.clean)>> <<set $msgCupboard = Array.from(setup.cupboard.messages)>> <<set $msgCupboardClean = Array.from(setup.cupboard.clean)>> <<set $msgSink = Array.from(setup.sink.messages)>> <<set $msgSinkClean = Array.from(setup.sink.clean)>> <<set $msgStove = Array.from(setup.stove.messages)>> <<set $msgStoveClean = Array.from(setup.stove.clean)>> <<set $msgMicrowave = Array.from(setup.microwave.messages)>> <<set $msgMicrowaveClean = Array.from(setup.microwave.clean)>> <<set $msgFridge = Array.from(setup.fridge.messages)>> <<set $msgFridgeClean = Array.from(setup.fridge.clean)>> <<set $msgBottleDesc = Array.from(setup.bottle.desc)>> <<set $msgBottleDrink = Array.from(setup.bottle.drink)>> <<set $msgJournalUse = Array.from(setup.journal.use)>> <<set $msgJournalDesc = Array.from(setup.journal.desc)>> <<set $cleanedDone = []>> <<set $cleanedPossible = ["sink", "stove", "cupboard", "microwave", "fridge", "bed", "couch"]>> <<set $booze = 0>> <<set $currentPassage = "menu">> <</widget>> <<widget "ach">> <<set _ach = $args[0]>> <<if $aEarned.includes($args[0])>> <<else>> <<dialog>> <<set $aEarned.push(_ach)>> You earned the <<print setup.ach[_ach + "Title"]>> achievement! <<close>> <</dialog>> <</if>> <</widget>> <<if ($scoreWillpower <= 4) && ($scoreStability <= 4)>> <img class="top" src="olives.png" alt="A handdrawn black and white image of a jar of peanut butter and a bowl of olives. The olives have toothpicks stuck into them in the shape of 3 flags: Australia, Netherlands and USA, probably in a nod to the developers of the game."> <br> <<print setup.endings.lowAll>> <<ach lowAll>> <</if>> <<if ($scoreWillpower <= 4) && ($scoreStability >= 4)>> <img class="top" src="creative" alt="A handdrawn picture of the table, now cleared of clutter and covered in art."> <br> <<print setup.endings.lowWillpowerHighStability>> <</if>> <<if ($scoreWillpower >= 4) && ($scoreStability <= 4)>> <img class="top" src="pasta.png" alt="A handdrawn picture of a plate of spaghetti and meatballs."> <br> <<print setup.endings.highWillpowerLowStability>> <</if>> <<if ($scoreWillpower >= 4) && ($scoreStability >= 4)>> <img class="top" src="chicken.png" alt="A handdrawn black and white image of a bowl of butter chicken and basmati rice."> <br> <<print setup.endings.highAll>> <<ach highAll>> <</if>> <br><hr> <<resetVars>> [[main]]<<set $scoreWillpower = $scoreWillpower - .25>> <<set $scoreEnergy = $scoreEnergy - .25>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<set $tvWatch += 1>> <<if $tvWatch > 10>> <<ach tv>> <<onclose>> <<goto tvend>> <<else>> <<print setup.tv.shows.random()>> <</if>> <br><hr> <<link "change channel">> <<replace "#textBox">> <<include "watchtv">> <</replace>> <</link>><div class="paper"> <div class="tape-section"></div> <<if $bedClean == 1 and $couchClean == 1>> <img class="top" src="apartmentClean.png" alt="A black and white handrawn image of a studio apartment, featuring a patched couch and neatly-made bed." usemap="#apartmentMap"> <<elseif $bedClean == 1 and $couchClean == 0>> <img class="top" src="apartmentBed.png" alt="A black and white handrawn image of a small one-room apartment, featuring a neatly-made bed." usemap="#apartmentMap"> <<elseif $bedClean == 0 and $couchClean == 1>> <img class="top" src="apartmentBed.png" alt="A black and white handrawn image of a small apartment, featuring a patched couch." usemap="#apartmentMap"> <<else>> <img class="top" src="apartment.png" alt="A black and white handrawn image of a rather bleak, dismal one-room apartment." usemap="#apartmentMap"> <</if>> <div class="tape-section"></div> </div> <map name="apartmentMap"> <area shape="circle" coords="300, 200, 100" alt="a sagging mattress on the floor" title="an old mattress on the floor" onclick="window.mapText('bed')"> <area shape="circle" coords="400, 400, 100" alt="an antiquated CRT television" title="an antiquated CRT television" onclick="window.mapText('tv')"> <area shape="circle" coords="450, 200, 100" alt="a saggy, stained couch" title="a saggy, stained couch" onclick="window.mapText('couch')"> <area data-passage="kitchen" shape="circle" coords="600, 200, 100" alt="a messy kitchen" title="a messy kitchen"> </map> <<set $currentDemon = "humiliation">> <<set $currentMenu = "french">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="french.png" alt="An elegant logo featuring the Eiffel Tower, fleur de lis and flowers."> <br> <<menuBuild>> <br> [[look at more of the table|table]] </div> <<set $currentDemon = "addiction">> <<set $currentMenu = "sweets">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="sweets.png" alt="A logo depicting a tasty trio: a cookie, cupcake and donut."> <br> <<menuBuild>> <br> [[look at other parts of the table|table]] </div><<set $currentDemon = "insecurity">> <<set $currentMenu = "pizza">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="pizza.png" alt="A logo depicting a gooey slice of pepperoni pizza."> <br> <<menuBuild>> <br> [[look at the rest of the table|table]] </div> <br><br> <span class="demonIntro2"> HUNGER </span> <br><br> <<timed $textTime+'s' t8n>> <span class="playerIntro2"> <<link "no..." "intro3">> <<set $scoreWillpower += .25>> <</link>> <br><br> <<link "no, please..." "intro3">> <</link>> </span> <</timed>> <br><br> <span class="demonIntro3"> N O W </span> <br><br> <<timed $textTime+'s' t8n>> <span class="playerIntro3"> <<link "..please...no..." "introNo">> <<set $scoreWillpower += .5>> <</link>> <br><br> <<link "...yes, sorry..." "introYes">> <</link>> </span> <</timed>> <br> <div class="layout"> Hunger drags you awake despite your wishes and you reluctantly get out of bed. It's already almost the afternoon, and you're starving. Your sleeping habits have been erratic, lately, ever since the incident. <br><br> Time to find some food. <br><hr> [[look around your apartment|apartment]] </div> <br> <div class="layout"> You reluctantly drag yourself awake, rueful at your own body for its basic needs. It's dark and dim in here, blinds shut against the afternoon sun,, and your stomach is screaming for food. Your sleeping habits have been erratic, lately, ever since the incident. <br><br> Time to find some food. <br><hr> </div> [[look around your apartment|apartment]] <<link '⚙'>><<dialog 'inGameMenu' 'inGameMenu' 'popup'>> <<link "Save/Load">> <<run UI.saves();>> <</link>> <br> <<link "Settings">> <<run UI.settings();>> <</link>> <br> <<link "Restart">> <<restartVars>> <<goto "main">> <<dialogclose>> <</link>> <br> <<link "Achivements">> <<dialog 'Achievements' 'Achievements' 'popup'>> <<include achievements>> <</dialog>> <</link>> <</dialog>> <</link>><div class="paper"> <div class="tape-section"></div> <<if $sinkClean == 1 and $fridgeClean == 1>> <img class="top" src="kitchenClean.png" alt="A black and white handrawn image of a neat and tidy kitchen." usemap="#kitchenMap"> <<elseif $sinkClean == 1>> <img class="top" src="kitchenSink.png" alt="A black and white handrawn image of a messy kitchen - but the sink is clean." usemap="#kitchenMap"> <<elseif $fridgeClean == 1>> <img class="top" src="kitchenFridge.png" alt="A black and white handrawn image of a dingy kitchen, with a freshly cleaned fridge." usemap="#kitchenMap"> <<else>> <img class="top" src="kitchen.png" alt="A black and white handrawn image of a messy, dingy kitchen." usemap="#kitchenMap"> <</if>> <div class="tape-section"></div> </div> <map name="kitchenMap"> <area shape="circle" coords="100, 400, 100" alt="a sink full of dishes" title="a sink full of dishes" onclick="window.mapText('sink')"> <area shape="circle" coords="100, 150, 100" alt="a creaky cupboard" title="a creaky cupboard" onclick="window.mapText('cupboard')"> <area shape="circle" coords="400, 400, 100" alt="a cheap electric stovetop" title="a cheap electric stovetop" onclick="window.mapText('stove')"> <area shape="circle" coords="600, 150, 100" alt="a secondhand microwave" title="a secondhand microwave" onclick="window.mapText('microwave')"> <area shape="circle" coords="600, 300, 100" alt="a dented fridge" title="a dented fridge" onclick="window.mapText('fridge')"> </map> <<set $currentDemon = "loneliness">> <<set $currentMenu = "bbq">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="bbq.png" alt="A logo of a BBQ grill."> <br> <<menuBuild>> <br> [[look at the rest of the table|table]] </div> <<endcheck>> <<set $currentRoom = "table">> <<include "tableMap">> <div class="layout"> <span id="textBox"> Every home has the place to where all of the junk and trash eventually migrates. For you, that place is this rickety, laminated wood table. A liquor <<link "bottle">><<goto "bottle">> <</link>>, a half-used <<link "pack of cigarettes">> <<replace "#textBox">> <<include cigarettes>> <</replace>> <</link>>, and crumpled takeout menus all litter its surface. Your <<link "journal">> <<goto journal>> <</link>> lays off to the side, a thin layer of dust coating its surface. It’s been a while since you wrote…. </span> <br><hr> <<include "menus">> <br><hr> [[look at the rest of the kitchen|kitchen]] </div> <div class="paper"> <div class="tape-section"></div> <img class="top" src="table.png" alt="A black and white handrawn image of a table covered in clutter and crumpled takeout menus." usemap="#tableMap"> <div class="tape-section"></div> </div> <map name="tableMap"> <area shape="circle" coords="350, 100, 75" alt="a grease-covered menu" title="a grease-covered menu" onclick="window.mapText($menu2)"> <area shape="circle" coords="400, 250, 75" alt="a dog-eared leather-bound journal" title="a dog-eared leather-bound journal" onclick="window.mapText('journal')"> <area shape="circle" coords="200, 250, 75" alt="a takeout menu for a nearby Indian restaurant" title="a takeout menu for a nearby Indian restaurant" onclick="window.mapPassage('indian')"> <area shape="circle" coords="600, 200, 75" alt="a crumpled menu" title="a crumpled menu" onclick="window.mapText('$menu3')"> <area shape="circle" coords="150, 150, 75" alt="an empty beer bottle" title="an empty beer bottle" onclick="window.mapText('bottles')"> <area shape="circle" coords="50, 250, 75" alt="a pack of smokes" title="a pack of smokes" onclick="window.mapText('cigarettes')"> </map> <br><hr> Stability: <<do tag "stability">>$scoreStability<</do>> | Willpower: <<do tag "willpower">>$scoreWillpower<</do>> <span class="h2"> Achievements </span> <hr> <<set _a = setup.ach.list.length>> <<if $aEarned == 0>> No achievements earned yet. There are <<print [_a]>> possible to obtain! <<else>> Earned $aEarned.length out of <<print _a>> total achievements. <hr> <<for $i = 0; $i < $aEarned.length; $i++>> <<set _a = $aEarned[$i]>> <span class="achivementTitle"> <<print setup.ach[_a + "Title"]>> </span> <br> <span class="achivementDesc"> <<print setup.ach[_a+ "Desc"]>> </span> <</for>> <</if>> <br>This used to be your favorite room in the house – a place to create. Now it’s just a place to warm up meals. Your standards didn’t go down, just your willingness to meet them.<<if $bedClean == 1 and $couchClean == 1>> This window has been freshly cleaned, with blinds rolled up to let in the soft glow of starlight. <<else>> This glass is hard to see through, caked with dirt and debris as it is. The frame is nailed shut – you’re not quite sure how legal that is, but you can’t summon the energy to care. <</if>><<if $bedClean == 1 and $couchClean == 1>> A simple lampshade softens the illumination from this lightbulb, casting a diffuse, soft glow over the small apartment. <<else>> This lightbulb gives off a harsh yellow light, making anything near cast a stark shadow. It probably hasn’t been changed since the decades ago the building was built, and yet it’s still going strong. You feel like it’s trying to spite you by lasting as long as possible. <</if>> <<set $currentRoom = "journal">> <img class="top" src="journal.png" alt="A black and white handrawn sketch of a journal." title="A black and white handrawn sketch of a journal."> <div class="layout"> <span id="textBox"> <<if $msgJournalDesc.length == 0>> <<set $msgJournalDesc = Array.from(setup.journal.desc)>> <</if>> <<print $msgJournalDesc.shift()>> <br><hr> <<link setup.journal.choice.random()>> <<replace "#textBox">> <<include "journaluse">> <</replace>> <</link>> </span> <br><hr> <<link "Write a custom entry">> <<goto entry>> <</link>> <br><hr> [[Read your entries|journalRead]] <br><hr> [[Look at the rest of the table|table]] </div> <<set $currentRoom = "journal">> <<set $scoreStablity += .5>> <<set $scoreStability +=.5 >> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<if $msgJournalUse.length == 0>> <<set $msgJournalUse = Array.from(setup.journal.use)>> <</if>> <<print $msgJournalUse.shift()>> <br><hr> <<link setup.journal.choice.random()>> <<replace "#textBox">> <<include "journaluse">> <</replace>> <</link>> <br><hr> <<link "Read your entries">> <<goto journalRead>> <</link>> <<set $currentRoom = "bottle">> <img class="top" src="bottle.png" alt="A black and white handrawn sketch of a bottle of booze." title="A black and white handrawn sketch of a bottle of booze."> <div class="layout"> <span id="textBox"> <<if $msgBottleDesc.length == 0>> <<set $msgBottleDesc = Array.from(setup.bottle.desc)>> <</if>> <<print $msgBottleDesc.shift()>> <<set $scoreStability -= .5>> <<set $scoreEnergy -= .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <br><hr> <<link setup.bottle.choice.random()>> <<replace "#textBox">> <<include "bottledrink">> <</replace>> <</link>> </span> <br><hr> [[Look at the rest of the table|table]] </div> You don’t touch them anymore. Not like you used to. Back in culinary school, they were a necessity. A fact of life. When you say you want to cook for a living, they don’t tell you about the stress you’re put under…. <<set $currentClean = "stove">> <<if $msgStoveClean.length == 0>> <<clean>> <<set $stoveClean = 1>> <<print setup.stove.cleanDone.random()>> <<set $msgStove = Array.from(setup.stove.cleanDone)>> <<else>> <<print $msgStoveClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>>... <<replace "#textBox">> <<include "stoveclean">> <</replace>> <</link>> <</if>> Double-click this passage to edit it.<br> Content Warning: <br><br> This game contains depictions of emotional abuse, physical abuse, depression, C/PTSD, alcohol, cigarettes, and mild horror language and imagery. <br><br> This game is meant to help with healing, but it could trigger trauma in players actively dealing with these cirumstances. Please use discretion in playing. <br><br> [[continue|main]] <<set $currentClean = "sink">> <<if $msgSinkClean.length == 0>> <<clean>> <<set $sinkClean = 1>> <<print setup.sink.cleanDone.random()>> <<set $msgSink = Array.from(setup.sink.cleanDone)>> <<else>> <<print $msgSinkClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>>... <<replace "#textBox">> <<include "sinkclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "microwave">> <<if $msgMicrowaveClean.length == 0>> <<clean>> <<print setup.microwave.cleanDone.random()>> <<set $msgMicrowave = Array.from(setup.microwave.cleanDone)>> <<else>> <<print $msgMicrowaveClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>>.... <<replace "#textBox">> <<include "microwaveclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "cupboard">> <<if $msgCupboardClean.length == 0>> <<clean>> <<dialog>> <<include cupboardMenu>> <</dialog>> <<set $msgCupboard = Array.from(setup.cupboard.cleanDone)>> <<else>> <<print $msgCupboardClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>>... <<replace "#textBox">> <<include "cupboardclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "fridge">> <<if $msgFridgeClean.length == 0>> <<clean>> <<set $fridgeClean = 1>> <<dialog>> <<include fridgeMenu>> <</dialog>> <<set $msgFridge = Array.from(setup.fridge.cleanDone)>> <<else>> <<print $msgFridgeClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>>... <<replace "#textBox">> <<include "fridgeclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "bed">> <<if $msgBedClean.length == 0>> <<set $bedClean = 1>> <<clean>> <<dialog>> <<include bedMenu>> <</dialog>> <<set $msgBed = Array.from(setup.bed.cleanDone)>> <<else>> <<print $msgBedClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>> ...... <<replace "#textBox">> <<include "bedclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "window">> <<if $msgwindowClean.length == 0>> <<clean>> <<print setup.window.cleanDone.random()>> <<else>> <<print $msgwindowClean.pop()>> <br> <<print setup.messages.cleanIntro>> <<link setup.messages.cleanLink.random()>> <<replace "#textBox">> <<include "windowclean">> <</replace>> <</link>> <</if>> <<set $currentClean = "couch">> <<if $msgCouchClean.length == 0>> <<clean>> <<set $couchClean = 1>> <<dialog>> <<include couchMenu>> <</dialog>> <<set $msgCouch = Array.from(setup.couch.cleanDone)>> <<else>> <<print $msgCouchClean.shift()>> <br><hr> <<print setup.messages.cleanIntro.random()>> <<link setup.messages.cleanLink.random()>> ...... <<replace "#textBox">> <<include "couchclean">> <</replace>> <</link>> <</if>><<set $scoreStability +=.5 >> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.bed.use.random()>> <br><hr> <<link "rest more">> <<replace "#textBox">> <<include "beduse">> <</replace>> <</link>> <img class="top" src="rage.png" alt="A black and white handrawn sketch of a childish face, contorted in a raging scream, framed by disembodied hands reaching towards you." title="A black and white handrawn sketch of a childish face, contorted in a raging scream, framed by disembodied hands reaching towards you."> <div class="layout"> A rising surge of rage threatens to overwhelm you. Through the hazy red anger, all you can think of are several potential responses... <br><hr> <<choiceBuild>> </div><div class="header"></div> <div id="passages"></div><div class="topBar"> <div class="topStats"> <<link "Stability:">> <<dialog>> A measure of how in-tune you are with your emotional state. Higher stability means more positive management of emotions. <</dialog>> <</link>> <<do tag "stability">>$scoreStability<</do>> &emsp; <<link "Willpower:">> <<dialog>> Tracks your overall motivational levels. Sometimes all you need for change is momentum to start the ball rolling! <</dialog>> <</link>> <<do tag "willpower">>$scoreWillpower<</do>> &emsp; <<link "Energy:">> <<dialog>> Displays your current energy levels. If you become too exhausted, it's time to sleep! <</dialog>> <</link>> <<do tag "energy">> <<if $scoreEnergy >= 10>> <<print "Energized">> <<elseif $scoreEnergy >= 9>> <<print "Invigorated">> <<elseif $scoreEnergy >= 8>> <<print "Refreshed">> <<elseif $scoreEnergy >= 7>> <<print "Alert">> <<elseif $scoreEnergy >= 6>> <<print "Rested">> <<elseif $scoreEnergy >= 5>> <<print "Awake">> <<elseif $scoreEnergy >= 4>> <<print "Sluggish">> <<elseif $scoreEnergy >= 3>> <<print "Weary">> <<elseif $scoreEnergy >= 2>> <<print "Drained">> <<elseif $scoreEnergy >= 1>> <<print "Exhausted">> <<elseif $scoreEnergy < 1>> <<print "Burned out">> <</if>> <</do>> </div> <div class="topSettings"> <<include "menuButton">> </div> </div><img class="top" src="envy.png" alt="A black and white handrawn sketch based on the classic dual theater masks. The comic mask has a gleeful smirk, while the tragic mask is staring enviously at its partner." title="A black and white handrawn sketch based on the classic dual theater masks. The comic mask has a gleeful smirk, while the tragic mask is staring enviously at its partner."> <div class="layout"> Envy clouds your vision as the demon taunts you. You struggle against the waves of jealousy as you consider how to conquer the demon... <br><hr> <<choiceBuild>> </div><img class="top" src="paranoia.png" alt="A black and white handrawn sketch depicting a demon peering through slatted venetian blinds with an anxious stare." title="A black and white handrawn sketch depicting a demon peering through slatted venetian blinds with an anxious stare."> <div class="layout"> The walls feel like they are closing in as your paranoia runs rampant. You can sense strangers peering through cracks in the door, windows, your very life to judge you and attack. You try to focus and decide how to chase away the demon... <br><hr> <<choiceBuild>> </div><img class="top" src="regret.png" alt="A black and white handrawn sketch depicting a slime-covered demon crouched in a defeated slump." title="A black and white handrawn sketch depicting a slime-covered demon crouched in a defeated slump."> <div class="layout"> Everything feels pointless as you become overwhelmed with regret. Images of your past dance about you in haunting taunts of your choices, and it's a struggle to focus on how to banish the demon... <br><hr> <<choiceBuild>> </div><img class="top" src="lethargy.png" alt="A black and white handrawn sketch of a lanky imp, sprawled out in a lazy lean and taunting you with a mocking grin." title="A black and white handrawn sketch of a lanky imp, sprawled out in a lazy lean and taunting you with a mocking grin."> <div class="layout"> Exhaustion sends your energy levels plummeting. As lethargy takes hold, you think how it would be so easy, so easy, so easy to just ignore the world and go back to bed. You struggle against the urge, debating how to fight this demon... <br><hr> <<choiceBuild>> </div><<set $scoreStability += .5 >> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.couch.use.random()>> <br><hr> <<link "rest more">> <<replace "#textBox">> <<include "couchuse">> <</replace>> <</link>> <<set $scoreStability += .5 >> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.sink.use.random()>> <br><hr> <<link "use the sink">> <<replace "#textBox">> <<include "sinkuse">> <</replace>> <</link>> <<set $scoreStability += .5 >> <<set $scoreEnergy += .5>> <<redo>> <<print setup.stove.use.random()>> <br><hr> <<link "use the stove">> <<replace "#textBox">> <<include "stoveuse">> <</replace>> <</link>> <<set $scoreStability += .5 >> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.microwave.use.random()>> <br><hr> <<link "use the microwave">> <<replace "#textBox">> <<include "microwaveuse">> <</replace>> <</link>> <<set $scoreStability += .5>> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.cupboard.use.random()>> <br><hr> <<link "open the cupboard">> <<replace "#textBox">> <<include "cupboarduse">> <</replace>> <</link>> <<set $scoreStability += .5>> <<set $scoreEnergy += .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<print setup.fridge.use.random()>> <br><hr> <<link "survey the fridge">> <<replace "#textBox">> <<include "fridgeuse">> <</replace>> <</link>> <img class="top" src="mirror.png" alt="A black and white handrawn image of a mirror."> <div class="layout"> Your energy levels plummet as the day drags on until, finally, your eyes can barely remain open. You stagger through your tiny apartment towards the bathroom, feeling utterly drained and exhausted - waiting for you is the final demon you'll encounter today: your own haggard reflection, staring back in silence. <br><br> Tired eyes, weary wrinkles and lank hair remind you of just how dire your need for rest is, but before you sleep, you must find... <br><br> <<link "SUCCOR">> <<goto end>> <</link>> </div><<ach allDemons>> <img class="top" src="mirror.png" alt="A black and white handrawn image of a mirror."> <div class="layout"> You keep yourself busy throughout the day, tidying your apartment and organizing your meager possessions. The effort paradoxically energizes you until finally there seems to be little left to clean. You head to the small bathroom and catch a glimpse of the final lurking demon: your own reflection. <br><br> Bright eyes blink back and you can't help but crack a smile. Life's been rough lately, but this, too, shall pass - you've made progress today. You feel lighter and more upbeat as you realize you need to forgive yourself. Nobody at the academy was as hard on you as....well, you. <br><br> With a promise to be gentle and patient with yourself, you give your reflection a cheery wink, before heading to the kitchen. You need... <br><br> <<link "SUCCOR">> <<goto end>> <</link>> <br><br> </div><<set $currentDemon = "lethargy">> <<set $currentMenu = "italian">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="pasta.png" alt="A logo of a bowl of pasta."> <br> <<menuBuild>> <br> [[look at the rest of the table|table]] </div> <img class="top" src="tv.png" alt="A black and white handrawn image of a television."> <div class="layout"> You can feel the television sapping away your motivation, willpower, energy and desire to do anything besides sit and let the world wash over you. The day drags on until, finally, your eyes can barely remain open. You stagger through your tiny apartment towards the bathroom, feeling utterly drained and exhausted - waiting for you is the final demon you'll encounter today: your own haggard reflection, staring back in silence. <br><br> Tired eyes, weary wrinkles and lank hair remind you of just how dire your need for rest is, and you trudge back to your couch, back to the TV, back to the welcome, easy distraction. The shows begin to meld together as the content fades to background and only the colors remain. You flick through channels listlessly, mind beginning to slow. Next thing you know, you’re passed out on the couch. Perhaps tomorrow will be a better day. Perhaps tomorrow you'll find... <br><br> <<link "SUCCOR">> <<resetVars>> <<goto main>> <</link>> <br><br> </div><<set $currentDemon = "regret">> <<set $currentMenu = "chinese">> <div class="menu"> <span class="menuName"> $currentMenuName </span> <br> <img class="menuIcon" src="chicken.png" alt="A logo of a bowl of stir fry and rice."> <br> <<menuBuild>> <br> [[look at the rest of the table|table]] </div><<set $currentRoom = "bottle">> <<set $scoreWillpower = $scoreWillpower - .25>> <<set $scoreEnergy -= .5>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<set $booze += 1>> <<if $booze > 10>> <<goto boozeend>> <</if>> <<if $msgBottleDesc.length == 0>> <<set $msgBottleDesc = Array.from(setup.bottle.desc)>> <</if>> <<print setup.bottle.drink.random()>> <<print $msgBottleDesc.shift()>> <br><hr> <<link setup.bottle.choice.random()>> ...... <<replace "#textBox">> <<include "bottledrink">> <</replace>> <</link>> <img class="top" src="mirror.png" alt="A black and white handrawn image of a mirror."> <div class="layout"> The day passes in the depths of a bottle and you eventually stagger towards the tiny apartment's even tinier bathroom. Yet another demon lurks there, but it's one you're all too familiar with: staring balefully back at you from the mirror is you own, silent, sorry reflection. <br><br> Bloodshot eyes, puffy skin and lank hair remind you of how you've wasted the day, and the oblivion of sleep looms near. Before you finally pass out, you realize with regret that you never found... <br><br> <<link "SUCCOR">> <<resetVars>> <<goto main>> <</link>> </div>Journal ending [[main]]<<run $journal.push($currentJournal)>> <<set $journalNumber += 1>> <<set $scoreStability += 1>> <<set $scoreEnergy += 1>> <<redo "stability">> <<redo "energy">> <<redo "willpower">> <<goto journal>><<set $currentRoom = "journal">> <img class="top" src="journal.png" alt="A black and white handrawn sketch of a journal." title="A black and white handrawn sketch of a journal."> <div class="layout"> <span id="textBox"> <<set $journalTrack += 1>> <<if $journalTrack > 10>> <<dialog>> <img class="top" src="creative.png" alt="A black and white sketch of a table filled with art."> <br> <<ach journal>> <</dialog>> <</if>> <<print setup.journal.entry.random()>> <hr> <<textbox "$currentJournal" "" "journalAdd" autofocus>> <br><br> <<link "Save this entry">> <<goto journalAdd>> <</link>> </span> </div><<set $currentRoom = "journal">> <img class="top" src="journal.png" alt="A black and white handrawn sketch of a journal." title="A black and white handrawn sketch of a journal."> <div class="layout"> <span id="textBox"> <<if $journal.length < 1>> <<link "Write something!">> <<goto journalAdd>> <</link>> <<else>> <<for _i = 0; _i < $journal.length; _i++>> <<capture _i>> <<set _entry = [_i + 1]>> <<link "_entry">> <<dialog>> <<print $journal[_i]>> <</dialog>> <</link>> <</capture>> <br> <</for>> <</if>> <hr> [[Look at the rest of the table|table]] </span> </div><<set $currentMenu = $menu4>> <<set $currentMenuName = $menu4name>> <<set $currentDemon = $menu4Demon>> <<set $currentMenuCount = 0>> <<print setup.cupboard.cleanDone.random()>> <br><br> As you finish the cleaning, you find a crumpled takeout menu wedged in the back of the cupboard. <br><hr> <div align="center"> <<link "a menu for a nearby restaurant named $menu4name" $menu4>> <<dialogclose>> <<goto $menu4>> <</link>> </div><<set $currentMenu = $menu5>> <<set $currentMenuName = $menu5name>> <<set $currentDemon = $menu5Demon>> <<set $currentMenuCount = 0>> <<print setup.fridge.cleanDone.random()>> <br><br> As you finish the cleaning, you find an old takeout menu stuck to some rotting produce. <br><hr> <div align="center"> <<link "a menu for a nearby restaurant named $menu5name" $menu5>> <<dialogclose>> <<goto $menu5>> <</link>> </div> <<set $currentMenu = $menu6>> <<set $currentMenuName = $menu6name>> <<set $currentDemon = $menu6Demon>> <<set $currentMenuCount = 0>> <<print setup.couch.cleanDone.random()>> <br><br> As you finish the cleaning, you find a greasy takeout menu wedged in the bottom of the couch. <br><hr> <div align="center"> <<link "a menu for a nearby restaurant named $menu6name" $menu6>> <<dialogclose>> <<goto $menu6>> <</link>> </div><<set $currentMenu = $menu7>> <<set $currentMenuName = $menu7name>> <<set $currentDemon = $menu7Demon>> <<set $currentMenuCount = 0>> <<print setup.bed.cleanDone.random()>> <br><br> As you finish the cleaning, you find a crumpled takeout menu stuffed between the bed and the wall. <br><hr> <div align="center"> <<link "a menu for a nearby restaurant named $menu7name">> <<dialogclose>> <<goto $menu7>> <</link>> </div>