8L2C)pJJJJ IH(ȱH:=IH[H`@HcH  $ +   I/H`JLNGȄBȄF aK  haaFF  mJm# KKJ UJ )J ۈ) ;J3ȱJFȱJGJKaȄM  aaNNJFLGJL LEAMON DUNGEON DESIGNER4 VERSION 7.0; Z BY DON BROWN/JOHN NELSONy7.0 MODS BY TOM ZUCHOWSKI I/O MODS BY DOUG TRUEMAN 10/17/88LAST UPDATE 11/3/88PRODOS CONVERSION 5/26/90 TJZ :(21)8 :"EAMON ADVENTURE"!REV.DATE!/EAMON.000.INTRO!(MAIN.PGM%F!/MAKE.FAST.START?!MAKE.ARTS.MONSd!,LC.UC.SOURCEP! LC.UC.CONV%! .LCASE.K.SOURCE*! LCASE.KILLER4! /SRCH.RTN.SOURCE) ! SEARCH.ROUTINE!@ LEADIN 0,DUNGEON.EDITH"F@! ,DUNGEON.LISTj! -PRINT.MANUALSy!/DESIGNER.MANUAL}<t!+.UTILITY.MANUAL! ,RESIZE.FILESF !.EAMON.DDD' .EAMON.DDD.V7.0!/REV.1AUG90 '/EAMON.INIT.V7.0!7/EAMON.EDIT.V7.0#B!%/EAMON.LIST.V7.07~!&WORK.PREFIXF? &PRODOS `DaElH$?EGvѶK+`L HHLy XP LM ŠϠĠӠS)*+,+`F)) (*=GJFjJJA QE'+ '== `@ STSP8QSS8 m P o R(8RR'S GUILD":"7625 HAWKHAVEN DR.":"CLEMMONS, NC 27012" 7:"THIS SET OF EAMON DESIGNER PROGRAMS HAS BEEN ADOPTED FROM DOS 3.3 EVERY EFFORT HAS BEEN MADE TO ENSURE THAT THE CONVERSION WAS COMPLETE."T :"HOWEVER, IT IS POSSIBLE THAT SOMETHING DISK NOW."::"ENTER THE PREFIX OF THE DISK/DIRECTORY WHICH IS TO BE INITIALIZED FOR AN EAMON ADVENTURE, OR HIT TO USE THE DEFAULT PREFIX: ";PN$ PN$""PN$PW$ (PN$,1)"/"PN$"/"PN$ 120 D$"PREFIX"PN$ === GET IN ABLE TO ALLOW ROOM FOR ADVENTURE DEVELOPMENT." s:"IF YOU NEED TO FORMAT A DISK BEFORE YOU CONTINUE, TYPE AT THE NEXT PROMPT TO HALT THIS PROGRAM." x:"DEFAULT PREFIX: ";::PW$: }216,0::"IF NECESSARY, INSERT THE NEW ADVENTURE 8/1/90*D$(4):C3$(34):(21)j D$"OPEN WORK.PREFIX":D$"READ WORK.PREFIX":PW$:D$"CLOSE"D$"PREFIX":PX$dD$"BLOAD SEARCH.ROUTINE,A$5000"2 n:"*NOTE* IT IS RECOMMENDED THAT YOU HAVE AT LEAST 200 BLOCKS OF FREE SPACE AVAILR :3:"EAMON ADVENTURER'S GUILD":"7625 HAWKHAVEN DR.":"CLEMMONS, NC 27012":::"EAMON DUNGEON DESIGNER DISK V7.0"15:"LAST UPDATE: 8/1/90"IT TO ABORT: ";PX$,lPX$""45Kv(PX$,1)"/"PX$"/"PX$PW$PX$:D$"OPEN WORK.PREFIX":D$"WRITE WORK.PREFIX":PW$:D$"CLOSE":45$:C100,200,300,400,600,500< dD$;"RUN EAMON.INIT.V7.0"Z D$;"RUN EAMON.EDIT.V7.0"x ,D$;"RUN EAMON.LIST.V7.0" D$;"RUN PRINT.MANUALS" :37,255: X:8:"THE CURRENT DEFAULT PREFIX IS:":" ";PW$b::"TYPE NEW DEFAULT PREFIX OR HW EAMON ADVENTURE"::" 2. EDIT DATA FILES":x F" 3. LIST DATA IN A DUNGEON'S FILES"::" 4. PRINT MANUALS": K" 5. CHANGE DEFAULT PREFIX"::" 6. STOP"::"PRESS KEY FOR YOUR CHOICE (1-6) : "; P16368,0:C$:C(C$):C1C680 ZCX":D$"READ WORK.PREFIX":PW$:D$"CLOSE" -:9);"EAMON ADVENTURE SYSTEM":11);"ADVENTURE DESIGNER":13);"SELECTION MENU":14);"VERSION 7.0" /:"DEFAULT PREFIX: ";::PW$: 28:"SELECT PROGRAM FUNCTION DESIRED..."1 <:" 1. INITIALIZE NE MIGHT HAVE BEEN MISSED. IF YOU GET STUCKAT A PROMPT, TRY USING UPPER-CASE TEXT." :"IF YOU RUN ACROSS ANY SUCH PROBLEMS, WE WOULD VERY MUCH LIKE TO HEAR ABOUT THEM. THANKS. #22:"(HIT ANY KEY TO CONTINUE)";:A$:* (D$(4):D$"OPEN WORK.PREFIFORMATION 216,0x :12:"EAMON DUNGEON INIT":8:"BY DON BROWN & JOHN NELSON":8:"V7.0 MODS BY TOM ZUCHOWSKI" 8:"NAME OF ADVENTURE (MAX. 25 CHARACTERS)"::" ";::25); 5:":";AN$:AN$"A"AN$"ZZZZ"(AN$)25240 ::((40(AN$))2)1::AN$:N ,5:"AUTHOR NAME (MAX 25 CHARACTERS)":A2$:(A2$)25300| 10:RL38:"LENGTH OF: (MIN 10 : MAX 80)" " ROOM NAMES (DEFAULT 38): ";A$:A$""530 RL(((A$))):RL10RL80500 12:LRRL34:ML30:" MONSTER NAMES (DEFAULMONSTER (WITHOUT VIEWING OLD)"&`" 5. DUPLICATE A ROOM, ARTIFACT":" OR MONSTER"f" 6. SPECIAL FUNCTIONS"" 7. QUIT"":"ENTER KEY FOR YOUR CHOICE (1-7) ";,A$:A$(12)LKLK:1501A$(9)CICI:1506U "YOUR CHOICES ARE--"::" 1. ADD NEW ROOM,ARTIFACT,EFFECT OR":" MONSTER"[ " 2. EDIT OLD ROOM,ARTIFACT, EFFECT":" MONSTER" " 3. LIST NAMES OF ROOMS, ARTIFACT,ETC" " 4. REPLACE OLD ROOM,ARTIFACT OR":" EAMON.ROOMS,L";LR:D$;"OPEN EAMON.MONSTERS,L";LM:D$;"OPEN EAMON.ARTIFACTS,L";LA:D$;"OPEN EAMON.DESC,L242"x Z35000 60000 :T14:T$(T);"-";N%(T);" ";:::3:4);"EDITING ";:DU$:("LOCK",1,LK4);: " ";::("CONT.ISRT",1,9CI):DV$,1)"7"ĺ:"THIS IS NOT A VERSION 7.0 EAMON. USE THEPROGRAM NAMED 'DUNGEON EDIT' FOR THIS ADVENTURE DISK.":D$;"CLOSE": <ND(ND$):216,0 AD$;"OPEN EAMON.DESC":D$;"READ EAMON.DESC":N%(1),N%(2),N%(3),N%(4),LR,LM,LA:D$;"CLOSE"m FD$;"OPEN T PREFIX)":PN$:PN$""PN$PW$@ "(PN$,1)"/"PN$"/"PN$I #30\ %D$"PREFIX"PN$e (52 2D$;"OPEN EAMON.NAME":D$;"READ EAMON.NAME":DU$:ND$:DV$:D$;"CLOSE":55 4D$"CLOSE":DU$""ĺ:"*ERROR* - CAN'T FIND 'EAMON.NAME' FILE.": 7( !"#$%&'()*+,-./012345NGEON EDIT":14:"VERSION 7.0":109 D$"PREFIX":PX$ D$"OPEN WORK.PREFIX":D$"READ WORK.PREFIX":PW$:D$"CLOSE":"DEFAULT PREFIX: ";::PW$::! "IF NECESSARY, INSERT ADVENTURE DISK NOW,THEN TYPE ADVENTURE PREFIX:":"(HIT TO USE DEFAUL+ DUNGEON EDIT 7.0 BY TOM ZUCHOWSKI k ADAPTED FROM 'DUNGEON EDIT' BY JOHN NELSON & DON BROWN w8/1/90PRODOS CONVERSION 5/26/90 TJZ EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 $ D$(4)::5:11:"EAMON DU.DDD.V7.0,@40"&DUNGEON INIT 7.0311/3/88VPRODOS CONVERSION 5/24/90 TJZtEAMON ADVENTURER'S GUILD7625 HAWKHAVEN DR.CLEMMONS, NC 27012N EAMON.DESC":D$"WRITE EAMON.DESC"A\0:0:0:0:LR:LM:LAPfD$"CLOSE"{pD$"BSAVE SEARCH.ROUTINE,A$5000,L$11B"r888t216,0:::"INSERT THE DESIGNER DISK, THEN HIT ANY KEY TO CONTINUE: ";:A$:x884zD$"PREFIX"PX$:D$"RUN EAMON";ALD23:"OK? (Y/N)";:NA$:A$"N"A$"n"ĺ:500SXA$"Y"A$"y"590*D$"OPEN EAMON.NAME":D$"WRITE EAMON.NAME"4AN$:6:"7.0":CL$>D$"OPEN EAMON.ROOMS":D$"OPEN EAMON.MONSTERS"HD$"OPEN EAMON.ARTIFACTS":D$"CLOSE"%RD$"OPET 30): ";A$:A$""550< ML(((A$))):ML10ML80530 &13:LMML62:AL30:" ARTIFACT NAMES (DEFAULT 30): ";A$:A$""570 0AL(((A$))):AL10AL80550:17:LAAL42:"NAME LENGTHS:":" ROOMS......";RL:" MONSTERS...";ML:" ARTIFACTS..(A$)1(A$)7300&@C(A$):A$P^C1000,2000,3000,4000,5000,6000,7000yND$""DV4:ND$"6":D$;"CLOSE":60DV5:D$;"CLOSE":60 >> SELECT WHAT TO WORK ON2:958:"DO YOU WANT TO ";C$;" A ROOM, ARTIFACT,":" EFFECT, OR MONSTER (HIT KEY, RAEM) ";ZA$:A14:A$("RAEM",A,1)Ă:A14:A$("raem",A,1)Ă:520dA$:X///ROUTINE TO INPUT I$, HAVING BEEN PASSED I2$YTLTL238:605Z958:TL5Ė1:V(37):I1TL:U$;:::V1]I$"":IS0 bI2$;:TL5ĺU$;CE MONSTER&:700:RECNO600:14209 >> DUPLICATEVC$"DUPLIC.":500:TYPEAC$"DUP. FROM":700:FROMNO:C$"CREATE":700:NCNONON%(TYPE)ĺ"CREATING A ";T$(TYPE);" FROM ANOTHER.":N%(TYPE)N%(TYPE)1TYPE5100,5200,5300,5400  >>:(37)1:958j/ >> REPLACE ITEMLC$"REPLACE":500:TYPEAjTYPE4100,4200,4300,4400 >> REPLACE ROOM700:1120h >> REPLACE ARTIF.r700:RECNO200:1220 >> REPLACE EFFECT700:RECNO400:1320 0 >> REPLA: ";:TYP1Ğ NA$:: LPLP1:LP1930HCİ3600L A:D$;"PR#0" :"PRESS ANY KEY TO RETURN TO MENU";:A$:::150 >> PAGE BREAKLP0:HCĺ(12);"LISTING ";A$;"S"::$:" (PRESS ANY KEY TO CONTINUE) ";:16368,0:B$:P1235HCİ3600$* A:D$;"PR#0"]4 :"(HIT ANY KEY TO RETURN TO MENU) ";:A$:::150H F$"EAMON.MONSTERS":A$"MONSTER":3500 >> LIST STUFF ::LP0:"LISTING ";::A$;"S":::34,2:A1N%(TYP):D$;"READ ";F$;",R";A:NA$:D$:A$;"#";A;"MON.ROOMS":A$"ROOM":3500I F$"EAMON.ARTIFACTS":A$"ARTIFACT":3500 ::LP0:"LISTING ";:A$"EFFECT":A$;"S":::34,2:A1N%(TYPE):RECA400:20000:A$;" #";A HCāX1(DE$)40:(DE$,X,40):LPLP1: HCĺDE$:LPLP1 ::LPLP1:L>> EDIT MONSTER9j 700:RECNO600:24000:20000:1430N >> LIST THINGS C$"LIST":500:TYPEA:N%(TYPE)0ĺ::"NONE OF THAT TYPE TO PRINT!":::"(HIT ANY KEY TO CONTINUE) ";:A$::150 HCĺD$;"PR#1" TYPE3100,3200,3300,3400 F$"EAEA#TYPE2100,2200,2300,240064 >> EDIT ROOMZ>700:RECNO:21000:20000:1130q >> EDIT ARTIFACT700:RECNO200:20000:22000:X14:AL$(AFX)FML$(FMP%(AD%(2)),X):1230 >> EDIT EFFECT 700:RECNO400:20000:1330` ON%(3):RECNO400(DE$"";213000:18000:LKī150D<800Yx >> ADD MONSTERN%(4)N%(4)1:NON%(4):RECNO600NA$"":DE$"":D1MF:M%(D)DM%(D):14000:18000:31400:LKī150800 >> EDIT OLD ITEMC$"EDIT":500:TYP31100:18000:LK150!~8007 >> ADD ARTIFACT]N%(2)N%(2)1:NON%(2):RECNO200NA$"":DE$"":D1AF:AD%(D)DA%(D)::X14:AL$(XAF)FM$(FMP%(AD%(2)),X):12000:31200:18000:LKī150800 >> ADD EFFECTN%(3)N%(3)1:NLOCK-LKLK:C1N%(TYP)N%(TYP)1:1506150H >> ADD ITEMaC$"ADD":500:TYPEATYPE1100,1200,1300,1400L >> ADD ROOMVN%(1)N%(1)1:NON%(1):RECNO`NA$"":DE$"":D1ND:RD%(D)DD%(D)NO(DD%(D)0)::LTDLj11000t >> GET NUMBERC6:958:"INPUT NUMBER OF ";T$(TY);" TO ";C$" (1-";N%(TYPE);:") ";A$:NO(A$):NO1NON%(TYPE)(C$"CREATE")NO(NO)ġ:150  >> LOCKED <<*:C1020,2020,3010,4020,5020,150,150z150 >> DELETE FROM $(9)I2$" "I2$:610?A$(21)(I2$)A$(I2$,1):625YA$(21)A$" ":625A$(8)(I$)1I2$(I$,1)I2$:I$(I$,(I$)1):A$;:615A$(8)(I$)I2$I$I2$:A$;:605A$(8)605A$(27)ĺI2$:I$I$I2$:616615(31)ĺA$;:I$I$A$:I2$(I2$,2):615PvA$(5)ĺI2$;:I$I$I2$:I2$"":615{A$(2)(I$)āA1(I$):(8);::I2$I$I2$:I$"":615A$(4)I2$(I2$,2):610A$(9)CIISIS:H(36):V(37):39:1:(" I",IS1,1)::H1:V1:615A:(8);*d(I2$)āA1(I2$):(8);:AgA$:A$(13)619XhI$""ĺ(7);:605niA$(13)Č958:tjkA$(17)LKġ::900l(A$(31)A$(9)(A$(21)(I2$)))(I$)(I2$)TLĺ(7);:615nA$(31)ISĺA$;:I$I$A$:610'qA$ DUP. ROOM@NOFROM:RECNO:21000:20000:RECNC:NONC:1130SP >> DUP. ART.ZNOFROM:RECNO200:22000:20000:RECNC200:NONC:1230 >> DUP. EFF.NOFROM:RECNO400:20000:RECNC400:18000150 >> DUP. MONSTER" "NOFROM:24000:20000:RECNC600:NONC:1430> p >> SPECIAL FUNCTIONSz u:SF9::" SELECT FUNCTION OR PRESS ":: z" 1. (NOT USED)": " 2. DELETE LAST R,A,E,M": " 3. ADD TO NBR OF R,A,E,M":!" 4. TOGGLE LOCK MODE (NOW ";("OF'X(A$)::"NEW LABEL:";A$:A$""XMFMFMF1:10100G.'A$""150b.'M$(X)A$:XMFMFMF1m.'10100.' >> ARTIF. DATA ASSIGN.':X1AF:" ";X;". ";AL$(X)::" ";AF1;". NEW FIELD":" ";AF2;". RETURN TO PREVIOUS MENU">/'"INPUT FIELD NU:D$;"CLOSE ";A$-z1505-t' >> MON. DATA ASSIGN-~':X1MF:" ";X;". ";M$(X)::" ";MF1;". NEW FIELD":" ";MF2;". RETURN TO PREVIOUS MENU"-'"INPUT FIELD NUMBER:";A$:(A$)1(A$)MF2ĺ"TRY AGAIN, FROGFACE.":10120-'(A$)MF268008.==> ";A$9,4(A$,1)"?"ĺD$;"CAT";(A$,2)::A$:7200,>D$;"OPEN ";A$:D$"WRITE ";A$:AF:X1AF:AL$(X)::X1AF:DA%(X)::NF:F1NF:X14:FM$(F,X)::-HF1NF:X14:FD%(F,X):::MF:X1MF:M$(X)::X1MF:DM%(X)::DT:X0DT:TY$(X):1AF:AL$(X)::X1AF:DA%(X)::NF:F1NF:X14:FM$(F,X)::+F1NF:X14:FD%(F,X):::MF:X1MF:M$(X)::X1MF:DM%(X)::DT:X0DT:TY$(X)::D$;"CLOSE ";A$+150+  >> SAVE PARAM ,*6:958:"NAME OF PARAMETERS FILE:"::" =D$"PREFIX"PX$:216,0:D$"RUN EAMON.DDD.V7.0,@40":*G*D$"BYE"[* >> LOAD PARAM*6:958:"NAME OF PARAMETERS FILE:(? FOR CATALOG)"::" ===> ";A$*(A$,1)"?"ĺD$;"CAT";(A$,2)::A$:::7100C+D$;"OPEN ";A$:D$"READ ";A$:AF:X6,0z):10:"SELECT ONE OF THE FOLLOWING:"::" 1) RETURN TO DESIGNER MENU"::" 2) EXIT TO BASIC"::" 3) BYE")A$:A(A$):A1A37040)A$:A7070,7080,7090)7072)7075)::"INSERT DESIGNER DISK AND HIT A KEY: ";:A$:4*N:"::" 1. LOAD PARAMETERS"::" 2. SAVE PARAMETERS"::" 3. RETURN"i(:"INPUT NUMBER (1-3): ";(A$:A$"1"A$"3"6930(A$:(A$)7100,7200,150(X >> QUIT(bD$;"WRITE EAMON.DESC,R0":T14:N%(T)::LR:LM:LA(lD$;"CLOSE")v21 6. ADD A FORMAT":" 7. RETURN TO MAIN MENU":"INPUT THE NUMBER (1-7):";j'A$:(A$)1(A$)76830'A$:(A$)10100,10200,10300,10400,10500,10600,140' >> LOAD/SAVE PARAM.J(:10);"LOAD/SAVE PARAMETERS":6:958:"SELECT LOAD/SAVE FUNCTIO0(&TA$:(A$)15100,15200,15300,150E& >> CHANGE DATA ASSIGN&:08);"CHANGE DATA ASSIGNMENTS":6:"SELECT DATA TYPE:":" 1. MONSTER DATA":" 2. ARTIFACT DATA":" 3. CHANGE FORMAT POINTER":" 4. CHANGE A FORMAT"L'" 5. ARTIFACT TYPES":"%, >> CHANGE DEFAULTS%6:12);"CHANGE DEFAULTS":6:"SELECT DEFAULT TO CHANGE:"::" 1. ROOM VALUES"::" 2. MONSTER VALUES"%@:" 3. ARTIFACT VALUES"::" 4. RETURN TO MAIN MENU"::"INPUT YOUR CHOICE (1-4):";&JA$:(A$)1(A$)4673T. $n%$x"NBR ART. TO GEN:";NAt$A1NA:D$"WRITE EAMON.DESC,R";N%(2)201:"YOU SEE ARTIFACT ";N%(2)1;"."$D$"WRITE EAMON.ARTIFACTS,R";N%(2)1:"ARTIFACT ";N%(2)1:X18:0::N%(2)N%(2)1:$D$:150$ >> TOGGLE H/C%HCHC:150AN%(4)1:345008#"MONSTER NUMBER TO START ON:";MT#AN%(2)1:LA%AN%(4)M_#34500o#8 >> DELETE#BC$"DELETE":500:N%(A)N%(A)1#L6000# === INCREMENT#C$"INCRMNT":500:N%(A)N%(A)1:6000#LKLK:6000$d >> GEN. DUMMY ARUR CHOICE (1-";SF;"):";2"S$:S$(13)ĺ:150M"(S$)1(S$)SF6045":(S$)6045,6200,6300,6400,6500,6600,6700,6800,6900" >> GEN. DEAD"6:958:"ALL DEAD BODIES (Y/N):";"A$:A$"Y"A$"N"6110#A$:A$"Y"AN%(2)1:M1:LA%FON",LK31,3LK);")">!:" 5. GENERATE DUMMY ARTIFACTS"!:" 6. TOGGLE PRINTER (NOW ";("OFFON",HC31,3HC);")":SF76040!:" 7. CHANGE DEFAULTS"::" 8. CHANGE DATA ASSIGNMENTS"::" 9. LOAD/SAVE CUSTOMIZED PARAMETERS"":"INPUT YOMBER:";A$:(A$)1(A$)AF2ĺ"TRY AGAIN, FROGFACE.":10220S/'(A$)AF26800/'X(A$)::"NEW LABEL:";A$:A$""XAFAFAF1:10200/(A$""150/ (AL$(X)A$:XAFAFAF1/2(10200/<( === CHANGE FPTR ===t0F(6:958:"FOR WHICH ARTIFACT TYPE:":X0DT:" ";X;" = ";TY$(X);("..................................",1,20(TY$(X))((TY$(X))20));FM%(X):0P("INPUT NUMBER 0 - ";DT;:":";A$0Z((A$)DTY(A$)0Ģ(37):103200_(X(A$)1d("NEW POINTER (0-";NF;:"): ";A$:(A$)0(A$)NF.WEAPONLESS"m>F7"ENTER ";M$(M);": ";:I2$(M%(M)):TL5:600:M%(M)(I$):(M%(M))I$ĺ(7):(37):14050s>P7y>Z7>: >> CHG DEF. ROOM>;:"INPUT DEFAULT VALUES DESIRED.":D1ND:RD%(D)DD%(D)::11055>;D1ND:DD%(D)RD%(D)::DLLT?;150E MONSTERS - ENTER 1":" GROUP MONSTERS - ENTER # OF MEMBERS"=(7M11ĺ" 1=ENEMY 2=NEUTRAL 3=FRIEND":" FOR RANDOM FRIENDLINESS,":" ENTER PERCENT LIKELY FRIENDLY + 100">27M8ĺ:" ART.#...WEAPON #":" 0.......NATURAL WEAPONS":" - 1....""140107<66:958:"MONSTER NAME:":" ";::I$:<6NA$I$::"ENTER DESC--":I2$DE$:TL238:600:DE$I$::"MONSTER # ";NO;" ";::NA$::<6M1MF<7M1M6ĺ" IF GROUP MONSTER ENTER VALUE FOR JUST ONE MEMBER OF GROUP"A=7M3ĺ" SINGLX): ;f0!;2 >> EDIT EFFECT[;2:"ENTER EFFECT #";NO:I2$DE$:TL238:600:DE$I$::q;6 >> EDIT MONSTER;6:"ENTERING MONSTER # ";NO::"** BE SURE TO ENTER *ALL* MONSTER NAMES IN A SINGULAR FORM **": <6:I2$NA$:TLML:"ENTER NAME:":600:I$12250,12290,12290,12290,12260+:/12290p:/X0DT2:" ";X;" = ";TYP$(X);:XDTĺ22);X1;" = ";TYP$(X1)z:/:::/"1=AXE, 2=BOW, 3=MACE, 4=SPEAR, 5=SWORD"::0: 0X14:AL$(XAF)FM$(FMP%(AD%(2)),X):;0X14:AD%(AFX)FD%(FMP%(AD%(2)), + 200........EMBEDDED IN ROOM#":"(- MONSTER# - 1)...MONSTER# CARRYING IT":"-1.................CARRIED BY PLAYER":"-999...............WORN BY PLAYER"9&/AL$(D);" : ";:I2$(AD%(D)):TL5:600:AD%(D)(I$)9+/D2PTAD%(2)İ1230090/9:/ :/D1ESCRIPTION:":I$::DE$I$:R8/D1AF4:D2(DAF2AD%(2)1AD%(2)4)İ12200y8/D8ĭAD%(2)8ĺ" 1 = HIDDEN DOOR"8/D7ĭAD%(2)4AD%(2)6AD%(2)7ĺ"OPEN = 1; CLOSED = 0"8/D2PTAD%(2)9%/D4ĺ"ARTIFACT# + 500....INSIDE ARTIFACT#":"ROOM#(I$):7. >> EDIT ARTIFACTf7.:"ENTERING ARTIFACT ";NO:I2$NA$:TLAL::"ENTER ARTIFACT NAME:"|7.600:I$""120107.3:958:"ARTIFACT NAME:":" ";::I$::NA$I$:6:I2$DE$:TL2388/"ARTIFACT DESCRIPTION:":I2$DE$:600:6:958:"ARTIFACT DDOORS: ARTIFACT # OF DOOR + 500":" NEGATIVE NUMBER FOR UNUSUAL THINGS"W6/+D1ND64+"MOVE ";DD$(D);"...";:I2$(RD%(D)):TL5:600:RD%(D)(I$):RD%(D)(RD%(D))(RD%(D))I$Ģ(37):110607H+:"LIGHT (0 = NONE; 1 = NORMAL) ";:I2$(LT):600:LT":" ";:I$::NA$I$:TL238:6:I2$DE$y5 +"ENTER ROOM DESCRIPTION:":600:6:958:"ROOM DESCRIPTION:":I$::DE$I$:5*+958:"FOR EACH DIRECTION ENTER THE ROOM # THATTHIS ROOM CONNECTS TO:"K6,+" NO CONNECTION: 0":" EXIT TO MAIN HALL: -99":" F;" LABEL:";:I2$"":TL0:600:FML$(NF,X)I$:"DEFAULT DATA:";:I2$"0":600p4)((I$))32765FD%(NF,X)(I$)v4)4)68004* >> EDIT ROOM4+:"ENTERING ROOM ";NO::I2$NA$:TLRL:"ENTER ROOM NAME:"4 +600:I$""11010(5+3:958:"ROOM NAME:GFACE.":10520)3")X(A$):XDT26800m3,):"NEW TYPE:";:I2$TY$(X):TL0:600:I$""XDTDTDT1:10500|36)I$""1503@)XDT1DTDT1:TY$(DT)I$:1503J)TY$(X)I$3^)105003h) === ADD A FORMAT ===3r)6:958L4|)NFNF1:X14:"FIELD ";XA2$(FD%(F,X)):TL0:600:((A$))32765FD%(F,X)(I$)?2(I2(6800]2) >> ART TYPES2):X0DT:" ";X;". ";TY$(X)::" ";DT1;". NEW TYPE":" ";DT2;". RETURN TO PREVIOUS MENU"3)"INPUT TYPE NUMBER:";A$:(A$)0(A$)DT2ĺ"TRY AGAIN, FRO(37):10340'1n(FMP%(X)(A$):6800C1( === CHANGE FORMAT ===i1(6:958:"INPUT FORMAT NUMBER:";1(A$:A$"1"A$(NF)104201(A$:F(A$)1(6:958:X14:"FIELD ";AFX;" LABEL:";:I2$FM$(F,X):TL0:600:FM$(F,X)I$92("DEFAULT DATA: ";:I?`; >> CHG DEF. MONST.?j;:"ENTER NEW DEFAULT VALUES FOR EACH FIELD.":D1MF:M%(D)DM%(D)::14040:D1MF:DM%(D)M%(D):?;150?; >> CHG DEF. ART. @;:"INPUT NEW DEFAULT VALUES FOR ALL FIELDS.":D1AF:AD%(D)DA%(D)::12050:D1AF:DA%(D)AD%(D):@;150&@PF>> WRITE DESC^@ZFD$;"WRITE EAMON.DESC,R";REC:(34);DE$;(34):D$:p@ N>> READ DESC@*ND$;"READ EAMON.DESC,R";REC:DE$:D$@4N@R >> READ ROOM@RD$;"READ EAMON.ROOMS,R";NO:NA$:D1ND:RD%(D):@RLT@&RD$:AU 689:;<=>?@ABCDEEFIX":PW$:D$"CLOSE":::"DEFAULT PREFIX: ";::PW$: :"IF NECESSARY, INSERT THE EAMON ADVENTUREDISKETTE NOW, THEN TYPE THE PREFIX OR HIT TO USE THE DEFAULT PREFIX: ":PN$ PN$""PN$PW$ (PN$,1)"/"PN$"/"PN$ 20 , DUNGEON LIST 7.0 BY TOM ZUCHOWSKI _ DEVELOPED FROM VERSION 6.0 BY JOHN NELSON hDL8t8/1/90PRODOS CONVERSION 5/25/90 TJZ :D$(4)::5:12:"DUNGEON LIST 7.0" D$"PREFIX":PX$9 D$"OPEN WORK.PREFIX":D$"READ WORK.PRR CLASS,0,TYPE,0,USER#7,0,USER#8,0*J<J`"FOUND AN ERROR - CODE ";(222):"ON LINE # ";(218)(219)256:(222)10ĺ"CAN'T SAVE FILE - LOCKED.":JHD$(4):D$"OPEN EAMON.DESC,L242":D$;"WRITE EAMON.DESC,R0":T14:N%(T)::LR:LM:LAER #6,0,USER #7,0,USER #8,0,HEAL AMT,10,NBR USES,5,OPEN?,0,USER #8,0Iz 1ST EFF.,1,#EFFECTS,1,OPEN?,0,USER #8,0,ROOM BEYOND,1,KEY#,99,STRENGTH,999,HIDDEN?,0IUSER #5,0,USER #6,0,USER #7,0,USER #8,0IފMONSTER#,0,KEY#,0,GUARD#,0,USER #8,0$J芃ARMO5,4):X0DT:FMP%(X)::X0NF:F14:FML$(X,F),FD%(X,F):DHKH9yH0,0,1,1,2,3,4,5,6,7,8,9:FORMAT POINTERSHUSER#5,0,USER#6,0,USER#7,0,USER#8,0HODDS,10,W.TYPE,3,DICE,1,SIDES,4,KEY#,99,STRENGTH,100,OPEN?,0,USER #8,0FIHCOUNTER,999,USULT ROOM #S;GMF11:M$(MF5),M%(MF5):M1MF:M$(M):G숃 HD,AG,# MEMBERS,COUR,ROOM,WEIGHT,ARMOR,WEAPON#,# DICE,# SIDES,FRIENDGDM%(MF5):M1MF:DM%(M):G16,16,1,100,0,150,0,0,1,4,3: MONS. DEFAULTS>HNF:FMP%(DT5),FML$(DT5,4),FD%(DTARABLE>FʈAF4:AL$(AF4CX),AD%(AF4CX):T1AF:AL$(T):ZFˈVALUE,TYPE,WEIGHT,ROOMpF̈T1AF:DA%(T):Fш50,1,5,0:ART. DEFAULTSFֈD110:DD$(D):F؈ N ,S ,E ,W ,U ,D ,NE,NW,SE,SWFۈT110:DD%(T)::DL G0,0,0,0,0,0,0,0,0,0,1:DEFAE === SETUP DATA ?ERLLR34:MLLM62:ALLA42:U$(95)XEˆCX5:T14:T$(T):rEÈROOM,ART.,EFF.,MONS.ELjDT:TYP$(DTCX):T0DT:TYP$(T):FȈ11,GOLD,TREASURE,WEAPON,MAG WEAPON,CONTAINER,LIGHT,HEALING,READABLE,DOOR/GATE,KEY,BOUND MONSTER,WEDEAD "A$:DE$"YOU SEE THE DEAD BODY OF "THE$A$"."D↭(DE$)40ĭ(DE$,41,1)" "DE$(DE$,25):S2640:DE$DE$" "::DE$DE$THE$A$"."D熁X21AF4:AD%(X2)0::AD%(2)1:AD%(3)MD%(6)DRECX200:NOX:18000:N%(2)N%(2)1D31200:E150:D$;"READ EAMON.MONSTERS,R";M:A$:X216:MD%(X2)::D$:MM1Cӆ6:958:" 1. THE DEAD BODY OF ";A$::" 2. THE DEAD BODY OF THE ";A$::"CHOOSE THE CORRECT PHRASE (1-2):";CֆX$:X$"1"X$"2"34518C׆THE$("THE ",1,(X$"2")4):X$7D؆NA$"LT:D$By"By >> WRITE ART.lByD$;"WRITE EAMON.ARTIFACTS,R";NO:(34);NA$;(34):D1AF4:AD%(D):vByD$:Bz >> WRITE MONSTERBzD$;"WRITE EAMON.MONSTERS,R";NO:(34);NA$;(34):M1MF:M%(M)::D$BzBĆ === GENERATE DEADACΆXALA%>> READ ART.HAUD$;"READ EAMON.ARTIFACTS,R";NO:NA$:X18:AD%(X):RAVD$:hA] >> READ MONSTERA]D$"READ EAMON.MONSTERS,R";NO:NA$:D1MF:M%(D):A^D$:A|y >> WRITE ROOMAyD$;"WRITE EAMON.ROOMS,R";NO:(34);NA$ByD1ND:RD%(D)::D$"PREFIX"PN$ 200e :D$;"OPEN EAMON.NAME":D$;"READ EAMON.NAME":ADV$:DR$,DV:D$;"CLOSE" DV7ĺ:"THIS ADVENTURE IS NOT VERSION 7.0."::"USE DUNGEON LIST PROGRAM": #216,0 (ND(DR$)! 2D$"OPEN EAMON.DESC,L242":D$;"READ EAMON.DES)5ĺ" [";(" AXE BOW CLUB SPEARSWORD",(A%(6)1)51,5);"]";J:A2PD$::PRTĞ:7);"PRESS ANY KEY TO CONTINUE";7);::A$::A$(27)ġ:100 LIST EFFECTS 6:958:"BEGINNING WITH # (1): ";BE$:BE$""BE$"1":23:" [WORN BY ";MN$((A%(4))1);"]";<:A2:A%(2)103740T$FMP%(A%(2))03740.A258:(A$(A2),5)"USER#"(A$(A2))03740BLPLP1:" ";A$(A2);(PR$,1,10(A$(A2)));(PR$,1,6((A%(A2))));A%(A2);@tA26(A%(2)2A%(2)3)ĭA%(A2)1A%(A2A%(4)0A%(4)NRĺ" [";R$(A%(4));"]";n A24A%(4)0A%(4)NM1ĺ" [CARRIED BY ";MN$((A%(4))1);"]"; A24A%(4)200A%(4)200NRĺ" [";R$(A%(4)200);"]";A24A%(4)500A%(4)NA500ĺ" [INSIDE ";AN$(A%(4)500);"]";#A24A%(4)999ĺ[";AN$(R);"]":LPLP2:D$;"READ EAMON.DESC,R";200R:A$:"DESC: ":8000 A214:LPLP1:" ";A$(A2);(PR$,1,10(A$(A2)));(PR$,1,6((A%(A2))));A%(A2); A22A%(2)11ĺ" [SPECIAL CATEGORY]";:3580 A22ĺ" [";TYP$(A%(2));"]";:3580) A24RBEEN:3500:D D$"CLOSE EAMON.ARTIFACTS":D$:D$"PR#0":100{ D$;"READ EAMON.ARTIFACTS,R";R:X$:A18:A%(A): A%(2)DTāX14:A$(AFX)"FIELD "(AFX)::3520 FMP%(A%(2))0āX14:A$(AFX)FL$(FMP%(A%(2)),X):I "ARTIFACT # ";R;" WITH ARTIFACT ("NA;:"): ";EN$:EN$""EN$(NA):28:8:EN$_ (BE$)NA(BE$)1BE$"1" (EN$)NA(EN$)(BE$)EN$(NA) BE(BE$):EN(EN$) D$"OPEN EAMON.ARTIFACTS,L"LA PRTĺD$"PR#";PS:(9);"80N" (SIZ(ADV$))2);ADV$:::R%(D)500);"]";,p:D:"LIGHT: ";LT:D$ozPRTĺ::" PRESS ANY KEY TO CONTINUE ";::A$::A$(27)ġ:100 LIST ARTIF.  6:958:"BEGINNING WITH ARTIFACT (1): ";BE$:BE$""BE$"1":6:30:BE$? 8:958:"ENDINGONS MOVED IN--":D$;"READ EAMON.ROOMS,R";R:X$:D1ND:DR%(D):JMLTRD1ND:" ";DD$(D);": ";(DR%(D)0)((DR%(D))10));DR%(D);5)\DR%(D)99ĺ"[EXIT]";:2160fDR%(D)0(DR%(D))NRĺ"[";R$((DR%(D)));"]";kDR%(D)500ĺ"[";AN$(D D$"OPEN EAMON.ROOMS,L"LR? PRTĺD$"PR#";PS:(9);"80N"w*:(SIZ(ADV$))2);ADV$:::LP3:RBEEN:2100:/D$"CLOSE EAMON.ROOMS":D$:D$"PR#0":1004:"ROOM # ";R;" [";R$(R);"]":"DESC:":D$;"READ EAMON.DESC,R";R:A$:8000BH"DIRECTI LIST ROOMS [6:958:"BEGINNING WITH # (1): ";BE$:BE$""BE$"1":6:23:BE$8:"ENDING WITH # ("NR;:"): ";EN$:EN$""EN$(NR):8:21:EN$(BE$)NR(BE$)1BE$"1"(EN$)NR(EN$)(BE$)EN$(NR)BE(BE$):EN(EN$)000,7000130EADV$""ĺ:"CAN'T FIND 'EAMON.NAME' FILE.":uDR$""DV4:DR$"6":216,0:D$;"CLOSE":32DV5:D$;"CLOSE":35 SET UP PRINTER 6:958:"WHAT SLOT IS PRINTER IN?";A$:A$"1"A$"7"1020A$:PS(A$):100SIRED:":" 1. SET UP PRINTER":" 2. LIST ROOMS":" 3. LIST ARTIFACTS":" 4. LIST EFFECTS" " 5. LIST MONSTERS":" 6. TOGGLE PRINTER (NOW ";("OFFON",PRT31,3PRT);")":" 7. QUIT":"INPUT YOUR CHOICE (1-7):";CH CH1000,2000,3000,4000,5000,6OSE EAMON.ARTIFACTS":D$ bD$"OPEN EAMON.MONSTERS,L"LM:R1NM:D$"READ EAMON.MONSTERS,R";R:MN$(R)::D$"CLOSE EAMON.MONSTERS" cSIZ40 d MAIN ROUTINE n:12);"EAMON DUNGEON LIST 7.0"::(40(ADV$))21);:ADV$:_ 8:"SELECT ACTION DEC,R0":NR,NA,NE,NM,LR,LM,LA:D$, <35000H FR$(NR),AN$(NA),MN$(NM) ZD$"OPEN EAMON.ROOMS,L"LR:R1NR:D$;"READ EAMON.ROOMS,R";R:R$(R)::D$"CLOSE EAMON.ROOMS" _D$"OPEN EAMON.ARTIFACTS,L"LA:R1NA:D$"READ EAMON.ARTIFACTS,R";R:AN$(R)::D$"CL6:BE$U8:958:"ENDING WITH # ("NE;:"): ";EN$:EN$""EN$(NE):21:8:EN$u(BE$)NE(BE$)1BE$"1"(EN$)NE(EN$)(BE$)EN$(NE)BE(BE$):EN(EN$)PRTĺD$"PR#";PS:LP500:RBEEN:4500::D$D$"PR#0":100*MRG);"EFFECT #";R;":"::LPLP2VD$;"READ EAMON.DESC,R";R400:A$:8000dLP500ıD$::PRTĞ:7);"PRESS ANY KEY TO CONTINUE";7);:A$::::A$(27)ġ:100 LIST MONSTERS 6:958:"BEGINNING WITH # (1): ";BE$:BE DUNGEON EDIT PROGRAM7 BY JOHN NELSON=q ADAPTED FROM DON BROWN'S DUNGEON EDIT THIS PROGRAM ADDS AND MODIFIES SIX AND TEN DIRECTION DUNGEONS.REV. 8/1/90  PRODOS CONVERSION 5/26/90 TJZM /EAMON.TEST TRENGTH,HIDDEN?2%LUSER#5,USER#6,USER#7,USER#8S%VMONSTER#,KEY#,GUARD#,USER#8w%`ARMOR CLASS,TYPE,USER#7,USER#8}%<RAL]":FR$(3)"[FRIEND]"$&$9C$ފ0,0,1,1,2,3,4,5,6,7,8,9_$ODDS,W.TYPE,DICE,SIDES$KEY#,STRENGTH,OPEN?,USER#8$$COUNTER,USER#6,USER#7,USER#8$.HEAL AMT,NBR USES,OPEN?,USER#8$81ST EFFECT,# EFFECTS,OPEN?,USER#8%BNEXT ROOM,KEY#,S ,SOUTH ,EAST ,WEST ,UP ,DOWN ,NORTHEAST,NORTHWEST,SOUTHEAST,SOUTHWESTt#HD110:DD$(D):#zNF:FMP%(DT),FL$(DT,4):X0DT:FMP%(X)::X1NF:F14:FL$(X,F):#:PR$"...................."$FR$(1)"[ENEMY]":FR$(2)"[NEUTICE,# SIDES,FRIEND?:"DT:TYP$(DT):X0DT:TYP$(X):B"11"GOLD,TREASURE,WEAPON,MAGIC WEAPON,CONTAINER,LIGHT,HEAL,READABLE,DOOR/GATE,KEY,BOUND MON.,WEARABLE"A18:A$(A):"ƉVALUE,TYPE,WEIGHT,ROOM,USER#5,USER#6,USER#7,USER#8^#䉃NORTH ;!JAZ1(A$)80:MRG);(A$,AZ,80):LPLP1::LPLP1:L! READ DATAX!̈AF:MF!ꈃ 4,11: AF = # ARTIF FIELDS, MF = # MONST FIELDS!M$(MF),M%(MF):M$(0)"ADVENTURER":M1MF:M$(M):" HARD,AGIL,# IN GROUP,COUR,ROOM,WGHT,ARMOR,WEAPON #,# D" 2) EXIT TO BASIC"::" 3) BYE"G v:A$:A(A$):A1A37020] A7050,7060,7070h 7055 D$"PREFIX"PX$:D$"RUN EAMON.DDD.V7.0,@40" :"INSERT THE EAMON DESIGNER DISK, THEN HIT A KEY; ";:A$::7050  D$"BYE"!@PRTĺA$:TINUE";6);:A$:::,A$(27)ġ:1002:Ip TOGGLE PRINTER VzPRTPRTmPRTMRG10:SIZ80PRTMRG0:SIZ40100X QUIT bD$"CLOSE":D$"PR#0"' l:8:"SELECT ONE OF THE FOLLOWING:"::" 1) RETURN TO DESIGNER MENU"::]"/M28M%(8)0ĺ" [ NATURAL WEAPONS ]";cM28M%(8)0M%(8)(NA)ĺ" [";AN$(M%(8));"]";M28M%(8)0M%(8)N%(2)ĺ" [";AN$(M%(8));"]";:M2:D$LP36PRTLP0:(12);(SIZ(ADV$))21);ADV$:PRTĞ:7);"PRESS ANY KEY TO CON4[M2111:LPLP1:" ";M$(M2);(PR$,1,10(M$(M2)));(PR$,1,6((M%(M2))));M%(M2);M211M%(11)99ĺ" [";M%(11)100;"%]";M211M%(11)4ĺ" ";FR$(M%(11));M25M%(5)0M%(5)NRĺ" [";R$(M%(5));"]";M28M%(8)1ĺ" [ NO WEAPONS (12);(SIZ(ADV$))2);ADV$:::LP3:RBEEN:5500:jD$"CLOSE EAMON.MONSTERS":D$:D$"PR#0":100p|D$;"READ EAMON.MONSTERS,R";R:MN$:M2111:M%(M2)::D$;"READ EAMON.DESC,R";R600:A$"MONSTER # ";R;" [";MN$;"]":"DESC:":8000:LPLP$""BE$"1":23:6:BE$f8:958:"ENDING WITH # ("NM;:"): ";EN$:EN$""EN$(NM):8:21:EN$(BE$)NM(BE$)1BE$"1"(EN$)NM(EN$)(BE$)EN$(NM)BE(BE$):EN(EN$)D$"OPEN EAMON.MONSTERS,L"LMPRTĺD$"PR#";PS9:DK$(4):D$DK$:D$"OPEN WORK.PREFIX":D$"READ WORK.PREFIX":PW$:D$"CLOSE"b D$"PREFIX":PX$ 216,0::5:" EDITING AN ADVENTURE FOR EAMON":::"DEFAULT PREFIX: ";::PW$:M :"IF NECESSARY, INSERT ADVENTURE DISK NOW,THEN TYPE THE ADVENTURGIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh0 ~800" >> ADD ARTIFACTHN%(2)N%(2)1:NON%(2):RECNO100NA$"":DE$"":D1AF:AD%(D)DA%(D)::X14:AL$(XAF)FM$(FMP%(AD%(2)),X):12000:31200:18000:LKī150800 >> ADD EFFECTN%(3)N%(3)1:NON%(3):RECNO200 N%(TYP)N%(TYP)1:150!1503 >> ADD ITEMLC$"ADD":500:TYPEAjTYPE1100,1200,1300,1400|L >> ADD ROOMVN%(1)N%(1)1:NON%(1):RECNO`NA$"":DE$"":D1ND:RD%(D)DD%(D)NO(DD%(D)0)::LTDLj11000t31100:18000:LK156:958:"INPUT NUMBER OF ";T$(TY);" TO ";C$" (1-";N%(TYPE);:") ";A$:NO(A$):NO1NON%(TYPE)(C$"CREATE")NO(NO)ġ:150  >> LOCKED <<*:C1020,2020,3010,4020,5020,150,150z150 >> DELETE FROM LOCKLKLK:C1:610-A$(21)(I2$)A$(I2$,1):625GA$(21)A$" ":625A$(8)(I$)1I2$(I$,1)I2$:I$(I$,(I$)1):A$;:615A$(8)(I$)I2$I$I2$:A$;:600A$(8)600A$(27)ĺI2$:I$I$I2$:615 >> GET NUMBER.I2$(I2$,2):615<vA$(5)ĺI2$;:I$I$I2$:I2$"":615y{A$(2)(I$)āA1(I$):(8);::I2$I$I2$:I$"":615A$(4)I2$(I2$,2):610A$(9)CIISIS:H(36):V(37):39:1::(" I",IS1,1)::H1:V1:615A$(9)I2$" "I2$,IS1,1)::H1:V1CbI2$;:958:(I2$)āA1(I2$):(8);:_gA$:A$(13)Č958::yjA$(17)LKġ::900l(A$(31)A$(9)(A$(21)(I2$)))(I$)(I2$)250ĺ(7);:615nA$(31)ISĺA$;:I$I$A$:610qA$(31)ĺA$;:I$I$A$: TO WORK ONp2:958:"DO YOU WANT TO ";C$;" A ROOM, ARTIFACT,":" EFFECT, OR MONSTER (HIT KEY, RAEM) ";A$:A14:A$("RAEM",A,1)Ă:520A$:X///ROUTINE TO INPUT I$, HAVING BEEN PASSED I2$]I$"":H(36):V(37):38:1::(" I" KEY FOR YOUR CHOICE (1-7) ";=,A$:A$(12)LKLK:150V1A$(9)CICI:150o6(A$)1(A$)7300@C(A$):A$^C1000,2000,3000,4000,5000,6000,7000ND$""DV4:ND$"6":DK$;"CLOSE":60DV5:DK$;"CLOSE":60  >> SELECT WHATLIST NAMES OF ROOMS, ARTIFACT,ETC"*y" 4. REPLACE OLD ROOM,ARTIFACT OR":" MONSTER (WITHOUT VIEWING OLD)"" 5. DUPLICATE A ROOM, ARTIFACT":" OR MONSTER"" 6. SPECIAL FUNCTIONS"" 7. QUIT"":"ENTER3:4);"EDITING ";::DUNGN$:("LOCK",1,LK4);:Z " ";::("CONT.ISRT",1,9CI): "YOUR CHOICES ARE--"::" 1. ADD NEW ROOM,ARTIFACT,EFFECT OR":" MONSTER" " 2. EDIT OLD ROOM,ARTIFACT, EFFECT":" MONSTER" $" 3. ,R0":N%(1),N%(2),N%(3),N%(4):DK$N Z35000:DV6DT3:TY$(3)"ODD WEAPON" dDV6.9ĺ(7):"THIS ADVENTURE DISKETTE IS VERSION 7.X. USE 'DUNGEON EDIT 7.0' TO EDIT THIS ADVENTURE.":DK$"CLOSE": 600003 :T14:T$(T);"-";N%(T);" ";:::N 7 ADVENTURE. USE THE PROGRAM 'EAMON.EDIT.V7.0'":K <ND(ND$):216,0 FDK$;"OPEN EAMON.ROOMS,L64":DK$;"OPEN EAMON.ROOM.NAME,L64":DK$;"OPEN EAMON.MONSTERS,L128":DK$;"OPEN EAMON.ARTIFACTS,L128":DK$;"OPEN EAMON.DESC,L256"$ PDK$;"READ EAMON.DESCE'S PREFIX OR HIT TO USE THE DEFAULT PREFIX.":PN$:PN$""PN$PW$l (PN$,1)"/"PN$"/"PN$u #15 &D$"PREFIX"PN$ (400 2DK$;"OPEN EAMON.NAME":DK$;"READ EAMON.NAME":DUNGN$:ND$:DV:DK$;"CLOSE"6 7DV7ĺ:"THIS IS A VERSIO(DE$""&213000:18000:LKī150/<800Dx >> ADD MONSTERjN%(4)N%(4)1:NON%(4):RECNO300NA$"":DE$"":D1MF:M%(D)DM%(D):14000:18000:31400:LKī150800 >> EDIT OLD ITEMC$"EDIT":500:TYPEATYPE2100,2200,2300,2400!4 >> EDIT ROOME>700:RECNO:21000:20000:1130\ >> EDIT ARTIFACT700:RECNO100:20000:22000:X14:AL$(AFX)FML$(FMP%(AD%(2)),X):1230 >> EDIT EFFECT 700:RECNO200:20000:1330` >> EDIT MONSTER$j (A$)467302&TA$:(A$)15100,15200,15300,150O& >> CHANGE DATA ASSIGN&:08);"CHANGE DATA ASSIGNMENTS":6:"SELECT DATA TYPE:":" 1. MONSTER DATA":" 2. ARTIFACT DATA":" 3. CHANGE FORMAT POINTER":" 4. CHANGE A FORMAT"V'" 5. ARTIFACTHC:150#%, >> CHANGE DEFAULTS%6:12);"CHANGE DEFAULTS":6:"SELECT DEFAULT TO CHANGE:"::" 1. ROOM VALUES"::" 2. MONSTER VALUES"%@:" 3. ARTIFACT VALUES"::" 4. RETURN TO MAIN MENU"::"INPUT YOUR CHOICE (1-4):"; &JA$:(A$)1UMMY ART.$n,$x"NBR ART. TO GEN:";NA|$A1NA:DK$"WRITE EAMON.DESC,R";N%(2)101:"YOU SEE ARTIFACT ";N%(2)1;"."$DK$"WRITE EAMON.ARTIFACTS,R";N%(2)1:"ARTIFACT ";N%(2)1:X18:0::N%(2)N%(2)1:$DK$:150$ >> TOGGLE H/C %HC1:M1:LAAN%(4)1:34500@#"MONSTER NUMBER TO START ON:";M[#AN%(2)1:LAAN%(4)Mf#34500v#8 >> DELETE#BC$"DELETE":500:N%(A)N%(A)1#L6000# === INCREMENT#C$"INCRMNT":500:N%(A)N%(A)1:6000#LKLK:6000 $d >> GEN. D"INPUT YOUR CHOICE (1-";SF;"):";;"S$:S$(13)ĺ:150V"(S$)1(S$)SF6045":(S$)6100,6200,6300,6400,6500,6600,6700,6800,6900" >> GEN. DEAD"6:958:"ALL DEAD BODIES (Y/N):";"A$:A$"Y"A$"N"6110#A$:A$"Y"AN%(2)W ";("OFFON",LK31,3LK);")"G!:" 5. GENERATE DUMMY ARTIFACTS"!:" 6. TOGGLE PRINTER (NOW ";("OFFON",HC31,3HC);")":SF76040!:" 7. CHANGE DEFAULTS"::" 8. CHANGE DATA ASSIGNMENTS"::" 9. LOAD/SAVE CUSTOMIZED PARAMETERS""":ECNC300:NONC:14302 p >> SPECIAL FUNCTIONSy u:SF9::" SELECT FUNCTION OR PRESS ":::DV6SF6 z" 1. GENERATE DEAD BODIES": " 2. DELETE LAST R,A,E,M": " 3. ADD TO NBR OF R,A,E,M": !" 4. TOGGLE LOCK MODE (NO:RECNO:21000:20000:RECNC:NONC:1130=P >> DUP. ART.yZNOFROM:RECNO100:22000:20000:RECNC100:NONC:1230 >> DUP. EFF.NOFROM:RECNO200:20000:RECNC200:18000150 >> DUP. MONSTER "NOFROM:24000:RECNO300:20000:RCNO300:1420# >> DUPLICATE@C$"DUPLIC.":500:TYPEAwC$"DUP. FROM":700:FROMNO:C$"CREATE":700:NCNONON%(TYPE)ĺ"CREATING A ";T$(TYPE);" FROM ANOTHER.":N%(TYPE)N%(TYPE)1TYPE5100,5200,5300,5400 >> DUP. ROOM*NOFROM >> REPLACE ITEM6C$"REPLACE":500:TYPEATTYPE4100,4200,4300,4400j >> REPLACE ROOMy700:1120h >> REPLACE ARTIF.r700:RECNO100:1220 >> REPLACE EFFECT700:RECNO200:13200 >> REPLACE MONSTER:700:RE:# LPLP1:LP1930HCİ36006 A:DK$;"PR#0"m :"PRESS ANY KEY TO RETURN TO MENU";:A$:::150 >> PAGE BREAKLP0:HCĺ(12);"LISTING ";A$;"S"::$:" (PRESS ANY KEY TO CONTINUE) ";:16368,0:B$::(37)1:958j00* A:DK$;"PR#0"P4 :"(HIT ANY KEY TO RETURN TO MENU) ";:A$:::150{H F$"EAMON.MONSTERS":A$"MONSTER":3500 >> LIST STUFF ::LP0:"LISTING ";::A$;"S":::34,2:A1N%(TYP):DK$;"READ ";F$;",R";A:NA$:DK$:A$;"#";A;": ";::NA$OOM":35009 F$"EAMON.ARTIFACTS":A$"ARTIFACT":3500 ::LP0:"LISTING ";:A$"EFFECT"::A$;"S":::34,2:A1N%(TYPE):RECA200:20000:A$;" #";A HCāX1(DE$)40:(DE$,X,40):LPLP1: HCĺDE$:LPLP1 ::LPLP1:LP1235HCİ36700:RECNO300:24000:20000:14309 >> LIST THINGS C$"LIST":500:TYPEA:N%(TYPE)0ĺ::"NONE OF THAT TYPE TO PRINT!":::"(HIT ANY KEX TO CONTINUE) ";:A$::150 HCĺDK$;"PR#1" TYPE3100,3200,3300,3400  F$"EAMON.ROOM.NAME":A$"R TYPES":" 6. ADD A FORMAT":" 7. RETURN TO MAIN MENU":"INPUT THE NUMBER (1-7):";t'A$:(A$)1(A$)76830'A$:(A$)10100,10200,10300,10400,10500,10600,140' >> LOAD/SAVE PARAM.T(:10);"LOAD/SAVE PARAMETERS":6:958:"SELECT LOAD/SAVE FUNCTION:"::" 1. LOAD PARAMETERS"::" 2. SAVE PARAMETERS"::" 3. RETURN"s(:"INPUT NUMBER (1-3): ";(A$:A$"1"A$"3"6930(A$:(A$)7100,7200,150(X >> QUIT(bDK$;"WRITE EAMON.DESC,R0":T14:N%(T):(lDK$;"CLOSE")v21AL) ";:I2$(LT):600:LT(I$):96. >> EDIT ARTIFACTz6.:"ENTERING ARTIFACT ";NO:I2$NA$::"ENTER ARTIFACT NAME:"6." ";:600:(I$)39Ģ3:20:"TOO LONG!":I2$I$:12206.3:958:"ARTIFACT NAME:":" ";::I$::NA$I$:6:I2$DE$P7/"ARTIFACTHE ROOM THAT THIS ROOM CONNECTS TO (USE ZERO FOR NO CONNECTION, NEGATIVE NUMBER FOR UNUSUAL THINGS.)"v5/+D1ND54+"MOVE ";DD$(D);"...";:I2$(RD%(D)):600:RD%(D)(I$):RD%(D)(RD%(D))(RD%(D))I$Ģ(37):11060"6H+:"LIGHT (0 = NONE; 1 = NORMR ROOM NAME:"J4 +" ";:600:(I$)39Ģ3:20:"TOO LONG!":I2$I$:110204+3:958:"ROOM NAME:":" ";::I$::NA$I$:6:I2$DE$4 +"ENTER ROOM DESCRIPTION:":600:6:958:"ROOM DESCRIPTION:"::I$::DE$I$:j5*+13:958:"FOR EACH DIRECTION,GIVE T3h) === ADD A FORMAT ===)3r)6:9583|)NFNF1:X14:"FIELD ";XAF;" LABEL:";:I2$"":600:FML$(NF,X)I$:"DEFAULT DATA:";:I2$"0":6003)((I$))32765FD%(NF,X)(I$)3)3)68003* >> EDIT ROOM4+:"ENTERING ROOM ";NO::I2$NA$:"ENTEVIOUS MENU"]2)"INPUT TYPE NUMBER:";A$:(A$)0(A$)DT2ĺ"TRY AGAIN, FROGFACE.":10520v2")X(A$):XDT268002,):"NEW TYPE:";:I2$TY$(X):600:I$""XDTDTDT1:1050026)I$""1502@)XDT1DTDT1:TY$(DT)I$:1502J)TY$(X)I$3^)105004:"FIELD ";AFX;" LABEL:";:I2$FM$(F,X):600:FM$(F,X)I$1("DEFAULT DATA: ";:I2$(FD%(F,X)):600:((A$))32765FD%(F,X)(I$)1(1(68001) >> ART TYPES 2):X0DT:" ";X;". ";TY$(X)::" ";DT1;". NEW TYPE":" ";DT2;". RETURN TO PREA$)0Ģ(37):10320!0_(X(A$)f0d("NEW POINTER (0-";NF;:"): ";A$:(A$)0(A$)NFĢ(37):10340~0n(FMP%(X)(A$):68000( === CHANGE FORMAT ===0(6:958:"INPUT FORMAT NUMBER:";0(A$:A$"1"A$(NF)104200(A$:F(A$);1(6:958:X1XAFAFAF1/2(102005/<( === CHANGE FPTR ===/F(6:958:"FOR WHICH ARTIFACT TYPE:":X0DT:" ";X;" = ";TY$(X);("..................................",1,20(TY$(X))((TY$(X))20));FM%(X):/P("INPUT NUMBER 0 - ";DT;:":";A$0Z((A$)DTY(::" ";AF1;". NEW FIELD":" ";AF2;". RETURN TO PREVIOUS MENU".'"INPUT FIELD NUMBER:";A$:(A$)1(A$)AF2ĺ"TRY AGAIN, FROGFACE.":10220.'(A$)AF26800.'X(A$)::"NEW LABEL:";A$:A$""XAFAFAF1:10200.(A$""150/ (AL$(X)A$:NUMBER:";A$:(A$)1(A$)MF2ĺ"TRY AGAIN, FROGFACE.":10120U-'(A$)MF26800-'X(A$)::"NEW LABEL:";A$:A$""XMFMFMF1:10100-'A$""150-'M$(X)A$:XMFMFMF1-'10100-' >> ARTIF. DATA ASSIGND.':X1AF:" ";X;". ";AL$(X)1NF:X14:FD%(F,X):::MF:X1MF:M$(X)::X1MF:DM%(X)::DT:X0DT:TY$(X)::DK$;"CLOSE ";A$r,z150,t' >> MON. DATA ASSIGN,~':X1MF:" ";X;". ";M$(X)::" ";MF1;". NEW FIELD":" ";MF2;". RETURN TO PREVIOUS MENU"@-'"INPUT FIELD +150+  >> SAVE PARAMY+*6:958:"NAME OF PARAMETERS FILE:"::" ===> ";A$+4(A$,1)"?"ĺDK$;"CATALOG";(A$,2)::A$:7200+>DK$;"OPEN ";A$:DK$"WRITE ";A$:AF:X1AF:AL$(X)::X1AF:DA%(X)::NF:F1NF:X14:FM$(F,X)::i,HF$;"CATALOG";(A$,2)::A$:::7100*DK$;"OPEN ";A$:DK$"READ ";A$:AF:X1AF:AL$(X)::X1AF:DA%(X)::NF:F1NF:X14:FM$(F,X)::+F1NF:X14:FD%(F,X):::MF:X1MF:M$(X)::X1MF:DM%(X)::DT:X0DT:TY$(X)::DK$;"CLOSE ";A$ 6,0U):10:"SELECT ONE OF THE FOLLOWING:"::" 1) EXIT TO BASIC"::" 2) BYE"y):A$:A$:A(A$):A1A27040)A7070,7080))D$"BYE") >> LOAD PARAM)6:958:"NAME OF PARAMETERS FILE:"::" ===> ";A$%*(A$,1)"?"ĺDK DESCRIPTION:":I2$DE$:600:6:958:"ARTIFACT DESCRIPTION:"::I$::DE$I$:7/D1AF4:D2(DAF2AD%(2)1AD%(2)4)İ122007/D2PTAD%(2)7!/AL$(D)"(NOT USED)"120807$/DAFĭFMP%(AD%(2))012080U8%/D4ĺ"+100 = INSIDE ARTIF. +200 = EMBEDDED":"+300 = HIDDEN IN ROOM +400 = BURIED":"-2 > -NM = MONSTER CARRYING IT"8&/AL$(D);" : ";:I2$(AD%(D)):600:AD%(D)(I$)8+/D2PTAD%(2)İ1230080/8:/8/D112250,12290,12290,12290,122608/12290&9/X0DT2:" ";X;" = ";TYP$,4,KEY#,99,STRENGTH,100,(NOT USED),0,(NOT USED),0FH COUNTER,999,(NOT USED),0,(NOT USED),0,(NOT USED),0,CHANCES,100,HEAL AMT,6,NBR USES,5,(NOT USED),0Gz 1ST EFF.,1,#EFFECTS,1,READABLE,1,(NOT USED),0,ROOM BEYOND,1,KEY#,99,STRENGTH,999,(NOT USED),016,16,0,100,0,150,0,0,0,50,1,4: MONSTER DEFAULTSENF:FMP%(DT5),FML$(DT5,4),FD%(DT5,4):X0DT:FMP%(X)::X1NF:F14:FML$(X,F),FD%(X,F):EE 8E 0,0,1,1,2,3,4,5,6,7,8: FORMAT POINTERS3F ODDS,10,W.TYPE,3,DICE,1,SIDEST110:DD%(T)::DLRD 0,0,0,0,0,0,0,0,0,0,1: DEFAULT ROOM NUMBERSDMF12:M$(MF5),M%(MF5):M1MF:M$(M):D숃 HD,AG,FRIEND,COUR,ROOM,WEIGHT,DEF.ODDS,ARMOUR,WEAPON#,OFF.ODDS,W.DICE,W.SIDESDDM%(MF5):M1MF:DM%(M):9E NG,READABLE,DOOR/GATE,KEY,BOUND MONSTER_CʈAF4:AL$(AF4CX),AD%(AF4CX):T1AF:AL$(T):}Cˈ VALUE,TYPE,WEIGHT,ROOMC̈T1AF:DA%(T):Cш 50,1,5,0: ARTIFACT DEFAULTSCֈD110:DD$(D):C؈ N ,S ,E ,W ,U ,D ,NE,NW,SE,SWD%(3)MD%(6)5BRECX100:NOX:18000:N%(2)N%(2)1BB31200:KB150aB === SETUP DATA zBˆCX5:T14:T$(T):BÈ ROOM,ARTIF,EFFECT,MONSTBLjDT:TYP$(DTCX):T0DT:TYP$(T):)CȈ 10,GOLD,TREASURE,WEAPON,MAG WEAPON,CONTAINER,LIGHT,HEALIAֆX$:X$"1"X$"2"34518BA׆THE$("THE ",1,(X$"2")4):X$A؆NA$"DEAD "A$:DE$"YOU SEE THE DEAD BODY OF "THE$A$"."A↭(DE$)40ĭ(DE$,41,1)" "DE$(DE$,25):S2640:DE$DE$" "::DE$DE$THE$A$"." B熁X21AF4:AD%(X2)0::AD%(2)1:ADA$;(34):M1MF:M%(M)::DK$&@z>@Ć === GENERATE DEAD@ΆXALA:DK$;"READ EAMON.MONSTERS,R";M:A$:X216:MD%(X2)::DK$:MM1Aӆ6:958:" 1. THE DEAD BODY OF ";A$::" 2. THE DEAD BODY OF THE ";A$::"CHOOSE THE CORRECT PHRASE (1-2):";(34);NA$;(34)M?yDK$;"WRITE EAMON.ROOMS,R";NO:D1ND:RD%(D)::LT:DK$S?yg?y >> WRITE ART.?yDK$;"WRITE EAMON.ARTIFACTS,R";NO:(34);NA$;(34):D1AF4:AD%(D):?yDK$:?z >> WRITE MONSTER @zDK$;"WRITE EAMON.MONSTERS,R";NO:(34);NRT.`>UDK$;"READ EAMON.ARTIFACTS,R";NO:NA$:X14:AD%(X)::DV5AD%(2)1āX58:AD%(X):k>VDK$:>] >> READ MONSTER>]DK$"READ EAMON.MONSTERS,R";NO:NA$:D1MF:M%(D):>^DK$:>|y >> WRITE ROOM?yDK$;"WRITE EAMON.ROOM.NAME,R";NO:ESC,R";REC:(34);DE$;(34):DK$:7= N >> READ DESCb=*NDK$;"READ EAMON.DESC,R";REC:DE$:DK$h=4N{=R >> READ ROOM=RDK$;"READ EAMON.ROOM.NAME,R";NO:NA$:DK$;"READ EAMON.ROOMS,R";NO:D1ND:RD%(D):=RLT1:DV5ĄLT=&RDK$:>U >> READ A EACH FIELD.":D1MF:M%(D)DM%(D)::14040:D1MF:DM%(D)M%(D):M<;150d<; >> CHG DEF. ART.<;:"INPUT NEW DEFAULT VALUES FOR ALL FIELDS.":D1AF:AD%(D)DA%(D)::12050:D1AF:DA%(D)AD%(D):<;150> WRITE DESC$=ZFDK$;"WRITE EAMON.D:M%(M)(I$):(M%(M))I$ĺ(7):(37):140506;6<;6S;: >> CHG DEF. ROOM;;:"INPUT DEFAULT VALUES DESIRED.":D1ND:RD%(D)DD%(D)::11055;;D1ND:DD%(D)RD%(D)::DLLT;;150;`; >> CHG DEF. MONST.D> EDIT MONSTERu:6:"ENTERING MONSTER # ";NO::I2$NA$:"ENTER NAME:";:600:I$""(I$)3014010:6NA$I$::"ENTER DESC--":I2$DE$:600:DE$I$::"MONSTER # ";NO;" ";::NA$:::6M1MF0;6"ENTER ";M$(M);": ";:I2$(M%(M)):600(X);:XDTĺ22);X1;" = ";TYP$(X1)09/::`9/"1=AXE, 2=BOW, 3=MACE, 4=SPEAR, 5=SWORD":f909 0X14:AL$(XAF)FM$(FMP%(AD%(2)),X):90X14:AD%(AFX)FD%(FMP%(AD%(2)),X):9f092 >> EDIT EFFECT :2:"ENTER EFFECT #";NO:I2$DE$:600:DE TO USE THE DEFAULT PREFIX:":PN$:PN$""PN$PW$ (PN$,1)"/"PN$" LIST DUNGEON- VERSION 6.0E BY JOHN NELSON^ MYLIST G BY TOM Zdk | REV. 8/1/90 PRODOS CONVERSION 5/26/90 TJZD$(4):D$"OPEN WORK.PREFIX":D$"READ WORK.PREFIX":PW$:D$"CLOSE"D$"PREFIX":PX$W G WITH ARTIFACT:";EN$:EN$""EN$(NA):22:8:EN$X (BEG$)NA(BEG$)1BEG$"1" (EN$)NA(EN$)(BEG$)EN$(NA) BEG(BEG$):EN(EN$) D$"OPEN EAMON.ARTIFACTS,L128" PRTĺD$"PR#";PS:(9);"80N" (SIZ(ADV$))2);ADV$:::RBEGEN:3500:B D$"CLOSE EAMON.ARTIFACTS":D$:D$"PR#0":100 D$;"READ EAMON.ARTIFACTS,R";R:X$:A14:A%(A)::DV5A%(2)1āA58:A%(A): A%(2)DTāX14:A$(AFX)"FIELD "(AFX)::3520 FMP%(A%(2))0āX14:A$(AFX)FL$(FMP%(A%(2)),0:DD$(D):W"zNF:FMP%(DT),FL$(DT,4):X0DT:FMP%(X)::X1NF:F14:FL$(X,F):x":PR$"...................."~"" 8"ފ 0,0,1,1,2,3,4,5,6,7,8" ODDS,W.TYPE,DICE,SIDES" KEY#,STRENGTH,(NOT USED),(NOT USED)#$ COUNTER,(NOT USE GOLD,TREASURE,WEAPON,SP.WEAPON,CONTAINER,LIGHT,HEAL,READABLE,DOOR,KEY,BOUND MON.k!A1AF:A$(A):!Ɖ VALUE,TYPE,WEIGHT,ROOM!䉃 NORTH ,SOUTH ,EAST ,WEST ,UP ,DOWN ,NORTHEAST,NORTHWEST,SOUTHEAST,SOUTHWEST "HD11̈AF:MFE ꈃ 4,12: AF = # ARTIF FIELDS, MF = # MONST FIELDS| M$(MF),M%(MF):M$(0)"ADVENTURER":M1MF:M$(M):  HARD,AGIL,FRIEND,COUR,ROOM,WGHT,D.ODDS,ARMOUR,WEAPON#,O.ODDS,W.DICE,W.SIDES DT:TYP$(DT):X0DT:TYP$(X): 10V!A$(27)ġ:100:2p /// TOGGLE PRINTER?zPRTPRTVPRTMRG10:SIZ80mPRTMRG0:SIZ40v100X /// QUITbD$"CLOSE":D$"PR#0":@PRTĺA$:JAZ1(A$)80:MRG);(A$,AZ,80):LPLP1::LPLP1: >>> READ DATA [ NATURAL WEAPONS ]";JM29M%(9)0M%(9)NARĺ" [";AN$(M%(9));"]";~M29M%(9)0M%(9)N%(2)ĺ" [";AN$(M%(9));"]";:M2:D$LP36PRTLP0:(12);(SIZ(ADV$))21);ADV$:PRTĞ:7);"PRESS ANY KEY TO CONTINUE";6);:A$:::;"]":"DESC:":8000:LPLP4tM2112:LPLP1:" ";M$(M2);(PR$,1,10(M$(M2)));(PR$,1,6((M%(M2))));M%(M2);M23M24M27M210ĺ" %";M25M%(5)0M%(5)NRĺ" [";R$(M%(5));"]";M29M%(9)1ĺ" [ NO WEAPONS ]"M29M%(9)0ĺ" PRTĺD$"PR#";PSQ:(12);(SIZ(ADV$))2);ADV$:::LP3:RBEGEN:5500:D$"CLOSE EAMON.MONSTERS":D$:D$"PR#0":100| D$;"READ EAMON.MONSTERS,R";R:MN$:M2112:M%(M2)::D$;"READ EAMON.DESC,R";R300:A$"MONSTER # ";R;" [";MN$INNING WITH #:";BEG$:BEG$""BEG$"1":18:6:BEG$v8:958:"ENDING WITH #:";EN$:EN$""EN$(NM):8:15:EN$(BEG$)NM(BEG$)1BEG$"1"(EN$)NM(EN$)(BEG$)EN$(NM)BEG(BEG$):EN(EN$)D$"OPEN EAMON.MONSTERS,L128"D$D$"PR#0":100CMRG);"EFFECT #";R;":"::LPLP2oD$;"READ EAMON.DESC,R";R200:A$:8000}LP500ıD$::PRTĞ:7);"PRESS ANY KEY TO CONTINUE";7);:A$::::A$(27)ġ:100 /// LIST MONSTERS56:958:"BEG;BEG$:BEG$""BEG$"1":18:6:BEG$g8:958:"ENDING WITH #:";EN$:EN$""EN$(NE):15:8:EN$(BEG$)NE(BEG$)1BEG$"1"(EN$)NE(EN$)(BEG$)EN$(NE)BEG(BEG$):EN(EN$)PRTĺD$"PR#";PS:LP500:RBEGEN:4500::2A%(2)3)ĭA%(A2)1A%(A2)5ĺ" [";(" AXE BOW CLUB SPEARSWORD",(A%(6)1)51,5);"]";e:A2kD$::PRTĞ:7);"PRESS ANY KEY TO CONTINUE";7);::A$::A$(27)ġ:100 /// LIST EFFECTS&6:958:"BEGINNING WITH #:");"]";JA24A%(4)300A%(4)300NRĺ" [HIDDEN ";R$(A%(4)300);"]";c:A2:A%(2)103740{$FMP%(A%(2))03740.A258:A$(A2)"(NOT USED)"3740BLPLP1:" ";A$(A2);(PR$,1,10(A$(A2)));(PR$,1,6((A%(A2))));A%(A2);[tA26(A%(2)(A%(2));"]";:3580E A24A%(4)0A%(4)NRĺ" [";R$(A%(4));"]"; A24A%(4)0A%(4)NM1ĺ" [CARRIED BY ";MN$((A%(4))1);"]"; A24A%(4)200A%(4)200NRĺ" [";R$(A%(4)200);"]";A24A%(4)100A%(4)100NARĺ" [INSIDE ";AN$(A%(4)100X):e "ARTIFACT # ";R;" [";AN$(R);"]":LPLP2:D$;"READ EAMON.DESC,R";100R:A$:"DESC: ":8000 A214:LPLP1:" ";A$(A2);(PR$,1,10(A$(A2)));(PR$,1,6((A%(A2))));A%(A2); A22A%(2)10ĺ" [SPECIAL CATEGORY]";:3580 A22ĺ" [";TYP$D),(NOT USED),(NOT USED)E#. CHANCES,HEAL AMT,NBR USES,(NOT USED)t#8 1ST EFFECT,# EFFECTS,READABLE,(NOT USED)#B ROOM INTO,KEY#,STRENGTH,(NOT USED)#L (NOT USED),(NOT USED),(NOT USED),(NOT USED)#V MONSTER#,KEY#,GUARD#,ATTACHED#<dD$(4):(21)InFI$(1)"DESIGNER.MANUAL":FI$(2)"UTILITY.MANUAL"qx::3:10:"PRINT MANUALS PROGRAM" :"THIS PROGRAM WILL PRINT THE MANUALS FROMDISK TO A PRINTER IN SLOT 1"::"IF YOU DO NOT HAVE A PRINTER, YOU MAY OBTAIN PRINTOUTS OF THE rewrites him into his own character record now. Normally this is simply writing of the new information of the character into his old record. If your program has the ability to quit for a while and come back later, it is possible that a new character migthe same name as the adventure. Once the adventure is over, control is returned to the Master diskette. If the character died, THE.ADVENTURER is deleted, & MAIN.HALL is run. If the character survived, he is replaced in the CHARACTERS file. The MAIN.PGM, and the player is prompted to insert the adventure disk into the disk drive. The character's attributes are put into the FRESH.MEAT file, and EAMON.NAME is opened to obtain the name of the adventure. The MAIN.HALL program then RUNs the program that has |~lp you design your own Eamon scenarios. When a player embarks on an adventure, his character is taken from the CHARACTERS file, and its record in CHARACTERS is marked empty. Its name and CHARACTERS record number is recorded in a file named THE.ADVENTURER A MANUAL FOR EAMON ADVENTURE DESIGNERS EAMON is a computerized fantasy role-playing game that was originated by Donald Brown and developed thru version 6.2 by John Nelson. This version, 7.0, was developed by Tom Zuchowski from v6.2. This manual will heP8011:(P$,P,1)" "ĂP (P$,P1):LPLP1:2000:P$(P$,P):P0::800g LP60ĺ(12):LP0m 4 P$::D$;"CLOSE":D$;"PR#0" 120 pD$"RUN EAMON.DDD.V7.0" 3) EXIT TO DESIGN MENU3 :"ENTER CHOICE...";Z 16368,0:A$:A(A$):A1A3170j :A36000x ,D$"PR#1" D$"OPEN "FI$(A) 5000 XD$"READ "FI$(A) A$ A$(13)ĺP$:P$"":LPLP1:2000 P$P$A$:(P$)80800  xOCESSOR OR PRINT UTILITY SUCH AS DOGPAW TO PRINT OUT THE MANUALS. THIS PROGRAM IS INCLUDED ONLY AS A MEANS OF LAST RESORT TO OBTAIN PAPER MANUALS.":15 "TYPE THE NUMBER OF THE MANUAL WHICH YOU WISH TO PRINT:"::" 1) ";FI$(1):" 2) "FI$(2):" xz{ MANUALS. SEND $1.00 TO:"o :"EAMON ADVENTURER'S GUILD":"7625 HAWKHAVEN DR.":"CLEMMONS, NC 27012":: ::"HIT ANY KEY TO CONTINUE: ";:A$: :5:"*NOTE* THIS PROGRAM IS *EXTREMELY* SLOW.YOU WOULD BE MUCH BETTER OFF USING A" "TEXT PRht be in the old record. In this case you should search the CHARACTERS file for a free record, and write him in there (for more info list NEW.CHARACTER on the Master diskette). Next, the character's name and record # must be entered in a file called THE.ADVENTURER, and then MAIN.HALL is run. This is all done by the MAIN.PGM. USE OF THE DUNGEON DESIGN DISKETTE IMPORTANT NOTE: There are 2 edit & list programs on this disk. The programs DUNGEON.EDIT and DUNGEON.LIST cannot be used on a version 7 Eamon. efault. You can learn a lot by listing other adventures' programs and data files. Be fair to the adventurer; an adventurer can generally lick about 3 times his own Hardiness in opponents, with allies subtracting their Hardiness from the opposition. Peop not begin artifact names with a number; use eight-inch knife instead of 8-inch knife. The EAMON.EDIT.V7.0 program has default data for all fields for rooms, artifacts and monsters. This makes it faster to key in data when you want most fields to be the dxt. Your entries must fit within the space underlined, and you must NEVER use quote marks ("). You may use commas and colons in descriptions ONLY. Do NOT leave any trailing spaces on the names of items ("LION" & "LION " look different to Applesoft). DoE: moves cursor to end of text on screen. CTRL-D: deletes character under cursor. CTRL-I: inserts a space where cursor is, moving text from cursor to end one space right. <-,-> (FORWARD & BACKWARD ARROWS): move cursor back or forward one character in te, the following control keys do things: ESC: accepts ALL of the text, both before & after cursor. RETURN: accepts all of the text from beginning to cursor. Any text following cursor is deleted. CTRL-B: moves cursor to beginning of text on screen. CTRL-, monster, & artifact, & 1/2 block per effect. Adding and Editing is very similar for the 4 data types. Every time you enter more than a single key, the entry is done thru a special input routine. The old Escape-key editing features do not work. Insteadny single thing (total 800 for all 4 types). To keep from running out of disk space, it is a good idea to keep track of how much disk space your adventure will use. A rough and conservative rule of thumb for the default lengths is 2/3 disk block per room the name lengths. For each of the 4 things you can enter (ROOM, ARTIFACT, EFFECT, and MONSTER), you can either add a new one to the list, or edit one already there. You cannot delete, but you can replace through editing. You MUST NOT go beyond 200 of a the name size you selected during dungeon intialization. Normally the default file sizes will be more than adequate; in any event the EAMON.EDIT.V7.0 program monitors name lengths to prevent file damage, and the RESIZE.FILES program can be used to changeshould have your dungeon 90% designed before beginning data entry. Decide what rooms you have, how they connect, and what monsters, treasures, and effects are in each room. You should know whether the names of your rooms, monsters, & artifacts will fit inventure disk/subdirectory. Optionally, if using large drives, you can transfer the files EAMON.EDIT,V7.0, EAMON.LIST.V7.0, and WORK.PREFIX to the subdirectory as well in order to put your tools in with the adventure being worked on. EAMON.EDIT.V7.0 You you assign to your adventure; it will be be assigned to the next valid number once you have submitted it to the EAG library. The next step is to transfer the programs LEADIN, REV.DATE, EAMON.NNN.INTRO, MAIN.PGM, MAKE.FAST.START, & MAKE.ARTS.MONS to the adore information. EAMON.INIT.V7.0 The first step in creating your adventure is to initialize it. The EAMON.INIT.V7.0 program on the DDD (Dungeon Design Diskette) will generate the EAMON.NAME file at the specified prefix. It is not important what number Use EAMON.EDIT.V7.0 and EAMON.LIST.V7.0 for version 7 databases, and DUNGEON.EDIT and DUNGEON.LIST for all others. These programs check the version before entering the database to prevent mistakes, so don't worry about it. See the Utilities Manual for mle don't like unbeatable odds, but if it is too easy, it will be boring. Try to strike a balance. Don't use no-warning death traps; it's not fair and won't win you any friends. EAMON.LIST.V7.0 Once you have entered all of your data, you will want to see it, to catch errors and get a good overview. The EAMON.LIST.V7.0 program on the DDD can list all of your rooms, artifacts, effects, and monsters, naming the "links" you have set up (the name of the room where it is found, the name of the artifact that ar, set R2 to the number of the room to enter and GOTO 3500. If something happens that makes the monsters reconsider their attitudes towards the player, GOSUB 3600 will allow them to change sides. If you have negative room connections numbers, put the sped can simply SAVE it onto your adventure disk. Lines 100-900 are the main loop that is run thru every turn. Every-turn Special programming should be put in lines 500-900. Lines 3000-3999 are the movement commands. If you want to magically move the playee right track. The EAG is also on-line at GEnie, so you can get your adventure to us by uploading it there, and you can ask questions in the Eamon Category in the A2 RT. ADAPTING THE MAIN.PGM You can use the MAIN.PGM exactly as it exists on the DDD, an"official" Eamon Adventure number, and then may be distributed by you or by the EAG to various public-domain outlets. If you have any questions or problems designing an adventure, write to the above address. We will do our best to help you get back on the a friend test it and/or send it to the EAG for testing. When the adventure is completely ready, send a copy of it to: Eamon Adventurer's Guild 7625 Hawkhaven Dr. Clemmons, NC 27012 It will be tested for bugs and assigned an on, to repeat a test you should be able to simply RUN MAIN.PGM. (Or if MAIN.PGM is already in memory, simply type RUN). A helpful hint: to restart an adventure that has crashed, type POKE 51,0:GOTO 100. 8. When you are sure your adventure is ready, hav these files from the finished adventure to save disk space. 7. Test your adventure: Using the ProDOS Eamon Master, select a character at the Main Hall and send him on an adventure. Select your adventure and you can then begin your test. From that timeadventure, you must run the program MAKE.FAST.START to generate the FAST.START file from the EAMON.ARTIFACTS and EAMON.MONSTERS text files. The companion program MAKE.ARTS.MONS can generate the two text files from the FAST.START file. Thus you can deleteyour program changes to MAIN.PGM. These will be all of the things that you want to be special about your adventure. 6. The ProDOS Eamon MAIN.PGM expects to find the artifacts and monsters data in a VAR file named FAST.START. Before running/testing your the adventure data using EAMON.EDIT.V7.0, adding all of your rooms, artifacts, effects, and monsters. This may take days, so whenever you get tired, select the Quit option. All of your items will be saved and you can pick up where you left off. 5. Make .0 EAMON.LIST.V7.0 WORK.PREFIX It is not necessary to transfer these 3 files but it can be done for convenience' sake, if desired. If you do this, it will not be possible to return to the Designer menu, but it will not be necessary, either. 4. Enter ialization, you'll need to copy these Applesoft programs from the DDD to your adventure disk/directory: LEADIN REV.DATE EAMON.NNN.INTRO MAIN.PGM MAKE.FAST.START MAKE.ARTS.MONS If using a large drive, you can also copy the tools: EAMON.EDIT.V7s e. A BACKUP COPY of the DDD (Dungeon Designer's Diskette) 2. Initialize your adventure. Run EAMON.DDD.V7.0 and select the initialize function. Note that it requires that the disk/directory to be initialized must already be formatted. 3. After init monster uses as a weapon, etc.) Here is a summary of the steps to follow to create an adventure of your own: 1. Be sure you have everything you need: a. A theme and a plot. b. A map of rooms c. A list the monsters d. A list of the artifactcial code at lines 3050-3249 Lines 4600-4699 are the synonym checker. Place your synonyms for actual artifacts here. Set SY$ = the synonym to be checked for, and SY = the # of the artifact that you are checking for. For example, if a Secret Panel that happens to be Artifact #3 is hidden in Room #2, and a hint in the room description says that the wall looks funny, you can put a line like this in your program: 4620 IF RO = 2 THEN SY$ = "WALL":SY = 3: GOSUB 4680 If the player then types EXAMINE WALL, WA$(*): Player's weapons (exiting pgm) WD%(*,*): weapon data (exiting pgm) WP%(*): Weapon pointer (Exiting pgm) WT: Weight player is carrying EAMON DATA FILES: ROOMS, ARTIFACTS, EFFECTS, & MONSTERS: The record sizes of the data files are variable and ar speed spell SU: spell succeeded SY: artifact # of synonym match SY$: synonym T(*): hardiness of each side in combat TP: value of loot UP: logical flag if weap. ability up V$: Verb of command V%(*): Flag to print room desc. WA%(*): Player's weapon ability on Master disk RL: Random number 1-100 RN$: name of current room RO: # of Room player is in S$: Object of command S2%(*): Current spell ability SA%(*): Total spell ability SE$: Sex (M/F) SH: shield worn SL: string length SM$(*): smile verbs SP: Counter for of room NM: Number of monsters NR: number of rooms NW: Number of weapons NZ: # of artifacts in EAMON.ARTIFACTS OF: Attacker R2: room being moved to R3: room just exited RB$(*): battle response verbs RD%(*): room connections RE: Player record in char file 9=# Dice 10=# dice sides 11=Friendliness 12=Original size of group 13=Damage M$(*): Monster names MC: counter for group monsters in battle MR%: Monster morale NA: Number of artifacts NC: Number of commands NE: Number of Effects NL: natural light levelber of current light source LT: light level of room (includes artificial light) M%(x,y): monster data: 'x' is monster number, 2nd is: 0='Seen' flag 1=Hardiness 2=Agility 3=# members in group 4=Courage 5=Room 6=Weight 7=Armor 8=Weapon # p of free memory FR: fumble roll/friend rating GO: player's gold HI: Hit in combat L: line counter for screen pause LA: record length of EAMON.ARTIFACTS LM: record length of EAMON.MONSTERS LR: record length of EAMON.ROOMS LL: string length LS: artifact numa CP: columns (40 or 80) CZ$: last command D2: damage to defender DF: defender DI: 1=player died D$: CTRL-D EA: player armor factor ED$: 'EAMON.DESC' ER$: 'EAMON.ROOMS' F: 'found' flag used by search routines F(*): damage to each side in combat F1, F2: tois: 0='Seen' flag 1=Value 2=Type 3=Weight 4=Room 5 thru 8: see ARTIFACTS below AC: Armor AR: Armor worn AE: Armor expertise A$(*): Artifact names BA: Gold in bank BV$(*): Battle verbs C: Number of command given C$(*): Valid commands CH: Charismthings to happen at the start, do it in lines 31150-31890 Lines 32000-32999 are the closing routines. If DI < > 0 then the player died. Lines 32100 thru 32290 are for your additions. Some variables: A%(x,y): Artifact data: 'x' is the artifact #; 'y' ifacts from the disk, as well as doing other initializing. To add a new command, change line 31910 (add 1 to the number for each new command), 31930 (add the new verbs--no spaces permitted), and 290 (add the new line numbers to GOTO). If you want special Lines 16000-16999 are the Say command, useful for 'words of power', etc. Lines 28000-28999 are the Use command, which does nothing at all in the basic MAIN.PGM, but is included for your own special programming. Lines 31000-31999 read in monsters and art REM from the front of line 7735 and change 'X' to the number of the FIRST dead body artifact. Lines 13000-13999 are the Power Spell. It is rather useless in its standard form; make all the changes you want, or even completely replace it if you want to. the secret panel will 'appear' in the room. Lines 7000-7999 are the attack commands and subroutines. Lines 7700-7999 kill monster M. If you want dead bodies, see the 'Dead Bodies' discussion in the 'Artifacts' section. To enable 'dead bodies', remove thee determined by the name sizes that you select when initializing your adventure. The default name lengths are: Rooms-38; Artifacts-30; Monsters-30. The description size is fixed at the Dos limitation of 238 characters. The name lengths can be changed using the program RESIZE.FILES. ROOMS Each room record contains 9 pieces of data: First is the room name; it will be printed as: "YOU ARE (room name)", so use names like "IN THE HALL". Next is the room description which is not preceded by anything, so itpt by magical means, which is the extent of its magic power. If you want other magic effects, you will have to program them. The v7.0 MAIN.PGM classes any weapon brought by the player that has a maximum hit potential (#dice * #sides) of 25 or greater as m charisma Weapon: spear, axe, club, bow, or sword. See the 'Monsters' section for more info on dice & sides. Magic Weapon: is magic within the current adventure only. If taken back to the Main Hall, it reverts to an ordinary weapon. It cannot break excemor Class 6-(USER #6) 6-Key# 6-Type 7-(USER #7) 7-Guard# 7-(USER #7) 8-(USER #8) 8-(USER #8) 8-(USER #8) Gold: has a set value, like gold pieces. Treasure: has a value that varies, depending on the character's1st Effect 5-Room beyond 6-# of Uses 6-# of Effects 6-Key # 7-Open/Closed 7-Open/Closed 7-Strength 8-(USER #8) 8-(USER #8) 8-Hidden? Format 0 & 7 Format 8 Format 9 5-(USER #5) 5-Monster# 5-Areapon type 5-Key # 5-Counter 6-Complexity 6-Strength 6-(USER #6) 7-# of Dice 7-Open/Closed 7-(USER #7) 8-# Dice Sides 8-(USER #8) 8-(USER #8) Format 4 Format 5 Format 6 5-Heal Amt 5-......6 9. Key............7 10. Bound Monster..8 11. Wearable.......9 All of the formats have the same information in Fields 1-4: value, type, weight, and location. Fields 5-8 contain the following: Format 1 Format 2 Format 3 5-Wg. The available types of artifacts are: Type Format 0. Gold...........0 1. Treasure.......0 2. Weapon.........1 3. Magic Weapon...1 4. Container......2 5. Lightable......3 6. Drinkable......4 7. Readable.......5 8. Door/Gatelve types of artifacts are available, each with their own data fields. All 8 of the artifact fields are accessible for editing. The fields labeled USER are not used by the standard Eamon 7.0 MAIN.PGM, but can be used by you for your own special programmin that it is in, its value, its type, and its weight. The room is usually a positive number; however, if the item isn't in the dungeon yet (such as a dead body) you should assign a room of zero. See 'Location of Artifacts' below for more information. Twe as an artifact all weapons carried by monsters, and (if enabled) a dead body for every monster (dead monsters are optional - see Dead Bodies below). For each artifact, you will need a name (such as "GOLD COIN") and a full description. Next give the roomy if the room is lit or dark. Room names may be in lower-case if desired. ARTIFACTS An artifact is any non-living thing that is in the dungeon. In addition to what you might normally think of as the artifacts, (gold, silver, statues), you must also havece between 500 and the room code is used to point to an artifact. This artifact must be a door or gate. Doors can be closed or locked. The door will specify the room beyond, if it is locked, and its strength (see Door artifacts). Lastly, you must specifates an exit back to the Main Hall. Negative numbers can also be made to have special results by altering the MAIN.PGM. There is no code in the MAIN.PGM for this; you will have to program it yourself. Room numbers greater than 500 are doors. The differen must be a full and complete description. Next you must give the numbers of the rooms that you can get to from that room in each direction. Room numbers from 1 to 199 are normal connections. Use zero for walls, cliffs, etc. The special code of -99 indicagical. Container: can contain other artifacts. It may be opened, at which time the artifacts are searched for any having a room number of 500 plus the number of the artifact being opened. Any artifact meeting this criteria is moved into the room by the program and the message, 'YOU FOUND SOMETHING', is printed. If it has a key #, then it is locked unless the player has the key specified in Field 5. A container can be smashed open if it absorbs enough hits to overcome its strength number. 'Closed' = 0 &of rooms in a dungeon, but there are additional codes recognized by the program: #+500: Inside a container artifact #+200: Embedded in a room description -1: Carried by the player -999: Worn by the player Embedded artifacts are those that are notMUST be as many bodies as monsters. To enable 'dead bodies', remove the REM from the front of line 7735 and change 'X' to the number of the FIRST dead body artifact. Location of Artifacts Artifacts normally have room numbers ranging from 1 to the number wear Dead Bodies: If you want dead bodies, you must make a complete set of 'dead body' artifacts of artifact type 1. These 'dead bodies' do not need to have exactly the same artifact number as monster number, but they MUST be in the same order, and there Armor Class: 0: clothing 1: shield, helmet, gauntlets 2: leather 4: chain mail 6: plate armor Clothing Type: 0: clothing (incl. armor, shields) 1: overclothes (incl. coats, capes, disguises) 2: shoes, boots 3: gloves 4: headMonster causes the artifact to disappear from the room and the actual monster to take its place. Wearable: can be worn by the player. 'Clothing Type' is not presently implemented by the MAIN.PGM, but the following protocol is recommended as a standard: ts, crowbars, etc. Bound Monster: used to simulate a bound monster. Field 5 is the actual monster to be freed. If Field 6 contains anything but 0, that key is needed. Field 7 specifies a Guard monster who should be in the same room. Freeing the Bound .PGM). Key: used for opening containers, doors or freeing bound monsters. The artifacts that need keys know the correct key, so no additional data is needed. Note that 'key artifacts' don't have to always be keys, but can also be things like magic amuledoors; If a door is hidden then travel in that direction gets the message YOU CAN'T GO THAT WAY until the door is either Examined or Opened. Thus you must mention the secret panel somehow in the room desc (see 'synonym checking' in ADAPTING YOUR OWN MAINors may be broken down by beating on them. If Field 6 is anything other than 0, then the door is locked, and the player must have the specified key that has the same artifact number as is in this field. There is a 'Hidden?' field that is used for secret crolls, etc.; be sure that things like signs, etc. are open (closed = 0 & open = 1). Door: the number of this artifact + 500 is put in the room data (see ROOMS). Field 5 tells the program where the door goes. Field 7 is how strong the door is; locked doatically read the effects from the Effects portion of the EAMON.DESC file. These effects must be added by the designer, with Field 5 containing the # of the first Effect, and Field 6 the # of Effects to be read. This also has an 'Open?' field for books, sre 'Open', or the player will have to OPEN them before drinking! (Closed = 0 & Open = 1). Potions, etc. may be given to friendly monsters, who will take a sip and then return it to the player. Readable: can be read by the player. The program will automount specified in Field 5. It may only be used the number of times set in Field 6 before it is exhausted. If Field 5 is set to a negative number then it is a poison. Field 7 is for sealed or closed bottles, jars, etc; be sure that streams, bowls, etc. a 'Open' = 1. Lightable: used to illuminate dark rooms, using the Light command. The counter decrements on each turn, and when it reaches zero, the artifact extinguishes and may not be relit using standard programming. Drinkable: heals the user by the am listed in the room but can be acted upon by the adventurer. For example you could describe a room as containing a statue, and embed a statue artifact. The statue will not be listed in the room until it is examined or acted upon by the player. Thus you can hide things from the adventurer. Hidden artifacts can no longer be found using the Look command. You must embed them in the room description. If you want to embed an artifact in room number 17 and not list it as a separate artifact, code its room codmple, assume that the attacker has an agility of 20 and armor of 2, and the defender has agility of 15 and armor of 6. The more agile the monster, the greater his ability in battle, and the heavier his armor, the more his agility is compromised. In the a0. For example, 140 indicates a 40% chance that the monster will be friendly. The v7.0 Eamon does not support offense & defense odds. The ability to hit is 50% + 2 times the difference in monster agility and armor between attacker and defender. For exa damage points (1 * 8). If the 2 numbers are, for example, 2 and 6, then the possible damage range is between 2 and 12. Friendliness: 1 = enemy; 2 = neutral; 3 = friend. A random chance can be assigned by adding the percent chance of friendliness to 10umber used to compute battle damage by the monster if it uses natural weapons. # Sides: the other half of the damage chances. For example, if # Dice = 1 and # Sides = 8, then there is a random chance that the monster will be able to land between 1 and 8ty during battle; the weight of its armor slows it down Weapon number: the number of the artifact that it is using for a weapon. A zero means that it has natural weapons such as claws. A negative number means that it is unarmed. # Dice: half of the nctivated by special programming Weight: This data is not presently used by Eamon; this field may be used by the author for special characteristics Armor: hits absorbed or stopped per blow. Equivalent to player armor. Armor class is deducted from agilight when injured or to pursue the player when he flees. Courage of less than 100 is the % chance that the monster will stay and fight. Courage of 200 will always pursue the player. Room: the number of the room in which it will be found. May be zero if aand this data: Hardiness: resistance to injury Agility: speed in battle. An agile monster will be a more successful fighter Number of Members: number of monsters in this group; single monsters are a 'group' of 1 Courage: tendency to flee from a finged from past versions of Eamon. It is now possible to have 'group' or multiple monsters, such as '4 RATS'. Actually, all monsters are now of the 'group' type, but single monsters are a 'group' of 1. For each monster you will need a name, description, ts may be in lower-case if desired. MONSTERS Monsters make up all living (or animate) things in the dungeon. Monsters are similar to characters; however they have full armor expertise and know all weapons equally well. Monsters have been extensively chaupper-case, though the artifact descriptions may be in lower-case if desired. EFFECTS This is a description that can be used for your own special stuff. To read in and print your special Effect, use this code: R = (Effect #) + 400: GOSUB 45 Effecartifact types, formats, or even monster or room data. However, you will find that use of the USER fields will often allow you to do the special stuff that you want without going to the trouble of generating new artifact types. Artifact names MUST be in ample, if you want to place an artifact inside artifact #9, code its room code as 509. Note that artifact #9 MUST be a container or the artifact can never be found! EAMON.EDIT.V7.0 will also allow you to build your own artifact types, or modify existing e as 217. Remember that Embedded artifacts MUST be mentioned in the description of the room or of another artifact that is in the same room or it can never be found by the player, who must Examine it to cause it to 'appear' in the room. Containers: For exbove example, the attacker has an effective agility of (20 - 2) - 18 and the defender has an effective agility of (15 - 6) = 9, and the overall hit chance is 50 + 2(18 - 9) = 68%. If their roles are reversed, the hit chance is 50 + 2(9 - 18) = 32%. Monster names MUST be in upper-case, though the monster descriptions may be in lower-case if desired. ARRAY SEARCH SYNTAX AND NOTES Note: This search routine is automatically installed and used by the MAIN.PGM, and you can skip the following section if you w') & A,D%,M%(C%,5),C%,B% : REM PERFORM SEARCH IF NOT C% THEN M = 999: NEXT: GOTO 160 : REM NO MATCH 145 M = C% : REM 'BUMP' LOOP UP TO LOCATION OF MATCH PRINT M$(M)"IS HERE." 159 NEXT M : REM SEARCH REST OF ARRAY s an example from the MAIN.PGM: 140 B% = NM : REM SIZE OF MONSTER ARRAY D% = RO : REM SEARCH VALUE (ROOM # IN THIS EXAMPLE) FOR M = 1 TO NM : REM USE LOOP TO INCREMENT STARTING LOC. C% = M : REM STARTING LOCATION OF SEARCH (START AT 'MX,Y) may be any integer array. If it is a multiple array, only the first term ('X') may be searched 4) C% must be any simple integer variable 5) B% must be any simple integer variable and must equal the DIM size of the first term ('X'). Here iay (same as 'X') returns with array location of match returns with zero if no match B% = the last location in the array 1) The first 'A' is a command and may not be changed 2) D% must be any simple integer variable 3) A%( YOU WANT?" : F = 0 4790 RETURN The integer array search syntax is: & A,D%,A%(X,Y),C%,B% where: A = command to perform an integer array search D% = search value A%(X,Y) = starting location in array C% = Starting location in arr = F + 1: IF F = 1 THEN M = C% : REM FIRST MATCH 4760 IF S$ = M$(C%) THEN M = C%: RETURN : REM EXACT MATCH 4770 & R : REM SEARCH FOR ADDITIONAL MATCHES IF C% < > D% THEN 4720 : REM IF ANOTHER MATCH THEN 4720 4780 IF F > 1 THEN PRINT "WHICH "S$" DOCH LOCATION' VARIABLE & S,S$,M$,C% : REM SEARCH FOR A MATCH FOR S$ in M$() ARRAY IF NOT C% THEN RETURN : REM NO MATCH IF C% RETURNS WITH 0 4720 D% = C% : REM SAVE LOCATION OF MATCH IF M%(C%,5) < > HA AND M%(C%,5) < > WH THEN 4770 4750 Fh for a second match, use the command & R Here is a modified example from the MAIN.PGM: 4705 WH = RO:HA = -1 : REM POSSIBLE LOCATIONS OF MONSTER 4710 F = 0 : REM 'FOUND' FLAG C% = 0 : REM START AT ARRAY LOCATION 0 D% = 0 : REM 'LAST MATe string name 3) A$ in the above example may be any string array name. Note that the parentheses are NOT included. 4) C% MUST be a simple integer variable. If C% returns unchanged then there was no match found To reenter the routine to searc string A$ = the name of the array to be searched C% = the starting location in the array also returns with the value of a match 1) The first 'S' is a command and may not be changed 2) S$ in the above example may be any simpl string array for a match to a search string, or it can search one dimension of an integer array for a match to a search value. The string search syntax is: & S,S$,A$,C% where: S = command to perform a string search S$ = the name of the searchtable. If the Ampersand is already in use, the Ampersand hooks set at line 33005 may be replaced by CALL statements. Feel free to contact the Eamon Adventurer's Guild for further assistance concerning this routine. The array search routine can search acan still do an ordinary array search using Applesoft. The v7.0 Eamon uses machine-code augmentation of the array searches. This subroutine is reached by way of the Ampersand option of Applesoft. The machine-code routine, SEARCH.ROUTINE, is fully relocaish. If you need to do a search for your own special commands, simply GOSUB 4700 (for monsters), or 4804 (for artifacts), and the variable S$ will be searched for you. Take a look at the other commands to see how it is done. Or when all else fails, you USING LOWER CASE TEXT IN EAMON Eamon has always been restricted to Upper-case text only because unmodified Apple II's print 40-column Lower-case text as meaningless garbage. However, since ProDOS is almost impossible to use without displaying lower-caseREFIX":D$"READ WORK.PREFIX":PW$:D$"CLOSE"u ::3:10:"RESIZE FILES UTILITY"::"DEFAULT PREFIX: ";::PW$: :::"IF NECESSARY, INSERT ADVENTURE DISK TO BE MODIFIED AND TYPE THE PREFIX, OR HIT TO USE THE DEFAULT PREFIX:":PN$ PRESIZE FILES UTILITY 1 RSD 10/4/88 BREV. 8/1/90 EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012  D$(4):E$(1)"EAMON.ROOMS":E$(2)"EAMON.MONSTERS":E$(3)"EAMON.ARTIFACTS" D$"PREFIX":PX$. D$"OPEN WORK.Per paper and doesn't crash on nonstandard artifacts. These cannot be used with a 7.0 Eamon because the file structure is incompatible. r the name, the more disk space your file will use. DUNGEON.EDIT and DUNGEON.LIST are included for your use in examining Eamons that were not written in v7.0. DUNGEON.LIST is an improvement over the one on previous DDD's, as it doesn't waste as much print once to convert the entire program to UC. Then you can BLOAD LC.UC.CONV right on top of it. OTHER UTILITIES RESIZE.FILES allows you to change the lengths of the names of your Rooms, Artifacts, & Monsters. It is self-prompting. Remember that the longee it, BLOAD LC.UC.CONV, then use the command CALL768(variable). For example, to convert A$ to UC, use the command CALL768A$. Note that both of these utilities run out of the same Page 3 memory. This is no problem since you only have to BRUN LCASE.KILLERuestion in the MAIN.PGM. LCASE.KILLER will convert all LC text in program PRINT statements into UC. This is especially useful in the Intro program. To use it, use the command BRUN LCASE.KILLER. LC.UC.CONV will convert any text string to UC text. To use you have asked him, the easiest way to transfer this information to the MAIN PGM is by having your intro pgm POKE a number into location 769, then have the MAIN.PGM PEEK it to see whether to invoke the LC/UC utilities. Alternatively, you can re-ask the q0-column capability, you won't need to worry about this in 80-column mode, as all 80-column cards support both UC and LC text. The only way to determine whether the player's Apple can read 40-column lower-case text is to ask him in the Intro program. Onc, the use of lower-case text in ProDOS Eamon is quite acceptable. The two LC-to-UC utilities included on this disk make it possible to write your Eamon in LC text that will automatically be converted to UC for II's. If you are writing your Eamon for 40/8N$""PN$PW$. "(PN$,1)"/"PN$"/"PN$7 %30Q &D$"PREFIX"PN$:216,0 (D$"OPEN EAMON.DESC":D$"READ EAMON.DESC":N(1),N(3),NE,N(2),L(1),L(2),L(3):D$"CLOSE"; 2T(1)L(1)34:T(2)L(2)62:T(3)L(3)42:::"THE PRESENT NAME SIZES ARE:"::" R ߠȱȱa)ߑ` STA (B1),Y ;PUT IT BACK IN MEMORY CLC BCC GETCHR ;GET NEXT CHAR. EXIT RTS NA1),Y ;GET STRING ADDRESS DEY STA B1,Y BNE GETADR LDA (A1),Y ;GET STRING LENGTH TAY INY GETCHR DEY ;DECREMENT COUNTER BEQ EXIT ;BRANCH IF DONE LDA (B1),Y ;GET CHAR. CMP #$61 ;LOWER CASE? BCC GETCHR ;BRANCH IF NOT AND #$DF ;CONVERT TO UPPER CASE*LC/UC CONVERTER *BY TOM ZUCHOWSKI *JULY 1987 * *CONVERTS LOWER CASE STRINGS TO UPPER CASE *SYNTAX: &A$ * * PTRGET EQU $DFE3 A1 EQU $E0 A2 EQU $E1 B1 EQU $E2 B2 EQU $E3 * * ORG $300 * * JSR PTRGET ;GET STRING POINTERS STA A1 STY A2 LDY #2 GETADR LDA (RITE EAMON.DESC":N(1):N(3):NE:N(2):L(1):L(2):L(3):D$"CLOSE""E$(A)",R"I:A$(I),J1X:A%(I,J)::MD$"CLOSE":D$"DELETE "E$(A)s,L(A)N34:A1L(A)N42(A2)201D$"OPEN"E$(A)",L"L(A)6I1N(A):D$"WRITE"E$(A)",R"I@A$(I)JJ1X:A%(I,J)::TD$"CLOSE"ED$"OPEN EAMON.DESC":D$"WCASE, YOU WILL NEED APPROX. "((NT(A))L(A)2562):"ADDITIONAL SECTORS":"TYPE 'C' TO BEGIN, OR ANY OTHER KEY TO ABORT: ";:Q$:Q$:Q$"C"ĀA$(200),A%(200,15)X11:A1X7A3X8D$"OPEN "E$(A)",L"L(A)I1N(A):D$"READENDED THAT THIS PROCESS NOT BE PERFORMED UNLESS YOU HAVEA BACK-UP COPY OF THE ADVENTURE DISK."tNT(A)0170:"IF YOU ARE INCREASING THE NAME SIZE, BE *SURE* THAT YOU HAVE SUFFICIENT DISK SPACE TO ACCOMMODATE THE EXTRA BYTES."K"IN THIS WHICH YOU WISH TO RESIZE." x:"THE COMPUTER WILL NOW READ IN THE DISK FILE, DELETE IT, AND REWRITE IT IN THE NEW SIZE. DO *NOT* HALT THE RESIZING PROCESS, OR YOU WILL WIND UP WITH A PAR-TIAL FILE OR NO FILE AT ALL."a:"IT IS *STRONGLY* RECOMM NAME SIZE OF "E$(A);:A$:(A$,1)"Y"50 Z::"ENTER THE NEW NAME SIZE THAT YOU WANT FOR "E$(A):"(OLD SIZE: "T(A);:"): ";N$:N(N$) d:"IS THE ABOVE CORRECT? ";Q$:(Q$,1)"Y"Ā n:3:"BE SURE THAT THE DISK IN THE DRIVE NOW IS THE ONE OOMS:....."T(1):" MONSTERS:.."T(2):" ARTIFACTS:."T(3) <:"WHICH ONE DO YOU WISH TO RESIZE?"::" 1) ROOMS":" 2) MONSTERS":" 3) ARTIFACTS" F:"ENTER THE NUMBER OF YOUR SELECTION: ";A$:A(A$):A1A370- P:3:"DO YOU WISH TO CHANGE THE* LCASE KILLER * BY ERIC LAMBRECHT * * CALL -A.P.P.L.E. MAR. 1982 PG70 * * ADDR EQU $06 PROGST EQU $67 BASIC EQU $3D0 * * ORG $300 * * LDA PROGST ;SETUP STA ADDR LDA PROGST+1 STA ADDR+1 * * ENDTST LDY #1 LDA (ADDR),Y ;TEST FOR END BNE SRCH ;OF PAL STY ARYVAL+1 JSR CHKCOM JSR PTRGET ;GET ARRAY LOC. (C%) STA ANUM STY ANUM+1 LDY #1 LDA (VARPNT),Y STA CTR JSR CHKCOM JSR PTRGET ;GET HIGHEST ARRAY LOC. LDY #1 LDA (VARPNT),Y STA LNUM * ALOOP LDY #0 LDA (ARYVAL),Y CMP VAL BNE A1 INY LDAATION OF 'X' ANUM EQU $E4 ;LOC. OF C% VAL EQU $E6 ;SEARCH VALUE CTR EQU $E8 ;COUNTER = ARRAY LOC UNDER TEST * JSR PTRGET ;GET SEARCH VALUE LDY #0 LDA (VARPNT),Y STA VAL,Y INY LDA (VARPNT),Y STA VAL,Y JSR CHKCOM JSR PTRGET ;GET ARRAY LOC. STA ARYVH VALUE * A%(X,X) = STARTING LOCATION IN ARRAY * C% = STARTING LOCATION IN ARRAY (SAME AS 'X') * RETURNS WITH ARRAY LOC. OF MATCH * B% = THE LAST LOCATION IN THE ARRAY * * ARYVAL EQU $E0 ;LOC. OF ARRAY VALUE LNUM EQU $E2 ;HIGHEST ARRAY LOC CHKCOM EQU $DEBE PTRGET EQU $DFE3 GETARYPT EQU $F7D9 * * ORG $4000 * * JSR CHRGOT CMP #'A' BNE STRSRCH JSR CHRGET JSR CHKCOM * *EAMON ARRAY SEARCH *BY TOM ZUCHOWSKI * * &A,D%,A%(X,Y),C%,B% * * WHERE: * A = ARRAY SEARCH COMMAND * D% = SEARC*EAMON ARRAY SEARCH ROUTINES *BY TOM ZUCHOWSKI *8/30/88 * *SYNTAX FOR STRINGS: &S,A$,B$,C$ (TO BEGIN SEARCH) * &R (TO CONTINUE SEARCH) *SYNTAX FOR NUM. ARRAYS: &A,D%,A%(X,Y),C%,B% * * CHRGET EQU $B1 CHRGOT EQU $B7 VARPNT EQU $83gh` a8 ȱ8 STX ADDR STA ADDR+1 SEC BCS ENDTST GM RTS * * SRCH LDY #4 ;SKIP LINE # LDA (ADDR),Y BEQ NEXTLN ;END OF LINE CMP #$7F BCS NOLOW CMP #$61 BCC NOLOW SEC SBC #$20 ;CHANGE TO STA (ADDR),Y ;UPPER CASE NOLOW INY ;CONTINUE BNE SRCH+2 * NEXTLN LDY #0 LDA (ADDR),Y TAX INY LDA (ADDR),Y (ARYVAL),Y CMP VAL+1 BEQ AMATCH A1 INC ARYVAL BNE A2 INC ARYVAL+1 A2 INC ARYVAL BNE Z3 INC ARYVAL+1 Z3 INC CTR SEC LDA LNUM SBC CTR BCS ALOOP LDA #0 STA CTR * AMATCH LDY #1 LDA CTR STA (ANUM),Y RTS * *EAMON STRING SEARCH *BY TOM ZUCHOWSKI *8/23/88 * * &S,A$,B$,C% * * WHERE: * S = STRING SEARCH COMMAND * A$ = SEARCH STRING * B$ = ARRAY NAME * C% = STARTING LOCATION IN ARRAY * RETURNS WITH ARRAY LOC. OF MATCH * LOWTR EQU $9B SNUM EQU $E0 STRLEN EQU $E1 STRADR EQU $E2 ARYLEADIN PROGRAM )REVC 10/6/88LPRODOS CONVERSION 5/25/90 TJZ EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012  FF$(12):D$(4)D$"OPEN FRESH.MEAT":D$"READ FRESH.MEAT":RE:NA$:D$"CLOSE"* D$"OPEN EAMON.NAR :3:"EAMON ADVENTURER'S GUILD":"7625 HAWKHAVEN DR.":"CLEMMONS, NC 27012":::"EAMON ADVENTURE #000":"(ADVENTURE NAME)":"BY (AUTHOR NAME)"15:"LAST UPDATE: M/DD/YY"  (4)"RUN EAMON.000.INTRO" iЯ` Ak ߠȱ ߅ ߅ ߠȱ8ܩ`R 8E ߠృȱȱ i祜i ߅<ȱȱ0&008e SNUM LDY #1 STA (NUMPTR),Y OVER RTS RLEN CLC ADC ARYADR STA ARYADR BCC S1 INC ARYADR+1 S1 LDY #0 BEQ Y4 * AGAIN INC SNUM LDA SNUM CMP ARYSIZ BEQ OVER ;FINISHED * LDA ARYPTR ;GET NEW DESCRIPTOR CLC ;FOR NEXT ARRAY ADC #3 STA ARYPTR BCC Z5 INC ARYPTR+1 Z5 BNE SLOOP * SMATCH LDATR),Y STA ARYADR+1 LDA ARYLEN ;SRCH STR > ARRAY STR? CMP STRLEN BMI AGAIN ;YES, GET NEXT STR LDX #1 LDY #0 BEQ Y4 Y2 INY CPY STRLEN ;FINISHED? BEQ SMATCH ;YES Y4 LDA (ARYADR),Y ;NO CMP (STRADR),Y BEQ Y2 DEX BMI AGAIN * LDA ARYLEN SEC SBC ST+1 * S2 JSR CHKCOM JSR PTRGET ;GET NUM VAR LOC STA NUMPTR STY NUMPTR+1 * CLC HOP BCS AGAIN ;INTERMEDIATE JUMPER FROM BEGINNING SLOOP LDY #0 LDA (ARYPTR),Y STA ARYLEN ;LEN OF ARRAY STR INY LDA (ARYPTR),Y ;LOC OF ARRAY STR STA ARYADR INY LDA (ARYPT),Y ;GET PTRS & STORE STA STRADR INY LDA (VARPNT),Y STA STRADR+1 * JSR CHKCOM JSR GETARYPT ;GET ARRAY STR LOC. LDA LOWTR CLC ADC #6 STA ARYPTR LDA LOWTR+1 ADC #0 STA ARYPTR+1 LDY #0 LDA (ARYPTR),Y STA ARYSIZ INC ARYPTR BNE S2 INC ARYPTRSIZ EQU $E4 ARYLEN EQU $E6 ARYPTR EQU $E7 ARYADR EQU $E9 NUMPTR EQU $EB * STRSRCH CMP #'R' BNE SSTART JSR CHRGET SEC BCS HOP * SSTART JSR CHRGET JSR CHKCOM JSR PTRGET ;GET SEARCH STR LOC. LDY #0 STY SNUM LDA (VARPNT),Y STA STRLEN INY LDA (VARPNME":D$"READ EAMON.NAME":AN$:D$"CLOSE"L (::SP(40(AN$))2:SP:AN$n n5:"GREETINGS, "NA$"!":7000 x10:"DOST THOU HAVE 80-COLUMN CAPABILITY? ";C$:7000:(C$,1)"Y"ĺ:"WOULDST USE IT? ";C$:7000 8000:C$(C$,1):768,40:C$"Y"Ĺ768,80:5)10ĺ:"YOUR "A$(LS)" IS ALMOST OUT!":54:120i uLSĭA%(LS,5)20ĺ:"YOUR "A$(LS)" GROWS DIM!":54 xSPSPSP1:SPM%(0,2)M%(0,2)2:"YOUR SPEED SPELL HAS JUST EXPIRED!":56 zA03:S2%(A)SA%(A)S2%(A)S2%(A)1.1:S2%(A)SA%(A)S2%(A)SA%(A9( \:"YOU MUST FIRST OPEN IT.":99J ^:"YOU CAN'T "C$(C)" "S$:98q `:"NOBODY HERE BY THAT NAME!":99~ b54:310 c54 d YOU SEE n56:LSA%(LS,5)A%(LS,5)1:A%(LS,5)0ĺ:"YOUR "A$(LS)" HAS GONE OUT!":LS0:LTNL:992 sLSĭA%(LS,D$"READ"ED$",R"R:A$:D$M 2LL((A$)CP1)CP:LLLL:58:A$:LLLL(L0)S 3a 4LL1:58k 6LL1w 8LL2: :L23ı ;" (PRESS ANY KEY TO CONTINUE) ";:Q$::(37):L139:" ";:::(37):L0: [:"YOU AREN'T CARRYING IT.":9104):B(770)2Ĺ769,A:770,B:BB2:104,B:B256A1,0:(4)"-MAIN.PGM" A(769):B(770):1014,A1:1015,B:AB256A1 (4)"BLOAD SEARCH.ROUTINE,A"A 20 (4)"VERIFY SAVED.GAME":29000 216,0:(4)"RESTORE FAST.START":31000 - EAMON ADVENTURE #NNN8 ADVENTURE NAME>X BY AUTHOR NAME^v VERSION 7.0 MP46 5/26/90 PRODOS CONVERSION 3/17/90 EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 L A(103):B(OME EVIDENT DURING PLAY"$8000] PUT YOUR INTRO TEXT HERE IN LINES 1001-4999 sD$"RUN MAIN.PGM"XI11000::@23:8)"HIT ANY KEY TO CONTINUE:";:Q$::FF$::(C$,1)"Y"İ8000 "12) 'INVENTORY' GIVES THE STATE OF YOUR WOUNDS":"13) MONSTERS KNOW WHICH WEAPON IS THEIRS IF THEY DROP IT":"14) CHANCES TO HIT ARE NOW DETERMINED BY AGILITY ONLY":"15) GROUP MONSTERS ARE SUPPORTED":"OTHER CHANGES WILL BECTERS" "8) IF YOU 'GIVE' A HEALING POTION TO A MONSTER, HE WILL TAKE A SIP AND RETURN IT TO YOU":"9) NEW CMDS: REQUEST, WEAR, REMOVE, USE":"10) YOU CAN 'INVENTORY' OTHER MONSTERS" "11) 'EXAMINE' (MONSTER) ALSO GIVES THE STATE OF ITS WOUNDS": FOR CONCEALING DOORS":"3) NEW ARTIFACT TYPE: 'WEARABLE" "4) MANY ARTIFACT TYPES HAVE NEW FIELDS":"5) WEAPONS WITH MAX HITS OF MORE THAN 24 ARE CLASSED 'MAGICAL'":"6) SPELL ABILITY REPLENISHES IF YOU GIVE IT A 'REST'":"7) YOU CAN 'HEAL' OTHER MONS(4);"PR#3":FF$:v "THE VERSION 7.0 EAMON SYSTEM HAS A NUMBER OF CHANGES FROM PREVIOUS EAMON VERSIONS:"; :"1) ABBREVIATIONS ARE ALWAYS RECOGNIZED":"2) SECRET PASSAGES ARE NO LONGER FOUND USING THE 'LOOK' CMD; INSTEAD THERE IS PROVISION) {6 }LTĺ:"IT'S TOO DARK TO SEE.":52:210R "YOU ARE ":" "RN$:54q V%(RO)RRO:45:V%(RO)1 B%NM:D%RO:M1NM:C%M:A,D%,M%(C%,5),C%,B%:C%M999::160 MC%:M20:M%(M,0)İ51:M%(M,0)1:RM600:45:M21:" - ";M%(M,3)1ĺM$(M)" IS HERE.":52:156DM%(M,3)" "M$(M)"S ARE HERE.":52PM2İ51V51:B%NZ:D%RO:A1NZ:C%A:A,D%,A%(C%,4),C%,B%:C%A999::190AC%:M20:A%(A,0)A%(A,0)1:RA200:45:M21:" - ";"YOU SEE "A$(A)".":52:M2İ51 :S,S$,M$,C%:C%ĭ(A$)1(S$,1)"S"S$(S$,(S$)1):4710JkC%ıwpD%C%:XC%:M%(X,5)HAM%(X,5)WH4770FF1:F1MXS$M$(X)MX:R:C%D%4720 ARTIF SEARCH HA1:WHHA:EMHA:4810HA1WHRO:EMSURD.":4240A|WTA%(A,3)10M%(0,1)ĺ" IS TOO HEAVY.":4240i" TAKEN.":A%(A,4)1:WTWTA%(A,3)w52::98 SYNONYMS SL(S$)CH(SY$,SL)S$(SY$,SL)S$S$A$(SY):R\ MONS SEARCH aWHRO:HA1?fF0:C%0:D%0.":98[,"GOT IT.":54:A%(A,4)1:WTWTA%(A,3):M%(0,8)1ĭA%(A,2)2A%(A,2)317100d6300h51:B%NA:D%RO:A1NA:C%A:A,D%,A%(C%,4),C%,B%:C%A999::300rAC%:A$(A);:A%(A,2)10ĺ" IS TIED DOWN!":4240wA%(A,3)900ĺ": DON'T BE AB)M%(M,11)2:FR200(1)M%(M,11)3nVAM%(M,11):F(A)F(A)M%(M,13)M%(M,3):T(A)T(A)M%(M,1)M%(M,3)::z GET 4900:S$"ALL"4200HARO:4805:F94:A%(A,3)900ĺ"DON'T BE ABSURD.":98WTA%(A,3)10M%(0,1)ĺ"IT IS TOO HEAVY$:LTNLLS100$ ENEMY? QT(1)0:T(3)M%(0,1):F(1)0:F(3)M%(0,13)]$M1NM.M%(M,5)R3ĭ(M%(M,11)3(M%(M,11)1)200(1)M%(M,4))M%(M,5)RO:36708M%(M,5)ROĂ:&BM%(M,11)100FRM%(M,11)100(CH10)2:M%(M,11)1:FR100(1 GATE/DOOR@R AR2500:A%(A,6)0A%(A,8)R2A%(A,5):3040X\ A%(A,8)R20:3390f :"THE "A$(A)" BLOCKS THE WAY!":99 GO  R3RO:ROR2:3600 D$;"READ"ER$",R"RO:NX0:RN$:X1ND:RD%(X) RD%(X)0RD%(X)NRNXNX1  :NL:DYOUR BACK HERE!":99 DC9 R2RD%(D):R25003400O R20R2NR3500i /// SPECIAL MOVES R299ĺ:"YOU RETURN TO THE MAIN HALL.":32000l /// INSERT HERE SPECIAL ROOM MOVE CHECKING> :"YOU CAN'T GO THAT WAY!":V%(RO)0:99H DFC%:DFNM480OM2DF1NM:C%M2:A,D%,M%(C%,5),C%,B%:C%M2999:430|M2C%:M%(M2,11)1(1).25DFM2:M29997500T(1)M999:MC999: SPECIAL EVERY-ROUND STUFF 100 MOVE  T(1)ĺ:"YOU CAN'T TURN 0:MCMCM%(M,3):M%(M,11)34008hT(3)M%(0,1)480}rB%NM:D%RO:M21NM:C%M2:A,D%,M%(C%,5),C%,B%:C%M2999:380wM2C%:M%(M2,11)3(1).25DFM2:M2999|:480C%1:B%NM:D%ROA,D%,M%(C%,5),C%,B%:M%(C%,11)1C%C%1:410M,12)M%(M,3))M%(M,12)(1)100M%(M,4)MR%(1)M%(M,3)1::MR%" "M$(M);PMR%ĺ(" FLEES!S FLEE!",1(MR%1)7,7):54:M%(M,3)M%(M,3)MR%:M%(M,5)M%(M,5)(M%(M,3)0):M2M:3600:MM2:MR%0:M%(M,5)Ă:500TMC1:M%(M,3)8MCM%(M,3)8"^OFM:DFK FOE 1516T(1)500c@B%NM:D%RO:M1NM:C%M:A,D%,M%(C%,5),C%,B%:C%M999::500|JMC%:M%(M,11)2490MM%(M,3)1ĭM%(M,13)M%(M,1)(1)100M%(M,4)ĺ:M$(M)" FLEES!":54:M%(M,5)0:M2M:3600:MM2::500NM%(M,3)1340MO(M%(C);:15:1403,30:C$(CCC);:28:1403,50:C$(C2CC)::210"C3000,3000,3000,3000,3000,3000,4000,5000,6500,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,23000,17000,18000,19000,20000,21000,22000,24000,25000,26000,27000,28000, PIC,A1):S$(A$,A1)5(S$,1)" "S$(S$,2):260kSL(V$):A1ND:(C$(A),SL)V$CA:A999::290:F0:AND1NC:(C$(A),SL)V$CA:FF1:C$(A)V$F1:A999=F1ĺ:"I ONLY UNDERSTAND THESE COMMANDS-- "::C1CC:2:1403,10:C$(C%C%1:EANZ1NA:A%(A,4)ROĺ"YOUR ";A$(A)" IS HERE.":52KW CMD {:56:" YOUR COMMAND?";A$:L0(A$,1)" "A$(A$,2):220A$""A$CZ$:(37):16:A$:A$""275CZ$A$:A2(A$):(A$,A,1)" "ĂV$(A$RO20034600:F0:C%0:D%0:S,S$,A$,C%:C%ı?X1NAD%C%:A2A%(C%,4):A2WHA2HAA2EMFF1:AC%:S$A$(C%)X999::R:C%D%Ă:X999::F1ĺ:"WHICH "S$" DO YOU WANT?":F0::99$ GET S$ )LT100".S$""ĺ:C$(C)" WHO OR WHAT";:S$:4900(85 DROP N4900:S$"ALL"5100_4801:F91WTWTA%(A,3):A%(A,4)RO::A$(A)" DROPPED.":54ALSLS0:LTNL::"THE "A$(A)" GOES OUT.":54RWT10M%(0,1)ĺ"YOU SUDDENLY FIND YOU CANNOT CARRY AF0DI1::32000*,FF(1)T(1)T(1)02,56?,@ FLEE t,JT(1)ĺ:"THERE'S NOTHING TO FLEE FROM!"::100,TNX0ĺ:"THERE'S NO PLACE TO GO!":100,^S$""8500,hSL(S$):X1ND:S$(C$(X),SL)DX:X99,r:3030-4!R2RD%(ND(1)1):)M%(DF,1)M%(DF,13):M%(DF,3)1M%(DF,3)M%(DF,3)1:M%(DF,13)0:56+(M%(DF,5)0:M%(DF,3)M%(DF,12):A21NA:A%(A2,4)DF1A%(A2,4)RO+2:M%(DF,8)1+7A%(DF+X)=RO:REMREPLACE 'X' WITH ART. # OF FIRST DEAD MONS. IF YOU ARE USING DEAD MONS.,<D%(DF,1)7700V*M%(DF,13)5M%(DF,1)2(M%(DF,13)0)7652,7655,7660,7665,7670,7675t*"IN PERFECT HEALTH.":56*"OK.":56*"HURT.":56*"BADLY HURT.":56*"GRAVELY INJURED.":56*"DYING.":56* MONSTER DIESF+"DEAD!":F(A)F(A52:D20:D31D:D2D2S(1)::D2(D2AM%(DF,7)):D21ĭM%(DF,7)ĺ" BLOW TURNED!":56)D21ĺ" BLOW GLANCES OFF ARMOR!":56)51)52:M%(DF,3)1ĺ"ONE ";)M$(DF)" IS ";*AM%(DF,11):F(A)F(A)D2:M%(DF,13)M%(DF,13)D2:M%(DF,13)MEA08(DM%(OF,9):SM%(OF,10):WDA%(W,7):SA%(W,8)q(A1:(" ** ++",(DF0)31,3);:RL5ĺ"A HIT!":7633("WELL STRUCK!":52:R2100(1):R251A0:7633(RL1.5:R285RL2:7633(R295RL3:7633(R2100RLM%(DF,1)(SRLS\)ĺ" WEAPON DAMAGED!":A%(W,8)A%(W,8)1:A%(W,8)56p't" WEAPON BROKEN!":A%(W,4)0::M%(OF,8)1:(1).554'y" WEAPON HITS USER!":54:DFOF:(R100)17605,7610(OFUP(100(1)WMWA%(W2)):(1)100WA%(W2)ĭEA10(1)AEAE1:EAAEAC:EA0%(M%(DF,8),6)9&`RL97Wĺ" --"RB$(A2,(1)2)"!":56}&e" ..A FUMBLE!":52:R100(1):R41ĺ" FUMBLE RECOVERED.":56&jR81ĺ" WEAPON DROPPED!":A%(W,4)RO:M%(OF,8)OF1:56&lA%(W,2)3ĺ"SPARKS FLY FROM "A$(W)"!":56&oR9575455'qR91QHI0:WM%(OF,8):W07400}%SWM502(M%(OF,2)M%(DF,2)M%(OF,7)M%(DF,7)):W0WMWMA%(W,5)2:OF0WMWMWA%(W2)4EA%VAA%(W,6)(W0):M$(OF)" "BV$(A,(1)3)" AT "M$(DF)%W52:RL100(1):(RL5RLWM)RL97HI1:7600&[A20:M%(DF,8)0A2ARO:3600:300%$ MONS P/U WEAP L$M2(M%(OF,8)1):A%(M2,4)RO7440$M20:A1NA:A%(A,4)ROĭA%(A,2)2A%(A,2)3A2A%(A,7)A%(A,8):A2M2M2A$$M2ĺM$(OF)" PICKS UP "A$(M2)"."::A%(M2,4)OF1:M%(OF,8)M2$56$L DO BATTLE %E "A$(A)" SHATTERS!":983#A%(A,2)8A%(A,8)0y#:"WHAM!! YOU ";("HITBLAST",TA31,3TA2);" THE "A$(A);"!":98#OF0:DFM:7500:HI7360#HIĭUPWA%(W2)WA%(W2)2#M%(DF,11)1DF0300$M%(DF,11)1M%(DF,11)1(M%(DF,11)3)150:R3RO:4805:F94M"A%(A,2)8A%(A,2)4ĺ:"WHY WOULD YOU DO THAT?":99t"DM%(0,9):SM%(0,10):TA1D2:S5"SX7:K6:A%(A,2)4SXSX1:KK1#D20:X1D:D2D2(1)S1::A%(A,SX)A%(A,SX)D2:A%(A,SX)1A%(A,SX)0:A%(A,K)0:A%(A,7)1::"THYOU SEE NOTHING SPECIAL.":98c!RM600:45:DFM:M%(M,3)1M%(M,13)0ĺ"THEY ARE ";:7652:300|!DFM:D20:7637:300!d LOOK !nV%(RO)0:300!X ATTACK !bM%(0,8)1ĺ:"YOU HAVE NO WEAPON READY!":100!lTA0:4900:4700:F7300"vHA,8)1:300 p EXAMINE 6 z4900:4804:F6040Q A%(A,4)EMA%(A,4)ROz ANZĺ:"THIS IS YOUR "A$(A)".":98 A%(A,2)8A%(A,8)0 A%(A,2)6ĺ" - THERE ARE "A%(A,6)" SWALLOWS LEFT.":56 RA200:45:A%(A,0)1:300!4700:Fĺ:"LL OF THE ITEMS YOU ARE CARRYING, AND THEY ALL FALL TO THE GROUND.":LL3:5100lAM%(0,8)M%(0,8)1u300M%(0,8)1:51:B%NA:D%1:A1NA:C%A:A,D%,A%(C%,4),C%,B%:C%A999::300AC%:A$(A)" DROPPED.":A%(A,4)RO:52 :WT0:M%(0R21R2NR8500->!3500(-(# GIVE D-2#S$Q$" TO ":Q4:9800`-P#A$""Ą"GIVE WHAT?";A$-Z#(A$)0S$A$:4801:F91-d#B$""Ą"TO WHOM?";B$-n#S$B$:4700:F96-x#:"OKAY.":(A$)09500-#AM%(0,8)M%(0,8)1.#A%(A,2)6ĭM%(M,13)A%(A,6)A%(A,7)93005.#WTWTA%(A,3):A%(A,4)M1c.#M%(M,8)0ĭA%(A,2)2A%(A,2)3M%(M,8)A.#M%(M,11)3M%(M,11)100M%(M,11)(30A%(A,1)100).#R3RO:3600:5050$/T$:M$(M)" DRINKS THE "A$(A):" THEN RETURNS IT TO YOU.":LL3:51:M%(M,11)":X1ND:RD%(X)A500RD%(X)A%(A,5)2<R PUT u<RS$Q$" IN ":Q4:9800:A$""Q$" ON ":Q4:9800<0RA$""ĺ:"PUT WHAT?";A$:"PUT IN/ON WHAT?";B$N51:XA%(A,2):X4X6X7201009RNX820300<:Y"A$"N"18010"8nFA$"N"100P8xFD$"CLOSE":D$"FRE":D$"STORE SAVED.GAME"8F:"THE GAME IS NOW SAVED. RUN 'MAIN.PGM' ON THIS DISK TO RESTART THE SAVED GAME."8F::"RESUME PLAY? ";A$:(A$,1)"N"290608F104,(770)::88J LIGHT 9BJ4READY 7rB4900:4801:F91V7BA%(A,2)2A%(A,2)3ĺ:"THAT ISN'T A WEAPON!":997BM%(0,8)A:M%(0,9)A%(A,7):M%(0,10)A%(A,8):W2A%(A,6)::A$(A)" READIED.":987PF SAVE 7ZF:"DO YOU WANT TO SAVE THIS GAME? ":"(Y/N) :";A$:A$(A$,1)8dFA$"OUR MOVEMENTS QUICKEN!":98+6: SMILE 86:LT100Z6::M1NM:M%(M,5)ROĂ:300{6:52:M$(M);:M%(M,3)1ĺ"S";6:" "SM$(M%(M,11));:M%(M,3)1ĺ"S";6:" AT YOU."6::51:3006> SAY 6>49006B:"OKAY, "(34)S$(34)::987hB VERY LOUD SONIC BOOM":" THAT ECHOES THROUGH THE TUNNELS."::52:9853M1NM:M%(M,5)ROĺM$(M)" HEALS!":51:M%(M,13)053:R3RO:3600:30056 SPEED 56S2:1150056SPĺ:"NOTHING HAPPENED":9866M%(0,2)M%(0,2)2:SPSP25(1)10::"Y""İ470084/56:M%(M,13)ĺM$(M)"'S HEALTH IMPROVES!"o4/M%(M,13)M%(M,13)310(1):M%(M,13)0M%(M,13)04/DFM:D20:7637:30042 POWER 42S3:11500:RL(1)100:RL11M%(0,13)ĺ:"YOUR WOUNDS HEAL!":M%(0,13)0:98H52RL91ĺ:"YOU HEAR A L BACKLASH!! YOUR ABILITY TO CAST THIS SPELL TEMPORARILY DIMINISHES!":S2%(S)S2%(S)10::983,SUĺ:"NOTHING HAPPENED."::983-RL100(1):RLS2%(S)S2%(S)S2%(S)2:SA%(S)SA%(S)23 -S2%(S)S2%(S).83-3. HEAL 4.S1:11500:M0:S$'Mĺ" ";GO;" GOLD PIECES.":54:DFM:D20:7638;2'300I2* BLAST s2+S0:11500:4900:4700:FTA1:70302*+:"DIRECT HIT!"::LL3:S5:D2:DFM:A0:7635::3002,SU0:SA%(S)RL100(1):SU(((RLS2%(S))(RL5))(RL95))`3,RL100ĺ:"SPEL1::M$(M)" IS WEARING:":5421`'AC%:" "A$(A)=1j':X1]1t':M$(M)" IS CARRYING:":541~'LK0:B%NA:D%X:A1NA:C%A:A,D%,A%(C%,4),C%,B%:C%A999:101301'LK1:AC%:" "A$(A);:AM%(M,8)ĺ" (READY WEAPON)";1'51::LKĺ" (NOTHING)":5122Q$X2B$(S$,XQ):A$(S$,X1):X99910\&:?0' INVEN \0'S$""M0:X999:10060i0$'LT100z0.'4700:F9608'M%(M,11)3āMMM:150300B'XM1:101000L'M20:B%NA:D%999:A1NA:C%A:A,D%,A%(C%,4),C%,B%:C%A999:100901V'M2M23M%(M,11)14060M%(M,13)M%(M,1)w/h$M%(M,13)M%(M,13)A%(A,5):M%(M,13)M%(M,13)(M%(M,13)0):DFM:D20:7637:9120/%SL(A$):SLGO91/D%GOGOSL:M%(M,11)3M%(M,11)100M%(M,11)SL100/N%9120/H& PARSE )0R&A$"":B$"":X1(S$):(S$,X,Q)RA%(A,7)920=RA%(Z,4)A500::"OKAY.":98P=R:"YOU CAN'T DO THAT.":98^=U DRINK u=U4900:4804:F94=VA%(A,2)694=VA%(A,7)92=^VA%(A,6)1ĺ:"THERE'S NONE LEFT.":98?>rVA%(A,6)A%(A,6)1:M%(0,13)M%(0,13)A%(A,5)::"YOU FEEL "("BETTERWORSE",(A%(A,5)0)61,6)"!":M%(0,13)0M%(0,13)0W>|V54:DF0:D20:7638`>V300m>Y READ >Y4900:4804:F94>YA%(A,2)794>YA%(A,7)92>Z:"IT SAYS:":LL2>Z:X1A%(A,6):RA%(A,5)399X:45::300>] FREE ?]4P:GO0GO0Lr~:59:\L~D$"OPEN EAMON.PREFIX":D$"READ EAMON.PREFIX":PX$:D$"CLOSE"L~(26)"1":TURN OFF VIDEX 80-COLL~(21):TURN OFF //E 80-COLL~:5:"(INSERT EAMON MASTER DISKETTE, THEN":" HIT THE 'C' KEY) ";:16368,0MA$:(A$FF$::" YOU SELL YOUR GOODS TO THE LOCAL BUYER OF TREASURE (UNDER THE SIGN OF 3 BALLS). HE PAYS YOU ";K;~A%(SH,4)0:A%(AR,4)0K@~TP0:A1NA:A%(A,4)1TPTPA%(A,1)((A%(A,2)0)CH10(A%(A,2)0))K^~:TP(TP):TP;" GOLD PIECES.":Lh~GOGOT (1-";W2;") ">JP}(37)1:A$:W5(A$):W51W5W232080JZ}A%(WP%(W5),4)1:WP$(W5)WP$(W2):WP%(W5)WP%(W2):W2W21:W2432060J,~WD%(4,4):W14:WP%(W)AWP%(W):WD%(W,1)A%(A,6):WD%(W,2)A%(A,5):WD%(W,3)A%(A,7):WD%(W,4)A%(A,8):A%(A,4)0kK6~:2}:W2532300I<}FF$::"AS YOU ENTER THE MAIN HALL, LORD WILLIAM CRANKHANDLE APPROACHES AND SAYS, 'YOU HAVE TOO MANY WEAPONS -- 4 IS THE LEGAL LIMIT."::"YOUR WEAPONS ARE:"JF}W1W2:4);W;"--";WP$(W):::"ENTER THE NUMBER OF THE WEAPON TO SELL P40HzW2A%(M%(0,8),6)%H|35002H} DONE HH }:16368,0:59:mH}D$"CLOSE":SPM%(0,2)M%(0,2)2{H}DI32500H(}WP%(NA),WP$(NA):W14:WP$(W)"NONE"::W20:A1NA:A%(A,4)1ĭA%(A,2)2A%(A,2)3W2W21:WP$(W2)A$(A):WP%(W2)A:A%(A,4)0I11:A%(NA,3)B%7:A%(NA,4)999:WTWTB%7:A%(NA,5)B%2GySH((AC2)AC2):SHNANA1:SHNA:A$(NA)"SHIELD":A%(NA,2)11:A%(NA,3)10:A%(NA,4)999:WTWT10:A%(NA,5)1GyM%(0,7)B%(SH0):M%(0,11)3GyEAAEAC:AE0EA0HzL50:CP(768):CP80CD$",L242":D$"OPEN"ER$",L";LR:M%(0,8)NZ1:M%(0,9)A%(NZ1,7):M%(0,10)A%(NZ1,8)cFhyW2NZ1NAFryA1NZ:A$(A)A$(W2)A$(A)A$(A)"#":A999::310909G|y::B%AC2:B%NANA1:ARNA:A$(NA)("LEATHER CHAIN MAIL PLATE ARMOR",B%1110,11):A%(NA,2)%(A)SA%(A)::A15:WA%(A)::AE,SE$,GO,BA,ACoEJyNANZ:ANZ1NZ4:A$(A),A%(A,6),A%(A,5),A%(A,7),A%(A,8)ELyA$(A)"NONE"NANA1:A%(A,2)2(A%(A,7)A%(A,8)25):A%(A,3)2:A%(A,4)1:WTWT2ENy:D$"CLOSE"EOy?D$"DELETE FRESH MEAT"SFTyD$"OPEN"EETE SAVED.GAME":1Dpq(4)"RESTORE SAVED.GAME"cDzq(26)"1":(21)::CP80ĺD$;"PR#3":(12):DqD$"OPEN"ED$",L242":D$"OPEN"ER$",L"LRDq100Dy INIT 1E@yD$"OPEN FRESH.MEAT":D$"READ FRESH.MEAT":RE:M$(0),M%(0,1),M%(0,2),CH:A03:SA%(A):S2REMOVED.":98C`m USE FCjm///INSERT YOUR OWN SPECIAL STUFF HEREhCp:"TRY ANOTHER COMMAND.":98|CHq RESUME GAME CMq216,0CRq:"DO YOU WANT TO RESUME THE SAVED GAME?":" Y OR N:";A$:A$(A$,1)C\qA$"Y"A$"N"29010DfqA$"N"ĺ(4)"DEL4)999::A$(A)" WORN.":98GBe:"YOU'RE ALREADY WEARING ONE!":98VBxi REMOVE Bi4900:HA999:EMHA:WHHA:4810:Fĺ:"YOU AREN'T WEARING IT.":99BiASHM%(0,7)M%(0,7)1:SH0BiAARM%(0,7)M%(0,7)A%(A,5)2:AR0CiA%(A,4)1::A$(A)" M1Ab5050Ae WEAR IAe4900:HA1:WHRO:EM999:4810:F94_AeA%(A,4)EM26100sAeA%(A,2)1194AeA%(A,5)26080AeA%(A,5)1SH26100AeA%(A,5)1SHA:M%(0,7)M%(0,7)1:26080AeAR26100AeARA:M%(0,7)M%(0,7)AC2BeA%(A, REQUEST *@aS$Q$" FROM ":Q6:9800R@aA$""İ4900:A$S$:"FROM WHOM?";B$i@aS$B$:4700:F96@aM%(M,11)2āMMM:15030@aS$A$:HA(M1):WHHA:EMHA:4810:Fĺ:M$(M)" DOESN'T HAVE IT.":98Aa:"OKAY.":54:A%(A,4)1:AM%(M,8)M%(M,8)900:4804:F94&?]A%(A,2)1094H?]MA%(A,5):KA%(A,6):GA%(A,7)~?8^M%(G,5)ROĺ:M$(G)" WON'T LET YOU DO THAT!":98?B^A%(K,4)1K0ĺ:"YOU DON'T HAVE THE KEY!":100?V^:"YOU HAVE FREED "M$(M)".":M%(M,5)RO:A%(A,4)0:R3RO:3600:98 @a)3Ĺ104,(770)::::CTRL-C2MA$"C"32515:MA$FM 32510ZMD$"PREFIX "PX$M216,0:DIĺD$;"DELETE THE.ADVENTURER":32600M&D$"OPEN CHARACTERS,L150":D$"WRITE CHARACTERS,R";RE:M$(0):M%(0,1):M%(0,2):CH:A03:SA%(A):N+ACM%(0,7)2:SHACAC1^N0A15:WA%(A)::AE:SE$:GO:BA:AC:A14:WP$(A):M14:WD%(A,M)::N:D$"OPEN THE.ADVENTURER":D$"WRITE THE.ADVENTURER":M$(0):RE:D$"CLOSE"NX104,(770)ND$"RUN MAIN.HALL"S,L"LM:A1NM:D$;"WRITE EAMON.MONSTERS,R"A:M$(A):A2111:M%(A,A2)N ;yT >yc @yD$"CLOSE" MAKE.ARTS.MONSdBUILDS EAMON.ARTIFACTS AND EAMON.MONSTERS DATA FILES FROM FAST.START FILEd(4)"RESTORE FAST.START",yD$"OPEN EAMON.ARTIFACTS,L"LA:A1NZ:D$"WRITE EAMON.ARTIFACTS,R"A:A$(A):A218:A%(A,A2):H 6y:D$"OPEN EAMON.MONSTERD,MISSED,MISSED,PARRIED,MISSED,PARRIED,MISSED,PARRIED,MISSED,PUT,DRINK,FREE,REQUEST,WEAR,REMOVE,USEP |(INSERT ADDITIONAL COMMANDS HERE)f |GROWL,LOOK,SMILE |LUNGES,TEARS,CLAWS,SWINGS,CHOPS,SWINGS,SHOOTS,SHOOTS,SHOOTS,SWINGS,SWINGS,SWINGS,STABS,LUNGES,JABS,SWINGS,CHOPS,STABS> |MISSED,MISSED,PARRIED,MISSESM$(A):J zA05:A202:BV$(A,A2):::A05:A201:RB$(A,A2)::d {D$"STORE FAST.START"j |r |32) |NORTH,SOUTH,EAST,WEST,UP,DOWN,GET,DROP,LOOK,EXAMINE,ATTACK,FLEE,GIVE,INVENTORY,BLAST,HEAL,POWER,SPEED,SMILE,SAY,READ,READY,SAVE,LIGHT,OPENM:A1NM:D$;"READ EAMON.MONSTERS,R"A:M$(A):A2111:M%(A,A2) ;y:M%(A,12)M%(A,3):MM%(A,6)M%(A,3):M%(A,6)31000:MM%(A,6)M%(A,6)M >y @yD$"CLOSE" yNC:C$(NC3):C1NC:C$(C)::CC(NC3)1:R21 yW20:RO1:ND6:FF$(12) zA13:NE,NM,LR,LM,LA:D$"CLOSE"~ 'yNANZ6:A$(NA),A%(NA,8),M$(NM),M%(NM,13),V%(NR),SA%(3),S2%(3),SM$(3),BV$(5,2),RB$(5,1),WA%(5) ,yD$"OPEN EAMON.ARTIFACTS,L"LA:A1NZ:D$"READ EAMON.ARTIFACTS,R"A:A$(A):A218:A%(A,A2):B 6y:D$"OPEN EAMON.MONSTERS,L"L MAKE.FAST.START_BUILDS FAST.START DATA FILE FROM EAMON.ARTIFACTS AND EAMON.MONSTERSALSO PERFORMS DATA READS OF COMMANDS AND 'ATTACK' VERBSdD$(4)y INIT yER$"EAMON.ROOMS":ED$"EAMON.DESC" "yD$"OPEN"ED$:D$"READ"ED$:NR,NZ,