(masteraudio: 'preload')(display: "titlepage")(display: "titleundooff") (track: 'maintitle', 'playwhenpossible') (track: 'maintitle', 'volume', 0.3) <div class="titlepagename">(char-style:(text-style:"fidget"))[WHO LOVED HELEN COO THE HIGHLAND COW?]</div> <div class="by">by Luisa Cheng & Angela Ko</div>(mouseover-replace: "LOVED")[(display: "titlepageblood")KILLED] =><= <span class="hoversound">(text-size:2)+(font: "Cabin Sketch")[[[Start|newgame]] • [[About|about]]]</span><script>$('body').removeClass().addClass('dream')</script><script>$('tw-story').removeClass().addClass('dream')</script><div style="display:none;"><script>$('body').removeClass().addClass('title')</script> <script>$('tw-story').removeClass().addClass('title')</script></div><script>$('body').removeClass().addClass('realcool')</script><script>$('tw-story').removeClass().addClass('realcool')</script><span class="sideboxleft"><img src="https://i.imgur.com/t85dIsD.jpg" class="avatar"> **$name**</span><span class="sideboxleft"><img src="https://i.imgur.com/3YepJTo.jpg" class="avatar"> ***$name***</span><span class="sideboxleft"><img src="https://i.imgur.com/TAeiXyF.jpg" class="avatar"> ***$name***</span><div style="display:none;"> <script>$('tw-sidebar').removeClass()</script></div>(if: (passage:)'s name is "logo")[<!--Do nothing-->] (else-if: (passage:)'s tags contains "nologo")[<!--Do nothing-->] (else:)[<span class="logo">© 2021, Luisa Cheng & Angela Ko</span>]<span class="sideboxleft"><img src="https://i.imgur.com/o2SpCC0.jpg" class="avatar"> ***Helen Coo***</span>maintitle: https://vgmsite.com/soundtracks/oneshot-ost/einssnvysf/01%20My%20Burden%20Is%20Light.mp3 bedroom: https://vgmsite.com/soundtracks/oneshot-ost/lluezpmjbx/12%20Into%20The%20Light.mp3 typewriter: https://static.wixstatic.com/mp3/5ab759_74d8fba3ae644f8981e33755375c091d.mp3 paperout: https://static.wixstatic.com/mp3/5ab759_fe72d8cd8f4e4d6b8c998c9571e94aff.mp3 never: https://static.wixstatic.com/mp3/5ab759_c3017d9f02da45d08ab4e587ed072848.mp3 now: https://static.wixstatic.com/mp3/5ab759_8824a8da337d453ebe2389ae5bffb709.mp3 he: https://static.wixstatic.com/mp3/5ab759_0917ad7479f24a5e9d1b4ee21e7767b0.mp3 has: https://static.wixstatic.com/mp3/5ab759_2ebe79dcf5984b48af425de971671713.mp3 another: https://static.wixstatic.com/mp3/5ab759_023df30cbae94ef5abfc3f112f12fb22.mp3 are: https://static.wixstatic.com/mp3/5ab759_7b3891312a5341198bfbba759ec172bc.mp3 faucet: https://static.wixstatic.com/mp3/5ab759_36a0bb396eb74ec8b5831f2b09b19878.mp3 wipeglass: https://static.wixstatic.com/mp3/5ab759_45763bc279a9415f99b1a52e8153d5d9.mp3 inventory: https://static.wixstatic.com/mp3/5ab759_bbc825ca941d4b5c98a0727b5f17db69.mp3 foggyworld: https://vgmsite.com/soundtracks/oneshot-ost/gljicprexh/19%20Children%20of%20the%20Ruins.mp3 chapterend: https://vgmsite.com/soundtracks/oneshot-ost/pyqdgrhapu/11%20Distant.mp3sidebarStartClosed: true volumeDisplay: true{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) }(set:$name to (prompt: "What is your name?", ""))(if:$name is "")[I really want to know your name, please? <span class="hoversound">[[Tell me your name.|naming]]</span>](else-if: $name is "Helen" or $name is "helen" or $name is "Helen Coo" or $name is "helen coo")[No. You cannot have that name. Change one. <span class="hoversound">[[Tell me your name.|naming]]</span>](else:)[(goto:"gender")]{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) } Okay! How should I address you, $name? <span class="hoversound">(link-reveal-goto: "Mr.", "yournarrative")[(set:$fullname to "Mr. " + $name)(set:$player3 to true)] (link-reveal-goto: "Ms.", "yournarrative")[(set:$fullname to "Ms. " + $name)(set:$player1 to true)] (link-reveal-goto: "Mx.", "yournarrative")[(set:$fullname to "Mx. " + $name)(set:$player2 to true)]</span>{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) } (live: 5.5s)[(stop:)(track: 'typewriter', 'play')]So here’s the thing, $name. Your narrative begins at one night, when your BFF Helen Coo the highland cow got brutally murdered at her flat. The police aren’t doing anything about it, sealing it off as a case of suicide. But you know that wasn’t it. You know it’s a murder. You suspect that it has to do with some anti talking-animal gang or cult. You’re going to figure this all out.(live: 25.5s)[(stop:)(track: 'typewriter', 'stop')(track: 'paperout', 'play')] <span class="hoversound">[[You start from Helen’s flat.|flat]]</span> (enchant: ?passage's chars, via (t8n-delay:pos * 60) + (t8n: 'instant')){ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) } You successfully sneak into the flat. Helen’s body was found in her bedroom, and that’s where you start your investigation. Please gather info and bag the evidence! (display: "loopstart")(display:"normal")<span class="menuhead"><span class="menuback">(link-goto:"↩","maintitle")</span><span class="menupage">ABOUT</span></span> (align:"<==>")+(box:"==XXXXXXXXXXXXXXXXXXXX===")[**Luisa Cheng 鄭麗舲 (露易莎)** * ESL Designer Numbah 1, SLC FJCU (2017-2021) * MA English Literature, Fu Jen Catholic University, Taiwan (2018-2020) * My jam: reading, gaming, drawing, interactive-narrative games, poetry, anything about faeries, poetic justice, fooling around with my cat * Responsible for: scriptwriting, Twine programming, art/graphic design, web design * Say something: I NEED A JOB!!! Also, please check out my another collaborated game (link-repeat: "***A Smart Kid***《核冬之子》")[(open-url: 'https://drive.google.com/file/d/10f_I5fs3-qP5UfX-MnOzGPPz99InJus3/view?usp=sharing')]with Pearl Yang. Inspired by Porcupine Tree’s homonymous song, it’s a choice-based game that sets in a post-apocalyptic world during nuclear winter, where the Sun, the sole power energy of all in this universe, has shattered into pieces and scattered all around the earth. To repower their android friend and sanctuary, the child protagonist has to scavenge for solar pieces. On this hazardous journey far away from home, they will face several important decisions. For now only the demonstration video is available as I’m still working on the Tyranobuilder remake (we used 橙光 for the original.) **Angela Ko 柯巧倩 (安哥拉)** * ESL Designer Numbah 2, SLC FJCU (2017-2021) * MA Gender Studies, University of Sussex, UK (2018-2019) * MA Translation and Interpreting, Graduate Institute of Cross-Cultural Studies, Fu Jen Catholic University, Taiwan (2017-present) * My jam: gaming, literature, research in humanities, true-crime documentary, bad puns and dad jokes, chilling with my snakes * Responsible for: scriptwriting, Twine programming, audio editing * Say something: I want a enjoyable job!]{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) (set: $inv to (a:)) (set:$bedroom to false) (set:$livingroom to false) (set:$kitchen to false) (set:$bathroom to false) (set:$desk to false) (set:$under to false) (set:$closet to false) } =><= [Hello, welcome!]<greetings|(live:2s)[(stop:)(replace:?greetings)[(display: "naming")]]<script>$('body').removeClass().addClass('heartless')</script><script>$('tw-story').removeClass().addClass('heartless')</script>{ (display: "dream") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } A photograph of Justin Beaver. Yeah, Heli was really crazy about him several years ago. <span class="hoversound">[[Inspect elsewhere.|bedroom]]</span>{ (display: "dream") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } You fumble around all the pockets, only to find in a worn-out denin jacket some coins and a mp3 player. (click-append: "denin jacket")[ (you gave it to her on her 18th birthday)] You marvel at the existence of the Sony Walkman in your hand. It seems that it has been used recently. <span class="hoversound">[[Inspect the MP3 player.|insmp3]]</span>{ (display: "dream") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } You find a bag of chicken bones and a worn sock, and you cannot decide which one bothers you more. <span class="hoversound">(link-reveal-goto:"Take the sock and continue to explore.", "bedroom")[(set: $inv to $inv + (a: " a worn sock"))(alert: "You got a new item! Please check your inventory later.")] [[Leave the sock and inspect elsewhere.|bedroom]]</span>{ (display: "realcool") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'maintitle', 'fadeout', 5) (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } Things are scattered around on the sofa and on the tea table. It could well suggest signs of intrusion, yet you know your girl. She was just messy by nature. Two book lie open on the carpet. You pick them up. One is titled //Dr. Zeus’ Collection of Mirror Poems//, whereas another //Dr. Zeus’ Collection of Acrostics//. <span class="hoversound">(link-reveal-goto: "Investigate elsewhere.", "loopstart")[(track: 'bedroom', 'fadeout', 5)(set: $inv to $inv + (a: " Dr. Zeus’ Collection of Mirror Poems", " Dr. Zeus’ Collection of Acrostics"))(alert: "You got 2 new items! Please check your inventory later.")]</span>{ (display: "dream") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'maintitle', 'fadeout', 5) (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } What would you like to inspect, $fullname? <span class="hoversound"> (if: $desk is false)[(link-reveal-goto: "The desk", "desk")[(set:$desk to true)]](else:)[(text-style: "strike")+(colour: "#696969")[The desk]] (if: $closet is false)[(link-reveal-goto: "The closet", "closet")[(set: $closet to true)]](else:)[(text-style: "strike")+(colour: "#696969")[The closet]] (if: $under is false)[(link-reveal-goto: "Under the bed", "bed")[(set:$under to true)]](else:)[(text-style: "strike")+(colour: "#696969")[Under the bed]] (if: $desk is true and $closet is true and $under is true)[ There’s nothing else useful here for now. (link-goto: "Investigate elsewhere.", "loopstart")] </span>{ (if: (passage:)'s name is "inv")[<!--Do nothing-->] (else-if: (passage:)'s tags contains "noinv")[<!--Do nothing-->] (else:)[[[<img src="https://i.imgur.com/0gTTSbE.png" width="25%" height=auto">|inv]]] }{ (display: "normal")<span class="menuhead"><span class="menuback">(link: '↩')[(track: 'inventory', 'stop')(goto: (history:)'s last)]</span><span class="menupage">INVENTORY</span></span> (track: 'maintitle', 'mute', true)(track: 'bedroom', 'mute', true)(track: 'chapterend', 'mute', true)(track: 'foggyworld', 'mute', true) (track: 'inventory', 'volume', 0.1)(track: 'inventory', 'fadein', 3)(track: 'inventory', 'loop', true) } {(if: $inv's length > 0)[Your inventory contains (print: (a: ...$inv)).] (else:)[Your inventory is empty for now.]} []<c4| {<span class="hoversound">(click: "a worn sock")[(replace:?c4)[(display: "sock")]] (click: "a sony walkman")[(replace:?c4)[(display: "walkman")]] (click: "Dr. Zeus’ Collection of Mirror Poems")[(replace:?c4)[(display: "mirror")]] (click: "Dr. Zeus’ Collection of Acrostics")[(replace:?c4)[(display: "acrostic")]] (click: "a fridge note")[(replace:?c4)[(display: "fridgenote")]] (click: "a 4-digit code")[(replace:?c4)[(display: "4dcode")]]</span> }<script>$('body').removeClass().addClass('')</script> <script>$('tw-story').removeClass().addClass('')</script>{ (display: "dream") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } (background: (rgb: 255, 255, 255, 0.3))+(corner-radius:16)+(box:"===XXXXXXXXXXXXXX===")[(if: $player1 is true)[(display: "player1")](else-if: $player2 is true)[(display: "player2")](else:)[(display: "player3")]“Oh my, the thing is locked! I need to find the password. Hel, what did you try to hide?”] You put away the walkman. <span class="hoversound">(link-reveal-goto: "Inspect elsewhere.", "bedroom")[(set: $inv to $inv + (a: " a sony walkman"))(alert: "You got a new item! Please check your inventory later.")]</span>{ (display: "realcool") (unless: (track: 'foggyworld', 'isplaying'))[ (track: 'maintitle', 'fadeout', 5) (track: 'foggyworld', 'volume', 0.2) (track: 'foggyworld', 'fadein', 3) (track: 'foggyworld', 'loop', true)] (track: 'foggyworld', 'mute', false) } You open the mirror cabinet and find a bunch of pill bottles. They said she killed herself by swallowing a full bottle of sleeping pills. Of course you don’t buy it. <span class="hoversound">[[Turn on the faucet.|faucet]]</span>{ (display: "realcool") (unless: (track: 'bedroom', 'isplaying'))[ (track: 'maintitle', 'fadeout', 5) (track: 'bedroom', 'volume', 0.1) (track: 'bedroom', 'fadein', 3) (track: 'bedroom', 'loop', true)] (track: 'bedroom', 'mute', false) } There are some notes from the fridge. You notice that on one was written a combination of numbers. (text-size: 5)+(font: "Sue Ellen Francisco")[956413] (background: (rgb: 255, 255, 255, 0.3))+(corner-radius:16)+(box:"===XXXXXXXXXXXXXX===")[(if: $player1 is true)[(display: "player1")](else-if: $player2 is true)[(display: "player2")](else:)[(display: "player3")]“Humph, I wonder what this is for.”] <span class="hoversound">(link-reveal-goto: "Investigate elsewhere.", "loopstart")[(track: 'bedroom', 'fadeout', 5)(set: $inv to $inv + (a: " a fridge note"))(alert: "You got a new item! Please check your inventory later.")]</span><div style="display:none;"><script>$('body').removeClass().addClass('titleblood')</script> <script>$('tw-story').removeClass().addClass('titleblood')</script></div>--- //Dr. Zeus’ Collection of Acrostics//. Ah, you love this one! It was also from Mr. Schulte’s class. An ***acrostic*** is a text or a poem, in which the first letters of each line spell a word or phrase.--- //Dr. Zeus’ Collection of Mirror Poems//? You have a copy too. You and Heli both went to Mr. Schulte’s poetry class a few years ago. This book was on the book list, which was why you got it. Heli hated poetry though. You didn’t think she would keep it all these years. A ***mirror poem*** is also called a ***palindrome poem***. A ***palindrome*** is a word, phrase or sentence that is the same both backwards and forwards.--- A worn sock with a funny smell, like you have described. You don’t think it belonged to Heli. It was probably Emmanuel’s. He was Heli’s BF.--- An old sony walkman. It’s locked. You have to find the right password 🔐. (click: "🔐")[(display: "password")]--- The note wrotes: (text-size: 5)+(font: "Sue Ellen Francisco")[956413] It seems to be some password.{ (display: "realcool") (unless: (track: 'foggyworld', 'isplaying'))[ (track: 'foggyworld', 'volume', 0.1) (track: 'foggyworld', 'fadein', 3) (track: 'foggyworld', 'loop', true)] (track: 'foggyworld', 'mute', false) (track: 'faucet', 'play') } (text-style: "blur")[You wash your hands. The running hot water turns the mirror foggy. You try to look at yourself in the mirror, but a blur is all that there is. The whole world is fogging up, and you’re slowly getting lost in it . . . Or you have alrealy been lost ever since she was gone.] (live: 13s)[(stop:)(link: "Wipe the mirror.")[(track: 'wipeglass', 'play')Now this is better. You will not wallow in your misery untill and unless you find out who killed your best friend and bring them to justice. (live: 6s)[(stop:)Wait . . . ]]] (click-append: "Wait . . . ")[You notice something down at the right bottom corner of the mirror. (text-size: 5)+(font: "Sue Ellen Francisco")+(text-style: "blur")[(if: $player1 is true)[0923](else-if: $player2 is true)[0327](else:)[0204]] <span class="hoversound">(link-reveal-goto: "Inspect elsewhere.", "loopstart")[(track: 'foggyworld', 'fadeout', 5)(set: $inv to $inv + (a: " a 4-digit code"))(alert: "You got a new item! Please check your inventory later.")]</span>]It’s your birthday. So there’s definitely some message left for you in the walkman! You’re right about everything! (newplaylist: 'killers', 'he', 'has', 'another', 'never', 'now', 'are') There are only **6 tracks** in this playlist named ***Killers***. //Damn!// The screen is broken! You can’t see the song titles. You guess you’d better listen to all these songs and see if you can come up with somthing! (align:"=><=")+(background: (rgb: 255, 255, 255, 0.3))+(corner-radius:16)+(box:"==X==")[(link-repeat: '▶')[(playlist: 'killers', 'shuffle')(playlist: 'killers', 'play')] (link-repeat: '∥')[(playlist: 'killers', 'pause')]]{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) } Where would you like to investigate, $fullname? <span class="hoversound"> (if: $bedroom is false)[(link-reveal-goto: "To the bedroom", "bedroom")[(set:$bedroom to true)]](else:)[(text-style: "strike")+(colour: "#696969")[To the bedroom]] (if: $livingroom is false)[(link-reveal-goto: "To the living room", "livingroom")[(set: $livingroom to true)]](else:)[(text-style: "strike")+(colour: "#696969")[To the livingroom]] (if: $kitchen is false)[(link-reveal-goto: "To the kitchen", "kitchen")[(set:$kitchen to true)]](else:)[(text-style: "strike")+(colour: "#696969")[To the kitchen]] (if: $bathroom is false)[(link-reveal-goto: "To the bathroom", "bathroom")[(set:$bathroom to true)]](else:)[(text-style: "strike")+(colour: "#696969")[To the bathroom]] (if: $bedroom is true and $livingroom is true and $kitchen is true and $bathroom is true)[(goto:"chapterend")](else:)[[[Leave the flat|noleave]]]</span>--- A random four-digit code you found on the foggy mirror in the bathroom: (text-size: 5)+(font: "Sue Ellen Francisco")+(text-style: "blur")[(if: $player1 is true)[0923](else-if: $player2 is true)[0327](else:)[0204]]{ (display: "heartless")(track: 'maintitle', 'fadeout', 5)(track: 'bedroom', 'fadeout', 5)(track: 'foggyworld', 'fadeout', 5) (unless: (track: 'chapterend', 'isplaying'))[ (track: 'chapterend', 'volume', 0.1) (track: 'chapterend', 'fadein', 3) (track: 'chapterend', 'loop', true)] (track: 'chapterend', 'mute', false) } You walk out of the flat. Gazing at the neon lights afar, you think you know who the murderer might be! [[Say it out loud!|murderer]] Want some hints? (click: "hints")[(display: "hints")](display: "heartless")(set: $murderer to (prompt: "Say it!","")) (if: $murderer is "Hannah" or $murderer is "hannah" or $murderer is "HANNAH")[That’s right. You need to figure out who this **Hannah** is!!](else:)[You should check all the evidence in your bag. Perhaps you may figure out some clues. There have to be some messages! [[***THINK HARDER!***|murderer]]] (click: "Hannah")[(goto: "demo")] (unless: $murderer is "Hannah" or "hannah" or "HANNAH")[More hints plz! (click: "hints")[(display: "morehints")]]{ (display: "heartless") (unless: (track: 'maintitle', 'isplaying'))[ (track: 'maintitle', 'volume', 0.1) (track: 'maintitle', 'fadein', 3) (track: 'maintitle', 'loop', true)] (track: 'maintitle', 'mute', false) } You haven’t collected enough evidence! Try harder! She was your best friend! <span class="hoversound">[[Return to the flat|loopstart]]</span> (set: $password to (prompt: "Password?","")) (if: $password is "956413")[The password seems to be a four-digit code, so the combination on the fridge note can’t be the right password. 956413—There are 8 digits!](else-if: $player1 is true and $password is "0923")[(display: "rightpassword")](else-if: $player2 is true and $password is "0327")[(display: "rightpassword")](else-if: $player3 is true and $password is "0204")[(display: "rightpassword")](else-if: $password is "")[ . . . You have no idea what the password is. You should go look for clues.](else:)[You shouldn’t mess with the walkman. It’s almost running out of battery, and you have no clue how to charge an ancient crap like this. You should turn it on only when you find the right password.] 1. Check all items in the inventry and read their descriptions carefully. 2. Manage to unlock the Sony Walkman. 3. Play the playlist, and try to write down the one-line lyrics of each song. Combine this with other clues and name the murderer! 1. The one-line lyrics of all six songs form an acrostic, but of course you have to figure out the order yourself. 2. The murderer’s name is a palindrome. 3. No more hints!{ (display: "heartless") (unless: (track: 'chapterend', 'isplaying'))[ (track: 'chapterend', 'volume', 0.1) (track: 'chapterend', 'fadein', 3) (track: 'chapterend', 'loop', true)] (track: 'chapterend', 'mute', false) } Thank you for playing. We shall see you in 2022!