0 REM *************************** 1 REM *:::::::::::::::::::::::::* 2 REM * 'Simple Adventure' * 3 REM * By: Paul Panks * 4 REM *:::::::::::::::::::::::::* 5 REM * An example of how to * 6 REM * write a small adven- * 7 REM * ture in less than 16KB * 8 REM * of RAM. * 9 REM * lumberjacks76@lycos.com * 10 REM*************************** 11 REM Intialize variables/strings 15 DIM r$(30),no$(25),vb$(13),ex$(25):lo=1:hp=200:ac=1:ex=0 16 DIM de$(30),lo(30),m(30,6),p(25):lt=0:ct=0:dm=1:qs=0:lk=0:gd=100 17 GOSUB 800:FOR x=1 to 30:READ r$(x):NEXT x 18 FOR x=1 to 25:READ no$(x):NEXT x 19 FOR x=1 to 13:READ vb$(x):NEXT x 20 FOR x=1 to 25:READ ex$(x):NEXT x 21 FOR x=1 to 30:READ de$(x):NEXT x 22 FOR x=1 to 25:READ lo(x):NEXT x 23 FOR x=1 to 30:FOR y=1 to 6:READ m(x,y):NEXT:NEXT 24 REM Game Introduction 25 COLOR 10,1:CLS:PRINT"Simple Adventure":PRINT"By: Paul Panks":PRINT 26 PRINT"Game Introduction":PRINT"-----------------":PRINT 27 PRINT"Once upon a time, the forest of the land was peaceful. No monsters" 28 PRINT"roamed the land, and people were free to come and go as they pleased.":PRINT 29 PRINT"One day, however, an evil dragon turned the good creatures of the" 30 PRINT"forest towards the dark side, forever changing the pulse and rhythm" 31 PRINT"of the land.":PRINT 32 PRINT"You were determined to change all of this, for now is the time to" 33 PRINT"strike at the heart of the dragon and slay him forever! And so the" 34 PRINT"adventure begins...":PRINT 35 PRINT"@@@ Press any key to begin! @@@" 36 a$=inkey$:IF a$="" THEN GOTO 36 37 REM Saved game? 38 CLS:PRINT"Are you playing a saved game? (y/n):"; 39 a$=inkey$:IF A$="" THEN GOTO 39 40 if a$="y" THEN PRINT a$:SLEEP 1:PRINT:PRINT"Loading...":GOTO 43 41 if a$="n" THEN PRINT a$:SLEEP 1:PRINT:PRINT"New game...":PRINT:GOTO 50 42 GOTO 39 43 OPEN "game.sav" FOR INPUT AS #1 44 INPUT #1,lo:INPUT #1,hp:INPUT #1,ac:INPUT #1,lt 45 INPUT #1,ct:INPUT #1,dm:INPUT #1,qs:INPUT #1,lk 46 INPUT #1,gd:INPUT #1,ex:FOR x=1 TO 25:INPUT #1,lo(x):NEXT x 47 CLOSE #1 48 PRINT"Done.":PRINT:GOTO 50 49 REM Main Loop 50 IF lt=0 THEN IF lo>13 THEN PRINT "It's too dark to see!":GOTO 52 51 PRINT r$(lo):PRINT:PRINT de$(lo):IF lt=1 THEN ol=ol+1:if lo=25 then ol=0:lt=0:PRINT"Your lantern fades, leaving you in darkness..." 52 PRINT "Obvious exits: < "; 53 IF m(lo,1)>0 THEN PRINT no$(1);" "; 54 IF m(lo,2)>0 THEN PRINT no$(2);" "; 55 IF m(lo,3)>0 THEN PRINT no$(3);" "; 56 IF m(lo,4)>0 THEN PRINT no$(4);" "; 57 IF m(lo,5)>0 THEN PRINT no$(5);" "; 58 IF m(lo,6)>0 THEN PRINT no$(6);" "; 59 PRINT">":FOR x=7 TO 25 60 IF lo(x)=lo THEN PRINT no$(x);"." 61 NEXT x:IF lt=2 THEN PRINT"(An orb of light shines through the darkness...)" 62 a$="":d$="":n$="":v$="":v=0:n=0:p=CSRLIN:GOSUB 600:LOCATE p,1:LINE INPUT">",a$:IF qs=1 THEN goto 500 63 pt=1: nm=0:dt$=a$:FOR a=1 TO LEN(dt$) 64 IF MID$(dt$,a,1)=" " THEN a$=MID$(dt$,pt,a-pt):pt=a+1:nm=nm+1:wd$(nm)=LCASE$(a$) 65 NEXT:nm=nm+1:a$=MID$(dt$,pt,a-pt):wd$(nm)=LCASE$(a$):a$=dt$ 66 n$=wd$(2):n2$=wd$(5):v$=wd$(1):v2$=wd$(4) 67 IF v$="i" OR v$="inventory" OR v$="inv" OR v$="invent" OR v$="in" THEN GOTO 650 68 IF v$="quit" OR v$="bye" OR v$="exit" OR v$="goodbye" OR v$="good bye" OR v$="q" THEN PRINT"Thanks for playing! :)":END 69 IF v$="go" OR v$="n" OR v$="north" OR v$="s" OR v$="south" OR v$="east" OR v$="e" OR v$="w" OR v$="west" OR v$="u" OR v$="up" OR v$="d" OR v$="down" THEN GOTO 760 70 IF v$="look" OR v$="l" OR v$="lk" THEN GOTO 50:ELSE IF v$="list" THEN GOTO 700 71 IF v$="save" OR v$="save game" THEN GOTO 900:ELSE IF v$="score" THEN GOTO 1300 72 IF v$="help" OR v$="hint" OR v$="mercy" THEN GOTO 1200 73 SI=0:V=0:FOR x=1 TO 13:IF vb$(x)=v$ THEN v=x:x=14:SI=1 74 NEXT:IF SI=0 THEN PRINT"I don't understand the verb '"v$"'.":GOTO 62 75 SI=0:N=0:FOR x=1 TO 25:IF no$(x)=n$ THEN n=x:x=26:SI=1 76 NEXT:IF SI=0 AND v<>11 THEN PRINT"I don't understand the noun '"n$"'.":GOTO 62 77 ON v GOTO 80,90,100,110,120,130,140,150,150,1100,160,170,180 78 PRINT"What?":GOTO 62 79 rem go 80 IF lo=15 AND lo(9)<>0 AND n=5 THEN PRINT"You need to be carrying the rope to climb up.":GOTO 62 81 IF lo=11 AND lo(9)<>0 AND n=6 THEN PRINT"You need to be carrying the rope to climb down.":GOTO 62 82 IF lo(20)=lo AND n=2 THEN PRINT"The hellhound stops you!":PRINT"He growls,'No one may enter here!'":GOTO 62 83 IF lo(22)=lo AND n=2 THEN PRINT"The dragon blocks your path!":PRINT"He hisses,'Why don't you stay for lunch?!'":PRINT"'I hear the main course is...exccceeelllleeennnttt!'":GOTO 62 84 IF lo=6 AND n=3 AND lk=0 THEN PRINT"A locked door prevents passage to the east. Use a key to open it.":GOTO 62 85 IF m(lo,n)=0 THEN PRINT"You can't go that way!":GOTO 62 86 lo=m(lo,n):GOTO 50 89 rem get 90 IF n<7 OR n>16 THEN PRINT"It's beyond your power to do that!":GOTO 62 91 IF lo(n)<>lo THEN PRINT"That isn't here to get.":GOTO 62 92 IF ct>=8 THEN PRINT"You are carrying too much already!":GOTO 62 93 lo(n)=0:ct=ct+1:PRINT"Ok.":GOTO 62 99 rem drop 100 IF n<7 OR n>16 THEN PRINT"You can't drop that.":GOTO 62 101 IF lo(n)<>0 THEN PRINT"You don't have that in hand to drop.":GOTO 62 102 lo(n)=lo:ct=ct-1:PRINT"Ok.":GOTO 62 109 rem wield 110 IF n<7 OR n>16 THEN PRINT"You can't wield that.":GOTO 62 111 IF lo(n)<>0 THEN PRINT"You aren't carrying that to wield.":GOTO 62 112 IF n=11 AND dm=1 THEN dm=n:lo(n)=105:PRINT"Ok.":GOTO 62 113 IF n=12 AND dm=1 THEN dm=n:lo(n)=105:PRINT"Ok.":GOTO 62 114 PRINT"You can't wield that here.":GOTO 62 119 rem unwield 120 IF n<7 OR n>16 THEN PRINT"You can't unwield that.":GOTO 62 121 IF lo(n)<>105 THEN PRINT"You aren't carrying that to unwield.":GOTO 62 122 lo(n)=0:dm=1:PRINT"Ok.":GOTO 62 129 rem wear 130 IF n<7 OR n>16 THEN PRINT"You can't wear that.":GOTO 62 131 IF lo(n)<>0 THEN PRINT"You aren't carrying that to wear.":GOTO 62 132 IF n=13 THEN lo(n)=205:ac=ac+n:PRINT"Ok.":GOTO 62 133 IF n=14 THEN lo(n)=205:ac=ac+n:PRINT"Ok.":GOTO 62 134 IF n=15 THEN lo(n)=205:ac=ac+n:PRINT"Ok.":GOTO 62 135 PRINT"You can't wear that here.":GOTO 62 139 rem remove 140 IF n<7 OR n>16 THEN PRINT"You can't remove that.":GOTO 62 141 IF lo(n)<>205 THEN PRINT"You aren't carrying that to remove.":GOTO 62 142 lo(n)=0:ac=ac-n:PRINT"Ok.":GOTO 62 149 rem use/light 150 IF n<7 OR n>16 THEN PRINT"Don't be silly!":GOTO 62 151 IF lo(n)<>lo AND lo(n)<>0 THEN PRINT"You don't have that on hand to use.":GOTO 62 152 IF n=7 THEN IF lo(8)=0 THEN IF lt=0 THEN lt=1:PRINT"Pzzzzt! The lantern flickers on!":GOTO 62 153 IF n=7 THEN IF lo(8)=0 THEN PRINT"The lantern is already on.":GOTO 62 154 IF n=8 THEN PRINT"The oil cannot be used. Use lantern instead.":GOTO 62 155 IF n=9 AND lo=15 THEN lo=11:?"You use the rope and climb up...":GOTO 50 156 IF n=9 AND lo=11 THEN lo=15:?"You use the rope and climb down...":GOTO 50 157 IF n=10 AND lo=6 AND lk=0 THEN lk=1:PRINT"Click!":PRINT"The eastern door unlocks.":GOTO 62 158 IF n=16 AND lt<2 THEN lt=2:PRINT"A brilliant light shines forth from the orb!":PRINT"The darkness across the land fades and returns to light!":GOTO 62 159 PRINT"You can't use that here.":GOTO 62 160 IF n=0 THEN PRINT"You notice nothing unusual about the ";n$;".":GOTO 62 161 IF lo(n)<>0 AND lo(n)<>lo AND lo(n)<>105 AND lo(n)<>205 THEN PRINT"That isn't here to examine.":GOTO 62 162 PRINT "It's ";ex$(n):GOTO 62 169 REM buy 170 IF lo<>10 THEN PRINT"You are not in the village shop!":GOTO 62 171 IF lo(18)<>lo THEN PRINT"The clerk isn't here.":GOTO 62 172 p(7)=20:p(8)=12:p(9)=16:p(10)=4:p(11)=82:p(12)=890:p(13)=480 173 p(14)=600:p(15)=224:p(16)=1000 174 IF p(n)>gd THEN PRINT"You don't have enough gold.":GOTO 62 175 IF CT>=8 THEN PRINT"You are carrying too much already!":PRINT"Transaction aborted.":GOTO 62 176 lo(n)=0:ct=ct+1:gd=gd-p(n):PRINT"Ok.":GOTO 62 179 REM sell 180 IF lo<>10 THEN PRINT"You are not in the village shop!":GOTO 62 181 IF lo(18)<>lo THEN PRINT"The clerk isn't here.":GOTO 62 182 p(7)=10:p(8)=6:p(9)=8:p(10)=2:p(11)=41:p(12)=445:p(13)=240 183 p(14)=300:p(15)=112:p(16)=500 184 IF lo(n)<>0 THEN PRINT"You aren't holding that in hand to sell.":GOTO 62 185 lo(n)=999:ct=ct-1:gd=gd+p(n):PRINT"Ok.":GOTO 62 499 REM win game 500 PRINT"The slain dragon lay at your feet, your sword bathed in blood...Truly" 501 PRINT"this menacing dragon was little more than a toy for your deadly blade!" 502 PRINT"No more will this evil being haunt the creatures of the peaceful" 503 PRINT"forest. The undead will become dead and the living shall be alive" 504 PRINT"once more! You are a true hero!":PRINT:PRINT"@@@ The End @@@" 505 a$=inkey$:IF a$="" THEN GOTO 505 506 END 599 REM display top bar 600 LOCATE 1,1:COLOR 10,0:PRINT SPACE$(80):LOCATE 1,1:PRINT r$(lo):COLOR 10,1:RETURN 649 REM inventory 650 SI=0:ac=0:dm=1:ct=0:FOR x=7 TO 25:IF lo(x)=0 THEN PRINT" ";no$(x):SI=1:ct=ct+1 651 IF lo(x)=105 THEN PRINT" ";no$(x);" (wielded)":SI=1:ct=ct+1:dm=x 652 IF lo(x)=205 THEN PRINT" ";no$(x);" (worn)":SI=1:ct=ct+1:ac=ac+x 653 NEXT x:IF SI=0 THEN PRINT"Alas, you are empty-handed." 654 IF ac>1 THEN PRINT"Your armor is protecting";ac;"% of your body." 655 IF ct>0 THEN PRINT"You are carrying";ct;"item(s)." 656 GOTO 62 699 REM list 700 IF lo<>10 THEN PRINT"You are not in the village shop!":GOTO 62 701 IF lo(18)<>lo THEN PRINT"The clerk isn't here.":GOTO 62 702 PRINT"The clerk says,'Here is what we have in stock':":PRINT">" 703 SI=0:FOR x=7 TO 16:IF lo(x)=999 THEN PRINT p(x);":";no$(x);".":SI=1 704 NEXT x:IF SI=0 THEN PRINT"There is nothing in stock at the moment." 705 PRINT"Gold:";gd:GOTO 62 759 REM assign go variables 760 if v$="n" or v$="north" then n=1 761 if v$="s" or v$="south" then n=2 762 if v$="e" or v$="east" then n=3 763 if v$="w" or v$="West" then n=4 764 if v$="u" or v$="up" then n=5 765 if v$="d" or v$="down" then n=6 766 goto 80 799 REM set shop prices 800 p(7)=20:p(8)=12:p(9)=16:p(10)=4:p(11)=82:p(12)=890:p(13)=480 801 p(14)=600:p(15)=224:p(16)=1000:RETURN 849 REM check for 0 HP 850 IF h<=0 THEN h=0 851 IF hp<=0 THEN hp=0 852 RETURN 899 REM save game 900 PRINT"Saving...":OPEN "game.sav" FOR OUTPUT AS #1 901 PRINT #1,lo:PRINT #1,hp:PRINT #1,ac:PRINT #1,lt 902 PRINT #1,ct:PRINT #1,dm:PRINT #1,qs:PRINT #1,lk 903 PRINT #1,gd:PRINT #1,ex:FOR x=1 TO 25:PRINT #1,lo(x):NEXT x 904 CLOSE #1 905 PRINT"Done.":GOTO 62 1000 REM Room Names - r$(x) - 30 1001 DATA"Tavern","Upstairs","Small Room","Village Well","Cathedral" 1002 DATA"Bishop's Altar","Storage Room","Church Gardens","Toolshed" 1003 DATA"Village Shop","High atop the forest","Small Hut" 1004 DATA"Entrance to Village","Pond by the Meadow","Dense Forest" 1005 DATA"Path","Meadow","Path","Meadow","River","River (upstream)" 1006 DATA"Waterfall","Dark Cave","Path","Dead End","Dense Forest" 1007 DATA"Dense Forest","Dense Forest","Dense Forest","Dense Forest" 1099 rem fight 1100 IF N<17 THEN PRINT"You can't kill that.":GOTO 62 1101 RANDOMIZE TIMER:h=int(rnd*350)+150:IF lo(11)=105 THEN dm=11:PRINT"You are wielding the dagger." 1102 RANDOMIZE TIMER:c=int(rnd*42)+1:?">":IF lo(12)=105 THEN dm=12:PRINT"You are wielding the broadsword." 1103 ?"The "NO$(n)" attacks:":IF c<5 then ?"It missed you." 1104 IF c>=5 and c<12 then ?"It struck a solid blow.":hp=hp-c 1105 IF c>=12 and c<18 then ?"You were wounded badly.":hp=hp-(c*2) 1106 IF c>=18 and c<25 then ?"You were gravely hurt.":hp=hp-(c*4) 1107 IF c>=25 then ?"You dodged the attack." 1112 l=c:RANDOMIZE TIMER:i=int(rnd*30)+1:?">" 1113 ?"You attack:":IF i<5 then ?"You missed it." 1114 IF i>=5 and i<10 then ?"You struck a solid blow.":h=h-i 1115 IF i>=10 and i<15 then ?"You wounded it badly.":h=h-(i*2) 1116 IF i>=15 and i<20 then ?"You struck a woeful blow.":h=h-(i*4) 1117 IF i=21 or i=22 or i=23 or i=24 then if lo(12)=105 THEN h=h-(i*8):?"Your BROADSWORD glows!":?"A bolt of lightning strikes "NO$(n):?"from the shaft of your sword!" 1118 IF i>=25 then ?"The "NO$(n)" dodged your attack." 1119 GOSUB 850:print "Your HP: [";hp;"]":?"The ";NO$(n);"'s HP:";h 1120 ac=0:FOR x=13 to 15:IF lo(x)=205 THEN ac=ac+x:IF l>=15 THEN hp=hp+ac:?">":?"Your armor heals you somewhat.":IF hp>500 then hp=500 1121 NEXT:if h<0 then h=0 1122 IF h<=0 then ?"The "NO$(n)" died.":?"You killed "NO$(n)".":lo(n)=998:GOTO 1150 1123 IF hp<=0 then ?"You died.":?"The "NO$(n)" killed you.":SLEEP 2:?"@@@ Game Over @@@":SLEEP 2:END 1124 SLEEP 1:?">":?"[F]ight or [R]un" 1125 a$=inkey$:if a$="" then goto 1125 1126 if a$="f" then goto 1102 1127 if a$="r" then ?"You ran away successfully...":GOTO 62 1128 GOTO 1125 1149 rem get booty from monster 1150 FOR X=7 TO 25:IF lo(x)=1000+n THEN ?"You found ";NO$(x);" on it!":lo(x)=lo 1151 NEXT:PRINT"You received experience points and gold for your efforts.":gd=gd+l:ex=ex+i:IF n=22 THEN qs=1 1152 IF l>10 or i>10 THEN PRINT"You gained a level!":hp=hp+i+l+n 1153 GOTO 62 1199 REM help 1200 PRINT"HELP COMMAND":PRINT:PRINT"This game is a text adventure. You play by entering in":PRINT"one or two-word commands such as 'go north' and 'get dagger.'":PRINT 1201 PRINT"Valid commands include:":PRINT:PRINT"1. go 2. get 3. drop 4. wield 5. unwield 6. wear 7. remove":PRINT"8. use 9. light 10. kill 11. examine 12. inventory 13. score" 1202 PRINT"14. look 15. buy 16. sell 17. help 18. quit":PRINT:PRINT"If you have any questions, please e-mail me at: lumberjacks76@lycos.com":GOTO 62 1299 REM score 1300 PRINT"You have";hp;"hit points and carry with you";gd;"gold coins." 1301 PRINT"You have";ex;"experience points." 1302 PRINT"Your armor is protecting";ac;"% of your total body." 1303 PRINT"Type 'inventory' for a list of items carried." 1304 GOTO 62 2000 REM Object Nouns - no$(x) - 25 2001 DATA"north","south","east","west","up","down" 2002 DATA"lantern","oil","rope","key","dagger","broadsword" 2003 DATA"armor","shield","helmet","orb","villager","clerk" 2004 DATA"wolf","hellhound","troll","dragon","goblin" 2005 DATA"spirit","bard" 3000 REM Verb Commands - vb$(x) - 11 3001 DATA"go","get","drop","wield","unwield","wear","remove","use","light","kill","examine","buy","sell" 4000 REM Object Descriptions - ex$(x) - 25 4001 DATA"north","south","east","west","up","down" 4002 DATA"a brass lantern stained with blood." 4003 DATA"a flask of oil used with the lantern." 4004 DATA"a small coil of rope about 15' in length." 4005 DATA"a small iron key used for opening doors." 4006 DATA"a jeweled dagger with a ruby hilt." 4007 DATA"a large broadsword glowing softly blue." 4008 DATA"a suit of interlinked platemail armor." 4009 DATA"a metal shield with a cross emblazoned on it." 4010 DATA"a brass helmet with several small dents." 4011 DATA"a magical orb of unknown origin." 4012 DATA"a common villager. He smiles at you briefly." 4013 DATA"a store clerk. He sells items at the shop." 4014 DATA"a lone wolf with yellow eyes, howling at the moon." 4015 DATA"a fiery hellhound. He growls,'Stay away from here!'" 4016 DATA"a troll from the surrounding forest. He seems friendly." 4017 DATA"a large ice dragon. He gazes at you menacingly!" 4018 DATA"an evil-looking goblin with red eyes and bad teeth." 4019 DATA"a spirit haunting the surrounding woods." 4020 DATA"a lone bard traveling the countryside, playing a harp." 5000 REM Room Descriptions - de$(x) - 30 5001 DATA"You are inside a small tavern. A staircase is here, heading upstairs to the second floor of the tavern. The only exit is back south." 5002 DATA"You are standing in the upstairs hallway on the second floor of this tavern. A small room lies to the east, while a staircase heads back downstairs." 5003 DATA"You are standing inside a small room. There is not much here save for a few rotted wooden barrels next to a small bed." 5004 DATA"You stand before a deep artisan well in the center of town. The well drops down approximately 50 feet into a murky water below. The walls are covered in moss." 5005 DATA"You are standing inside an ancient cathedral. Pews adorn the room, while tall stained glass windows dominate the interior. An altar is north." 5006 DATA"You are standing before the bishop's altar. A few items adorn the room, although none appear to be too useful. A room is east, while to the west a door heads outside into a large garden." 5007 DATA"You are standing inside a small storage room. There isn't much here at the moment, however. The walls are covered in dust and cobwebs." 5008 DATA"You are standing in a large garden. Rows of beautiful flowers and majestic plants rise up from the ground here. A wooden toolshed stands to the west." 5009 DATA"You are standing inside a darkened toolshed. There are a few items of interest lining the shelves here." 5010 DATA"You are standing inside the village shop. Commands here include 'buy ', 'sell ' and 'list'. A clerk is usually here attending to customers." 5011 DATA"You are standing on a branch high atop the forest. A small hut with a thatched roof lies on a larger branch to the east." 5012 DATA"You are standing inside a small hut. There is an oak table beside a wooden bookshelf. You also notice a small hammock hanging down from the ceiling." 5013 DATA"You are standing at the entrance to a small village. A worn dirt path heads north into town, while a much wider path takes you deeper into the forest towards the south." 5014 DATA"You are staring at your reflection over a pond beside the meadow. The water looks mossy green and devoid of life, unusual for the area around it." 5015 DATA"You are walking in a dense forest. Trees parallel your path in all directions here. A tree with low-lying branches grows by the side of the road here. It looks climbable." 5016 DATA"You are facing an intersection just south of a small village. East is a grassy meadow, while both south and west of here stand a dense forest." 5017 DATA"You find yourself in a grassy meadow, just beyond the woods. A pond is visible to the north, while puffy white clouds drift by in the distance. The meadow continues south." 5018 DATA"You are continuing on a southern path which cuts through a dense forest. The trees are less dense here. You faintly here the sounds of small animals scurrying about the forest floor." 5019 DATA"You are in a large meadow, stretching out for miles to the southeast. A small stream flows to the east, taking you past a narrow gorge." 5020 DATA"You are wading knee-deep in a small stream, flowing east towards a narrow gorge. The current stiffens somewhat up ahead to the east." 5021 DATA"You are wading chest-high in a large stream. The water has deepened quite a bit since you first entered it! Up ahead, to the east, a small waterfall cascades down a rocky cliff." 5022 DATA"You are next to a small waterfall upstream of a grassy meadow. The water splashes down from high above, sending shivers down your spine. A cave is visible inside the waterfall to the north." 5023 DATA"You are standing inside a dark cave inside the waterfall. Although you can't be sure, you think you faintly see the outline of two red eyes eyeing you hungrily just up ahead!" 5024 DATA"You are walking on a path through the forest. The trees thin out here and stop abruptly to the south. Further travel west is made impossible by storm-tossed trees and thick brush." 5025 DATA"You have reached the limits of the forest. A tall hillside blocks further travel to the south. The only exit is back north." 5026 DATA"You are walking in a dense forest just west of the main path. The road you are traveling on breaks off here and heads south." 5027 DATA"You are walking south of a dirt path in the forest. Trees surround you in all directions here, as the canopy grows especially thick. The forest continues west." 5028 DATA"You are walking east of the main path in a dense forest. There is very little light here. To the south, the forest thins out somewhat, giving way to rocky terrain alongside steep cliffs." 5029 DATA"You have reached the end of the forest. A steep cliff, some hundreds of feet high, blocks further travel to the south. The only exit is back north." 5030 DATA"You have reached the western edge of the forest. Fallen trees obstruct your path to the west." 6000 REM Object Locations - lo(x) - 25 6001 DATA 99,99,99,99,99,99 6002 DATA 3,999,9,999,7,12,999,14,8,1023 6003 DATA 4,10,13,16,12,23,26,28,19 7000 REM Map Locations - m(x,y) - 30 7001 DATA 0,4,0,0,2,0 7002 DATA 0,0,3,0,0,1 7003 DATA 0,0,0,2,0,0 7004 DATA 1,13,10,5,0,0 7005 DATA 6,0,4,0,0,0 7006 DATA 0,5,7,8,0,0 7007 DATA 0,0,0,6,0,0 7008 DATA 0,0,6,9,0,0 7009 DATA 0,0,8,0,0,0 7010 DATA 0,0,0,4,0,0 7011 DATA 0,0,12,0,0,15 7012 DATA 0,0,0,11,0,0 7013 DATA 4,16,0,0,0,0 7014 DATA 0,17,0,0,0,0 7015 DATA 0,0,16,0,11,0 7016 DATA 13,18,17,15,0,0 7017 DATA 14,19,0,16,0,0 7018 DATA 16,24,0,26,0,0 7019 DATA 17,0,20,0,0,0 7020 DATA 0,0,21,19,0,0 7021 DATA 0,0,22,20,0,0 7022 DATA 23,0,0,21,0,0 7023 DATA 0,22,0,0,0,0 7024 DATA 18,25,28,0,0,0 7025 DATA 24,0,0,0,0,0 7026 DATA 0,27,18,0,0,0 7027 DATA 26,0,0,30,0,0 7028 DATA 0,29,0,24,0,0 7029 DATA 28,0,0,0,0,0 7030 DATA 0,0,27,0,0,0