! Version 1 Constant Story "The Gates Escape"; Constant Headline "^A Cheesy Game ^by Mike Agius ^"; Serial "011027"; Release 1; Constant DEBUG; Include "Parser.h"; Include "Verblib"; !Living Room Object - Initial player location Object Living_Room "Living Room" with description "The Living Room has a musty smell. It's dimly lit by the moon coming through cracks in the windows. In the center of the room you see a small table. Behind the table is the hallway leading north towards the back of ^the house.", n_to Hallway, has light; !Hallway - Location Object Hallway "Hall" with description "Long dark hallway, barely lit by a bare bulb ^towards its center. At the north end of the ^hallway you see a computer room. To the south ^is the living room.", s_to Living_Room, n_to Computer_Room, has light; !Computer Room - Location Object Computer_Room "Computer Room" with name "Computer Room" "computer room", description "It's a computer room. There's a small PC with papers scattered across it.", s_to Hallway, has light; !Outsite House - End location Object outside_house "Safe Outside Back in Your own Dimension" with name "outside" "safe", description "You whirl back through the vortex and end up outside your house. With the evidence you've collected you head straight to the autohrities to tell them about the attrocities commited against poor Bill Gates, and that there is something evil in the next version of Windows.", before [; deadflag = 2; !win game ], has light; !13th Dimension - Transported location Object dimension_13 "13th dimension" with description "Everything goes black...then suddenly you are whirling through a giant vortex.^ With a flash of bright light you land at the foot of a path.^^ By the looks of things you are in the 13th dimension. There's a clearing to the north.", n_to d13_clearing, !go north to clearing has light; !Shorline - Location Object shore "Shorline" with description "It's a strange shoreline. The purple water bubbles up slowly onto the shore.^ You see a half-filled bottle of water.", w_to d13_clearing; !go west to clearing !Water bottle, shore object Object bottle "water bottle" shore with description "It's a half-filled bottle of thick purple water.", name "bottle" "water", before [; taste: "It tastes strange. Your stomach is already upset. I wouldnt drink the whole thing."; eat: deadflag = 1; drink: deadflag = 1; !you cant drink 13th dimension water ], after [; eat: "You munch on glass...and die."; !drank the strange 13th dimension water ], has concealed; !Clearing - main puzzle location Object d13_clearing "Clearing" with description "It's a small clearing. Hovering above is what looks like a multicolored butterfly.^In the center of the clearing are 4 pillars with different markings on each. ^^Blue - low horizontal wavy lines^Red - rising wavy lines^Green - straight horizontal lines^Yellow - horizontal wavy lines towards the top. ^^To the west is a cave, to the east you hear water.", !s_to dimension_13, w_to cave, !go west to cave e_to shore, !go east to shore has light; !Pillar objects !Pillars are color coded and symbolized to earth elements !Blue Pillar !Water Eelement - Correct Key water bottle Object blue_pillar "Blue Pillar" d13_clearing with description "It's a blue pillar. There are wavy horizonal lines etched into the side.", name "blue" "pillar", before [; Receive: if(noun == bottle) { move bottle to blue_pillar; "You hear a rumbling sound...then it stops!"; } else { "Nothing exciting happens."; } ], has light concealed static supporter; !Red Pillar !Fire Element - Correct Key Torch Object red_pillar "Red Pillar" d13_clearing with description "It's a red pillar. There are wavy vertical lines etched into the side.", name "red" "pillar", before [; Receive: if(noun == torch) { move torch to red_pillar; !torch activates pillar "You hear a rumbling sound...then it stops!"; } else { "Nothing exciting happens."; } ], has light concealed static supporter; !Green Pillar !Earth Element - Correct Key Doll Object green_pillar "Green pillar" d13_clearing with description "It's a green pillar with straight horizontal lines etched into the side.", name "green" "pillar", before [; Receive: if(noun == voodoo_doll) { move voodoo_doll to green_pillar; "You hear a rumbling sound...then it stops!"; } else { "Nothing exciting happens."; } ], has light concealed static supporter; !Yellow Pillar !Air Element - No key, harbors switch Object yellow_pillar "Yellow pillar" d13_clearing with description "It's a yellow pillar. Under the wavy lines at the top you see a switch.", name "yellow" "pillar", has light concealed static supporter; !Switch to send you back home !only activated if all other pillars are active (rumbling) Object yellow_button "switch" yellow_pillar with description "It's a yellow switch.", name "switch", before [; switchon: if(bottle notin blue_pillar && torch notin red_pillar && voodoo_doll notin green_pillar) { "Nothing seems to happen."; } take: "You can't take that."; pull: "It won't budge."; push: if(bottle notin blue_pillar && torch notin red_pillar && voodoo_doll notin green_pillar) { "Nothing seems to happen."; } ], after [; switchon: PlayerTo(outside_house); push: PlayerTo(outside_house); ], has concealed switchable; !Butterfly - non intelligent scenery object Object d13_butterfly "Butterfly" d13_clearing with description "A giant colorful buttefly soars above. It's brightly colored: red, green, blue and and yellow.", name "butterfly", before [; !Sorry, you cant catch it take: "You jump up and try to catch the butterfly...to no avail."; ], has light concealed; !Cave houses most keys to get back home Object cave "Cave" with description "It's a dark, cold cave lit by a flickering torch hung on the wall. On the floor of the cave are skeletal remains and a cold, empty fire pit.", name "cave", e_to d13_clearing; !Torch - Fire key and light provider in cave Object torch "Torch" cave with description "It's a strange looking torch, glowing with an eerie green light.", name "torch" "light", has light concealed general; !Pit - container for Bill Gates Voodoo Doll Object fire_pit "fire pit" cave with description "The fire pit is black with burt out ashes. The ashes are unusually lumpy.", name "fire pit" "pit", has static supporter concealed; !ashes hide doll even further Object ashes "ashes" fire_pit with description "It's fire pit ash.", name "ashes" "ash", before [; examine: if(voodoo_doll notin player) { !automatically give doll to player move voodoo_doll to player; "You find a voodoo doll."; } !quit touching my ash take: "You have no use for a bunch of ashes"; ], has static supporter concealed; !It's Mrs. Wilson - only thinner Object skeleton "skeletal remains" cave with description [; if(note in skeleton) { !Change the message dependent on what you're carrying "They appear to be the remains of your next door neighbor. You can see a small note."; } else { !Change the message depending on what you're carrying "They appear to be the remains of your next door neighbor."; } ], name "remains" "skeleton" "skeletal" "dead" "person", has concealed supporter static general; !Plot hint - and potential key out of here Object note "note" skeleton with description "It's a note written by the old woman.", name "note", before [; examine: if(note in player && voodoo_doll in player) { !if you have both essential plot hints, then reveal all "The note reads: With my dying breath I will conquer you all. Your doom shall come. I declare this unto thee...you all shall suffer, the wrath of XP.^^You think you got it figured. That old lady has been controlling Bill Gates from the 13th dimension with this voodoo doll. You'd better get back to your dimension to warn everyone!"; } else { "The note reads: With my dying breath I will conquer you all. Your doom shall come. I declare this unto thee...you all shall suffer, the wrath of XP."; } ], has concealed; !Doll - another plot hint, and comic relief Object voodoo_doll "Voodoo Doll" ashes with description "It's a Bill Gates voodoo doll made of clay.", name "voodoo" "doll" "bill" "gates", before [; examine: if(note in player && voodoo_doll in player) { !if you have both essential plot hints, then reveal all "It's a voodoo doll made of dried clay. It's seen better days. From what you can tell it looks like Bill Gates. It's covered massively with pins and has many burn marks.^^You think you got it figured. That old lady has been controlling Bill Gates from the 13th dimension with this voodoo doll. You'd better get back to your dimension to warn everyone!"; } else { "It's a voodoo doll made of dried clay. It's seen better days. From what you can tell it looks like Bill Gates. It's covered massively with pins and has many burn marks."; } ], has general concealed supporter; !Decorations for the voodoo doll !Yeah, if I got more in depth they would have interacted with the doll Object voodoo_pins "Pins" voodoo_doll with description "Pins stuck into the voodoo doll. They seem to be jammed in there good.", name "pins" "pin", before [; take: "They are all bent and melted. You do see a tear in the doll."; ], has general concealed static; !It's a table in the living room...not very exciting Object table "table" Living_Room with name "table", description "It's a small wooden table covered with a few ^books. There appears to be a small drawer under the table front.", before [; !If you really want to taste it taste: "You get down on all fours and gnaw on the leg. ^Yum...mahogany!"; ], has concealed supporter static general; !Books, SE Books make good decorations Object books "books" table with name "books" "book", description "The books are old and worn. Most of them ^are illegible. The only readable one is ^titled: 'Software Engineering: A Practitioners ^Approach'... you don't want to read ^that one!", before [; !You really dont want to take them...let alone buy them take: "It's not worth your time. No one does that SE stuff anyway...but it wouldn't hurt to browse through them."; ], has concealed general container openable static; !Basic drawer container object !Hides first exciting object...disk Object table_drawer "table drawer" table with name "table drawer" "drawer", description "It's a small table drawer.", with_key small_key, has container concealed openable locked lockable static; !Light providing scenery Object moon "moon" Living_Room with name "moon", description "Gazing into the full moon you have to strange urge to howl.", has light scenery; !non interactive scenery Object window "window" Living_Room with name "window" "windows" "living room window", description "It's a small window. You can't see outside^because it's really dirty.", has scenery; !light providing scenery Object lightbulb "lightbulb" Hallway with name "bulb" "light" "lightbulb", description "It's a lightbulb. Looks like 60 watts.", has light static general scenery concealed; !Opens the container for the first key object Object small_key "small key" books with name "key" "small key", description "It's a small key. Perfect for a table drawer.", before [; taste: "It tastes like metal."; ], has light general; !Key to the 13th dimension Object golden_floppy "floppy disk" table_drawer with name "golden floppy" "floppy" "disc" "disk", description "It's a golden floppy disk. Written on it are the words: ^' Ultimate BSOD '", has light general; !houses the computer to take you to the 13th dimension Object PC "PC" Computer_Room with name "PC" "pc" "computer" "box" "machine", description "It's a computer. All you see is a monitor, keyboard, and floppy drive.", before [; !if the floppy isnt in the drive..it wont start switchon: if(golden_floppy notin floppy_drive) { "It doesn't want to start."; } ], after [; !send player to 13th dimension switchon: PlayerTo(dimension_13); ], when_on [; !send player to 13th dimension PlayerTo(dimension_13); ], has concealed static supporter switchable; !Non interactive scenery object Object Monitor "Monitor" PC with name "Monitor" "monitor" "screen", description "It's a 19 inch Trinitron...pretty snazzy.", has concealed static light; !non interactive scenery object Object key_board "Keyboard" PC with name "keyboard", description "It's a keyboard.", has concealed static; !key acceptor for floppy disk Object floppy_drive "floppy drive" PC with name "drive" "floppy drive" "disk drive" "disc drive", description "It's a standard floppy drive.", before [; !only accept the floppy as a key Receive: if(noun ~= golden_floppy) { "That doesn't seem to fit."; } close: "It doesn't open/close, you put disks in it."; open: "It doesn't open/close, you put disks in it."; ], has concealed container static openable open; !partial plot clue Object papers "papers" Computer_Room with name "papers" "pc papers" "paper", description "The same thing is written repeatedly on each piece of paper: ^^^All work and no play make Bill a dull boy.^^All work and no play make Bill a dull boy.^^All work and no play make Bill a dull boy.^^All work and no play make Bill a dull boy.^^^hmmm...", before [; take: "You really don't need 50 pieces of paper."; ], has concealed static; !start player off here [ Initialise; location = Living_Room; print "Premise^^Ever since you moved into your new home you've never seen your next door neighbor...well have never seen her in the daylight. She was a very old woman who never came out of her house. The only way you knew anyone lived there is each night there was a glow coming from the basement windows. The old lady eventually passed away but on one ever moved into that old house. ^^10 years pass...^^One evening you are out walking your dog and notice that strange glow coming from the empty old house. You decide to go on over and take a look. After taking your dog home you walk on up to the front door. After peeling off a few boards you manage to work you way into the living room.^^"; ]; Include "Grammar.h"; !browsing will be the same as opening (for books) Verb 'browse' * noun -> open; END;