Home
Start a new game
Explore games
Help
Log in or sign up
Log in
Username
Password (
Forgot it?
)
×
New to Playfic?
Full Name
Email
Username
Password
Password (confirm)
Are you sure about this?
Dungeon of Dismemberment
by
Achilles Denver
Played 1,637 times
View game source
(spoilers!)
Download the
.z8 file
Source Code
"The Dungeon of Dismemberment" An object can be examined or unexamined. Resting is an action applying to nothing. Definition: Something is invisible if the player cannot see it. Definition: Something is visible if the player can see it. Section 1 - The Breath of Life A person has a number called max health. A person has a number called present health. A person can be hostile or docile. A person is usually hostile. When play begins: repeat with victim running through people: now the present health of the victim is the max health of the victim. The max health of the player is usually 100. Definition: a person is dead if his present health is less than 1. Definition: a person is alive if his present health is 1 or more. After printing the name of a dead person (this is the I see dead people rule): if the person is dead for at least 1 turn, say "[apostrophe]s dead body" instead. Section 2 - Rules and Kinds Definition: a person is armed if he carries a weapon. Before doing anything: if the present health of the player is less than 1, end the game in death. Check taking something (this is the can't take it with you rule): if the noun is a thing and the holder of a noun is a person (called corpse) begin; if corpse is dead then ignore the can't take people's possessions rule; end if. A weapon is a kind of thing. A projectile is a kind of weapon. A blade is a kind of weapon. A fire arm is a kind of projectile. A bow is a kind of projectile. A knife is a kind of blade. A sword is a kind of blade. A shortsword is a kind of sword. The maximum damage of a shortsword is 25. A longsword is a kind of sword. The maximum damage of a longsword is 45. A stone sword is a kind of sword. The maximum damage of a stone sword is 10. A weapon has a number called maximum damage. The maximum damage of a projectile is usually 50. The maximum damage of a blade is usually 25. Before anyone trying doing anything (this is the dead men tell no tales rule): if the actor is dead, the rule fails. Unsuccessful attempt by anyone trying doing anything (this is the report dead men tell no tales rule): if the person asked is dead, say "Dead men tell no tales. And they usually can't do anything else, either!" instead. Before doing anything except searching or examining to a person (called the corpse) (this is the respect the dead rule): if the corpse is dead, say "Must you do that to [the corpse]? Have a little respect, please." instead. Check searching a person (called corpse) (this is the search a corpse rule): if the corpse is dead, say "You search the [corpse][if the number of things carried by corpse is 0] but find nothing[otherwise] and find [the list of things carried by corpse][end if]." instead. Instead of taking inventory (this is the new inventory listing rule): if the number of things enclosed by the player is 0, say "You don[apostrophe]t seem to have anything at the moment.[line break](Health: [present health of the player])[line break]" instead; say "You are carrying: [line break]"; list the contents of the player, with newlines, indented; say "(Health: [present health of the player])[line break]". Report examining a person (called victim) (this is the check NPC health rule): if the person is not dead, say "(Health: [present health of victim])[line break]". Check examining a dead person (called corpse) (this is the examining a corpse rule): say "[Corpse] is a gruesome sight." instead. Check examining the player (this is the report health rule): say "You [status of the player]. (Health: [the present health of the player])[line break]" instead. To say status of the player: let x be the present health of the player; if x is 100: say "are in perfect health"; otherwise if x is at most 10: say "are near death"; otherwise if x is at most 20: say "are in serious condition"; otherwise if x is at most 30: say "have taken quite a beating"; otherwise if x is at most 60: say "have definitely been better, but you could be worse"; otherwise if x is at most 70: say "are a little beaten up"; otherwise if x is at most 80: say "can almost hide the fact that you have been in a fight"; otherwise if x is at most 90: say "have some scrapes and bruises, but you have looked worse"; otherwise: say "are a little banged up, but still good-looking". Stabbing it with is an action applying to two visible things. Understand "stab [something] with [something]" as stabbing it with. The stabbing it with action has a number called the damage dealt. Setting action variables for an actor stabbing something (called target) with something (called pigsticker): if the target is a person begin; if the pigsticker is a blade begin; change the damage dealt to a random number between 10 and the maximum damage of the second noun; end if; end if. Check stabbing something (called the target) with something (called the pigsticker) (this is the you must have a blade to stab rule): if the player does not carry a blade begin; say "You need a bladed weapon to stab anything."; stop the action; end if. Check stabbing something (called the target) with something (called the pigsticker) (this is the you can only stab with a blade rule): if the second noun is not a blade begin; say "And I suppose you cut your meat with a spoon? Why not try something with a blade?"; stop the action; end if. Check stabbing something (called the target) with something (called the pigsticker) (this is the you can't stab something with itself rule): if the target is the pigsticker begin; say "You try to break the blade so that. . . Wait, you can't stab [the pigsticker] with itself!"; stop the action; end if. Carry out an actor stabbing something (called the target) with something (this is the standard carry out stabbing rule): if the target is a person begin; decrease the present health of the target by the damage dealt; if the target is not the player begin; if the target is docile, change the target to hostile; end if; end if. Report stabbing something (called the target) with something(called the pigsticker) (this is the report stabbing people rule): if the target is a person begin; if the target is dead begin; say "With one final thrust of your [pigsticker], [the target] drops to the ground, dead." instead; end if; say "You stab [the target] with your [pigsticker]. ([The target][apostrophe]s health: [present health of the target])[line break]"; end if. Report stabbing something (called the target) with something(called the pigsticker) (this is the report stabbing non-people rule): if the target is not a person, say "You stab [the target] with your [pigsticker]. Well, I hope that made you feel better. Hopefully stabbing [the target] won[apostrophe]t attract any unwanted attention.". Check someone stabbing something (called the target) with something (called the pigsticker) (this is the others must have a blade to stab rule): if the person asked does not carry a blade begin; say "[The person asked] says 'With what? I don't have a bladed weapon.'"; stop the action; end if. Check someone stabbing something (called the target) with something (called the pigsticker) (this is the others can only stab with a blade rule): if the second noun is not a blade begin; say "[The person asked] says '[The second noun] would need to be some kind of bladed weapon for that to work.'"; stop the action; end if. Check someone stabbing something (called the target) with something (called the pigsticker) (this is the others can't stab something with itself rule): if the target is the pigsticker begin; say "[The person asked] says 'I can hardly stab [the pigsticker] with itself!'"; stop the action; end if. Check someone stabbing something (called the target) with something (called the pigsticker) (this is the other people harikari rule): if the target is the person asked, say "[The person asked] says 'I refuse to commit suicide!'" instead. Report someone stabbing something (called the target) with something(called the pigsticker) (this is the report another stabbing a person rule): if the target is a person begin; if the target is dead begin; say "[The person asked] stabs [the target], who drops to the ground." instead; end if; if the target is not the player begin; say "[The person asked] thrust the [the pigsticker] into [the target]. ([The target][apostrophe]s health: [present health of the target])[line break]"; end if; if the target is the player begin; say "[The person asked] stabs you! (Health: [present health of the player])[line break]"; end if; end if. Report someone stabbing something (called the target) with something(called the pigsticker) (this is the report another stabbing a non-person rule): if the target is not a person, say "In a seemingly random act of violence, [the person asked] stabs [the target].". After someone stabbing something (called the target) with something (called the pigsticker) (this is the stabbed to death rule): if the target is the player begin; if the player is dead begin; say "[The person asked] stabs you with [the pigsticker], and you drop to the ground, dead."; end the game in death; end if; end if; continue the action. Section 1 - Definition, Some Spells, and Table A magic-spell is a kind of backdrop. A magic-spell can be learned or unlearned. A magic-spell is usually learned. Magic Missiles is a magic-spell. It is everywhere. Fireball is a magic-spell. It is everywhere. Pyroblast is a magic-spell. It is everywhere. Pyroblast is unlearned. Table of Spells Spell Output Directed Output Description Magic Missiles "You cast Magic Missiles." "You cast Magic Missiles at [the second noun]." "Not to be confused with parlor tricks, like Magic Cards or Magic Hat. Requires a Sorcerer's Staff or higher to cast." Fireball "You cast Fireball." "You cast Fireball at [the second noun]." "It[apostrophe]s not really a ball... Requires a Sorcerer's Staff or higher to cast." Pyroblast "You cast Pyroblast." "You cast Magic Missiles at [the second noun]." "'Bigger Fireball' wasn[apostrophe]t a creative name." Section 2 - Trapping Non-Allowed References to Spell Objects & Spell-Casting Verb Instead of doing anything when the noun is a magic-spell (this is the pretend the spell is invisible rule): if the current action is casting something: continue the action; otherwise if the current action is casting something at something: continue the action; otherwise if the current action is zapping: continue the action; otherwise: say "[cant-see-any-such]". [This rule handles the case where the player types 'cast X'. When the intended action is "cast", we want a different error message, not "You can't see any such thing," since one can't see spells. However, if word 1 is "cast" and word 2 is the name of a spell, then we're getting the parser error because something later in the input made no sense, so in this case we DO want "You can't see any such thing."] Rule for printing a parser error when the latest parser error is can't see any such thing error (this is the new can't see any such thing rule): let T be indexed text; let T be the player's command; if word number 1 in T is "cast": let W be word number 2 in T; repeat with N running from 1 to the number of rows in the Table of Spells: let S be the spell in row N of the Table of Spells; let SS be the printed name of S; if W is SS: say "[cant-see-any-such]"; stop the action; say "[unknown-spell]"; otherwise: say "[cant-see-any-such]". [This rule handles the case where the player tries to cast a spell (learned or unlearned) at an object that is not in scope or does not exist. Without this rule, Inform would reply, "That's not a verb I recognize," which would be misleading if the spell were known. So we need to trap the first word in the input and look at it. If it's a spell, we need to output a different error message.] Rule for printing a parser error when the latest parser error is not a verb I recognise error (this is the new not a verb I recognise rule): let T be indexed text; let T be the player's command; let W be word number 1 in T; repeat with N running from 1 to the number of rows in the Table of Spells: let S be the [name of the] spell in row N of the Table of Spells; let SS be the printed name of S; if W is SS: say "[cant-see-any-such]"; stop the action; continue the action. Section 3 - New Actions Zapping is an action applying to two things. Understand "[magic-spell] [something]" as zapping. Carry out zapping: try casting the noun at the second noun instead. Casting is an action applying to one thing. Understand "[magic-spell]" and "cast [something]" as casting. Check casting: let found-it be a truth state; let found-it be false; let its-learned be a truth state; let its-learned be false; repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is the noun: now found-it is true; if the noun is learned: now its-learned is true; if found-it is true: if its-learned is false: say "[unlearned-spell]"; stop the action; otherwise: continue the action; otherwise: say "[not-a-spell]"; stop the action. Carry out casting: repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is the noun: say "[output in row N of the Table of Spells][line break]". Casting it at is an action applying to two things. Understand "cast [something] at [something]" as casting it at. Check casting it at: let found-it be a truth state; let found-it be false; let its-learned be a truth state; let its-learned be false; repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is the noun: now found-it is true; if the noun is learned: now its-learned is true; if found-it is true: if its-learned is false: say "[unlearned-spell]"; stop the action; otherwise: continue the action; otherwise: say "[not-a-spell]"; stop the action. Carry out casting it at: repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is the noun: say "[directed output in row N of the Table of Spells][line break]". Section 4 - Supplying Information Spellchecking is an action out of world applying to nothing. Understand "spells" as spellchecking. Carry out spellchecking: let found-one be a truth state; let found-one be false; repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is learned: now found-one is true; if found-one is false: say "[no-spells-learned]"; otherwise: say "You are the master of the following spells:[line break]"; repeat with N running from 1 to the number of rows in the Table of Spells: if the spell in row N of the Table of Spells is learned: say "[spell in row N of the Table of Spells]: "; say "[description in row N of the Table of Spells][line break]". Section 5 - Error Messages To say no-spells-learned: say "You have not learned any spells." To say cant-see-any-such: say "You can't see any such thing." To say unlearned-spell: say "I'm not quite sure what you meant by that." To say not-a-spell: say "[The noun] [if the noun is plural-named]are[otherwise]is[end if] not a spell." To say unknown-spell: say "I don't know that spell." The player carries a shortsword, a cabalist's tome, an adventurer's fieldbook, and a sorcerer's staff. The player is wearing a sorcerer's hat, a sorcerer's shirt, and a sorcerer's leggings. The Entrance is south of the Stone Door."[If the Entrance is unvisited]You are an adventurer on a quest in the mythical land of Chult. The rest of your adventuring party has died on a quest for the SOULMONGER, a mythical object that was threatening the world as you knew it. Now, lost in the deep jungle, you come across a lost dungeon, with ancient inscriptions hinting of legendary treasures sealed within. With nothing else to do, you break open the sealed door and enter. Little do you know of the dangers within…. Welcome, adventurer. Welcome to the Dungeon of Dismemberment. Go north to enter. A complete player's guide, which is suggested reading, is available here: https://docs.google.com/document/d/1OO9izdphz0jrvUP8ojCi9d7-EyHpbeW7tnDXWsLyhxY" The Stone Door is a door. The Stone Door is scenery. The Stone Door is north of The Entrance and south of the Starting Chamber. The description is "It's a large, harmless stone door." The Stone Door is open, lockable, and locked. The Starting Chamber is south of Hallway 1 and north of the Stone Door. "You are in a large, rounded room with mossy stone walls and a cracked stone brick floor. Ancient mosaics adorn the walls, depicting some ancient ruler's life story, but they are too worn to examine. There is a doorway to the north." After going north from the Entrance: now the Stone Door is closed; say "As you enter the room, a stone door slams shut behind you. You're sealed in."; continue the action Hallway 1 is north of the Starting Chamber and south of Encounter Room 1. "It's a hallway. There is a door to the north." Encounter Room 1 is north of Hallway 1 and south of Hallway 2. "You are in a room much like the last one, except without the mosaics. There is a door to the north." The Ancient Gatekeeper is a man in Encounter Room 1. The description of the Ancient Gatekeeper is "This model of sentry construct was retired some 2000 years ago, according to a brochure you once read." The max health of the Ancient Gatekeeper is 75. The present health of the Ancient Gatekeeper is 75. Every Ancient Gatekeeper carries a stone sword. Every Ancient Gatekeeper carries an ancient construct ring. Every turn when the player can see the Ancient Gatekeeper in Encounter Room 1: if the Ancient Gatekeeper is alive begin; decrease the present health of the player by 2; say “The gatekeeper attacks you, dealing 2 damage.†instead; end if; Instead of casting Magic Missiles at the Ancient Gatekeeper: if the Ancient Gatekeeper is a person begin; if the Ancient Gatekeeper is dead begin; say "The construct drops to the ground, dead." instead; remove the Ancient Gatekeeper from play; end if; say "A barrage of magic missiles flies at the construct, doing 10 damage."; decrease the present health of the Ancient Gatekeeper by 10; say "([Ancient Gatekeeper][apostrophe]s health: [present health of the Ancient Gatekeeper])[line break]"; end if. Instead of casting Fireball at the Ancient Gatekeeper: if the Ancient Gatekeeper is a person begin; if the Ancient Gatekeeper is dead begin; say "The construct drops to the ground, dead." instead; remove the Ancient Gatekeeper from play; end if; say "You send a fireball hurtling at the construct, doing 20 damage."; decrease the present health of the Ancient Gatekeeper by 20; say "([Ancient Gatekeeper][apostrophe]s health: [present health of the Ancient Gatekeeper])[line break]"; end if. Instead of going north from Encounter Room 1 when the Ancient Gatekeeper is in Encounter Room 1: if the Ancient Gatekeeper is a person begin; if the Ancient Gatekeeper is dead begin; continue the action; end if; continue the action; say "The construct blocks your way."; end if. Hallway 2 is a room. Hallway 2 is south of Empty Room 1 and north of Encounter Room 1. There is a wire in Hallway 2. The wire can be lost or found. The wire is lost. "You notice some sort of thin wire across the hallway." The wire is scenery. Instead of examining the wire: say “You notice the wire in the hallway and decide to step over it.â€; now the wire is found; continue the action; Instead of going north when in Hallway 2: if wire is lost begin; say “Surprise! Spikes fly from holes in the walls, and you take 5 damage."; decrease the present health of the player by 5; continue the action; end if; if wire is found begin; say “You stepped over the wire, avoiding the trap in the process.â€; continue the action; end if; Empty Room 1 is a room. Empty Room 1 is north of Hallway 2 and southeast of Hallway 3 and southwest of Hallway 5. "More of the same mosaics cover the walls, this time depicting an ancient city. There are two doors in front of you: one leading north-west, and one leading north-east." Hallway 3 is a room. Hallway 3 is northwest of Empty Room 1 and southeast of Empty Room 2 and northeast of Hallway 4. "It's a hallway. There is another hallway branching off to the south-west, and a room to the north-west." Hallway 4 is southwest of Hallway 3 and northeast of Dark Room 1. "It's a hallway. There's a dark room to the south-west." Dark Room 1 is a room. Dark Room 1 is southwest of Hallway 4. "It's a dark room, with what you make out to be an empty firepit in the center. It looks like it is full of wood." There is a slate chest in Dark Room 1. There is a longsword in the slate chest. The description of the longsword is "Longer than a shortsword." The slate chest is locked. The slate key unlocks the slate chest. The firepit is scenery in Dark Room 1. The firepit is unlit. The firepit can be lit. Instead of examining the firepit: if the firepit is unlit begin; say "It's a firepit. Try lighting it!"; continue the action; end if; if the firepit is lit begin; say "It's a blazing magical fire."; continue the action; end if. Instead of casting Fireball at the firepit: now the firepit is lit; say "There is a great whoosh, and the fire is lit. You find a slate key just in front of the fire and pick it up."; now the player has a slate key; Hallway 5 is a room. Hallway 5 is southwest of Encounter Room 2. "It's a hallway, with a room towards the northeast." Encounter Room 2 is a room. Encounter Room 2 is northeast of Hallway 5. Beetle 1 is a man in Encounter Room 2. Beetle 2 is a man in Encounter Room 2. Beetle 3 is a man in Encounter Room 2. Beetle 4 is a man in Encounter Room 2. “A swarm of beetles emerges from the shadows. (Beetle 4 also exists.)†The description of Beetle 1 is "It seems like a nice hat..." The max health of Beetle 1 is 5. The present health of Beetle 1 is 5. The max health of Beetle 2 is 5. The present health of Beetle 2 is 5. The max health of Beetle 3 is 5. The present health of Beetle 3 is 5. The max health of Beetle 4 is 5. The present health of Beetle 4 is 5. Beetle 1 carries a piece of chitinous plating. Beetle 2 carries a shard of chitinous plating. Beetle 3 carries a fragment of chitinous plating. Beetle 4 carries a portion of chitinous plating. Instead of going northeast from Encounter Room 2 when the Beetle 1 is in Encounter Room 1: if Beetle 1 is a person begin; if Beetle 1 is dead begin; if Beetle 2 is dead begin; if Beetle 3 is dead begin; if Beetle 4 is dead begin; continue the action; end if; end if; end if; end if; say "The swarm of beetles blocks your way."; stop the action; end if. Instead of casting Magic Missiles at Beetle 1: if Beetle 1 is a person begin; if Beetle 1 is dead begin; say "Beetle 1 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 1, doing 10 damage."; decrease the present health of Beetle 1 by 10; say "([Beetle 1][apostrophe]s health: [present health of Beetle 1])[line break]"; end if. Instead of casting Fireball at Beetle 1: if Beetle 1 is a person begin; if Beetle 1 is dead begin; say “Beetle 1 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 1, doing 20 damage."; decrease the present health of Beetle 1 by 20; say "([Beetle 1][apostrophe]s health: [present health of Beetle 1])[line break]"; end if. Instead of casting Magic Missiles at Beetle 2: if Beetle 2 is a person begin; if Beetle 2 is dead begin; say "Beetle 2 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 2, doing 10 damage."; decrease the present health of Beetle 2 by 10; say "([Beetle 2][apostrophe]s health: [present health of Beetle 2])[line break]"; end if. Instead of casting Fireball at Beetle 2: if Beetle 2 is a person begin; if Beetle 2 is dead begin; say “Beetle 2 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 2, doing 20 damage."; decrease the present health of Beetle 2 by 20; say "([Beetle 2][apostrophe]s health: [present health of Beetle 2])[line break]"; end if. Instead of casting Magic Missiles at Beetle 3: if Beetle 3 is a person begin; if Beetle 3 is dead begin; say "Beetle 3 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 3, doing 10 damage."; decrease the present health of Beetle 3 by 10; say "([Beetle 3][apostrophe]s health: [present health of Beetle 3])[line break]"; end if. Instead of casting Fireball at Beetle 3: if Beetle 3 is a person begin; if Beetle 3 is dead begin; say “Beetle 3 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 3, doing 20 damage."; decrease the present health of Beetle 3 by 20; say "([Beetle 3][apostrophe]s health: [present health of Beetle 3])[line break]"; end if. Instead of casting Magic Missiles at Beetle 4: if Beetle 4 is a person begin; if Beetle 4 is dead begin; say "Beetle 4 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 4, doing 10 damage."; decrease the present health of Beetle 4 by 10; say "([Beetle 4][apostrophe]s health: [present health of Beetle 4])[line break]"; end if. Instead of casting Fireball at Beetle 4: if Beetle 4 is a person begin; if Beetle 4 is dead begin; say “Beetle 4 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 4, doing 20 damage."; decrease the present health of Beetle 4 by 20; say "([Beetle 4][apostrophe]s health: [present health of Beetle 4])[line break]"; end if. Every turn when the player can see Beetle 1 in Encounter Room 2: if Beetle 1 is alive begin; decrease the present health of the player by 1; say “Beetle 1 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 2 in Encounter Room 2: if Beetle 2 is alive begin; decrease the present health of the player by 1; say “Beetle 2 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 3 in Encounter Room 2: if Beetle 3 is alive begin; decrease the present health of the player by 1; say “Beetle 3 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 4 in Encounter Room 2: if Beetle 4 is alive begin; decrease the present health of the player by 1; say “Beetle 4 attacks you, dealing 1 damage.†instead; end if; Hallway 6 is a room. Hallway 6 is southeast of Rest Area 1 and northwest of Encounter Room 2. There is a slot in Hallway 6. The slot can be lost or found. The slot is lost. "You notice some slots in the walls of the hallway." The slot is scenery. Understand "examine slots" as a mistake ("Try 'examine slot'.") Instead of examining the slot: say “You notice the slots in the walls and decide to crawl under them.â€; now the slot are found; continue the action; Instead of going northwest when in Hallway 2: if slot is lost begin; say “Surprise! Blades swing from the slots in the walls, and you take 10 damage."; decrease the present health of the player by 10; continue the action; end if; if slot is found begin; say “You crawled along the floor, avoiding the trap in the process.â€; continue the action; end if; Resting to is an action applying to one thing. Understand "rest" as resting. Instead of resting when not in Rest Area 1: if the player is in Rest Area 2, continue the action; if the player is not in Rest Area 2, say "You can't rest here."; Instead of resting when not in Rest Area 2: if the player is in Rest Area 1, continue the action; if the player is not in Rest Area 1, say "You can't rest here."; Rest Area 1 is a room. There is a golden fire in the room. The description of Rest Area 1 is "There is a blazing golden fire in the middle of this room. You feel strangely determined..." The golden fire is scenery. Instead of resting when in Rest Area 1: let x be the present health of the player; change the present health of the player to the present health of the player + (100 - x); say "You lay down at the fire and rest. HP fully restored."; Boss Room 1 is a lighted room. Boss Room 1 is north of Rest Area. Giant Slime is a man in Boss Room 1. Small Slime 1 is a man in Boss Room 1. Small Slime 2 is a man in Boss Room 1. Small Slime 1 can be found or lost. Small Slime 1 is lost. Small Slime 2 can be found or lost. Small Slime 2 is lost. The max health of Giant Slime is 60. The max health of Small Slime 1 is 20. The max health of Small Slime 2 is 20. The present health of Giant Slime is 60. The present health of Small Slime 1 is 20. The present health of Small Slime 2 is 20. The trapdoor is a door. The trapdoor is below Boss Room 1 and above Floor 2 Starting Chamber. The trapdoor can be lost or found. The trapdoor is lost. Floor 2 Starting Chamber is a room. There is a lit torch in the room. "There is a room to the south." Every turn when the player can see the Giant Slime in Boss Room 1: if the Giant Slime is alive begin; decrease the present health of the player by 3; say “The Giant Slime attacks! You take 3 damage.†instead; end if; if the Giant Slime is dead begin; now Small Slime 1 is found; now Small Slime 2 is found; remove Giant Slime from play; say "The Giant Slime splits into two!" instead; end if; Every turn when the player can see the Small Slime 1 in Boss Room 1: if the Small Slime 1 is alive begin; decrease the present health of the player by 2; say "One of the smaller slimes attacks! You take 2 damage." instead; end if; Every turn when the player can see the Small Slime 2 in Boss Room 1: if the Small Slime 2 is alive begin; decrease the present health of the player by 2; say "One of the smaller slimes attacks! You take 2 damage." instead; end if; Instead of casting Magic Missiles at Giant Slime: if Giant Slime is a person begin; if Giant Slime is dead begin; say “Giant Slime collapses, dead." instead; end if; say "A barrage of magic missiles flies at Giant Slime, doing 10 damage."; decrease the present health of Giant Slime by 10; say "([Giant Slime][apostrophe]s health: [present health of Giant Slime])[line break]"; end if. Instead of casting Fireball at Giant Slime: if Giant Slime is a person begin; if Giant Slime is dead begin; say “Giant Slime collapses, dead." instead; end if; say "You send a fireball hurtling at Giant Slime, doing 20 damage."; decrease the present health of Giant Slime by 20; say "([Giant Slime][apostrophe]s health: [present health of Giant Slime])[line break]"; end if. Instead of casting Magic Missiles at Small Slime 1: if Small Slime 1 is a person begin; if Small Slime 1 is dead begin; say “Small Slime 1 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Small Slime 1, doing 10 damage."; decrease the present health of Small Slime 1 by 10; say "([Small Slime 1][apostrophe]s health: [present health of Small Slime 1])[line break]"; end if. Instead of casting Fireball at Small Slime 1: if Small Slime 1 is a person begin; if Small Slime 1 is dead begin; say “ Small Slime 1 collapses, dead." instead; end if; say "You send a fireball hurtling at Small Slime 1, doing 20 damage."; decrease the present health of Small Slime 1 by 20; say "([Small Slime 1][apostrophe]s health: [present health of Small Slime 1])[line break]"; end if. Instead of casting Magic Missiles at Small Slime 2: if Small Slime 2 is a person begin; if Small Slime 2 is dead begin; say “Small Slime 2 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Small Slime 2, doing 10 damage."; decrease the present health of Small Slime 2 by 10; say "([Small Slime 2][apostrophe]s health: [present health of Small Slime 2])[line break]"; end if. Instead of casting Fireball at Small Slime 2: if Small Slime 2 is a person begin; if Small Slime 2 is dead begin; say “ Small Slime 2 collapses, dead." instead; end if; say "You send a fireball hurtling at Small Slime 2, doing 20 damage."; decrease the present health of Small Slime 2 by 20; say "([Small Slime 2][apostrophe]s health: [present health of Small Slime 2])[line break]"; end if. Instead of going down from Boss Room 1: if Giant Slime is dead begin; if Small Slime 1 is dead begin; if Small Slime 2 is dead begin; continue the action; end if; end if; end if; if Small Slime 1 is alive begin; if Small Slime 2 is alive begin; say "The slime blocks your way."; stop the action; end if; end if; Every turn when the player is in Boss Room 1: if Giant Slime is dead begin; if Small Slime 1 is dead begin; if Small Slime 2 is dead begin; now the trapdoor is found; say "A trapdoor appears!"; end if; end if; end if; Hub is a room. Hub is south of Floor 2 Starting Chamber. The Statue is a man in Hub. "This is a large room, with 4 doorways, leading to the south, southwest, southeast, and east ends of the room. The south door is red and open, the southwest door is blue and locked, the southeast door is green and locked, and the west door is white and open. The statue has a sign saying 'Give me the three disks to continue.'" The Red Door is a door. The Red Door is lockable, locked and open. The Blue Door is a door. The Blue Door is lockable, locked and closed. The Green Door is a door. The Green Door is lockable, locked and closed. The Red Door is south of Hub and north of Encounter Room 3. The Blue Door is southwest of Hub and northeast of Encounter Room 4. The Green Door is southeast of Hub and northwest of Encounter Room 5. The Boss Door is a door. The Boss Door is lockable, locked and closed. The Boss Door is east of Hub and west of Boss Room 2. The Secret Door is a door. The Secret Door is lockable, locked, and closed. The Secret Door can be lost or found. The Secret Door is lost. The secret is below Hub and above Room of Roasting. The White Door is a door. The White Door is lockable, locked, and open. The White Door is west of Hub and east of Rest Area 2. Instead of examining The Statue: if The Statue is a person begin; now the Secret Door is found; now the Secret Door is unlocked; now the Secret Door is open; say "While examining the statue, you notice a trapdoor behind it."; continue the action; end if; Room of Roasting is a room. There is a metal chest in Room of Roasting. There is a scroll in the metal chest. The chest is scenery. Instead of taking the scroll: if The Statue is a person begin; now Pyroblast is learned; say "You have learned Pyroblast! This spell is a better Fireball, dealing 25 damage instead of 20."; end if; Encounter Room 3 is a room. Encounter Room 3 is south of the Red Door. Beetle 5 is a man in Encounter Room 3. Beetle 6 is a man in Encounter Room 3. Beetle 7 is a man in Encounter Room 3. Beetle 8 is a man in Encounter Room 3. “A swarm of beetles emerges from the shadows. (Beetle 8 also exists.)†The description of Beetle 5 is "It seems like a nice hat..." The max health of Beetle 5 is 5. The present health of Beetle 5 is 5. The max health of Beetle 6 is 5. The present health of Beetle 6 is 5. The max health of Beetle 7 is 5. The present health of Beetle 7 is 5. The max health of Beetle 8 is 5. The present health of Beetle 8 is 5. There is a wooden chest in Encounter Room 3. The wooden chest is locked. The wooden key unlocks the wooden chest. There is a ruby disk in the wooden chest. The description of the ruby disk is "A fiery red. It reminds you of that incident once with the torch and the oiled hair." The wooden chest is scenery. Key Room is a room. There is a stone key in Key Room. There is a wooden key in Key Room. There is a silver key in Key Room. Instead of casting Magic Missiles at Beetle 5: if Beetle 5 is a person begin; if Beetle 5 is dead begin; say "Beetle 5 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 5, doing 10 damage."; decrease the present health of Beetle 5 by 10; say "([Beetle 5][apostrophe]s health: [present health of Beetle 5])[line break]"; end if. Instead of casting Fireball at Beetle 5: if Beetle 5 is a person begin; if Beetle 5 is dead begin; say “Beetle 5 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 5, doing 20 damage."; decrease the present health of Beetle 5 by 20; say "([Beetle 5][apostrophe]s health: [present health of Beetle 5])[line break]"; end if. Instead of casting Pyroblast at Beetle 5: if Pyroblast is unlearned begin; say "You haven't learned this spell yet..."; stop the action; end if; if Beetle 5 is a person begin; if Beetle 5 is dead begin; say “Beetle 5 collapses, dead." instead; end if; say "You send a massive plume of fire towards Beetle 5, doing 25 damage."; decrease the present health of Beetle 5 by 25; say "([Beetle 5][apostrophe]s health: [present health of Beetle 5])[line break]"; end if. Instead of casting Magic Missiles at Beetle 6: if Beetle 6 is a person begin; if Beetle 6 is dead begin; say "Beetle 6 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 6, doing 10 damage."; decrease the present health of Beetle 6 by 10; say "([Beetle 6][apostrophe]s health: [present health of Beetle 6])[line break]"; end if. Instead of casting Fireball at Beetle 6: if Beetle 6 is a person begin; if Beetle 6 is dead begin; say “Beetle 6 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 6, doing 20 damage."; decrease the present health of Beetle 6 by 20; say "([Beetle 6][apostrophe]s health: [present health of Beetle 6])[line break]"; end if. Instead of casting Pyroblast at Beetle 6: if Pyroblast is unlearned begin; say "You haven't learned this spell yet..."; stop the action; end if; if Beetle 6 is a person begin; if Beetle 6 is dead begin; say “Beetle 6 collapses, dead." instead; end if; say "You send a massive plume of fire towards Beetle 6, doing 25 damage."; decrease the present health of Beetle 6 by 25; say "([Beetle 6][apostrophe]s health: [present health of Beetle 6])[line break]"; end if. Instead of casting Magic Missiles at Beetle 7: if Beetle 7 is a person begin; if Beetle 7 is dead begin; say "Beetle 7 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 7, doing 10 damage."; decrease the present health of Beetle 7 by 10; say "([Beetle 7][apostrophe]s health: [present health of Beetle 7])[line break]"; end if. Instead of casting Fireball at Beetle 7: if Beetle 7 is a person begin; if Beetle 7 is dead begin; say “Beetle 7 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 7, doing 20 damage."; decrease the present health of Beetle 7 by 20; say "([Beetle 7][apostrophe]s health: [present health of Beetle 7])[line break]"; end if. Instead of casting Pyroblast at Beetle 7: if Pyroblast is unlearned begin; say "You haven't learned this spell yet..."; stop the action; end if; if Beetle 7 is a person begin; if Beetle 7 is dead begin; say “Beetle 7 collapses, dead." instead; end if; say "You send a massive plume of fire towards Beetle 7, doing 25 damage."; decrease the present health of Beetle 7 by 25; say "([Beetle 7][apostrophe]s health: [present health of Beetle 7])[line break]"; end if. Instead of casting Magic Missiles at Beetle 8: if Beetle 8 is a person begin; if Beetle 8 is dead begin; say "Beetle 8 collapses, dead." instead; end if; say "A barrage of magic missiles flies at Beetle 8, doing 10 damage."; decrease the present health of Beetle 8 by 10; say "([Beetle 8][apostrophe]s health: [present health of Beetle 8])[line break]"; end if. Instead of casting Fireball at Beetle 8: if Beetle 8 is a person begin; if Beetle 8 is dead begin; say “Beetle 8 collapses, dead." instead; end if; say "You send a fireball hurtling at Beetle 8, doing 20 damage."; decrease the present health of Beetle 8 by 20; say "([Beetle 8][apostrophe]s health: [present health of Beetle 8])[line break]"; end if. Instead of casting Pyroblast at Beetle 8: if Pyroblast is unlearned begin; say "You haven't learned this spell yet..."; stop the action; end if; if Beetle 8 is a person begin; if Beetle 8 is dead begin; say “Beetle 8 collapses, dead." instead; end if; say "You send a massive plume of fire towards Beetle 8, doing 25 damage."; decrease the present health of Beetle 8 by 25; say "([Beetle 8][apostrophe]s health: [present health of Beetle 8])[line break]"; end if. Every turn when the player can see Beetle 5 in Encounter Room 3: if Beetle 5 is alive begin; decrease the present health of the player by 1; say “Beetle 5 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 6 in Encounter Room 3: if Beetle 6 is alive begin; decrease the present health of the player by 1; say “Beetle 6 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 7 in Encounter Room 3: if Beetle 7 is alive begin; decrease the present health of the player by 1; say “Beetle 7 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see Beetle 8 in Encounter Room 3: if Beetle 8 is alive begin; decrease the present health of the player by 1; say “Beetle 8 attacks you, dealing 1 damage.†instead; end if; Every turn when the player can see the wooden chest in Encounter Room 3: if Beetle 5 is dead begin; if Beetle 6 is dead begin; if Beetle 7 is dead begin; if Beetle 8 is dead begin; move the wooden key to Encounter Room 3; say "A wooden key appears in front of you."; end if; end if; end if; end if; Instead of giving the ruby disk to The Statue: if The Statue is a person begin; now the Blue Door is unlocked; now the Blue Door is open; say "The Blue Door disappears in a shimmer of blue light, revealing a room behind it."; continue the action; end if; Encounter Room 4 is a room. The Panther is a man in Encounter Room 4. "A panther with glowing yellow eyes turns and snarls at you." The description of The Panther is "Bad kitty! Bad!" The max health of the Panther is 60. The present health of the Panther is 60. There is a stone chest in Encounter Room 4. The stone chest is lockable and locked. The stone chest contains a sapphire disk. The stone key unlocks the stone chest. The description of the sapphire disk is “Blue is the colour of the sea, the sky, and the moonshine back at the Waterdeep tavern you frequent.†The stone chest is scenery. Instead of casting Magic Missiles at the Panther: if the Panther is a person begin; if the Panther is dead begin; say "The Panther collapses, dead." instead; end if; say "A barrage of magic missiles flies at the Panther, doing 10 damage."; decrease the present health of the Panther by 10; say "([The Panther][apostrophe]s health: [present health of the Panther])[line break]"; end if. Instead of casting Fireball at the Panther: if the Panther is a person begin; if the Panther is dead begin; say “The Panther collapses, dead." instead; end if; say "You send a fireball hurtling at the Panther, doing 20 damage."; decrease the present health of the Panther by 20; say "([The Panther][apostrophe]s health: [present health of the Panther])[line break]"; end if. Instead of casting Pyroblast at the Panther: if the Panther is a person begin; if the Panther is dead begin; say “The Panther collapses, dead." instead; end if; say "You send a massive plume of fire towards the Panther, doing 25 damage."; decrease the present health of the Panther by 25; say "([The Panther][apostrophe]s health: [present health of the Panther])[line break]"; end if. Every turn when the player can see The Panther in Encounter Room 4: if The Panther is alive begin; decrease the present health of the player by 3; say “The panther swipes at you, dealing 3 damage.†instead; end if; Every turn when the player can see the Panther in Encounter Room 4: if the Panther is dead begin; move the stone key to Encounter Room 4; say "A stone key appears in front of you."; end if; Instead of giving the sapphire disk to The Statue: if The Statue is a person begin; now the Green Door is unlocked; now the Green Door is open; say "With a loud BOOM! and a flash of light the Green Door disappears, showing another room behind it."; continue the action; end if; Encounter Room 5 is a room. "This room has two chests: one large, golden one that sits right in the middle, and a smaller silver one in the far corner." Gold Chest is a man in Encounter Room 5. The description of Gold Chest is "I wonder what's inside?". The max health of Gold Chest is 40. The present health of Gold Chest is 40. Gold Chest is docile. There is a silver chest in Encounter Room 5. The silver chest is lockable and locked. The silver key unlocks the silver chest. The emerald disk is in the silver chest. The description of the emerald disk is "A bright, verdant green. The shape seems familiar..." The silver chest is scenery. Instead of opening Gold Chest: now Gold Chest is hostile; decrease the present health of the player by 4; say "The gold chest wasn't really a chest! It attacks you for 4 damage."; Every turn when the player can see Gold Chest in Encounter Room 5: if Gold Chest is dead begin; move the silver key to Encounter Room 5; say "A silver key appears in front of you."; end if; Every turn when the player can see the silver chest in Encounter Room 5: if Gold Chest is hostile begin; decrease the present health of the player by 4; say "The chest attacks! You take 4 damage." instead; end if; Instead of casting Magic Missiles at Gold Chest: if Gold Chest is a person begin; if Gold Chest is dead begin; say "Gold Chest collapses, dead." instead; end if; say "A barrage of magic missiles flies at Gold Chest, doing 10 damage."; decrease the present health of Gold Chest by 10; say "([Gold Chest][apostrophe]s health: [present health of Gold Chest])[line break]"; end if. Instead of casting Fireball at Gold Chest: if Gold Chest is a person begin; if Gold Chest is dead begin; say “Gold Chest collapses, dead." instead; end if; say "You send a fireball hurtling at the Gold Chest, doing 20 damage."; decrease the present health of Gold Chest by 20; say "([Gold Chest][apostrophe]s health: [present health of Gold Chest])[line break]"; end if. Instead of casting Pyroblast at Gold Chest: if Gold Chest is a person begin; if Gold Chest is dead begin; say “Gold Chest collapses, dead." instead; end if; say "You send a massive plume of fire towards the Gold Chest, doing 25 damage."; decrease the present health of Gold Chest by 25; say "([Gold Chest][apostrophe]s health: [present health of Gold Chest])[line break]"; end if. Instead of giving the emerald disk to The Statue: if The Statue is a person begin; now the Boss Door is unlocked; now the Boss Door is open; say "A skull and crossbones appears on the east wall, and with a shimmer of light, a door appears leading to the east."; continue the action; end if; Rest Area 2 is a room. There is a silver fire in the room. The description of Rest Area 2 is "There is a blazing golden fire in the middle of this room. You feel as if the end is near..." The silver fire is scenery. Instead of resting when in Rest Area 2: let x be the present health of the player; change the present health of the player to the present health of the player + (100 - x); say "You lay down at the fire and rest. HP fully restored."; Boss Room 2 is a room. There is a pile of bones in Boss Room 2. There is a stick in Boss Room 2. The gold door is a door. The gold door is lockable, locked and open. The gold door is south of Boss Room 2 and north of Ending Room. The pile of bones is scenery. The stick is scenery. Boss Room 2A is a room. Skeleton King is a man in Boss Room 2A. Skeleton King is wearing a robe. The max health of Skeleton King is 100. The present health of Skeleton King is 100. Skeleton King is docile. Instead of going south in Boss Room 2: if Skeleton King is dead begin; continue the action; end if; if Skeleton King is alive begin; now the gold door is closed; now the gold door is locked; move Skeleton King to Boss Room 2; remove the pile of bones from play; remove the stick from play; now Skeleton King is hostile; say "As you try to leave, the gold door swings shut. You hear a clacking sort of sound, and turn around to the bones reforming into a giant skeleton, somehow wearing a beautiful purple robe. The skeleton king looks at you menacingly."; end if; Instead of casting Magic Missiles at Skeleton King: now Skeleton King is hostile; if Skeleton King is a person begin; if Skeleton King is dead begin; say "The skeleton king collapses back into a pile of bones." instead; end if; say "A barrage of magic missiles flies at Skeleton King, doing 10 damage."; decrease the present health of Skeleton King by 10; say "([Skeleton King][apostrophe]s health: [present health of Skeleton King])[line break]"; end if. Instead of casting Fireball at Skeleton King: now Skeleton King is hostile; if Skeleton King is a person begin; if Skeleton King is dead begin; say “The skeleton king collapses back into a pile of bones." instead; end if; say "You send a fireball hurtling at the Skeleton King, doing 20 damage."; decrease the present health of Skeleton King by 20; say "([Skeleton King][apostrophe]s health: [present health of Skeleton King])[line break]"; end if. Instead of casting Pyroblast at Skeleton King: now Skeleton King is hostile; if Skeleton King is a person begin; if Skeleton King is dead begin; say “The skeleton king collapses into a pile of bones." instead; end if; say "You send a massive plume of fire towards the Skeleton King, doing 25 damage."; decrease the present health of Gold Chest by 25; say "([Skeleton King][apostrophe]s health: [present health of Skeleton King])[line break]"; end if. Instead of stabbing Skeleton King with [pigsticker]: now Skeleton King is hostile; continue the action; Every turn when Skeleton King is hostile: if Skeleton King is a person begin; if Skeleton King is alive begin; decrease the present health of the player by 8; say "The Skeleton King swings at you with its sword, dealing 8 damage."; end if; end if; Talking to is an action applying to one visible thing. Understand "talk to [someone]" as talking to. Instead of talking to Skeleton King: if Skeleton King is hostile begin; say "[one of] 'You tell the Skeleton King that you don't want to fight him. He gives you as confused a look as is possible when one's face is made out of bones.' [paragraph break] 'An adventurer who does not wish to fight? A rare occurrence, to be sure. No matter. You will die just like the others.' [or] 'You insist that you don't want to fight him.' [paragraph break] 'You insist, hm? Such a naive creature. Killing you would be an act of mercy.' [or] 'You tell him about your family, while trying not to be dismembered. He perks up slightly (or so you think).' [paragraph break] 'Family. Ah. I remember my family. They are sealed away in some tomb somewhere deep in the jungle, where I will never see them again. Such lovely people, too... He seems to remember something, and his head snaps backwards in reckoning.' [or] 'You try to convince him that you shouldn't be fighting (yet again). This time, he seems to care significantly about what you have to say.' [paragraph break] 'Perhaps, then, human, I might allow you to continue...' [or] 'Encouraged by his positive response, you continue on about family and love and mercy. He gives you what you think is a look of annoyance.' [paragraph break] 'Fine, human. Go. I will not harm you any further.' [stopping]"; now Skeleton King is docile; end if; if Skeleton King is docile begin; say "Go on, then. What more do you have to do here?"; end if; Ending Room is a room. There is a parchment in Ending Room. Every turn when the player can see the parchment in Ending Room: if Skeleton King is dead begin; say "You have reached the third floor. However, the developers haven't coded this far yet, so you win... for now..."; end the game in victory; end if; if Skeleton King is alive begin; say "Hmm, you seem to have a bit of compassion somewhere inside. You've unlocked the special ending! [line break]"; say " Dungeon of Dismemberment[line break]"; say " O[line break]"; say " l l[line break]"; say " <=========>[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " l l l l[line break]"; say " \\//[line break]"; say " v[line break]"; say " Well Done![line break]"; say "(pls appreciate this took an hour to figure out)"; end if; end the game in victory;