/ Murdac by Jonathan R. Partington / / This game (c) Copyright J. R. Partington, but freely distributable. / / To quote the author: / / "Personally, I am happy for people to convert the games for any system / they like, as long as they give due acknowledgements (and don't / attempt to make any money out of them without consulting me first!)" / / Graham Nelson and Adam Atkinson would also like to thank Topologika / Software for handing publication rights for this game back to the / author at the end of 1999, enabling him to make the game available / this way. / / INITIAL PART OF DATABASE / !POSSESSIONS START PLAYER !POSSESSIONS PATH4 WOOD !POSSESSIONS PATH5 KEY !POSSESSIONS WALL1 OGRE !POSSESSIONS WALL3 SHAWM !POSSESSIONS FRANKRM MONSTER BED !POSSESSIONS ALTUNIV BREAD !POSSESSIONS BLACKEND MYRRH !POSSESSIONS CELLAR PIGEON !POSSESSIONS SENTRYS CENTAUR !POSSESSIONS SECRETCH BOWL !POSSESSIONS XROADS WAX !POSSESSIONS BEND1 BEADS !POSSESSIONS MANTROOM MANTICORE !POSSESSIONS KEEP KEEPER !POSSESSIONS SLIMERM TOAD !POSSESSIONS MILLROOM MILLET !POSSESSIONS BEACH0 DODO !POSSESSIONS SENTRYN SCENT !POSSESSIONS COBROOM WIG !POSSESSIONS ERBROOM INGOT !POSSESSIONS CAGE LION !POSSESSIONS POLTROOM POLTERGEIST !POSSESSIONS PLATFORM PERIDOT !POSSESSIONS PRISON2 GOBLIN !POSSESSIONS PRISON1 TROLL !POSSESSIONS ISLE7 CANNIBAL MISSIONARY CAULDRON !PROP START LIGHT !PROP PATH1 LIGHT !PROP PATH2 LIGHT !PROP PATH3 LIGHT !PROP PATH4 LIGHT !PROP PATH5 LIGHT !PROP WALL1 LIGHT !PROP WALL2 LIGHT !PROP WALL3 LIGHT !PROP GRAVE LIGHT !PROP LAKE LIGHT WATERY !PROP SANDPIT LIGHT !PROP BEACH0 LIGHT WATERY !PROP BEACH1 LIGHT WATERY !PROP BEACH2 LIGHT WATERY !PROP BEACH3 LIGHT WATERY !PROP ALTUNIV DISORIENT !PROP BLACK1 DISORIENT !PROP BLACK2 VISITED DISORIENT !PROP BLACK3 VISITED DISORIENT !PROP BLACK4 VISITED DISORIENT !PROP BLACK5 VISITED DISORIENT !PROP BLACK6 VISITED DISORIENT !PROP BLACK7 VISITED DISORIENT !PROP BLACK8 VISITED DISORIENT !PROP BLACK9 VISITED DISORIENT !PROP BLACK10 VISITED DISORIENT !PROP POOLRM WATERY !PROP GEYSER WATERY !PROP HILL1 LIGHT !PROP HILL2 LIGHT !PROP ERBROOM LIGHT !PROP CAUSEWAY LIGHT WATERY !PROP ISLE1 LIGHT WATERY !PROP ISLE2 LIGHT WATERY !PROP ISLE3 LIGHT WATERY !PROP ISLE4 LIGHT WATERY !PROP ISLE5 LIGHT WATERY !PROP ISLE6 LIGHT WATERY !PROP ISLE7 LIGHT !PROP LAKE2 LIGHT WATERY !PROP KEEP VISITED !PROP POLTROOM DISORIENT !PROP PLATFORM DISORIENT !PROP HOUSE1 DISORIENT !PROP OGRE NOTAKE ANIMATE !PROP MONSTER NOTAKE ANIMATE !PROP CENTAUR NOTAKE ANIMATE !PROP PIGEON NOTAKE ANIMATE !PROP KEEPER NOTAKE LIGHT ANIMATE !PROP MANTICORE NOTAKE ANIMATE !PROP LION NOTAKE ANIMATE !PROP WIZARD NOTAKE ANIMATE !PROP TOAD NOTAKE ANIMATE !PROP BED NOTAKE !PROP DAUGHTER NOTAKE ANIMATE !PROP TROLL NOTAKE ANIMATE !PROP POLTERGEIST NOTAKE !PROP GOBLIN NOTAKE ANIMATE !PROP PIN NOTAKE !PROP CANNIBAL NOTAKE ANIMATE !PROP MISSIONARY NOTAKE ANIMATE !PROP CAULDRON NOTAKE !VAR STRENGTH 7 / Can carry 7 objects, !VAR OBJHELD 0 / and is not carrying any initially. !VAR NAMEVAR 10 / no ripoff !END / BASIC DATABASE / -------------- / / PRELIMINARY SECTION / ------------------- / !POSTCOMMAND POSTPROG !WELCOME WELCPROG / / Program-defined properties. / !PROPERTY LIGHT 0 / Light source (objects and rooms). !PROPERTY INVIS 1 / Invisibility (objects only). !PROPERTY HIDING 2 / Hides objects it holds (objects only). !PROPERTY VISITED 1 / Visited (rooms only). !PROPERTY DISORIENT 2 / "Disorientation" property (rooms only). !PROPERTY WATERY 3 / rooms with water !PROPERTY TREASURE 4 / objects !PROPERTY ANIMATE 5 / objects / / User-defined properties. / !PROPERTY NOTAKE 3 / Cannot be taken (objects only). / / Directions. / !DIRECTION B / Dummy direction to make GO BACK work. !DIRECTION D !DIRECTION E !DIRECTION N !DIRECTION NE !DIRECTION NW !DIRECTION S !DIRECTION SE !DIRECTION SW !DIRECTION U !DIRECTION W !DIRECTION IN !DIRECTION OUT / / Special meanings of words. / !SPECIAL ALLSPEC / To detect the word "ALL". !SPECIAL INVSPEC / To detect the word "INVENTORY". !SPECIAL DOORSPEC !SPECIAL ARASPEC !SPECIAL GAMSPEC !SPECIAL GURSPEC !SPECIAL PHASPEC !SPECIAL SCASPEC !SPECIAL WATERSPEC !SPECIAL OLDMANSPEC !SPECIAL STONESPEC !SPECIAL MAGSPEC / magic words - used for SAY / / Variables. / / The four workspace variables must appear first. !VARIABLE VAR0 !VARIABLE VAR1 !VARIABLE VAR2 !VARIABLE VAR3 / Now other variables. !VARIABLE OBJHELD !VARIABLE STRENGTH !VARIABLE NAMEVAR !VARIABLE JOB !VARIABLE TURNS !VARIABLE OGRECT !VARIABLE LASTRM / last distinct room !VARIABLE OLDMANVAR !VARIABLE VISNO / visions !VARIABLE BEACHCT !VARIABLE POLTCT / how long in room !VARIABLE POLTVAR / safe direction !VARIABLE GOBVAR / aaron word / !VARIABLE TERSEVAR / for BRIEF etc / !TEXTVAR / no use / / OBJECTS SECTION / --------------- / / Player must be first object. !OBJECT PLAYER HOLDING HOLDING HOLDING / Now the objects for this database. !OBJECT KEY KEYM1 KEYM2 KEYM1 !OBJECT WOOD WOODM1 WOODM2 WOODM1 !OBJECT OGRE OGREM MNULL OGREM !OBJECT SHAWM SHAWM1 SHAWM2 SHAWM1 !OBJECT SWORD SWORDM1 SWORDM2 SWORDM1 !OBJECT LAMP LAMPM1 LAMPM2 LAMPM1 !OBJECT ROD RODM1 RODM2 RODM1 !OBJECT MONSTER MONSTM1 MNULL MONSTM1 !OBJECT BREAD BREADM1 BREADM2 BREADM1 !OBJECT BOWL BOWLM1 BOWLM2 BOWLM1 !OBJECT CENTAUR CENTM1 MNULL CENTM1 !OBJECT PIGEON PIGM1 PIGM2 PIGM1 !OBJECT MYRRH MYRRH1 MYRRH2 MYRRH1 !OBJECT TOAD TOADM1 TOADM2 TOADM1 !OBJECT MANTICORE MNULL MNULL MNULL !OBJECT MILLET MILLET1 MILLET2 MILLET1 !OBJECT KEEPER MNULL MNULL MNULL !OBJECT DODO DODO1 DODO2 DODO1 !OBJECT SCENT SCENTM1 SCENTM2 SCENTM1 !OBJECT WAX WAXM1 WAXM2 WAXM1 !OBJECT BEADS BEADSM1 BEADSM2 BEADSM1 !OBJECT WIG WIGM1 WIGM2 WIGM1 !OBJECT STATUE STATUE1 STATUE2 STATUE1 !OBJECT STONE STONE1 STONE2 STONE1 !OBJECT INGOT INGOT1 INGOT2 INGOT1 !OBJECT WIZARD MNULL MNULL MNULL !OBJECT STAFF STAFFM1 STAFFM2 STAFFM1 !OBJECT LION LIONM1 MNULL MNULL !OBJECT BED MNULL MNULL MNULL !OBJECT RIBBON RIBBON1 RIBBON2 RIBBON1 !OBJECT AMETHYST AMETH1 AMETH2 AMETH1 !OBJECT DAUGHTER MNULL MNULL MNULL !OBJECT SCROLL SCROLL1 SCROLL2 SCROLL1 !OBJECT TROLL TROLLM MNULL TROLLM !OBJECT BABOON BABM1 BABM2 BABM1 !OBJECT PILLOW PILLOWM1 PILLOWM2 PILLOWM1 !OBJECT POLTERGEIST MNULL MNULL MNULL !OBJECT PERIDOT PERIM1 PERIM2 PERIM1 !OBJECT GOBLIN GOBLINM MNULL GOBLINM !OBJECT PIN PINM1 PINM2 PINM1 !OBJECT EIGHT EIGHT1 EIGHT2 EIGHT1 !OBJECT CAULDRON MNULL MNULL MNULL !OBJECT CANNIBAL CANNM MNULL CANNM !OBJECT MISSIONARY MNULL MNULL MNULL !OBJECT BIBLE BIBLE1 BIBLE2 BIBLE1 / / ROOMS SECTION / ------------- / / Rooms for this database. !ROOM START STARTM1 STARTM2 !ROOM INHUT INHUTM1 INHUTM2 !ROOM PATH1 PATH1M1 PATH1M2 !ROOM PATH2 PATH2M1 PATH2M2 !ROOM PATH3 PATH3M1 PATH3M2 !ROOM PATH4 PATH4M1 PATH4M2 !ROOM PATH5 PATH5M1 PATH5M2 !ROOM GRAVE GRAVEM1 GRAVEM2 !ROOM LAKE LAKEM1 LAKEM2 !ROOM WALL1 WALL1M1 WALL1M1 !ROOM WALL2 WALL2M1 WALL2M2 !ROOM WALL3 WALL3M1 WALL3M2 !ROOM SANDPIT SANDPM1 SANDPM2 !ROOM CELLAR CELLARM1 CELLARM2 !ROOM FRANKRM FRANKM1 FRANKM2 !ROOM COBROOM COBM1 COBM2 !ROOM BLACK0 BLACK0M1 BLACK0M2 !ROOM BLACK1 BLACKML BLACKMS !ROOM BLACK2 BLACKML BLACKMS !ROOM BLACK3 BLACKML BLACKMS !ROOM BLACK4 BLACKML BLACKMS !ROOM BLACK5 BLACKML BLACKMS !ROOM BLACK6 BLACKML BLACKMS !ROOM BLACK7 BLACKML BLACKMS !ROOM BLACK8 BLACKML BLACKMS !ROOM BLACK9 BLACKML BLACKMS !ROOM BLACK10 BLACKML BLACKMS !ROOM BLACKEND BLENDM1 BLENDM2 !ROOM ALTUNIV ALTUM1 ALTUM2 !ROOM ALCOVE ALCOVM1 ALCOVM1 !ROOM GAP0 GAP0M1 GAP0M2 !ROOM GAP1 GAP1M1 GAP1M2 !ROOM GAP2 GAP2M1 GAP2M1 !ROOM GAP3 GAP3M1 GAP3M2 !ROOM SECRETCH SECRETM1 SECRETM2 !ROOM BEACH1 BEACH1M1 BEACH1M2 !ROOM BEACH2 BEACH2M1 BEACH2M2 !ROOM BEACH3 BEACH3M1 BEACH3M2 !ROOM XROADS XROADM1 XROADM2 !ROOM FORK1 FORK1M1 FORK1M1 !ROOM FORK2 FORK2M1 FORK2M1 !ROOM POOLRM POOLM1 POOLM2 !ROOM SENTRYS SENTRYM1 SENTRYM2 !ROOM SENTRYN SENTRYM3 SENTRYM4 !ROOM MILLROOM MILLRM1 MILLRM2 !ROOM BEACH0 BEACH0M1 BEACH0M2 !ROOM KEEP KEEPM1 KEEPM2 !ROOM FORK3 FORK3M1 FORK3M2 !ROOM SLIMERM SLIMEM1 SLIMEM2 !ROOM BEND1 BEND1M1 BEND1M1 !ROOM MANTROOM MANTM1 MANTM2 !ROOM MONKROOM MONKM1 MONKM2 !ROOM GEYSER GEYS1 GEYS2 !ROOM TUNNEL TUNNELM1 TUNNELM2 !ROOM HILL1 HILL1M1 HILL1M2 !ROOM HILL2 HILL2M1 HILL2M2 !ROOM ERBROOM ERBRM1 ERBRM2 !ROOM CAUSEWAY CAUSEM1 CAUSEM1 !ROOM JUNCTION JUNCM1 JUNCM2 !ROOM CAGE CAGEM1 CAGEM2 !ROOM HOUSE1 HOUSEM0 HOUSEM0 !ROOM PRISON1 PRISM11 PRISM12 !ROOM PRISON2 PRISM21 PRISM22 !ROOM EVILRM EVILM1 EVILM2 !ROOM POLTROOM POLT1 POLT1 !ROOM PLATFORM PLATF1 PLATF1 !ROOM ISLE1 ISLE1N ISLE1M !ROOM ISLE2 ISLE2M ISLE2M !ROOM ISLE3 ISLE3M ISLE3M !ROOM ISLE4 ISLE4M ISLE4M !ROOM ISLE5 ISLE5M ISLE5M !ROOM ISLE6 ISLE6M ISLE6M !ROOM ISLE7 ISLE7M ISLE7M !ROOM LAKE2 LAKE2M LAKE2M / / EXITS SECTION / ------------- / !EXIT START IN INHUT DOORTEST N INHUT DOORTEST S PATH1 E LAKE W GRAVE MOVEPIG !EXIT GRAVE E START N SANDPIT !EXIT LAKE W START !EXIT PATH1 E START N PATH2 S PATH5 !EXIT PATH2 E PATH1 SE PATH5 S PATH3 !EXIT PATH3 N WALL1 E PATH2 S PATH4 !EXIT PATH4 N PATH3 E PATH5 !EXIT PATH5 N PATH1 NW PATH2 W PATH4 !EXIT WALL1 S PATH3 N WALL2 WALLPROG !EXIT WALL2 N WALL3 S WALL1 WALL2PROG !EXIT WALL3 S WALL2 !EXIT INHUT OUT START DOORTEST S START DOORTEST D CELLAR !EXIT SANDPIT S GRAVE !EXIT CELLAR U INHUT W FRANKRM NE COBROOM S FORK1 N FORK2 E JUNCTION !EXIT FRANKRM E CELLAR W GAP3 !EXIT SECRETCH E GAP0 W BEACH2 INTOLIGHT S SLIMERM !EXIT GAP0 W SECRETCH SECHECK E GAP1 !EXIT GAP1 N ALCOVE W GAP0 E GAP2 CHECKPL !EXIT GAP2 W GAP1 E GAP3 !EXIT GAP3 W GAP2 CHECKPL E FRANKRM !EXIT ALCOVE S GAP1 !EXIT COBROOM SW CELLAR NE BLACK0 NW FORK2 SE HILL1 U HILL1 !EXIT BLACK0 D BLACK1 SW COBROOM !EXIT BLACK1 N BLACK2 S ALTUNIV SETOOZE !EXIT BLACK2 U BLACK3 D BLACK0 !EXIT BLACK3 NE BLACK4 SW ALTUNIV SETOOZE !EXIT BLACK4 SW BLACK5 NE BLACK1 !EXIT BLACK5 E BLACK6 W ALTUNIV SETOOZE !EXIT BLACK6 S BLACK7 N BLACK3 !EXIT BLACK7 NW BLACK8 SE ALTUNIV SETOOZE !EXIT BLACK8 W BLACK9 E BLACK5 !EXIT BLACK9 D BLACK10 U ALTUNIV SETOOZE !EXIT BLACK10 SE BLACKEND NW BLACK7 !EXIT BLACKEND D BLACK10 !EXIT BEACH1 N BEACH0 E TUNNEL INTODARK S BEACH2 !EXIT BEACH2 N BEACH1 S BEACH3 E SECRETCH INTOCLIFF !EXIT BEACH3 N BEACH2 W CAUSEWAY SECHECK !EXIT XROADS W TUNNEL E FORK2 N SENTRYS S MILLROOM !EXIT FORK1 N CELLAR SW POOLRM SE BEND1 !EXIT FORK2 N FORK3 S CELLAR W XROADS SE COBROOM !EXIT POOLRM NE FORK1 !EXIT SENTRYS N SENTRYN CHCKSENT S XROADS !EXIT TUNNEL E XROADS W BEACH1 INTOLIGHT !EXIT MILLROOM N XROADS !EXIT SENTRYN S SENTRYS !EXIT BEACH0 S BEACH1 OMPROG !EXIT FORK3 N KEEP LASTPROG D GEYSER S FORK2 !EXIT KEEP S FORK3 KEEPEXIT !EXIT SLIMERM N SECRETCH !EXIT BEND1 NW FORK1 D MONKROOM E MANTROOM !EXIT MANTROOM W BEND1 N ERBROOM !EXIT GEYSER U FORK3 !EXIT HILL1 D COBROOM U HILL2 WIZPROG !EXIT HILL2 D HILL1 !EXIT ERBROOM S MANTROOM MANTSTING !EXIT CAUSEWAY W ISLE1 E BEACH3 !EXIT JUNCTION W CELLAR NE CAGE E HOUSE1 D PRISON1 !EXIT CAGE SW JUNCTION !EXIT PRISON1 U JUNCTION D PRISON2 S PRISON1 TROLLPROG !EXIT PRISON2 U PRISON1 !EXIT MONKROOM S EVILRM EVILPROG U BEND1 !EXIT EVILRM N MONKROOM UNVISIT !EXIT HOUSE1 E POLTROOM ENTERPOLT W JUNCTION !EXIT POLTROOM N POLTROOM PNPROG E POLTROOM PEPROG S POLTROOM PSPROG W POLTROOM PWPROG !EXIT PLATFORM N TUNNEL GHOSTPROG E PLATFORM PLATBAR W PLATFORM PLATBAR S POLTROOM ENTERPOLT !EXIT ISLE1 E CAUSEWAY SECHECK NW ISLE6 W ISLE7 SW ISLE2 !EXIT ISLE2 N ISLE6 NE ISLE1 W ISLE3 NW ISLE7 !EXIT ISLE3 E ISLE2 NE ISLE7 N ISLE5 NW ISLE4 !EXIT ISLE4 NE ISLE5 E ISLE7 SE ISLE3 !EXIT ISLE5 E ISLE6 SE ISLE7 S ISLE3 SW ISLE4 !EXIT ISLE6 SE ISLE1 S ISLE2 SW ISLE7 W ISLE5 !EXIT ISLE7 N ISLE5 NE ISLE6 E ISLE1 SE ISLE2 S ISLE3 SW ISLE3 W ISLE4 NW ISLE5 / / INSTRUCTIONS SECTION / -------------------- / !INSTRUCTIONS AARONPROG: LOAD V VAR0 I 1 AEP: SUB V VAR0 V GOBVAR SKIP3 UNLESS V VAR0 EQ 0 SKIP2 UNLESS R (PLAYER)R EQ ISLE1 SKIP UNLESS S ISLE1 EQ 0 SKIP IF S GOBLIN EQ 1 PRINTRET NHAPPENS LOAD S BEACH3 I 1 LOAD S ISLE1 I 1 LOAD V BEACHCT I 4 ADD S GOBLIN I 1 SKIP UNLESS S GOBLIN EQ 2 UNSET ANIMATE GOBLIN PRINTRET REDSEA2 AGGPROG: LOAD V VAR0 I 2 GO MILLWORD AGGSP: SKIP4 UNLESS R (PLAYER)R EQ LAKE SKIP3 UNLESS S LAKE EQ 0 SUB V VAR0 V NAMEVAR SKIP UNLESS V VAR0 EQ 0 PRINTRET LAKEWAVE PRINTRET NHAPPENS ARAPROG: LOAD V VAR0 I 0 GO AGGSP BLOWPROG: SKIP IF R ()O EQ SHAWM PRINTRET CANTDO GO PLAYSHAWM BRIEFPROG: LOAD V TERSEVAR I 1 PRINTRET BRIEFMESS CHCKSENT: SKIP IF R (CENTAUR)R EQ SENTRYS RETURN PRINT NOPASSCENT RETURN ABORT CHECKPL: SKIP IF S GAP2 LT 2 RETURN PRINT ELECTROCUTE GO DIEPROG CRYPROG: LOAD V VAR1 I 3 CRYETC: PRINT SECONDWORD SKIP UNLESS S LAKE EQ 0 SKIP IF R (PLAYER)R EQ LAKE PRINTRET NHAPPENS LOAD V VAR0 I 12 SKIP UNLESS M W2SP ARASPEC LOAD V VAR0 I 0 SKIP UNLESS M W2SP GURSPEC LOAD V VAR0 I 1 SKIP UNLESS M W2SP GAMSPEC LOAD V VAR0 I 2 SKIP UNLESS M W2SP SCASPEC LOAD V VAR0 I 3 SKIP UNLESS M W2SP PHASPEC LOAD V VAR0 I 4 SUB V VAR0 V NAMEVAR SUB V VAR1 V JOB SKIP IF V VAR0 EQ 0 PRINTRET NHAPPENS SKIP IF V VAR1 EQ 0 PRINTRET LAKEWAVE MOVE SWORD WITH TO LAKE LOAD S LAKE I 1 PRINTRET LADYLAKE DIEPROG: PRINT SNUFFED LOAD V VAR0 I 0 GOSUB SCORESUB PRINT SCORE2 GO QUIT2 DIGPROG: SKIP IF P LIGHT (PLAYER)R PRINTRET NODIG SKIP4 UNLESS R (PLAYER)R EQ SANDPIT SKIP3 UNLESS S SANDPIT EQ 0 LOAD S SANDPIT I 1 MOVE LAMP WITH TO SANDPIT PRINTRET UNEARTH SKIP IF R (PLAYER)R LT ISLE2 SKIP UNLESS R (PLAYER)R GT ISLE6 PRINTRET DIGHOLE SKIP2 IF H SWORD PLAYER PRINT SCORPDIG GO DIEPROG PRINT SCORPFIND SKIP IF S (PLAYER)R EQ 1 RETURN LOAD S (PLAYER)R I 0 LOAD S EIGHT I 1 MOVE EIGHT WITH TO (PLAYER)R PRINT FINDEIGHT RETURN LOOK DOORTEST: SKIP UNLESS S START EQ 2 RETURN PRINT DOOR1 RETURN ABORT DRINKPROG: SKIP2 UNLESS M W2EX SKIP IF M W2SP WATERSPEC RETURN RETRY NONE CANT SKIP3 IF P WATERY (PLAYER)R SKIP UNLESS H BOWL PLAYER SKIP UNLESS S BOWL EQ 0 PRINTRET NOWATER PRINT BADWATER GO DIEPROG / Subroutine to drop the object referred to by the reference in VAR0. / This should already be in the player's possession. DROPSUB: MOVE (VAR0)O WITH TO (PLAYER)R / Move the object. SUB V OBJHELD I 1 / Update OBJHELD. SKIP3 IF R (PLAYER)R LT BLACK1 SKIP2 IF R (PLAYER)R GT BLACK10 MOVE (VAR0)O WITH TO BLACKEND PRINT HEARDROP SKIP UNLESS R (VAR0)O EQ BREAD SKIP IF R (PIGEON)R EQ (PLAYER)R GO DROP2BREAD UNSET NOTAKE PIGEON MOVE BREAD WITH DESTROY LOAD S PIGEON I 1 / for scoring PRINT PIGGOBBLE DROP2BREAD: SKIP IF R (VAR0)O EQ PIGEON RETURN DROP2PIG: SET NOTAKE PIGEON SKIP4 UNLESS R (PLAYER)R EQ MILLROOM SKIP3 UNLESS S MILLROOM EQ 0 LOAD S MILLROOM R 2 ADD S MILLROOM I 2 PRINT PIGMILL RETURN / Main DROP program. DROPPROG: / Command decoding section. SKIP IF M W2EX / Is it "DROP"? GO DROPFIRST SKIP UNLESS M W2SP ALLSPEC / Is it "DROP ALL"? GO DROPALL SKIP UNLESS M W2SP WATERSPEC GO DROPWATER SKIP UNLESS M W2SP OLDMANSPEC GO DROPOM SKIP IF M W2OB / Must be "DROP object". RETURN RETRY NONE CANT / Induce "I don't understand / that!" if not. / Now check he has the object. DROPLOT: SKIP IF H ()O PLAYER PRINTRET NOTHELD / And drop it. RESOLVE VAR0 ()O GOSUB DROPSUB PRINTRET OKMESS / Drop the first object held by the player. DROPFIRST: RESOLVE VAR0 (PLAYER)D SKIP UNLESS V VAR0 EQ 0 / Holding anything? PRINTRET NOTHOLDING GOSUB DROPSUB PRINTRET OKMESS / Drop all objects held by the player. Keep count in VAR3. DROPALL: LOAD V VAR3 I 0 RESOLVE VAR0 (PLAYER)D SKIP UNLESS V VAR0 EQ 0 PRINTRET NOTHOLDING DROPA1: GOSUB DROPSUB ADD V VAR3 I 1 RESOLVE VAR0 (PLAYER)D SKIP IF V VAR0 EQ 0 GO DROPA1 PRINTRET DROPOBJ1 VAR3 DROPOM: SKIP UNLESS V OLDMANVAR EQ 0 PRINTRET HESNOT PRINTRET IFONLY DROPWATER: SKIP UNLESS H BOWL PLAYER SKIP UNLESS S BOWL EQ 0 PRINTRET NOTHELD PRINTRET FUNNYBOWL EATPROG: SKIP IF H ()O PLAYER PRINTRET NOTHELD SKIP3 UNLESS R ()O EQ STONE SKIP2 UNLESS S STONE EQ 0 LOAD S STONE I 1 PRINTRET EATSTONE SKIP4 IF R ()O EQ TOAD SKIP3 IF R ()O EQ BREAD SKIP2 IF R ()O EQ MILLET SKIP IF R ()O EQ PIGEON PRINTRET CANTDO MOVE ()O WITH DESTROY SUB V OBJHELD I 1 PRINTRET YUMMY EMPTYPROG: SKIP3 UNLESS R ()O EQ CAULDRON SKIP IF R (PLAYER)R EQ (CAULDRON)R PRINTRET NOTHERE PRINTRET REPELLED SKIP IF R ()O EQ BOWL RETURN RETRY NONE CANT SKIP UNLESS H BOWL PLAYER SKIP UNLESS S BOWL EQ 0 PRINTRET NOFULLBOWL PRINTRET FUNNYBOWL ENTERPOLT: SKIP2 UNLESS P VISITED POLTROOM PRINT POLTDIE1 GO DIEPROG RETURN EVILPROG: SKIP2 UNLESS S MONKROOM EQ 0 PRINT NOWAYMESS RETURN ABORT SKIP2 UNLESS H LAMP PLAYER LOAD S EVILRM I 1 / block him RETURN PRINTRET HEARGNO EXAMPROG: SKIP IF R (PLAYER)R EQ ()R PRINTRET DONTSEE PRINT ALRDESCFULL SKIP2 IF H ()O PLAYER DESCRIBE WITH ()O RETURN MOVE ()O WITH TO (PLAYER)R DESCRIBE WITH ()O MOVE ()O WITH TO PLAYER RETURN EXODPROG: LOAD V VAR0 I 2 GO AEP FEEDPROG: SKIP3 UNLESS M W2SP OLDMANSPEC SKIP IF V OLDMANVAR GT 0 PRINTRET NOTHERE PRINTRET NOFOOD SKIP IF M W2OB RETURN RETRY NONE CANT SKIP IF R ()R EQ (PLAYER)R PRINTRET NOTHERE SKIP UNLESS R ()O EQ PIGEON GO FEEDPIG SKIP IF P ANIMATE ()O PRINTRET CANTDO PRINTRET NOFOOD FEEDPIG: SKIP3 IF H PIGEON PLAYER SKIP2 UNLESS H BREAD PLAYER RESOLVE VAR0 (BREAD)O GO DROPSUB SKIP2 UNLESS H PIGEON PLAYER SKIP UNLESS R (PLAYER)R EQ MILLROOM SKIP IF S MILLROOM EQ 0 PRINTRET NOFOOD SUB V OBJHELD I 1 MOVE PIGEON WITH TO MILLROOM GO DROP2PIG FILLPROG: SKIP3 UNLESS R ()O EQ CAULDRON SKIP IF R (PLAYER)R EQ (CAULDRON)R PRINTRET NOTHERE PRINTRET REPELLED SKIP IF R ()O EQ BOWL RETURN RETRY NONE CANT SKIP IF H BOWL PLAYER PRINTRET NOTHELD SKIP IF S BOWL EQ 0 PRINTRET BOWLFULL SKIP2 UNLESS R (PLAYER)R EQ POOLRM LOAD S BOWL I 2 PRINTRET OKMESS SKIP2 UNLESS P WATERY (PLAYER)R LOAD S BOWL I 1 PRINTRET OKMESS PRINTRET NOTWORTH GAMPROG: LOAD V VAR0 I 2 GO AGGSP GHOSTPROG: PRINTRET GHOSTTRAIN GNOPROG: SKIP UNLESS R (PLAYER)R EQ EVILRM SKIP IF S EVILRM EQ 0 PRINTRET NHAPPENS LOAD S EVILRM I 1 MOVE BABOON WITH TO EVILRM PRINTRET CLANG GURPROG: LOAD V VAR0 I 1 GO AGGSP HOWLPROG: LOAD V VAR1 I 2 GO CRYETC INSERTPROG: SKIP IF R ()O EQ PIN PRINTRET CANTDO SKIP IF H PIN PLAYER PRINTRET NOPIN SKIP IF H WAX PLAYER PRINTRET NODUMMY GO PRICK3 INTOCLIFF: SKIP IF S BEACH2 EQ 0 PRINTRET INDARKMESS PRINT NOWAYMESS RETURN ABORT INTOLIGHT: PRINTRET INLIGHTMESS INTODARK: PRINTRET INDARKMESS / Program to do INVENTORY command. INVPROG: SET LIGHT PLAYER / Ensure place is lit. DESCRIBE WITH PLAYER / Describe player & possessions. UNSET LIGHT PLAYER / Get rid of light again. SKIP IF E (PLAYER)D / Print "Nothing." if he's PRINT NOTHINGM / not carrying anything. RETURN KEEPEXIT: LOAD V VAR0 I 0 SKIP IF H LAMP PLAYER LOAD V VAR0 I 1 SKIP UNLESS H LAMP PLAYER MOVE LAMP WITH DESTROY SKIP2 UNLESS E (PLAYER)D PRINT DEFIED GO DIEPROG SKIP IF V VAR0 EQ 1 / if he didn't have lamp MOVE LAMP WITH TO PLAYER RETURN KILLPROG: SKIP IF R ()R EQ (PLAYER)R PRINTRET NOTHERE SKIP IF P ANIMATE ()O PRINTRET NOTALIVE KILLBACK: LOAD V VAR0 R 2 PRINT NOKILL VAR0 GO DIEPROG KNEPROG: LOAD V VAR0 I 4 GO MILLWORD LASTPROG: MOVE PLAYER WITH TO KEEP LOAD V VAR0 I 10 GOSUB SCORESUB SKIP IF V VAR0 GT 248 RETURN ABORT PRINT KEEPTAK1 MOVE PLAYER WITHOUT TO LAKE2 ASKHIM: ASK KEEPTAK2 SKIP3 UNLESS M W2EX SKIP UNLESS M W2OB SKIP2 UNLESS P NOTAKE ()O PRINT CANTTAKE GO ASKHIM MOVE ()O WITH TO PLAYER SKIP2 IF R ()O EQ SWORD LOAD S LAKE2 I 1 ADD S LAKE2 R 3 PRINT KEEPTAK3 RETURN ABORT LOCKPROG: SKIP IF M W2SP DOORSPEC RETURN RETRY NONE CANT SKIP2 IF R (PLAYER)R EQ START SKIP IF R (PLAYER)R EQ INHUT PRINTRET DONTSEE SKIP UNLESS S START EQ 0 PRINTRET DOOR0 SKIP UNLESS S START EQ 2 PRINTRET DOOR2 SKIP IF H KEY PLAYER PRINTRET NOTBARE LOAD S START I 0 LOAD S INHUT I 0 PRINTRET OKMESS / Program to give the long description of a room. LOOKPROG: SKIP IF M LIGHT PRINTRET BLACKMS UNSET VISITED (PLAYER)R / Pretend room not visited to get / long description. SKIP UNLESS R (PLAYER)R EQ MONKROOM LOAD S MONKROOM I 1 SKIP UNLESS H BOWL PLAYER SKIP3 IF S BOWL EQ 2 SKIP UNLESS R (PLAYER)R EQ POOLRM PRINT PREVIS RETURN LOOK SKIP2 UNLESS V VISNO EQ 0 LOAD V VISNO I 1 ADD V VISNO R 2 LOAD V VAR0 V VISNO PRINT VISION VAR0 LOAD S BOWL I 0 RETURN LOOK / And return with request for description. MANTSTING: LOAD S INGOT I 1 /shorter long desc PRINT STUNG SKIP2 IF S MANTICORE EQ 1 LOAD S MANTICORE I 1 SKIP2 IF S STONE EQ 1 PRINT MANTDEATH GO DIEPROG PRINTRET PROTECTED MILLWORD: SUB V VAR0 S MILLROOM SKIP2 UNLESS R (PLAYER)R EQ MILLROOM SKIP UNLESS S STATUE EQ 0 SKIP IF V VAR0 EQ 0 PRINTRET NHAPPENS LOAD S STATUE I 1 MOVE STATUE WITH TO MILLROOM PRINTRET CONDENSE MIMEPROG: LOAD V VAR1 I 4 GO CRYETC / Program to do Magic Move instruction. MMPROG: SKIP IF E ()R / Is the object "destroyed"? PRINTRET CANTDO MOVE PLAYER WITH TO ()R RETURN MOVEPIG: SKIP UNLESS R (PIGEON)R EQ CELLAR MOVE PIGEON WITH RANDADJ RETURN NORMPROG: LOAD V TERSEVAR I 0 PRINTRET NORMMESS OMPROG: SKIP UNLESS S BEACH0 EQ 1 RETURN LOAD S BEACH0 I 1 LOAD V OLDMANVAR I 8 PRINTRET OMJUMP OOZEPROG: SKIP IF R (PLAYER)R EQ ALTUNIV PRINTRET NHAPPENS MOVE PLAYER WITH TO (LASTRM)R PRINTRET GOESBLACK OPENPROG: SKIP IF M W2SP DOORSPEC RETURN RETRY NONE CANT SKIP2 IF R (PLAYER)R EQ START SKIP IF R (PLAYER)R EQ INHUT PRINTRET DONTSEE SKIP UNLESS S START EQ 0 PRINTRET DOOR0 SKIP UNLESS S START EQ 2 PRINTRET DOOR2 LOAD S START I 2 LOAD S INHUT I 2 SET LIGHT INHUT PRINTRET OKMESS PEPROG: LOAD V VAR0 I 0 GO POLTPROG PSPROG: LOAD V VAR0 I 1 GO POLTPROG PWPROG: LOAD V VAR0 I 2 GO POLTPROG PNPROG: LOAD V VAR0 I 3 POLTPROG: LOAD S POLTERGEIST I 0 / he's moved ADD V POLTCT I 1 LOAD S POLTROOM R 9 SUB V VAR0 V POLTVAR SKIP2 IF V VAR0 EQ 0 PRINT POLTDIE4 GO DIEPROG SKIP UNLESS V POLTCT GT 7 RETURN DEST PLATFORM RETURN LOOK PHAPROG: LOAD V VAR0 I 4 GO AGGSP PHARAPROG: LOAD V VAR0 I 3 GO AEP PLATBAR: PRINTRET PLATMOVES PLATHILL: LOAD S POLTERGEIST I 1 RETURN PLAYPROG: SKIP IF R ()O EQ SHAWM PRINTRET CANTDO PLAYSHAWM: SKIP IF H SHAWM PLAYER PRINTRET NOTHELD PRINT TARA SKIP3 UNLESS R (PLAYER)R EQ SENTRYS SKIP2 UNLESS R (CENTAUR)R EQ SENTRYS MOVE CENTAUR WITH DESTROY PRINTRET CENTRUNS SKIP2 UNLESS R (PLAYER)R EQ WALL3 PRINT WALLF1 GO DIEPROG SKIP UNLESS R (PLAYER)R EQ WALL2 SKIP IF S WALL2 EQ 0 RETURN LOAD S WALL2 I 1 PRINT WALLF2 LOAD S WALL1 I 2 MOVE OGRE WITH DESTROY LOAD V OGRECT I 45 ADD V OGRECT R 10 RETURN POSTPROG: ADD V TURNS I 1 SUB V OGRECT I 1 SUB V BEACHCT I 1 SKIP IF V TURNS EQ 5 GO POST2 LOAD S WALL1 I 1 LOAD S OGRE I 1 SKIP4 UNLESS R (PLAYER)R EQ WALL1 SKIP IF M MOVED PRINT WALLD1 SKIP UNLESS M MOVED PRINT WALLD3 SKIP UNLESS R (PLAYER)R EQ WALL2 PRINT WALLD2 POST2: SKIP IF V BEACHCT EQ 0 GO POST25 LOAD S BEACH3 I 0 LOAD S ISLE1 I 0 SKIP IF R (PLAYER)R EQ ISLE1 SKIP UNLESS R (PLAYER)R EQ BEACH3 PRINT WATERBACK SKIP2 UNLESS R (PLAYER)R EQ CAUSEWAY PRINT WATERB2 GO DIEPROG POST24: SKIP2 UNLESS E (CAUSEWAY)O MOVE (CAUSEWAY)O WITH DESTROY GO POST24 POST25: SKIP IF H LAMP PLAYER GO POST4 SKIP IF P LIGHT LAMP GO POST3 SKIP3 UNLESS P LIGHT (PLAYER)R UNSET LIGHT LAMP LOAD S LAMP I 0 PRINT LAMPOFF GO POST4 POST3: SKIP3 IF P LIGHT (PLAYER)R SET LIGHT LAMP LOAD S LAMP I 1 PRINT LAMPON POST4: SKIP4 UNLESS R (PLAYER)R EQ KEEP SKIP3 UNLESS M MOVED LOAD V VAR0 S KEEP LOAD S KEEP I 1 PRINT KEEPGREET VAR0 POST45: SKIP IF R (PLAYER)R EQ POLTROOM GO POST49 SKIP2 UNLESS S POLTERGEIST EQ 1 PRINT POLTDIE2 GO DIEPROG SKIP2 IF H PILLOW PLAYER PRINT POLTDIE3 GO DIEPROG LOAD S POLTERGEIST I 1 LOAD V VAR0 R 2 ADD V POLTVAR I 1 ADD V POLTVAR V VAR0 SKIP IF V POLTVAR LT 4 SUB V POLTVAR I 4 PRINT POLTMESS VAR0 POST49: SKIP4 UNLESS H SWORD PLAYER SKIP3 IF S EIGHT EQ 1 / found SKIP2 UNLESS S (PLAYER)R EQ 1 / buried here SKIP IF R (PLAYER)R LT ISLE2 SKIP UNLESS R (PLAYER)R GT ISLE6 GO POST5 PRINT SWORDTWITCH POST5: SKIP UNLESS R (PLAYER)R EQ GEYSER SKIP UNLESS M MOVED GO POSTX SKIP3 IF V OLDMANVAR GT 0 MOVE PLAYER WITH TO FORK3 PRINT SCALDED GO POSTX LOAD V OLDMANVAR I 0 PRINT SCALDOM MOVE PLAYER WITH TO FORK3 POSTX: SKIP4 UNLESS R (PLAYER)R EQ ISLE7 SKIP3 IF M MOVED SKIP2 IF S CANNIBAL EQ 1 PRINT CANNKILL GO DIEPROG POSTX2: SKIP IF V OLDMANVAR GT 0 GO POSTY SUB V OLDMANVAR I 1 SKIP2 UNLESS V OLDMANVAR EQ 0 PRINT STRANGLED GO DIEPROG PRINT ROUNDNECK POSTY: SKIP IF S MONSTER EQ 1 GO POSTZ SKIP2 UNLESS R (PLAYER)R EQ (MONSTER)R PRINT MONSTPANG GO DIEPROG SKIP2 UNLESS R (MONSTER)R EQ FRANKRM MOVE MONSTER WITH TO GAP3 GO POSTY2 SKIP2 UNLESS R (MONSTER)R EQ GAP2 MOVE MONSTER WITH TO GAP1 GO POSTY2 SKIP2 UNLESS R (MONSTER)R EQ GAP1 MOVE MONSTER WITH TO GAP0 GO POSTY2 SKIP4 IF S GAP2 GT 1 LOAD S MONSTER I 2 /dead UNSET ANIMATE MONSTER PRINT ELECMON GO POSTZ MOVE MONSTER WITH TO GAP2 PRINT MONSTPLANK POSTY2: SKIP2 UNLESS R (PLAYER)R EQ (MONSTER)R PRINT MONSTPANG GO DIEPROG SKIP IF R (PLAYER)R EQ ALCOVE GO POSTZ PRINT HEARCRASH LOAD S MONSTER I 0 LOAD S GAP0 I 1 LOAD S BEACH2 I 1 UNSET VISITED BEACH2 / new description MOVE MONSTER WITH DESTROY POSTZ: SKIP4 IF R (PLAYER)R EQ INHUT / he opens door going out SKIP3 IF V OGRECT GT 0 SKIP2 UNLESS S WALL1 EQ 2 SKIP IF P LIGHT (PLAYER)R SKIP UNLESS S START EQ 0 / locked GO POSTZZ LOAD V VAR0 S PLAYER PRINT OGREBOP VAR0 SKIP UNLESS S PLAYER EQ 1 GO DIEPROG LOAD S PLAYER I 1 LOAD V OGRECT I 5 ADD V OGRECT R 5 POSTZZ: SKIP UNLESS S PLAYER EQ 1 PRINT INJURED SKIP UNLESS V TERSEVAR EQ 1 / brief SET VISITED (PLAYER)R SKIP UNLESS V TERSEVAR EQ 2 / verbose UNSET VISITED (PLAYER)R RETURN PRICKPROG: SKIP IF H PIN PLAYER PRINTRET NOPIN SKIP IF R ()R EQ (PLAYER)R PRINTRET NOTHERE SKIP UNLESS P ANIMATE ()O GO KILLBACK SKIP IF R ()O EQ WAX PRINTRET SILLY SKIP IF H WAX PLAYER PRINTRET NOTHELD PRICK3: / jump here from INSERTPROG ADD S GOBLIN I 1 SKIP UNLESS S GOBLIN EQ 1 SKIP IF R (PLAYER)R EQ (GOBLIN)R GO PRICK2 LOAD V GOBVAR I 1 LOAD V VAR0 R 2 ADD V GOBVAR V VAR0 PRINTRET GOBWORD VAR0 PRICK2: SKIP3 UNLESS S GOBLIN EQ 2 / it would be dead UNSET ANIMATE GOBLIN SKIP UNLESS R (PLAYER)R EQ (GOBLIN)R PRINTRET GOBDIES PRINTRET OKMESS / Program to make certain the player wants to quit. QUITPROG: SKIP IF Q QUITQUERY / Skip if "yes" answer. PRINTRET OKMESS LOAD V VAR0 I 10 GOSUB SCORESUB PRINT SCORE2 QUIT2: SKIP UNLESS Q MOREGAMES RETURN RETRY RESTART MAY ANY PRINT GROYMESS RETURN RETRY FINISH MAY ANY / Induce end of game. READPROG: SKIP2 UNLESS M LIGHT SKIP2 IF R (PLAYER)R LT BLACK1 SKIP IF R (PLAYER)R GT BLACK10 PRINTRET TOODARK SKIP UNLESS M W2EX SKIP IF M W2OB GO READ1 SKIP3 UNLESS R ()O EQ BIBLE SKIP IF H BIBLE PLAYER PRINTRET NOTHELD PRINTRET READBIBLE SKIP4 UNLESS R ()O EQ SCROLL SKIP IF H SCROLL PLAYER PRINTRET NOTHELD PRINT SCROLLREAD GO DIEPROG READ1: SKIP UNLESS R (PLAYER)R EQ PRISON1 PRINTRET ONLYONE SKIP UNLESS R (PLAYER)R EQ ALTUNIV PRINTRET OOZEMESS SKIP3 UNLESS R (PLAYER)R EQ MILLROOM SKIP2 IF S MILLROOM EQ 0 LOAD V VAR0 S MILLROOM PRINTRET MILLRM3 VAR0 SKIP UNLESS R (PLAYER)R EQ GRAVE GO READGRAVE SKIP UNLESS H BIBLE PLAYER PRINTRET READBIBLE SKIP2 UNLESS H SCROLL PLAYER PRINT SCROLLREAD GO DIEPROG PRINTRET NOREAD READGRAVE: SKIP IF S GRAVE EQ 0 GO READ2 LOAD S GRAVE I 1 LOAD V NAMEVAR R 4 LOAD V JOB R 4 READ2: LOAD V VAR0 V NAMEVAR LOAD V VAR1 V JOB PRINT NAMES VAR0 PRINTRET JOBS VAR1 SAVEPROG: SKIP IF R (PLAYER)R EQ POLTROOM RETURN RETRY SAVE CANT RETURN SAVENDPROG: SKIP IF R (PLAYER)R EQ POLTROOM RETURN RETRY SAVEND CANT RETURN SAYPROG: PRINT SECONDWORD SKIP4 IF M W2SP ARASPEC SKIP3 IF M W2SP GAMSPEC SKIP2 IF M W2SP GURSPEC SKIP IF M W2SP PHASPEC SKIP UNLESS M W2SP SCASPEC RETURN RETRY IGNORE MUST REC SKIP IF M W2SP MAGSPEC RETURN RETURN RETRY IGNORE MUST REC SCAPROG: LOAD V VAR0 I 3 GO AGGSP SCOREPROG: LOAD V VAR0 I 10 GOSUB SCORESUB PRINTRET SCORE1 SCORESUB: SKIP UNLESS R (SHAWM)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (BOWL)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (MYRRH)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (DODO)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (SCENT)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (STONE)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (INGOT)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (STATUE)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (AMETHYST)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (BABOON)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (PERIDOT)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (EIGHT)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (BIBLE)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS R (PIN)R EQ KEEP ADD V VAR0 I 5 SKIP UNLESS P VISITED WALL3 ADD V VAR0 I 5 SKIP UNLESS S WALL1 EQ 2 ADD V VAR0 I 5 SKIP UNLESS S GAP0 EQ 1 ADD V VAR0 I 12 SKIP UNLESS P VISITED BLACKEND ADD V VAR0 I 12 SKIP2 UNLESS V OLDMANVAR EQ 0 SKIP UNLESS P VISITED BEACH0 ADD V VAR0 I 10 SKIP IF R (CENTAUR)R EQ SENTRYS ADD V VAR0 I 8 SKIP UNLESS S STONE EQ 1 ADD V VAR0 I 10 SKIP2 IF R (INGOT)R EQ ERBROOM SKIP IF R (INGOT)R EQ MANTROOM ADD V VAR0 I 10 SKIP UNLESS S PIGEON EQ 1 ADD V VAR0 I 5 SKIP UNLESS E (STATUE)R ADD V VAR0 I 10 SKIP UNLESS E (AMETHYST)R ADD V VAR0 I 5 SKIP UNLESS S PRISON1 EQ 2 ADD V VAR0 I 10 SKIP UNLESS E (BABOON)R ADD V VAR0 I 10 SKIP UNLESS P VISITED PLATFORM ADD V VAR0 I 10 SKIP UNLESS V VISNO GT 0 ADD V VAR0 I 5 SKIP UNLESS E (EIGHT)R ADD V VAR0 I 10 SKIP UNLESS S CANNIBAL EQ 1 ADD V VAR0 I 10 SKIP UNLESS E (SWORD)R ADD V VAR0 I 12 SKIP IF S LION EQ 0 ADD V VAR0 I 10 RETURN SECHECK: SKIP IF S (PLAYER)R EQ 0 RETURN PRINT NOWAYMESS RETURN ABORT SETOOZE: RESOLVE LASTRM (PLAYER)R RETURN SHUTPROG: SKIP IF M W2SP DOORSPEC RETURN RETRY NONE CANT SKIP2 IF R (PLAYER)R EQ START SKIP IF R (PLAYER)R EQ INHUT PRINTRET DONTSEE SKIP IF S START EQ 2 PRINTRET DOOR1 / shut or locked LOAD S START I 1 LOAD S INHUT I 1 UNSET LIGHT INHUT PRINTRET OKMESS SINGPROG: LOAD V VAR1 I 0 GO CRYETC SWIMPROG: SKIP2 UNLESS P WATERY (PLAYER)R PRINT DROWNMESS GO DIEPROG PRINTRET NOSWIM / Subroutine to try to take the object referred to by the / reference in VAR0. OBJHELD is updated if it is taken, and / VAR1 is set to: / 1 if the object was taken. / 2 if it was untakeable. / 3 if it wasn't taken because the player couldn't carry it. TAKESUB: SKIP IF R (VAR0)O EQ PLAYER / Can't take himself! SKIP2 UNLESS P NOTAKE (VAR0)O / Is it untakeable? LOAD V VAR1 I 2 RETURN LOAD V VAR1 V STRENGTH / Check STRENGTH SUB V VAR1 V OBJHELD / against OBJHELD. SKIP2 IF V VAR1 GT 0 LOAD V VAR1 I 3 RETURN MOVE (VAR0)O WITH TO PLAYER / Move the object. ADD V OBJHELD I 1 / Update OBJHELD. LOAD V VAR1 I 1 SKIP UNLESS R (VAR0)O EQ PILLOW LOAD S PILLOW I 1 SKIP4 UNLESS R (VAR0)O EQ MILLET SKIP3 UNLESS R (PLAYER)R EQ MILLROOM SKIP2 IF S MILLROOM EQ 1 LOAD S MILLROOM I 1 PRINT ASYOUGATH SKIP UNLESS S PATH4 EQ 0 SKIP IF R (VAR0)O EQ WOOD RETURN MOVE ROD WITH TO (PLAYER)R LOAD S (PLAYER)R I 1 / silly joke PRINTRET RU10 / Main TAKE program. TAKEPROG: / Command decoding section. SKIP IF M W2EX / Is it "TAKE"? GO TAKEFIRST SKIP UNLESS M W2SP ALLSPEC / Is it "TAKE ALL"? GO TAKEALL SKIP UNLESS M W2SP INVSPEC / Is it "TAKE INVENTORY"? GO INVPROG SKIP UNLESS M W2SP WATERSPEC GO TAKEWATER SKIP3 UNLESS M W2SP STONESPEC SKIP2 IF R (STONE)R EQ GRAVE SKIP UNLESS R (PLAYER)R EQ GRAVE PRINTRET CANTTAKE SKIP IF M W2OB / Must be "TAKE object". RETURN RETRY NONE CANT / Induce "I don't understand / that!" if not. SKIP UNLESS R ()O EQ WOOD GO TAKEWOOD TAKEWD2: SKIP UNLESS R ()O EQ ROD GO TAKEROD TAKERD2: SKIP3 UNLESS R (PLAYER)R EQ CAGE SKIP2 UNLESS R ()O EQ PIN SKIP UNLESS P NOTAKE PIN GO TAKEPIN TAKEPN2: / Now check it's OK to take the given object. SKIP IF R (PLAYER)R EQ ()R / In the same room? PRINTRET DONTSEE SKIP UNLESS R PLAYER EQ ()U / Already holding it? PRINTRET ALRHELD SKIP2 UNLESS R ()O EQ PIGEON SKIP UNLESS P NOTAKE PIGEON PRINTRET CANTCATCH SKIP2 UNLESS R ()O EQ TOAD SKIP UNLESS S TOAD EQ 0 GO TAKETOAD / Entry point for Magic Take command. MTPROG: RESOLVE VAR0 ()O / Now use TAKESUB to take it. GOSUB TAKESUB SKIP UNLESS V VAR1 EQ 2 / Untakeable? PRINTRET CANTTAKE SKIP UNLESS V VAR1 EQ 3 / Hands full? PRINTRET HANDSFULL PRINTRET OKMESS / Command was "TAKE". Try to take the first object in the room. TAKEFIRST: RESOLVE VAR0 (PLAYER)R / Find first object in room. RESOLVE VAR0 (VAR0)O TAKEF1: SKIP UNLESS V VAR0 EQ 0 / Does object exist? PRINTRET NOTHNGHERE GOSUB TAKESUB / Try taking it. SKIP UNLESS V VAR1 EQ 1 / Successful? PRINTRET OKMESS SKIP UNLESS V VAR1 EQ 3 / Hands full? PRINTRET HANDSFULL / This object wasn't takeable. Try the next object in the room. ADD V VAR0 I 1536 / Modify reference to point to / next object in room. RESOLVE VAR0 (VAR0)O / Then resolve it. GO TAKEF1 / And try to take the object. / Command was "TAKE ALL". Try taking each object in the room. VAR3 / keeps track of the number of objects taken. TAKEALL: LOAD V VAR3 I 0 / Now we have a loop to try each object in turn. VAR2 always contains / a reference to the next object to be tried. RESOLVE VAR0 (PLAYER)R / Find first object in room. RESOLVE VAR0 (VAR0)O / N.B. This object always exists, as the player is an object in the room. TAKEA1: LOAD V VAR2 V VAR0 / Find next object from this one. ADD V VAR2 I 1536 RESOLVE VAR2 (VAR2)O GOSUB TAKESUB / Try taking this object. SKIP2 UNLESS V VAR1 EQ 3 / Hands full? PRINT HANDSF2 PRINTRET TOOKOBJ2 VAR3 SKIP UNLESS V VAR1 EQ 1 / Was object taken? ADD V VAR3 I 1 LOAD V VAR0 V VAR2 / Loop back for next object, SKIP IF V VAR0 EQ 0 / if it exists. GO TAKEA1 PRINTRET TOOKOBJ1 VAR3 TAKEPIN: SKIP IF S LION EQ 2 PRINTRET DONTSEE SKIP IF V OBJHELD LT 7 PRINTRET HANDSFULL MOVE PIN WITH TO PLAYER ADD V OBJHELD I 1 LOAD S LION I 1 UNSET NOTAKE PIN PRINTRET TAKETHORN TAKETOAD: PRINT TOADSP0 SKIP4 UNLESS Q TOADSPEAKS LOAD S TOAD I 1 UNSET NOTAKE TOAD UNSET ANIMATE TOAD PRINTRET TOADDIE MOVE TOAD WITH DESTROY MOVE STONE WITH TO (PLAYER)R PRINTRET TOADGIFT TAKEWATER: SKIP IF H BOWL PLAYER PRINTRET NOCARRY SKIP IF S BOWL EQ 0 PRINTRET ALRGOTSOME SKIP2 UNLESS R (PLAYER)R EQ POOLRM LOAD S BOWL I 2 PRINTRET OKMESS SKIP2 UNLESS P WATERY (PLAYER)R LOAD S BOWL I 1 PRINTRET OKMESS PRINTRET NOTHERE TAKEWOOD: SKIP UNLESS R (PLAYER)R EQ GAP2 PRINTRET CANTTAKE SKIP2 IF R (PLAYER)R EQ GAP1 SKIP IF R (PLAYER)R EQ GAP3 GO TAKEWD2 SKIP UNLESS R (PLAYER)R EQ (WOOD)R GO TAKEWD2 SKIP IF S GAP2 GT 1 PRINTRET NOTHERE LOAD V VAR1 V STRENGTH SUB V VAR1 V OBJHELD SKIP IF V VAR1 GT 0 PRINTRET HANDSFULL MOVE WOOD WITH TO PLAYER ADD V OBJHELD I 1 SUB S GAP1 I 2 SUB S GAP2 I 2 SUB S GAP3 I 2 SKIP IF E (GAP2)O PRINTRET PULLPLANK PRINT PULLWOOD TAKEW3: MOVE (GAP2)O WITH TO (PLAYER)R SKIP UNLESS E (GAP2)O GO TAKEW3 RETURN TAKEROD: SKIP IF R (PLAYER)R EQ GAP1 SKIP UNLESS R (PLAYER)R EQ GAP3 SKIP IF S GAP2 EQ 1 GO TAKERD2 PRINT ELECTROCUTE GO DIEPROG THROWPROG: SKIP UNLESS M W2SP WATERSPEC GO DROPWATER SKIP IF M W2OB RETURN RETRY NONE CANT SKIP IF H ()O PLAYER PRINTRET NOTHELD SKIP3 UNLESS R (PLAYER)R EQ LAKE INTOLAKE: SUB V OBJHELD I 1 MOVE ()O WITH DESTROY PRINTRET SINKMESS SKIP4 UNLESS R (PLAYER)R EQ LAKE2 SKIP2 UNLESS R ()O EQ SWORD PRINT WELLDONE RETURN RETRY FINISH MAY ANY GO INTOLAKE SKIP IF R (PLAYER)R EQ GAP1 SKIP2 UNLESS R (PLAYER)R EQ GAP3 SKIP2 IF R ()O EQ ROD SKIP IF R ()O EQ WOOD GO DROPLOT SUB V OBJHELD I 1 SKIP IF R ()O EQ WOOD GO THROWROD ADD S GAP1 I 2 ADD S GAP2 I 2 ADD S GAP3 I 2 MOVE WOOD WITH DESTROY PRINTRET THPLANKM THROWROD: SKIP2 UNLESS S GAP2 GT 1 MOVE ROD WITH TO GAP2 PRINTRET RODONPLANK ADD S GAP1 I 1 ADD S GAP2 I 1 ADD S GAP3 I 1 LOAD S FRANKRM I 1 LOAD S MONSTER I 1 / activate MOVE ROD WITH DESTROY MOVE PILLOW WITH TO FRANKRM PRINTRET FIZZMESS THROWBREAD: SUB V OBJHELD I 1 SKIP2 IF R (PIGEON)R EQ (PLAYER)R MOVE BREAD WITH TO (PLAYER)R PRINTRET OKMESS UNSET NOTAKE PIGEON MOVE BREAD WITH DESTROY PRINTRET PIGGOBBLE TROLLPROG: SKIP UNLESS S PRISON1 EQ 0 GO TROLLV1 SKIP UNLESS S PRISON1 EQ 1 GO TROLLV2 PRINTRET NOTROLLPASS TROLLV1: LOAD S PRISON1 I 1 SKIP UNLESS H WIG PLAYER LOAD S WIG I 1 PRINT GIVER0 SKIP2 IF H STAFF PLAYER PRINT NOVISIT RETURN LOOK TROLLVS: MOVE STAFF WITH DESTROY MOVE RIBBON WITH TO PLAYER PRINT GIVERIB RETURN LOOK TROLLV2: SKIP2 IF H WIG PLAYER SKIP2 IF S WIG EQ 0 SKIP2 IF S WIG EQ 1 SKIP IF S WIG EQ 0 PRINTRET RECOGNISED PRINT FAMILIAR LOAD S PRISON1 I 2 SKIP UNLESS H STAFF PLAYER GO TROLLVS SKIP2 IF H SCROLL PLAYER PRINT YOUWONTHELP RETURN LOOK MOVE DAUGHTER WITH TO HILL2 MOVE SCROLL WITH DESTROY SUB V OBJHELD I 1 PRINT SHEREADS RETURN LOOK UNLOCPROG: SKIP4 UNLESS M W2OB SKIP3 UNLESS R ()O EQ GOBLIN SKIP IF R (PLAYER)R EQ (GOBLIN)R PRINTRET NOTHERE PRINTRET NOLOCK SKIP IF M W2SP DOORSPEC RETURN RETRY NONE CANT SKIP2 IF R (PLAYER)R EQ START SKIP IF R (PLAYER)R EQ INHUT PRINTRET DONTSEE SKIP IF S START EQ 0 PRINTRET NOTLOCK SKIP IF H KEY PLAYER PRINTRET NOTBARE LOAD S START I 1 LOAD S INHUT I 1 PRINTRET OKMESS UNVISIT: SKIP IF M LIGHT UNSET VISITED (PLAYER)R RETURN VERBPROG: LOAD V TERSEVAR I 2 PRINTRET VERBMESS WALLPROG: SKIP2 UNLESS S WALL1 EQ 1 PRINT WALLBLOCK RETURN ABORT RETURN WALL2PROG: SKIP2 IF S WALL2 EQ 1 PRINT WALLBLOCK RETURN ABORT RETURN WAVEPROG: SKIP IF H ()O PLAYER PRINTRET NOTHELD SKIP4 UNLESS R ()O EQ BEADS SKIP UNLESS R (PLAYER)R EQ ISLE7 GO WAVECAN SKIP UNLESS R (PLAYER)R EQ CAGE SKIP IF S LION LT 2 GO WAVE2 ADD S LION I 2 PRINT LIONSLEEP SKIP UNLESS S LION EQ 2 PRINT SEETHORN RETURN WAVE2: SKIP UNLESS R (PLAYER)R EQ BEACH3 GO WAVEBEACH PRINTRET NHAPPENS WAVEBEACH: LOAD V VAR0 I 5 SKIP UNLESS R ()O EQ STAFF LOAD V VAR0 I 1 SKIP UNLESS R ()O EQ RIBBON LOAD V VAR0 I 2 SKIP UNLESS R ()O EQ SCROLL LOAD V VAR0 I 3 SUB V VAR0 V VISNO SKIP IF S ISLE1 EQ 1 SKIP IF V VAR0 EQ 0 PRINTRET NHAPPENS LOAD S BEACH3 I 1 LOAD S ISLE1 I 1 LOAD V BEACHCT I 4 / say SKIP3 IF P VISITED ISLE1 RESOLVE VAR0 (ISLE2)R ADD V VAR0 R 4 LOAD S (VAR0)R I 1 / bury treasure PRINTRET REDSEA WAVECAN: LOAD S BEADS I 1 SET NOTAKE BEADS LOAD S CANNIBAL I 1 MOVE MISSIONARY WITH DESTROY MOVE BEADS WITH TO ISLE7 MOVE BIBLE WITH TO PLAYER PRINTRET MISSION WELCPROG: PRINTRET WELCOMEM WHISPROG: LOAD V VAR1 I 1 GO CRYETC WIZPROG: ADD S HILL2 I 1 SKIP2 UNLESS S HILL2 EQ 1 MOVE STAFF WITH TO HILL2 PRINTRET WIZM1 SKIP UNLESS S HILL2 EQ 2 GO WIZ1PROG SKIP UNLESS S HILL2 EQ 3 GO WIZ2PROG RETURN WIZ1PROG: SKIP2 IF H RIBBON PLAYER PRINT WIZZAP GO DIEPROG MOVE RIBBON WITH DESTROY MOVE SCROLL WITH TO PLAYER PRINTRET WIZM2 WIZ2PROG: SKIP2 IF R (DAUGHTER)R EQ HILL2 PRINT WIZZAP GO DIEPROG MOVE DAUGHTER WITH DESTROY MOVE AMETHYST WITH TO HILL2 PRINTRET WIZM3 YNGPROG: LOAD V VAR0 I 3 GO MILLWORD / / WORDS SECTION / ------------- / !WORDS AARON OBEY AARONPROG CANT MAGSPEC AGGANRW OBEY AGGPROG CANT MAGSPEC AKYGG PRINT NHAPPENS CANT MAGSPEC ALL NONE CANT ALLSPEC AMETHYST OBJECT CANT AMETHYST ARAC OBEY ARAPROG CANT ARASPEC ATTACK OBEY KILLPROG REQUEST OBJ AWAY RETURN CANT B BABOON OBJECT CANT BABOON BACK RETURN CANT B 1 BEADS OBJECT CANT BEADS BED OBJECT CANT BED BIBLE OBJECT CANT BIBLE BLOW OBEY BLOWPROG REQUEST OBJ BLURB PRINT BLURBMESS CANT BOOK OBJECT CANT BIBLE BOWL OBJECT CANT BOWL BREAD OBJECT CANT BREAD BRIEF OBEY BRIEFPROG CANT CANNIBAL OBJECT CANT CANNIBAL CAULDRON OBJECT CANT CAULDRON CENTAUR OBJECT CANT CENTAUR CLIMB MOVE MAY ANY U CLOSE OBEY SHUTPROG REQUEST REC CORPSE OBJECT CANT MONSTER CRUST OBJECT CANT BREAD CRY OBEY CRYPROG REQUEST ANY DAUGHTER OBJECT CANT DAUGHTER DIAMOND OBJECT CANT PIN DIG OBEY DIGPROG CANT DODO OBJECT CANT DODO DOOR NONE CANT DOORSPEC DOWN MOVE CANT D 1 DRINK OBEY DRINKPROG MAY SPECIAL DROP OBEY DROPPROG MAY REC DUMMY OBJECT CANT WAX EAST MOVE CANT E 1 EAT OBEY EATPROG REQUEST OBJ EIGHT OBJECT CANT EIGHT EMPTY OBEY EMPTYPROG REQUEST OBJ ERBIUM OBJECT CANT INGOT EXAMINE OBEY EXAMPROG REQUEST OBJ EXODUS OBEY EXODPROG CANT MAGSPEC FEED OBEY FEEDPROG REQUEST REC FILL OBEY FILLPROG REQUEST OBJ FLASK OBJECT CANT SCENT FRANKENSTEIN OBJECT CANT MONSTER GAMA OBEY GAMPROG CANT GAMSPEC GESTURE OBEY MIMEPROG REQUEST ANY GET OBEY TAKEPROG MAY REC GHOST OBJECT CANT POLTERGEIST GIRL OBJECT CANT DAUGHTER GNOEVAL OBEY GNOPROG CANT MAGSPEC GO IGNORE REQUEST DIR GOBLIN OBJECT CANT GOBLIN GOLD OBJECT CANT BOWL GRAVE MOVE CANT GRAVE GREYDEATH OBJECT CANT SWORD GURON OBEY GURPROG CANT GURSPEC GUTENBURG OBJECT CANT BIBLE HELP PRINT HELPMESS CANT HOARD OBJECT CANT EIGHT HOWL OBEY HOWLPROG REQUEST ANY IN MOVE CANT IN INGOT OBJECT CANT INGOT INSERT OBEY INSERTPROG REQUEST OBJ INVENTORY OBEY INVPROG CANT INVSPEC 3 IVORY OBJECT CANT STATUE JAB OBEY PRICKPROG REQUEST OBJ KEEPER OBJECT CANT KEEPER KEYS OBJECT CANT KEY 3 KILL OBEY KILLPROG REQUEST OBJ KNEVISH OBEY KNEPROG CANT MAGSPEC LAKE MOVE CANT LAKE LAMP OBJECT CANT LAMP LION OBJECT CANT LION LOCK OBEY LOCKPROG REQUEST REC LOOK OBEY LOOKPROG CANT MAIDEN OBJECT CANT DAUGHTER 4 MAN OBJECT CANT OLDMANSPEC MANTICORE OBJECT CANT MANTICORE MILLET OBJECT CANT MILLET MIME OBEY MIMEPROG REQUEST ANY MISSIONARY OBJECT CANT MISSIONARY / MMM OBEY MMPROG REQUEST OBJ MONSTER OBJECT CANT MONSTER / MTT OBEY MTPROG REQUEST OBJ MYRRH OBJECT CANT MYRRH NE MOVE CANT NE NORMAL OBEY NORMPROG CANT NORTH MOVE CANT N 1 NW MOVE CANT NW OGRES OBJECT CANT OGRE 4 OLDMAN OBJECT CANT OLDMANSPEC 3 OOZELUMNY OBEY OOZEPROG CANT MAGSPEC 4 OPEN OBEY OPENPROG REQUEST REC OUT MOVE CANT OUT PERFUME OBJECT CANT SCENT PERIDOT OBJECT CANT PERIDOT PHANTIS OBEY PHAPROG CANT PHASPEC PHARAOH OBEY PHARAPROG CANT MAGSPEC PIDGEON OBJECT CANT PIGEON PIECES OBJECT CANT EIGHT PIERCE OBEY PRICKPROG REQUEST OBJ PIGEON OBJECT CANT PIGEON PILLOW OBJECT CANT PILLOW PIN OBJECT CANT PIN PLANK OBJECT CANT WOOD PLAY OBEY PLAYPROG REQUEST OBJ POKE OBEY PRICKPROG REQUEST OBJ POLTERGEIST OBJECT CANT POLTERGEIST 4 PRICK OBEY PRICKPROG REQUEST OBJ PROD OBEY PRICKPROG REQUEST OBJ PUNCTURE OBEY PRICKPROG REQUEST OBJ QUIT OBEY QUITPROG CANT 1 READ OBEY READPROG MAY ANY RETURN RETURN CANT RIBBON OBJECT CANT RIBBON ROD OBJECT CANT ROD RUN IGNORE REQUEST DIR SAVE OBEY SAVEPROG CANT SAVEND OBEY SAVENDPROG CANT SAY OBEY SAYPROG REQUEST ANY SCAPHIO OBEY SCAPROG CANT SCASPEC SCENT OBJECT CANT SCENT SCORE OBEY SCOREPROG CANT SCORPION OBJECT CANT WIZARD / not there SCROLL OBJECT CANT SCROLL SE MOVE CANT SE SENTRY OBJECT CANT CENTAUR SHAWM OBJECT CANT SHAWM SHOUT OBEY CRYPROG REQUEST ANY SHUT OBEY SHUTPROG REQUEST REC SIGNAL OBEY MIMEPROG REQUEST ANY 4 SILVER OBJECT CANT BABOON SING OBEY SINGPROG REQUEST ANY SOUTH MOVE CANT S 1 SPEAK OBEY SAYPROG REQUEST ANY STAB OBEY PRICKPROG REQUEST OBJ STAFF OBJECT CANT STAFF STANDARD OBEY NORMPROG CANT STATUE OBJECT CANT STATUE STICK OBEY INSERTPROG REQUEST OBJ STONE OBJECT CANT STONE STONESPEC STRING OBJECT CANT BEADS SW MOVE CANT SW SWIM OBEY SWIMPROG CANT SWORD OBJECT CANT SWORD TAKE OBEY TAKEPROG MAY REC TERSE OBEY BRIEFPROG CANT THORN OBJECT CANT PIN THROW OBEY THROWPROG REQUEST REC TIEPIN OBJECT CANT PIN TOAD OBJECT CANT TOAD TOADSTONE OBJECT CANT STONE TROLL OBJECT CANT TROLL UNLOCK OBEY UNLOCPROG REQUEST REC UP MOVE CANT U 1 VERBOSE OBEY VERBPROG CANT WAIT PRINT OKMESS CANT WATER OBJECT CANT WATERSPEC WAVE OBEY WAVEPROG REQUEST OBJ WAX OBJECT CANT WAX WEST MOVE CANT W 1 WHISPER OBEY WHISPROG REQUEST ANY WIG OBJECT CANT WIG WIZARD OBJECT CANT WIZARD WOOD OBJECT CANT WOOD YELL OBEY CRYPROG REQUEST ANY YNGVI OBEY YNGPROG CANT MAGSPEC / / MESSAGES SECTION / ---------------- / !MESSAGE ALCOVM1 You are in a small alcove to the north of the high tunnel. !MESSAGE ALTUM1 You are in a room so indescribably weird that I would almost think of it as an alternative universe, were it not for the word OOZELUMNY spelled out by the glowing air molecules. !MESSAGE ALTUM2 You are in the alternative universe. !MESSAGE AMETH1 There is a pile of amethysts here! !MESSAGE AMETH2 Some amethysts. !MESSAGE BABM1 There is a baboon here, made of solid silver! !MESSAGE BABM2 A silver baboon. !MESSAGE BEACH0M1 You are at the edge of an estuary. The only way out is past some trees to your south. !MESSAGE BEACH0M2 You are at the estuary. !MESSAGE BEACH1M1 You are at the north end of a long sandy beach. The sea is to your west, there is a path leading past some trees to your north, and there is a passage into the cliff to your east. !MESSAGE BEACH1M2 You are at the north end of the beach. !MESSAGE BEACH2M1 You are on a north-south beach with the sea to your west. !SWITCH BEACH210 BEACH211 !MESSAGE BEACH210 There are sheer cliffs to your east. !MESSAGE BEACH211 There is a tunnel into the cliffs to your east, from which a trail of misshapen footprints leads into the sea. !MESSAGE BEACH2M2 !SWITCH BEACH220 BEACH221 !MESSAGE BEACH220 You are on the beach by the sheer cliff. !MESSAGE BEACH221 You are on the beach by the line of footprints. !MESSAGE BEACH3M1 You are at the south end of the beach, which ends in a small cove. !SWITCH BEACH310 BEACH311 !MESSAGE BEACH310 To the west there is a small offshore island. !MESSAGE BEACH311 A causeway leads westwards to an island. !MESSAGE BEACH3M2 !SWITCH BEACH320 BEACH321 !MESSAGE BEACH320 You are in the cove near the offshore island. !MESSAGE BEACH321 You are in the cove at the head of the causeway. !MESSAGE BEADSM1 !SWITCH BEADS10 MNULL !MESSAGE BEADS10 There is a string of shiny glass beads here. !MESSAGE BEADSM2 A string of beads. !MESSAGE BEND1M1 The passage bends from northwest to east and there is a flight of steps down at this point. !MESSAGE BIBLE1 There is a Gutenburg bible here! !MESSAGE BIBLE2 A Gutenburg bible. !MESSAGE BLACK0M1 You are in a small chamber with a passage back to the southwest. The main feature of this room is a large black hole in the floor into which all the light of the room seems to fall. The air is filled with alien sounds, the like of which no synthesizer ever produced. !MESSAGE BLACK0M2 You are in the room with the black hole in the floor and the weird noises. !MESSAGE BLACKML It is pitch dark. The very air itself seems to absorb the light of your lamp: you can feel its warmth but cannot see it. !MESSAGE BLACKMS It is pitch dark. !MESSAGE BLENDM1 You are in a grisly-looking cavern with a large black hole in the floor, into which all the light is plummetting. There is no other exit. !MESSAGE BLENDM2 You are in the grisly-looking cavern with the black hole in the floor. !MESSAGE BOWLM1 There is an ornately fashioned bowl of solid gold here! !SWITCH MNULL BOWLM3 !MESSAGE BOWLM3 It contains water. !MESSAGE BOWLM2 !SWITCH BOWL20 BOWL21 !MESSAGE BOWL20 A golden bowl. !MESSAGE BOWL21 A golden bowl full of water. !MESSAGE BREADM1 There is a crust of bread here. !MESSAGE BREADM2 A crust of bread. !MESSAGE CAGEM1 You are in the lion's den, a rectangular room with solid stone walls. The exit is to the southwest. !MESSAGE CAGEM2 You are in the lion's den. !MESSAGE CANNM !SWITCH CANNM0 CANNM1 !MESSAGE CANNM0 There are some cannibals here, who are boiling a missionary in a cauldron. !MESSAGE CANNM1 There are some cannibals here, who are playing with some shiny glass beads. !MESSAGE CAUSEM1 You are on an east-west causeway, the waters towering high above you. !MESSAGE CELLARM1 You are in a large quadrangular cellar. There is a flight of stairs up in the centre and passages in various directions. !MESSAGE CENTM1 There is a large centaur here on guard duty. !MESSAGE CELLARM2 You are in the cellar. !MESSAGE COBM1 You are in a cobwebbed passage which enters from the southwest and branches, exiting to the northeast, northwest, and up to the southeast. !MESSAGE COBM2 You are in the cobwebbed passage. !MESSAGE DODO1 There is a priceless (and almost certainly unique) stuffed dodo here! !MESSAGE DODO2 A stuffed dodo. !MESSAGE DOOR0 The door is locked. !MESSAGE DOOR1 The door is closed. !MESSAGE DOOR2 The door is open. !MESSAGE EIGHT1 There is a hoard of pieces of Eight here! !MESSAGE EIGHT2 Some pieces of Eight. !MESSAGE ERBRM1 You are in a disused mineshaft. Light enters from high above but the walls are unclimbable. A passage leads south. !MESSAGE ERBRM2 You are at the foot of the mineshaft. !MESSAGE EVILM1 In this room there is the most hideously wicked-looking picture you ever saw. It portrays a chimera - a beast so unnatural that I refuse to describe its nine misshapen heads individually. You can avoid this loathsome sight by going north. !MESSAGE EVILM2 You are in the room with the picture of the chimera. !MESSAGE FORK1M1 The passage tilts sharply here and forks, entering at the north and leading down to the southeast and southwest. !MESSAGE FORK2M1 You are in a north-south passage, with side passages to the southeast and west. !MESSAGE FORK3M1 You are on a north-south path which widens at its northern end. There is a damp passageway leading down at this point from which you can hear the sound of running water. !MESSAGE FORK3M2 You are on a north-south path by the damp passage. !MESSAGE FRANKM1 You are in the mad scientist's laboratory, which is a large room with exits to the east and west. Most of the apparatus is safely stored where you can't get at it, but there is a bed in the !SWITCH FRANKM10 FRANKM11 !MESSAGE FRANKM10 centre on which is lying a huge inanimate human body (or a mixture of several) with electrodes fastened to various parts of its anatomy. There seems to be no way of activating the corpse. !MESSAGE FRANKM11 centre (on which the monster formerly lay). !MESSAGE FRANKM2 You are in the laboratory. !MESSAGE GAP0M1 !SWITCH GAP010 GAP011 !MESSAGE GAP010 You are in a high east-west tunnel, which comes to a dead end at the western wall. !MESSAGE GAP011 You are in a high east-west tunnel. The monster has opened a path to the west through what was formerly a solid wall. !MESSAGE GAP0M2 !SWITCH GAP020 GAP011 !MESSAGE GAP020 You are in a high east-west tunnel at the dead end. !MESSAGE GAP1M1 You are in a high east-west tunnel with an alcove off to the north. To the east the floor is covered by a complicated network of wires. !SWITCH MNULL GAPROD GAPLANK GAPLANK !MESSAGE GAP1M2 You are in the east-west tunnel by the alcove, with the wiring to your east. !SWITCH MNULL GAPROD GAPLANK GAPLANK !MESSAGE GAP2M1 You are standing on a wooden plank which is resting on some wires in an east-west tunnel. !MESSAGE GAP3M1 You are in a high tunnel to the west of the laboratory. Further west the floor is covered with a complicated tangle of wires. !SWITCH MNULL GAPROD GAPLANK GAPLANK !MESSAGE GAP3M2 You are in the tunnel between the laboratory and the wiring. !SWITCH MNULL GAPROD GAPLANK GAPLANK !MESSAGE GAPLANK There is a plank lying across the wires. !MESSAGE GAPROD There is a metal rod lying across the live wires where you cannot reach it. !MESSAGE GEYS1 You are in a deep hollow full of steam. A geyser here periodically shoots out boiling water in various directions. This then collects in a pool in the ground and soaks away. There is a damp passageway leading up and out. !MESSAGE GEYS2 You are in the room with the geyser. !MESSAGE GOBLINM !SWITCH GOB10 GOB11 GOB12 !MESSAGE GOB10 There is a nasty little goblin chained to the wall here. !MESSAGE GOB11 There is an unconscious goblin chained to the wall here. !MESSAGE GOB12 There is a dead goblin chained to the wall here. !MESSAGE GRAVEM1 You are at an old, untended grave. The tombstone is worn but you can make out some of the writing on it. There are paths to the east and north. !MESSAGE GRAVEM2 You are at the old grave. !MESSAGE HILL1M1 You are at the foot of a steep hill on a twisting path. There is a tunnel down into darkness at this point. !MESSAGE HILL1M2 You are at the foot of the hill. !MESSAGE HILL2M1 You are at the top of the hill, which falls away steeply on three sides. In the distance you can see various curious scenes, including a bridge over a chasm, a garden from which giant rocs are taking off, a large cornfield, a giant spider's web and a distant bungalow by the seaside. The path leads back downwards from these awe-inspiring sights. !MESSAGE HILL2M2 You are at the top of the hill. !MESSAGE HOLDING You are holding: !MESSAGE HOUSEM0 You are in the entrance hall to what appears to be a haunted house. The air is filled with sounds of wailing, screeching and bumping. There are archways to the east and west. !MESSAGE INHUTM1 You are inside the hut. A stone staircase leads into an abyss. !SWITCH DOOR0 DOOR1 DOOR2 !MESSAGE INHUTM2 You are at the top of the stone staircase. !SWITCH DOOR0 DOOR1 DOOR2 !MESSAGE INGOT1 !SWITCH INGOT10 INGOT11 !MESSAGE INGOT10 There is a small ingot here which, as you can see at a glance, is composed of the rare metal Erbium! !MESSAGE INGOT11 There is an ingot of Erbium here! !MESSAGE INGOT2 An ingot of Erbium. !MESSAGE ISLE1N You are at the eastern tip of a small oval-shaped island. There are paths to the west, northwest and southwest. !SWITCH MNULL ISLE11 !MESSAGE ISLE1M You are at the eastern tip of Cannibal Island. !SWITCH MNULL ISLE11 !MESSAGE ISLE11 A causeway leads back to the mainland. !MESSAGE ISLE2M You are at the southeastern tip of Cannibal Island. !MESSAGE ISLE3M You are at the southwestern tip of Cannibal Island. !MESSAGE ISLE4M You are at the western tip of Cannibal Island. !MESSAGE ISLE5M You are at the northwestern tip of Cannibal Island. !MESSAGE ISLE6M You are at the northeastern tip of Cannibal Island. !MESSAGE ISLE7M You are at the centre of Cannibal Island. !MESSAGE JUNCM1 You are at a complicated junction of passages: an east-west passage crosses another corridor, which enters from the northeast and tilts so as to leave in a downwards direction. !MESSAGE JUNCM2 You are at the complicated junction of passages. !MESSAGE KEEPM1 The passage widens into a vast chamber which is full of soldiers some armed with long bows, others with halberds, maces or swords. Their lord is a venerable man who is sitting in a very expensively upholstered armchair. !MESSAGE KEEPM2 You are in the keep. !MESSAGE KEYM1 There is a large iron key here. !MESSAGE KEYM2 A key. !MESSAGE LAKEM1 You are at the edge of a large, perfectly calm lake. No breeze ruffles its untroubled waters. There is a path back to the west. !MESSAGE LAKEM2 You are at the edge of the lake. !MESSAGE LAKE2M !SWITCH LAKE20 LAKE21 LAKE22 LAKE23 LAKE24 !MESSAGE LAKE20 You are by the lake once more. Dense foliage blocks you in all other directions. !MESSAGE LAKE21 You are on the banks of the river of Death. Invisible forces prevent you from leaving. !MESSAGE LAKE22 You are in a lush green meadow with a stream running through it. Hedges block your way in all directions. !MESSAGE LAKE23 You are on a tiny island, far to the west of Cannibal Island. !MESSAGE LAKE24 You are in a small cove, bounded on two sides by sea and on the others by unclimbable cliffs. !MESSAGE LAMPM1 !SWITCH LAMPM10 LAMPM11 !MESSAGE LAMPM10 There is a dull brass lamp here, which is off. !MESSAGE LAMPM11 There is a dull brass lamp here, which is on. !MESSAGE LAMPM2 !SWITCH LAMPM20 LAMPM21 !MESSAGE LAMPM20 A lamp (which is off). !MESSAGE LAMPM21 A lamp (which is on). !MESSAGE LIONM1 !SWITCH LION10 LION11 LION12 LION13 !MESSAGE LION10 There is a lion here, limping about and roaring with fury! !MESSAGE LION11 There is a lion here, purring docilely. !MESSAGE LION12 There is a sleeping lion here, with a thorn in its paw. !MESSAGE LION13 There is a sleeping lion here. !MESSAGE MANTM1 You are in the manticore's lair - a large cave with an unpleasant smell of carrion. The floor is littered with the remains of creatures human and inhuman. A strange being is prowling here. Its face is like a man's, in size it is like a lion, in colour it is red. It has three rows of teeth and a long tail armed with stings. The escape routes are to the west and north. !MESSAGE MANTM2 You are in the lair of the manticore. !MESSAGE MILLET1 There is a pile of millet on the ground here. !MESSAGE MILLET2 A quantity of millet. !MESSAGE MILLRM1 You are in the Astrologer's Sanctum - a well-made chamber whose walls are decorated with numerous cabalistic symbols. The only exit is by an archway to the north. !SWITCH MNULL MMESS1 MMESS2 MMESS3 MMESS4 !MESSAGE MILLRM2 You are in the Astrologer's Sanctum. !SWITCH MNULL MMESS1 MMESS2 MMESS3 MMESS4 !MESSAGE MMESS1 On the floor the word A K Y G G A N E G V R I S H W is inscribed. !MESSAGE MMESS2 The letters A G G A N R W are exposed where the millet has been pecked away. !MESSAGE MMESS3 The letters Y N G V I are exposed where the millet has been pecked away. !MESSAGE MMESS4 The letters K N E V I S H are exposed where the millet has been pecked away. !MESSAGE MILLRM3 !SWITCH MNULL MMESS1 MMESS2 MMESS3 MMESS4 !MESSAGE MNULL !MESSAGE MONKM1 In this room your eyes are naturally drawn to a painting of three monkeys, one with its eyes shielded, a second with its ears covered, and the third with its mouth gagged. !SWITCH MNULL MONKSEC !MESSAGE MONKSEC There is a flight of stairs upwards and a secret exit to the south, which you had originally overlooked. !MESSAGE MONKM2 You are in the room with the monkey puzzle. !MESSAGE MONSTM1 !SWITCH MNULL MNULL MONSTDEAD !MESSAGE MONSTDEAD The hideously charred corpse of the Monster of Murdac is lying on the ground here. !MESSAGE MYRRH1 There is a quantity of precious myrrh here! !MESSAGE MYRRH2 Some myrrh. !MESSAGE OGREM !SWITCH OGREM1 OGREM2 !MESSAGE OGREM1 Two ogres here are busily engaged in building activities. They take no notice of you. !MESSAGE OGREM2 There are two ogres here, dressed as bricklayers, resting from their labours. !MESSAGE PATH1M1 You are in a garden of luxurious flowers. There are paths to the north, east and south. !MESSAGE PATH1M2 You are in the flower garden. !MESSAGE PATH2M1 You are in a rock garden. There are paths to the east, southeast and south. !MESSAGE PATH2M2 You are in the rock garden. !MESSAGE PATH3M1 You are in a garden of exotic vegetables. There are paths to the north, east and south. !MESSAGE PATH3M2 You are in the vegetable garden. !MESSAGE PATH4M1 You are in a shrubbery. There are paths to the north and east. !MESSAGE PATH4M2 !SWITCH PATH420 PATH421 !MESSAGE PATH420 You are in the shrubbery. !MESSAGE PATH421 You are in the shrubbery, where you found the rod under wood. !MESSAGE PATH5M1 You are in the garden at the remnants of a bonfire. There are paths to the north, west and northwest. !MESSAGE PATH5M2 You are in the garden by the remnants of the fire. !MESSAGE PERIM1 There is a pile of sparkling peridots here! !MESSAGE PERIM2 Some sparkling peridots. !MESSAGE PIGM1 There is a pigeon waddling about here. !MESSAGE PIGM2 A pigeon. !MESSAGE PILLOWM1 !SWITCH PILLOW11 PILLOW12 !MESSAGE PILLOW11 There is a pillow on the bed. !MESSAGE PILLOW12 There is a pillow here. !MESSAGE PILLOWM2 A pillow. !MESSAGE PINM1 There is a diamond tiepin here! !MESSAGE PINM2 A diamond tiepin. !MESSAGE PLATF1 You are on a deserted railway platform. The haunted house is to your south and the platform extends east and west. You can hear the sounds of passengers although you can see nobody. !MESSAGE POOLM1 The passage ends in a pool of sparkling water, in which wondrously flickering patterns can be seen. The only way out is to the northeast. !MESSAGE POOLM2 You are at the pool of sparkling water. !MESSAGE PRISM11 You are in the ante-room to the dungeons. There are steps up and down from here and a passage to the south over which there is a notice, reading 'ONLY ONE VISIT ALLOWED'. !MESSAGE PRISM12 You are in the ante-room to the dungeons. !MESSAGE PRISM21 You are in the deepest and dankest dungeon. Steps lead up. !MESSAGE PRISM22 You are in the deepest dungeon. !MESSAGE RIBBON1 There is a short length of pink ribbon here. !MESSAGE RIBBON2 A pink ribbon. !MESSAGE RODM1 There is a long thin metal rod here. !MESSAGE RODM2 A metal rod. !MESSAGE SANDPM1 You are in a small well-maintained sandpit. The only way out is to the south. !MESSAGE SANDPM2 You are in the sandpit. !MESSAGE SCENTM1 There is a flask of expensive French perfume here! !MESSAGE SCENTM2 The centaur sentry's scent. !MESSAGE SCROLL1 There is a scroll here. !MESSAGE SCROLL2 A scroll. !MESSAGE SECRETM1 You are in a secret cavern with newly-created passages, the size of a large human being, to the east and west. There is also a low crawl to the south. !MESSAGE SECRETM2 You are in the secret cavern. !MESSAGE SENTRYM1 The north-south passage comes to what appears to be a sentry-post to your north. !MESSAGE SENTRYM2 You are south of the sentry-post. !MESSAGE SENTRYM3 You are at Centaur Point, a small area looking something like a cross between a stable and an office. !MESSAGE SENTRYM4 You are at Centaur Point. !MESSAGE SHAWM1 There is an antique shawm here! !MESSAGE SHAWM2 A shawm. !MESSAGE SLIMEM1 You are in a low damp chamber whose walls are covered in noxious slime. The only exit is a low crawl north. !MESSAGE SLIMEM2 You are in the slimy chamber. !MESSAGE STAFFM1 There is a wooden staff here. !MESSAGE STAFFM2 A wooden staff. !MESSAGE STARTM1 You are standing outside the door of a small flint hut. There are paths off to the east, west and south. !SWITCH DOOR0 DOOR1 DOOR2 !MESSAGE STARTM2 You are standing outside the house. !SWITCH DOOR0 DOOR1 DOOR2 !MESSAGE STATUE1 There is a finely carved ivory statuette here! !MESSAGE STATUE2 An ivory statuette. !MESSAGE STONE1 !SWITCH STONE10 STONE11 !MESSAGE STONE10 There is a dull toadstone here. !MESSAGE STONE11 There is a gleaming toadstone here! !MESSAGE STONE2 !SWITCH STONE20 STONE21 !MESSAGE STONE20 A dull toadstone. !MESSAGE STONE21 A gleaming toadstone. !MESSAGE SWORDM1 There is a gleaming sword here, whose mighty blade bears the proud name of Greydeath! !MESSAGE SWORDM2 The sword Greydeath. !MESSAGE TOADM1 !SWITCH TOADM10 TOADM11 !MESSAGE TOADM10 A loathsome toad is crawling about here. !MESSAGE TOADM11 There is a dead toad here. !MESSAGE TOADM2 A dead toad. !MESSAGE TROLLM A twenty-three stone troll is standing guard over the southern exit. !MESSAGE TUNNELM1 You are in an extremely long dark east-west tunnel. The ground is stony, almost as if it had been designed to carry railway tracks. !MESSAGE TUNNELM2 You are in the railway tunnel. !MESSAGE WALL1M1 !SWITCH WALL10 WALL11 WALL12 !MESSAGE WALL10 The south-north path ends at a nearly-completed brick wall. There is a still a gap through which you can pass. !MESSAGE WALL11 The south-north path ends at a newly-built brick wall which blocks your way. !MESSAGE WALL12 You are on a north-south path which passes through the ruins of a brick wall into the garden. !MESSAGE WALL2M1 You are in a long north-south alley that runs between two extremely high sheer walls. !SWITCH WALL20 MNULL !MESSAGE WALL20 The way south is blocked by a newly-completed brick wall. !MESSAGE WALL2M2 You are in the alley. !SWITCH WALL20 MNULL !MESSAGE WALL3M1 You are at the north end of the alley. It is impossible to proceed further as there is a very high wall to the north. !MESSAGE WALL3M2 You are at the north end of the alley. !MESSAGE WAXM1 There is a small wax dummy here. !MESSAGE WAXM2 A wax dummy. !MESSAGE WIGM1 There is a large blonde wig here. !MESSAGE WIGM2 A wig (which you are wearing). !MESSAGE WIZM11 !MESSAGE WOODM1 There is a long plank here. !MESSAGE WOODM2 A plank. !MESSAGE XROADM1 You are at a cross-roads. There are long dark passages to the north, south, east and west. !MESSAGE XROADM2 You are at the cross-roads. !MESSAGE ALRDESCFULL You have already had that object fully described to you. The object's full description currently reads: !MESSAGE ALRGOTSOME You've already got some! !MESSAGE ALRHELD You're already holding that! !MESSAGE ASYOUGATH As you gather the millet together you uncover a word inscribed on the floor. !MESSAGE BADWATER You take a drink of the water, which has a strong salty taste. Within ten seconds you suffer severe stomach pains, scream in torment, and die. !MESSAGE BOWLFULL The bowl is already full of water. !MESSAGE BRIEFMESS O.K. Short descriptions only from now on. !MESSAGE CANNKILL The cannibals rush for you and overpower you. It looks as though you will be taking an early bath once they've finished with the poor old missionary! !MESSAGE CANTCATCH You don't seem to be able to catch it. !MESSAGE CANTDO You can't do that! !MESSAGE CANTTAKE You can't take that! !MESSAGE CENTRUNS The hideous sound is too much for the sensitive ears of the centaur. It runs (gallops?) away without further ado. !MESSAGE CLANG You hear a metallic CLANG! as something falls on the ground by your feet. !MESSAGE CONDENSE There is a sudden CRACK in the fabric of space-time as an object appears in the room from thin air. !SWITCH STATUE1 !MESSAGE DEFIED "You defy ME, the Keeper of Murdac!" roars the old man. "Kill him!" The soldiers assail you with their various weapons and do indeed manage to kill you in lots of painful ways. !MESSAGE DIGHOLE You dig a small hole with your bare hands, but find nothing and so you fill it in again. !MESSAGE DONTSEE I don't see that around here! !MESSAGE DROPOBJ1 !SWITCH DROPOBJ3 DROPOBJ2 DROPOBJ3 !MESSAGE DROPOBJ2 You dropped one object. !MESSAGE DROPOBJ3 You dropped @x37 objects. !MESSAGE DROWNMESS You plunge into the water but find, to your surprise, that you have forgotten how to swim. This leaves you only one alternative: you drown. !MESSAGE EATSTONE You attempt to eat the toadstone and in fact manage to lick off its outer crust, which has the taste of a boiled sweet. You discover that there is a hard centre which, when you remove it from your mouth, is really a gleaming jewel of great value! !MESSAGE ELECMON The corpse, now reanimated, charges onto the live wires, currently a potentially unwise thing to do. There is a flash and it staggers back and falls down, apparently dead once again. !MESSAGE ELECTROCUTE As you step onto the wires there is a mighty flash and you are instantly electrocuted. Was that my imagination, or did I hear the chuckling of the mad scientist as he came in to exploit this new source of spare parts (you)? !MESSAGE FAMILIAR "Funny!" says the troll. "Someone like you was here a while ago, only the hair was different. I suppose I'd better let you pass." !MESSAGE FINDEIGHT Digging further, you discover a large hoard of pieces of Eight! !MESSAGE FIZZMESS There is a loud crackling sound as the rod comes into contact with the live wires and completes an electrical circuit. At the same time you hear sounds from the laboratory as though something might be stirring. !MESSAGE FUNNYBOWL You tilt the bowl and attempt to empty out the water, but, strange to tell, the liquid stays inside. Offhand I'd say there was something magical going on. !MESSAGE GHOSTTRAIN You step out into space, and find that you are on an invisible train which was waiting at the platform. This Ghost Train gives a piercing HOOT and then acclerates rapidly. As your eyes accustom themselves to your surroundings, you catch sight of various spectral commuters reading The Phantasmal Times and other ethereal papers. There is no sign of the ticket in-spectre. After a while the train halts and you dismount to discover that... !MESSAGE GIVER0 "One visit only, mind!" says the troll as you pass. !MESSAGE GIVERIB You enter the cell to discover a fair maiden chained to the wall. "My father's staff!" says she, as you enter. You hand it over to her and explain that you are here to rescue her. "Take this token to my father and he will know what to do." she replies, handing you a ribbon from her hair. You return into the ante-room. !MESSAGE GOBDIES The goblin gives an almighty groan and dies. !MESSAGE GOBWORD The goblin gives a yelp of pain. "Don't torment me! I'll tell you !SWITCH GOBW0 GOBW1 GOBW2 !MESSAGE GOBW0 how to get back from the far west! The word is AARON." !MESSAGE GOBW1 how to get back from the far west! The word is EXODUS." !MESSAGE GOBW2 how to get back from the far west! The word is PHARAOH." !MESSAGE GOESBLACK Suddenly everything goes black again. !MESSAGE GROYMESS Another time, perhaps. !MESSAGE HANDSFULL You can't carry anything more - you'll have to drop something before you can take that. !MESSAGE HANDSF2 You've had to leave some things, as your hands are now full. !MESSAGE HEARCRASH You see the Monster of Murdac as it strides along the corridor past the alcove. You then hear a mighty crash as it walks straight through the western wall. !MESSAGE HEARDROP You hear something drop, but you don't see it. !MESSAGE HEARGNO As you pass through the secret portal you hear the word GNOEVAL resonate from something in front of you. !MESSAGE HELPMESS Explore Murdac - a land of monsters and mysterious beings, a world where magic holds sway and things are not what they seem. Can you rescue the wizard's daughter, tame the lion, outwit the Old Man of the Sea, and escape alive from the haunted house? And what is the ultimate destiny of Frankenstein's monster? There is treasure too in the land of Murdac - and it is indeed a cunning adventurer who can finally fulfil his quest! Anyway, your mission is to make off with all the loot. I shall be your eyes and ears: instruct me with commands of one or two words. To move, give directions (N, NE, ..., NW, U, D, B(ack)). Other useful words include TAKE, DROP, LOOK, INV, SCORE, SAVE and QUIT, plus some that you must discover for yourself. Good luck! !MESSAGE HESNOT He's not here! !MESSAGE IFONLY If only you could! !MESSAGE INDARKMESS You enter the tunnel, which becomes darker as you proceed. !MESSAGE INJURED You are rather injured. !MESSAGE INLIGHTMESS You proceed down the long passage, until it comes out into daylight. !MESSAGE JOBS !SWITCH JOBS0 JOBS1 JOBS2 JOBS3 JOBS4 !MESSAGE JOBS0 and the words "... FAMOUS BARITONE ..." !MESSAGE JOBS1 and the words "... NOISE ABATEMENT CAMPAIGNER ..." !MESSAGE JOBS2 and the words "... SUSPECTED ... WEREWOLF ..." !MESSAGE JOBS3 and the words "... TOWN CRIER ..." !MESSAGE JOBS4 and the words "... PIONEER ... SIGN LANGUAGE ..." !MESSAGE KEEPGREET !SWITCH KEEPG0 KEEPG1 !MESSAGE KEEPG0 The passage widens into a vast chamber which is full of soldiers some armed with long bows, others with halberds, maces or swords. Their lord is a venerable man who is sitting in a very expensively upholstered armchair. "Greetings!" says the old man. "I am the Keeper of Murdac. Leave your possessions here with me and they will be safe until you return in triumph. You may take the lamp if it is needed on your quest." !MESSAGE KEEPG1 "Welcome again!" says the Keeper. "Leave all with me save the lamp." !MESSAGE KEEPTAK1 "Congratulations" says the Keeper. "You are now ready to join the companionship of Murdac. But there is still one thing you must now do." He hesitates, then asks: !MESSAGE KEEPTAK2 "What object will you take with you on your journey?" !MESSAGE KEEPTAK3 Darkness descends on the keep. There are sounds the like of which no other man could hear and still retain his sanity. Suddenly light returns and you see that... !MESSAGE LADYLAKE The waters in the centre of the lake part and a hand and arm appear, grasping a gleaming sword (surprisingly, not at all rusty!) The Lady of the Lake, if that is who it is, flings the sword towards you so that it lands at your feet. The hand then disappears, and the waters regain their calm. !SWITCH SWORDM1 !MESSAGE LAKEWAVE You see a sudden disturbance in the centre of the lake, caused you know not how. The waters then regain their calm. !MESSAGE LAMPOFF Your lamp has just switched itself off. !MESSAGE LAMPON Your lamp has just switched itself on. !MESSAGE LIONSLEEP As you wave the beads at the lion, it seems to be mesmerised, and in fact quickly falls into a deep sleep. !MESSAGE MANTDEATH You have no time to seek an antidote and die an agonizing death. !MESSAGE MISSION The cannibals are so attracted by the beads that they leave off their culinary activities, take the beads from you, and begin to play with them. The missionary takes the opportunity to leap from the cauldron, and with a breathless "Thank you, my son!" thrusts a book into your hand, and runs off. Examining his gift you see that it is in fact a Gutenburg bible! !MESSAGE MONSTPANG In the gloom you collide with the corpse, which is now very much alive. This is more than I can say for you, since it wrenches your head off your shoulders. !MESSAGE MONSTPLANK The corpse, now reanimated, lurches out onto the plank a second or two later. !MESSAGE MOREGAMES Another game, your Extravagance? !MESSAGE NAMES !SWITCH NAMES0 NAMES1 NAMES2 NAMES3 NAMES4 !MESSAGE NAMES0 The stone is worn but you can just make out the name "ARAC" !MESSAGE NAMES1 The stone is worn but you can just make out the name "GURON" !MESSAGE NAMES2 The stone is worn but you can just make out the name "GAMA" !MESSAGE NAMES3 The stone is worn but you can just make out the name "SCAPHIO" !MESSAGE NAMES4 The stone is worn but you can just make out the name "PHANTIS" !MESSAGE NHAPPENS Nothing useful happens. !MESSAGE NOCARRY You've no way of carrying it. !MESSAGE NODIG You can't dig here! !MESSAGE NODUMMY You're not holding the dummy. !MESSAGE NOFOOD The @x33 doesn't seem to want anything you've got. !MESSAGE NOFULLBOWL You don't have a full bowl with you. !MESSAGE NOKILL !SWITCH NOKIL0 NOKIL1 NOKIL2 !MESSAGE NOKIL0 A humanoid character with large white wings appears in the room, claiming to be the Guardian Angel of the @x33. Whether he is or not, he strikes you dead with a single blow. !MESSAGE NOKIL1 A middle-aged lady in white, dressed as a ballerina, appears on the scene. Maintaining that she is the Fairy Godmother of the @x33, she waves her wand and you fall down dead. !MESSAGE NOKIL2 A hideous form with no head materialises before you. It grunts that is the Guarding Spirit of the @x33, and promptly devours your soul. !MESSAGE NOLOCK I can't see a lock! !MESSAGE NOPASSCENT The centaur blocks your way and declines to let you pass. !MESSAGE NOPIN You don't have a pin. !MESSAGE NOREAD I see nothing to read. !MESSAGE NORMMESS O.K. Normal descriptions from now on. !MESSAGE NOSWIM You can't swim here! !MESSAGE NOTALIVE It's not alive! !MESSAGE NOTBARE It's hard to do that using just your fingers! !MESSAGE NOTHELD You're not holding that! !MESSAGE NOTHERE It's not here! !MESSAGE NOTHINGM Nothing. !MESSAGE NOTHNGHERE There's nothing here you can take easily. !MESSAGE NOTHOLDING You're not holding anything! !MESSAGE NOTLOCK The door is not locked. !MESSAGE NOTROLLPASS "Oy!" says the troll, "You can't go in there again!" He turns you back. !MESSAGE NOTWORTH You have nothing worth putting in the bowl. !MESSAGE NOVISIT You enter the cell to discover a fair maiden chained to the wall. "Help! A stranger!" she screams. The troll enters and bundles you out, muttering "Another bloody tourist." !MESSAGE NOWATER There's no water here! !MESSAGE NOWAYMESS You can't go in that direction! !MESSAGE OGREBOP !SWITCH OGBOP0 OGBOP1 !MESSAGE OGBOP0 A furious ogre enters. "Take that for wrecking our wall!" he says, and bashes you with his trowel. He then storms out. !MESSAGE OGBOP1 The second ogre enters. "Wreck our wall, would you!" he says, and pummels you with a heavy brick. This time you do not survive. !MESSAGE OKMESS OK. !MESSAGE OMJUMP As you pass under one of the trees the Old Man of the Sea leaps out, landing on your back, and clutching your neck extremely tightly with his long skinny arms. !MESSAGE ONLYONE The sign says "ONLY ONE VISIT ALLOWED". !MESSAGE OOZEMESS The word indicated by the air molecules is OOZELUMNY. !MESSAGE PIGGOBBLE The pigeon gobbles up your piece of bread, becoming rather more docile as a result. !MESSAGE PIGMILL The pigeon pecks at some of the millet, exposing a word on the floor. !MESSAGE PLATMOVES The platform seems to move with you, and you make no progress. !MESSAGE POLTDIE1 You re-enter the haunted house, and are promptly flattened by an iron bedstead, thrown by a poltergeist which has now much improved its aim. !MESSAGE POLTDIE2 Standing still, you are an easy target for a poltergeist. A large filing cabinet crushes you very effectively. !MESSAGE POLTDIE3 A huge dresser flies across the room and strikes you a glancing blow, sufficient to kill you however. !MESSAGE POLTDIE4 You are struck with great force by a flying sofa, which sends you into oblivion. !MESSAGE POLTMESS A large item of furniture flies across the room, hurled by a poltergeist. With the aid of the pillow you fend it off, !SWITCH POLTM0 POLTM1 POLTM2 !MESSAGE POLTM0 slightly bruising your left arm. !MESSAGE POLTM1 and it narrowly misses your face. !MESSAGE POLTM2 slightly bruising your right arm. !MESSAGE POLT1 !SWITCH POLT10 POLT11 POLT12 POLT13 POLT14 POLT15 POLT16 POLT17 POLT18 POLT19 !MESSAGE POLT10 You are in a large bedroom in the haunted house. !SWITCH POLTEX !MESSAGE POLT11 You are in the kitchen of the haunted house. !SWITCH POLTEX !MESSAGE POLT12 You are in the living-room (!) of the haunted house. !SWITCH POLTEX !MESSAGE POLT13 You are in the dining-room of the haunted house. !SWITCH POLTEX !MESSAGE POLT14 You are in the study of the haunted house. !SWITCH POLTEX !MESSAGE POLT15 You are in the billiard room of the haunted house. !SWITCH POLTEX !MESSAGE POLT16 You are in a small bedroom in the haunted house. !SWITCH POLTEX !MESSAGE POLT17 You are in a huge bathroom in the haunted house. !SWITCH POLTEX !MESSAGE POLT18 You are in the pantry of the haunted house. !SWITCH POLTEX !MESSAGE POLT19 You are in the scullery of the haunted house. !SWITCH POLTEX !MESSAGE POLTEX There are exits to the north, south, east and west. !MESSAGE PREVIS As you gaze into the pool you fancy that you see some strange vision, but unfortunately you are unable to discern any detail. !MESSAGE PROTECTED The medicinal effects of the toadstone counteract the venom and you soon recover. !MESSAGE PULLPLANK You succeed (with a certain amount of difficulty) in pulling the plank across and picking it up. !MESSAGE PULLWOOD In taking the plank you pull its contents with it. They land at your feet. !MESSAGE QUITQUERY Are you certain you want to quit? !MESSAGE READBIBLE The bible is in German. You can make out one rather improbable part about Moses crossing the Red Sea, but little else. !MESSAGE RECOGNISED "You may not pass." says the troll. "It is said that he who enters this cell twice will free the wizard's daughter." He is not impressed when you tell him that that was what you intended to do! !MESSAGE REDSEA There is a mighty roaring sound as the waters part, revealing a path across the causeway to the island. !MESSAGE REDSEA2 The waves part again, revealing a path back to the beach. !MESSAGE REPELLED The cannibals are in the way between you and the cauldron. !MESSAGE RODONPLANK You throw the rod so as to land on top of the plank. !MESSAGE ROUNDNECK The old man of the sea is on your back, his grip on your neck gradually tightening. !MESSAGE RU10 Under the plank you find a thin metal rod. !MESSAGE SCALDED Suddenly a jet of boiling water strikes you in the back of the neck. You run yelping from the room. !MESSAGE SCALDOM Suddenly a jet of boiling water strikes you from the rear. The old geezer yelps like a scalded cat (literally!) and runs off on all fours. In curiosity you follow him out of the room but he has vanished. !MESSAGE SCORE1 If you quit now you will have scored @x34 points out of a maximum of 250. !MESSAGE SCORE2 You scored @x34 points out of a maximum of 250. !MESSAGE SCORPDIG You dig in the sand and unearth a scorpion, which promptly stings you. Ow! !MESSAGE SCORPFIND You dig in the sand and unearth a scorpion. Just as it is about to sting you, you slice it into pieces with Greydeath. The fragments vanish into thin air. !MESSAGE SCROLLREAD "PROMBO VAPITACEOUS MOOZLE, WURBOTURBO SPLATOMULE: PROPHALUDGEOUS HAGMINE POOZLE, GNODULATIOUS PROPODULE." you declaim. There is a yellow flash and you find that you have turned into a boiled egg. Since this game was really intended for humans, I'm afraid that's your lot. !MESSAGE SECONDWORD O.K. "@x33!" !MESSAGE SEETHORN Examining the sleeping animal, you see that it has a thorn in its paw. !MESSAGE SHEREADS You re-enter the cell bearing the scroll, which you hand to the wizard's daughter. She reads the document and promptly disappears in a puff of mauve smoke. Perplexed and gratified, you wander back into the ante-room, to be met by an "Are you sure we haven't met before somewhere?" from the troll. !MESSAGE SILLY Don't be silly. That won't help much. !MESSAGE SINKMESS You throw the @x33 into the water. It sinks like a stone. !MESSAGE SNUFFED Oh dear! You seem to have snuffed it. !MESSAGE STRANGLED The old man tightens his grip further, finally throttling you. !MESSAGE STUNG As you enter the manticore's lair the creature's tail whips into action, stinging you across the face. !MESSAGE SWORDTWITCH Suddenly the sword Greydeath twitches violently in your hands. !MESSAGE TAKETHORN You extract the thorn from the lion's paw with great care, to discover that it is in fact a diamond tiepin! The lion awakes, feeling much more amicable towards you. !MESSAGE TARA WHAAAAAAHHHHEEE!!! !MESSAGE THPLANKM You throw the plank so as to lie across the wiring. !MESSAGE TOADDIE You make a grab for the toad, which leaps away. In trying to catch it you clumsily tread on it, crushing the life out of it. !MESSAGE TOADGIFT "Thank you" says the toad. "May this stone serve you well." It crawls into a little hole somewhere and fetches out a small object which it deposits at your feet before crawling away again. !MESSAGE TOADSP0 To your surprise the toad speaks. "Spare me!" it says "And I will give you a precious jewel, which will save you from many torments." !MESSAGE TOADSPEAKS Do you still want to pick the toad up? !MESSAGE TOODARK It's too dark to read here. !MESSAGE TOOKOBJ1 !SWITCH NOTHNGHERE TOOKOBJ3 TOOKOBJ4 !MESSAGE TOOKOBJ2 !SWITCH TOOKOBJ4 TOOKOBJ3 TOOKOBJ4 !MESSAGE TOOKOBJ3 You took one object. !MESSAGE TOOKOBJ4 You took @x37 objects. !MESSAGE UNEARTH You dig a small hole in the sand and are rewarded by the discovery of a brass lamp. However the lamp is off and there appears to be no means of switching it on. !MESSAGE VERBMESS O.K. Long-winded descriptions from now on. !MESSAGE VISION As you look into the bowl the sparkling water begins to bubble and boil away into a cloud of steam. Before this disperses you catch sight of a strange vision. A man in flowing robes is standing by the side of a large expanse of water. As the vision fades, you see him wave !SWITCH MNULL VISM1 VISM2 VISM3 !MESSAGE VISM1 a staff. !MESSAGE VISM2 a ribbon. !MESSAGE VISM3 a scroll. !MESSAGE WALLBLOCK Your way is blocked by a newly-completed wall. !MESSAGE WALLD1 The ogres finish building the wall, and then knock off for a rest. !MESSAGE WALLD2 The ogres finish the wall behind you, cutting off your retreat. !MESSAGE WALLD3 Two ogres ahead of you finish a wall they are building and knock off for a rest. !MESSAGE WALLF1 The wall falls down on top of you, crushing you somewhat severely. !MESSAGE WALLF2 There is a sudden gust of wind and the wall to your south comes tumbling down with a mighty crash. !MESSAGE WATERBACK Suddenly the waters rush back into position, engulfing the causeway once more. !MESSAGE WATERB2 To you horror the waters rush back into position. Trapped as you are on the causeway, you are quickly engulfed by the torrent and drowned. !MESSAGE WELCOMEM Welcome to the Land of Murdac. This is version 1.07. Type HELP for basic information, and BLURB for the full story. All comments to JRP1 please. New commands BRIEF/TERSE, NORMAL/STANDARD, VERBOSE and EXAMINE have now been added. !MESSAGE WELLDONE You throw the sword back into the lake. The Lady of the Lake stretches her hand out of the deep and catches it once more. A barge draws up, drawn by two white hippopotami. You enter, and are taken off in triumph to the land of Heroes of Murdac. You have scored 250 points out of a maximum of 250. Well done! !MESSAGE WIZM1 At the top of the hill there is an aged man, whom, from his dress, you observe to be a wizard. "My daughter!" he says. "Where is she? Find her and I will richly reward you." He then vanishes into thin air leaving just his staff. Looking round you, you see that... !MESSAGE WIZM2 The wizard appears once more. "That's her ribbon!" he says. "You have found her." You explain the nature of his daughter's plight, and he takes the ribbon from you, handing you a scroll, saying "May this aid you on your quest." He then vanishes again. !MESSAGE WIZM3 At the top of the hill you find the wizard and his daughter, happily re-united. They congratulate you on fulfilling your quest, and disappear, leaving a munificent reward behind. !MESSAGE WIZZAP "You have failed in your quest?" moans the wizard, who is waiting for you at the top of the hill. He then casts a strange spell, whereby lightning flashes from his nostrils, striking you and causing you to suspend breathing. !MESSAGE YOUWONTHELP You reenter the cell to be met by hysterics from the wizard's daughter. "You can't help me!" she wails. "Leave me alone!" The troll enters and forcibly removes you from the cell, muttering "Lock 'em all up, that's what I say!" !MESSAGE YUMMY You eagerly devour the @x33. Slurp! That was delicious! !MESSAGE BLURBMESS MURDAC - Background information The forests of Murdac are some of the oldest, as well as the wildest and most isolated, in the whole land. Also they don't take kindly to intruders -- although living on the outermost fringes of the great forest, you have never been able to penetrate it: every time that you followed a track into the dark woods, you found that it somehow turned and took you away from the secret heartlands of Murdac. It became almost an obsession with you. 'What is the secret of Murdac?' you wondered, frustrated at every turn. In the land where nobody ever set foot, there was surely some dread mystery to be revealed. In your village there lived a wise woman, Duessa by name. Some folk said that she was a sorceress, and could cause the milk to go sour just by scratching her nose. Others said that the reason old Uncle George had only lived to be 91 (when his father had reached 102) was because he had tripped over Duessa's cat when drunk. Obviously a woman to be wary of, especially if you wanted to make sure that you came home without growing an extra ear on the way. She certainly knew a few secrets that nobody else in the village did -- like what it meant if you saw a rabbit hiccuping on the night of the full moon -- and if anyone could tell you about Murdac, it was Duessa. So you made your way to her ancient cottage, knocked on the door, and waited. "Come in, my young friend," said a quavering voice. "I've been expecting you!" The inside of Duessa's cottage was very dirty, and full of strange and interesting objects -- glass apparatus billowing noxious vapours, a stuffed platypus, icosahedral prisms, and many other curios. Duessa muttered incoherently to herself. "This one looks brighter than the last ... it is time that the quest were done ... the wizard needs help ... but as for the manticore..." were fragments that you heard as she busily pottered around her cottage looking for something. The wise woman returned, bearing an old teapot. Just as you were wondering whether to accept a cuppa, she tipped the contents of the pot into the hearth and gazed at them raptly. Deciding that the omens were favourable, Duessa gave you your instructions, and you left her cottage. As you departed, you heard the wise woman mutter, "I hope he gets there before the ogres have finished. But I suppose the Old Man of the Sea will get him anyway..." Following Duessa's instructions, you went down a certain path at midnight on Hallowe'en, until you came to a clearing. There you drew a pentacle, stood within it, and shouted "PANGORY PANTHRODULAM" - words of power that she had given you. Was the intonation right? If not you might find yourself rotting in a gloomy dungeon for ten thousand aeons, tormented by creatures from the lower planes. But nothing like that happened. The trees moved around you, exposing a long path which stretched away for miles. You followed it, with trepidation, and the trees closed up behind you. After several hours of tireless trudging, you arrived at your goal. But... but... was THIS Murdac? A beautifully laid out garden? A small stone hut? Where were the ogres? The cannibals? The Old Man of the Sea? Now is the time for you to explore further, but do be VERY careful -- it's not every adventurer who is going to survive in this totally alien world! !END