option escape
' allows use of escape chars
lock(4) as integer ' -1 = no lock, 0 = unlocked, 1 = locked, 2 = hidden
start
as integer ' -1 = not in game, 0 = carried by user, anything else a room numberMAXMOBS = 20
PLAYERBASE = 41
WORLDSIZE = 133
ITEMBASE = 4
seerexists = 1
day = 1 'day advances when wolves kill
dim item
(ITEMBASE
) as iii
startup = 1
readonce = -1
titles(i-1) = i$
descrips(i-1) = i$
zone(j%).room = j
zone(j%).mobs = 0
zone(j%).items(k) = -1
FOR i
= 0 to ITEMBASE
- 1 IF item
(i
).start
<> -1 THEN ' if the item is NOT out of the game at game start j = -1
j = j + 1
zone(item(i).start).items(j) = item(i).id
'PRINT "room #";
'PRINT zone(item(i).start).room;
'PRINT " (";
'PRINT zone(item(i).start).title;
'PRINT ") has item #";
'PRINT zone(item(i).start).items(j);
'PRINT " (";
'PRINT item(i).name;
'PRINT ")"
readonce = 0
autoupdate = 1
wizrooms = 0 ' toggle to see room numbers in game
start:
' initialize world
' remove items that are lying on the ground
FOR i
= 0 to ITEMBASE
- 1 IF item
(i
).start
> -1 THEN ' if the item is lying on the ground or in inv at reset time IF item
(i
).start
> 0 THEN ' if the item is lying on the ground at reset time j = -1
j = j + 1
LOOP UNTIL zone
(item
(i
).start
).items
(j
) = item
(i
).id
zone(item(i).start).items(j) = -1
' put items back in starting state
item(i).start = 1018
item(i).start = -1
item(i).start = 2021
item(i).start = x% ' random location start
IF item
(i
).start
<> -1 THEN ' if the item is NOT out of the game at this point j = -1
j = j + 1
zone(item(i).start).items(j) = item(i).id ' put item back in starting room
' clean out inventory
inv(i) = -1
' lock gates
cmmd$ = ""
cmmdbuild$ = ""
lastcmmd$ = ""
kenobi = 0
jinn = 0
anakin = 0
doprompt = 1
room = 1000
turn = 1
wolfkill = 0
vigkill = 0
assignroles = 1
assignvotes = 1
wolfchangevote = 0
gameupdate = 0
gameover = 0
seerexists = 1
vigilanteexists = 0
DAY = 1
wolvesalive = 4
villagersalive = 17
tagged = -1 'used to track wolf that is tagged by meat
meat = -1 'used to track meat
meatproc = 1 'meat proc only goes off once
seerer = 2 'robes of the seerer proc: 2 = not picked up, 1 = picked up, 0 = used
'FOR i = 0 to MAXMOBS
' seerlist(i) = -1
'NEXT i
initmobs mobs(), zone(), MAXMOBS, PLAYERBASE, titles(), descrips()
PRINT "October 14th, 2005"
PRINT
PRINT "Type help at any time
for assistance
" ' TIMER ON
DO
cmmd$ = ""
IF startup = 1 THEN
' show room once at game start
cmmd$ = "l"
startup = 0
END IF
kbhit$ = INKEY$
IF kbhit$ <> "" AND kbhit$ <> CHR$(13) THEN
' doprompt = 1
IF kbhit$ = CHR$(8) THEN
' backspace key was pressed - delete last letter
cmmdbuild$ = LEFT$(cmmdbuild$, LEN(cmmdbuild$)-1)
ELSE
' add last letter
cmmdbuild$ = cmmdbuild$ + kbhit$
END IF
' PRINT "cmmdbuild$ = " + cmmdbuild$
PRINT kbhit$;
END IF
IF kbhit$ = CHR$(13) THEN
doprompt = 1
cmmd$ = cmmdbuild$
PRINT
' PRINT "cmmd$ = " + cmmd$
cmmdbuild$ = ""
IF cmmd$ = "!" THEN
cmmd$ = lastcmmd$
END IF
IF cmmd$ <> "!" THEN
lastcmmd$ = cmmd$
END IF
END IF
IF TIMER > Starttime + 1 THEN
IF assignroles = 1 THEN 'assign roles only once
RANDOMIZE TIMER
mobcount = 0
x% = INT(RND * MAXMOBS) ' pick the wolves
DO
y% = INT(RND * MAXMOBS)
LOOP UNTIL x% <> y%
DO
z% = INT(RND * MAXMOBS)
LOOP UNTIL z% <> x% AND z% <> y%
DO
a% = INT(RND * MAXMOBS)
LOOP UNTIL a% <> z% AND a% <> y% AND z% <> x%
DO
b% = INT(RND * MAXMOBS)
LOOP UNTIL b% <> a% AND b% <> z% AND b% <> y% AND b% <> x%
c% = INT(RND * 2)
IF c% = 1 THEN 'make a vig
DO
d% = INT(RND * MAXMOBS)
LOOP UNTIL d% <> b% AND d% <> a% AND d% <> z% AND d% <> y% AND d% <> x%
ELSE
d% = -1
END IF
DO
IF mobcount = a% OR mobcount = z% OR mobcount = x% OR mobcount = y% THEN
mobs(mobcount).role = "wolf"
ELSE
IF mobcount = b% THEN
mobs(mobcount).role = "seer"
ELSE
IF d% <> -1 AND mobcount = d% THEN 'make vig
mobs(mobcount).role = "vigilante"
vigilanteexists = 1
ELSE
mobs(mobcount).role = "villager"
END IF
END IF
END IF
mobs(mobcount).viewed = 0
seerlist(mobcount) = -1
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
assignroles = 0
END IF
END IF
IF cmmd$ = "update" OR (gameupdate = 1 AND TIMER > Starttime + 1) THEN
doprompt = 1
color 12
PRINT "Werewolf Game Update:"
color 7
PRINT
PRINT "Players remaining: ";
playersleft = 1 'start by counting the user
wolvesleft = 0
mobcount = 0
DO
IF mobs(mobcount).state = 0 THEN
playersleft = playersleft + 1
END IF
IF mobs(mobcount).state = 0 AND mobs(mobcount).role = "wolf" THEN
wolvesleft = wolvesleft + 1
END IF
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
PRINT playersleft
PRINT "Wolves remaining: ";
PRINT wolvesleft
gameupdate = 0
IF wolvesleft > (playersleft / 2) OR wolvesleft = (playersleft / 2) OR wolvesleft = 0 THEN
gameover = 1
GOTO endgame
END IF
END IF
IF TIMER > Starttime + 1 THEN
IF assignvotes = 1 THEN
assignvotes = 0
RANDOMIZE TIMER
mobcount = 0
DO
IF mobs(mobcount).state = 0 THEN ' only the living can cast votes
DO
x% = INT(RND * MAXMOBS)
LOOP UNTIL mobs(x%).state = 0 ' must vote for living player
IF mobs(mobcount).role = "wolf" AND mobs(x%).role = "wolf" THEN 'if wolf votes for fellow wolf % chance he changes vote
y% = INT(RND * 3)
IF y% = 0 THEN ' 33% chance wolf changes vote to a villager succeeds
wolfchangevote = 1
DO
x% = INT(RND * MAXMOBS)
LOOP UNTIL mobs(x%).role = "villager" AND mobs(x%).state = 0
END IF
END IF
IF mobcount = x% THEN 'if mob votes for himself, he is voting for YOU!
mobs(mobcount).vote = "you"
ELSE
mobs(mobcount).vote = mobs(x%).title
END IF
IF wolfchangevote = 1 THEN
wolfchangevote = 0
'mobs(mobcount).vote = mobs(mobcount).vote + "* (wolf changed this vote
to villager
)" END IF
END IF
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
END IF
END IF
IF TIMER > Starttime + 1 THEN
RANDOMIZE TIMER
mobmovespacing = 0
mobcount = 0
DO
IF mobs(mobcount).state = 0 THEN 'if not dead then see if mob moves
x% = INT(RND * 60) + 1 'throw to decide if mob moves
IF x% = 1 THEN
' this mob will try to move
y% = INT(RND * 4) 'throw to determine movement direction
IF zone(mobs(mobcount).room).exits(y%) <> -1 AND zone(mobs(mobcount).room).exits(y%) <> 2001 THEN
' mob can move in that direction so he will
zone(mobs(mobcount).room).mobs = zone(mobs(mobcount).room).mobs - 1 'drop old room occupancy by one
IF mobs(mobcount).room = room THEN
'Player is in the room the mob is leaving - send exit message
'mobexit$ = mobs(mobcount).title + " (" + mobs(mobcount).role + ") leaves "
mobexit$ = mobs(mobcount).title + " leaves "
IF y% = 0 THEN
mobexit$ = mobexit$ + "north."
END IF
IF y% = 1 THEN
mobexit$ = mobexit$ + "south."
END IF
IF y% = 2 THEN
mobexit$ = mobexit$ + "east."
END IF
IF y% = 3 THEN
mobexit$ = mobexit$ + "west."
END IF
IF mobmovespacing = 0 THEN 'only want one space between room descrip and mob movements
mobmovespacing = 1
PRINT
END IF
PRINT mobexit$
doprompt = 1
END IF
mobs(mobcount).room = zone(mobs(mobcount).room).exits(y%) 'moves mob to new room
zone(mobs(mobcount).room).mobs = zone(mobs(mobcount).room).mobs + 1 'increase new room occupancy by one
IF mobs(mobcount).room = room THEN 'check to see if mob moved to the room the player is in
IF mobmovespacing = 0 THEN 'only want one space between room descrip and mob movements
mobmovespacing = 1
PRINT
END IF
PRINT mobs(mobcount).title + " has arrived."
doprompt = 1
END IF
END IF
END IF
END IF
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
Starttime = TIMER
END IF
IF turn = 1 THEN 'check to do a turn if one hasn't been done yet
roomcheck = 1000
DO
IF zone(roomcheck).mobs = 3 THEN
'see if conditions are met to turn, if so, then do one!
mobcount = 0
wolvesinroom = 0
DO
IF mobs(mobcount).room = roomcheck AND mobs(mobcount).role = "wolf" THEN
wolvesinroom = wolvesinroom + 1
END IF
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
IF wolvesinroom = 2 THEN 'if 2 wolves in room with lone villager, turn that villager
mobcount = 0
DO
IF mobs(mobcount).room = roomcheck AND mobs(mobcount).role <> "wolf" AND mobs(mobcount).state = 0 AND turn = 1 THEN
color 4
PRINT "Someone was turned!"
color 7
resetviews = -1
DO 'must reset viewed for seer to start over
resetviews = resetviews + 1
mobs(resetviews).viewed = 0
LOOP UNTIL resetviews = MAXMOBS
IF mobs(mobcount).role = "vigilante" THEN
vigilanteexists = 0
END IF
IF mobs(mobcount).role = "seer" THEN
seerexists = 0
END IF
mobs(mobcount).role = "wolf"
turn = 0
doprompt = 1
'gameupdate = 1
wolvesalive = wolvesalive + 1
villagersalive = villagersalive - 1
END IF
mobcount = mobcount + 1
LOOP UNTIL mobcount = MAXMOBS
END IF
END IF
roomcheck = roomcheck + 1
LOOP UNTIL roomcheck = 1008
END IF
IF left$ (cmmd$, 3) = "out" THEN
' user can attempt to out someone as seer. If mob is seer, seer gives info to user. Wolves get a kill.
mobcount = -1
mobinroom = -1
DO
mobcount = mobcount + 1
IF right$(cmmd$, LEN (mobs(mobcount).title)) = mobs(mobcount).title AND mobs(mobcount).room = room THEN
'mob is in this room
mobinroom = 1
END IF
LOOP UNTIL mobinroom = 1 OR mobcount = MAXMOBS 'until user input matches mob name in room or all mob names checked
' if user name matches mob in room, check to see if name is seer. if seer, give list else just do wolf kill
IF mobinroom = 1 AND mobs(mobcount).state = 0 THEN
wolfkill = 1 'wolves get a kill no matter if mob is seer or not
vigkill = vigilanteexists 'vig gets kill as well
IF mobs(mobcount).role <> "seer" THEN
PRINT
PRINT mobs(mobcount).title + " says, 'A SEER?! You are looking for a SEER? I have no idea!'"
' mob is the seer - user gets the views
' 1 in 5 chance that this action creates another vigilante
LOOP UNTIL mobs
(y%
).state
= 0 AND mobs
(y%
).role
<> "wolf" and mobs
(y%
).role
<> "vigilante" mobs(y%).role = "vigilante"
vigilanteexists = vigilanteexists + 1
vigkill = vigilanteexists
PRINT mobs
(mobcount
).title
+ " whispers to you, ";
PRINT "'Yes, I am the seer. Here is what I know...'" i = 1
i = i + 1
PRINT mobs
(seerlist
(i
)).title
+ " is a " + mobs
(seerlist
(i
)).role
+ "." PRINT "No-one here by that name."
doprompt = 1
mobcount = 0
dolynch = 0
wolfkill = 0
PRINT "just type 'lynch babyd'" 'PRINT "Comparing ";
'PRINT mobs(mobcount).title;
'PRINT " and ";
'PRINT right$(cmmd$, LEN (mobs(mobcount).title));
'PRINT LEN (mobs(mobcount).title)
IF mobs
(mobcount
).title
= right$(cmmd$
, LEN (mobs
(mobcount
).title
)) AND mobs
(mobcount
).state
= 0 THEN dolynch = 1
PRINT mobs
(mobcount
).title;
IF mobs
(mobcount
).role
= "seer" THEN seerexists = 0
IF mobs
(mobcount
).role
= "vigilante" THEN vigilanteexists = vigilanteexists - 1
IF mobs
(mobcount
).room
= room
THEN 'death message PRINT "Your blood freezes as you hear ";
PRINT mobs
(mobcount
).title;
mobs(mobcount).state = -1
IF mobs
(mobcount
).role
= "wolf" THEN wolvesalive = wolvesalive - 1
villagersalive = villagersalive - 1
IF wolvesalive
= 0 OR wolvesalive
= villagersalive
OR wolvesalive
> villagersalive
THEN vigkill = vigilanteexists
wolfkill = 1
mobcount = mobcount + 1
PRINT "Player not found."
doprompt = 1
vigkill = vigkill - 1
LOOP UNTIL mobs
(s%
).state
<> -1 'loop until we find a live player. Vig can shoot himself. mobs(s%).state = -1 'kill player
PRINT "BANG! The vigilante has shot ";
IF mobs
(s%
).role
= "vigilante" THEN PRINT "himself?! (herself?!)" vigilanteexists = vigilanteexists - 1
IF mobs
(s%
).role
= "vigilante" THEN vigilanteexists = vigilanteexists - 1
IF mobs
(s%
).role
= "seer" THEN seerexists = 0
IF mobs
(s%
).role
= "wolf" THEN wolvesalive = wolvesalive - 1
villagersalive = villagersalive - 1
IF wolvesalive
= 0 OR wolvesalive
= villagersalive
OR wolvesalive
> villagersalive
THEN
IF wolfkill
= 1 THEN ' someone was lynched - now its time for the wolves to kill someone if a wolf is still alive wolvesleft = 0
'gameupdate = 1
mobcount = 0
IF mobs
(mobcount
).role
= "wolf" AND mobs
(mobcount
).state
= 0 THEN wolvesleft = wolvesleft + 1
mobcount = mobcount + 1
LOOP UNTIL mobs
(x%
).role
<> "wolf" AND mobs
(x%
).role
<> "seer" AND mobs
(x%
).state
<> -1 ' loop until we find a living non-wolf mobs(x%).state = -1 ' kill player
day = day + 1
assignvotes = 1
seertime = 1
wolfkill = 0
IF mobs
(x%
).role
= "seer" THEN seerexists = 0 ' wolves ate the seer - no more views!
IF mobs
(x%
).role
= "vigilante" THEN vigilanteexists = vigilanteexists - 1
IF mobs
(x%
).role
= "wolf" THEN wolvesalive = wolvesalive - 1
villagersalive = villagersalive - 1
IF wolvesalive
= 0 OR wolvesalive
= villagersalive
OR wolvesalive
> villagersalive
THEN
' seer gets a chance to look at someone if exists.
allviewed = 1 ' assume all have been viewed
IF mobs
(i
).viewed
= 0 AND mobs
(i
).state
= 0 AND mobs
(i
).role
<> "seer" THEN allviewed = 0 ' someone can be viewed
IF allviewed
= 0 THEN ' proceed i = -1
i = i + 1
' found seer, now he gets a random nonrepeating view
' maybe ale could get user ability to see seer walking about for 5 seconds?
newview = 1
IF mobs
(x%
).viewed
= 1 OR mobs
(x%
).role
= "seer" THEN newview = 0
seerlist(day) = x%
mobs(x%).viewed = 1
seertime = 0
doprompt = 1
IF room
= 1019 or room
= 1012 THEN ' only certain rooms have locked gates i = -1
DO ' look for key in inventory i = i + 1
IF inv
(i
) = 10002 THEN ' if user has key then continue
IF room
= 1019 and zone
(room
).
lock(2) = 1 THEN ' 1019 has an east gate - see if locked zone
(room
).
lock(2) = 0 ' unlock PRINT "It is already unlocked!" PRINT "You don't have the proper key." PRINT "You don't have the proper key." PRINT "You don't have the proper key."
'seerer proc - if user has robes of the seerer in his inventory, he immediately learns
'the number of wolves in village square. One-time use. Basically, they have to run
'back to the village to learn anything. Robes are randomly placed. Possible tweak is
'to increase the randomization of the drop if it gets too easy.
IF seerer
= 1 THEN ' seerer = 2 then robes not picked up, seerer = 1 then robes picked up, seerer = 0 then robes used doprompt = 1
seerer = seerer - 1
' scan for number of wolves in village square and report to user
PRINT "You feel informed." i = -1
j = 0
i = i + 1
IF mobs
(i
).room
= 1004 AND mobs
(i
).role
= "wolf" THEN 'PRINT mobs(i).title;
'PRINT " is a ";
'PRINT mobs(i).role
j = j + 1
PRINT " wolves in Village Square at this moment."
IF left$ (cmmd$
, 3) = "get" THEN 'user is trying to pick up an item
doprompt = 1
IF zone
(room
).items
(0) <> -1 THEN j = -1
j = j + 1
'PRINT right$(cmmd$, LEN (mobs(mobcount).title));
k = -1
k = k + 1
inv(k) = item(j).id
item(j).start = 0 ' 0 denotes being carried by user
zone(room).items(0) = zone(room).items(0) - 1
' picked up robes of the seerer
seerer = seerer - 1
PRINT "You do not see that here."
PRINT "You do not see that here."
IF meat
> 0 and meatproc
> 0 THEN ' check to perform meat proc mobcount = -1
mobcount = mobcount + 1
IF meatproc
> 0 AND mobs
(mobcount
).role
= "wolf" AND mobs
(mobcount
).room
= meat
THEN 'if wolf is in room with meat IF m%
= 1 THEN ' wolf takes bait and is tagged IF room
= meat
THEN ' send message to user PRINT "A wolf takes the bait!" tagged = mobcount
meatproc = 0
IF left$ (cmmd$
, 4) = "drop" THEN 'user is trying to drop an item
' search item keywords for what user typed in
' if we get a match, see if user is carrying that item and drop it if so
doprompt = 1
itemmatch = 0
itemcarried = 0
i = -1
i = i + 1
itemmatch = 1
'user entered the keyword of an item. Is it in his inventory?
k = -1
k = k + 1
itemcarried = 1
' item is carried so drop it
j = -1
j = j + 1
zone(room).items(j) = item(i).id
item(i).start = room
inv(k) = -1
IF item
(i
).keyword
= "meat" THEN ' special proc for meat is setup meat = room
PRINT "You do not have that item." PRINT "You do not have that item."
doprompt = 1
mobcount = 0
IF mobs
(mobcount
).state
= -1 THEN PRINT mobs
(mobcount
).title
+ " (dead)" 'PRINT mobs(mobcount).title + " (" + mobs(mobcount).role + "): ";
PRINT mobs
(mobcount
).title
+ ": ";
PRINT mobs
(mobcount
).vote
mobcount = mobcount + 1
'IF cmmd$ = "rooms" THEN
' PRINT "Room Usage:"
' PRINT
' FOR i = 1000 to 1019
' PRINT i;
' PRINT ": ";
' PRINT zone(i).mobs
' NEXT i
' FOR i = 2001 to 2009
' PRINT i;
' PRINT ": ";
' PRINT zone(i).mobs
' NEXT i
'END IF
IF cmmd$
= "i" OR cmmd$
= "inv" OR cmmd$
= "inventory" THEN doprompt = 1
count = 0
i = -1
i = i + 1
count = count + 1
j = -1
j = j + 1
doprompt = 1
PRINT "Werewolf Game Help: PRINT
PRINT "You are a villager seeking
to kill all wolves in the village.
" PRINT "Wolves win condition:
not outnumbered by villagers.
" PRINT "Your win condition:
kill all wolves.
" PRINT "Certain situations can trigger various events. The rules
and" PRINT "roles may change over time accordingly. Its up
to you
to" PRINT "figure it all
out.
" PRINT
PRINT "See also: COMMANDS"
PRINT
END IF
IF cmmd$ = "wizhelp" THEN
PRINT
PRINT "Wizhelp"
PRINT
PRINT "from inside gate
to wolves
' den:" PRINT "e, e, e, n, w, e, n, n, e, e" PRINT "from start of misty woods to great road:" PRINT "SEE ALSO: wizrooms, wizgo, wizitems, wizroles"
wizrooms = 0
PRINT "Room numbers toggled OFF.\r\n\r\nsure" wizrooms = 1
PRINT "Room numbers toggled ON."
PRINT "This is supposed to teleport you to any room for testing purposes.\r\nNot operational at this time."
' list all item room numbers in game.
i = -1
i = i + 1
PRINT zone
(item
(i
).start
).title
PRINT
i = -1
DO
i = i + 1
PRINT mobs(i).title;
PRINT " - ";
PRINT mobs(i).role
LOOP UNTIL i = MAXMOBS - 1
PRINT
END IF
IF cmmd$ = "commands" THEN
doprompt = 1
PRINT
PRINT "Commands:"
PRINT
PRINT "l
(or look
) - look at room description
" PRINT "ex
(or exits
) - see obvious room exits
" PRINT "n,s,e,w - move north, south, east, west"
PRINT "votes
- see who
is voting
for whom today
" 'PRINT "rooms - show zone status"
PRINT "lynch <player> - lynch a player"
PRINT "update
- get a game update
" PRINT "out <player
> - attempt
to out player
as seer. This action
PRINT "also ends a day phase." PRINT "get <item> - get an item" PRINT "drop <item> - drop an item" PRINT "autoupdate - toggle update in prompt" PRINT "quit - quit the game" PRINT "help - see this file" PRINT "! = repeat last command" i = -1
i = i + 1
IF item
(i
).
type = "key" AND item
(i
).start
= 0 THEN ' user is carrying key - reveal unlock command PRINT "unlock - unlock something" IF room
= 5002 THEN ' secret help file keyword is shown in helpfile if user is here PRINT "gamehints - learn secrets about the game"
IF cmmd$
= "ex" OR cmmd$
= "exit" OR cmmd$
= "exits" THEN doprompt = 1
IF zone
(room
).exits
(0) <> -1 AND zone
(room
).
lock(0) <> 2 THEN 'if exit exists and not hidden (lock = 2) PRINT zone
(room
).exits
(0);
PRINT zone
(zone
(room
).exits
(0)).title
PRINT zone
(room
).exits
(1);
PRINT zone
(zone
(room
).exits
(1)).title
PRINT zone
(room
).exits
(2);
PRINT zone
(zone
(room
).exits
(2)).title
PRINT zone
(room
).exits
(3);
PRINT zone
(zone
(room
).exits
(3)).title
doprompt = 1
IF zone
(room
).exits
(0) = -1 THEN PRINT "You cannot go that way." PRINT "It seems to be locked." room = zone(room).exits(0)
cmmd$ = "l"
doprompt = 1
IF zone
(room
).exits
(1) = -1 THEN PRINT "You cannot go that way." PRINT "It seems to be locked." room = zone(room).exits(1)
cmmd$ = "l"
doprompt = 1
IF zone
(room
).exits
(2) = -1 THEN PRINT "You cannot go that way." PRINT "It seems to be locked." room = zone(room).exits(2)
cmmd$ = "l"
doprompt = 1
IF zone
(room
).exits
(3) = -1 THEN PRINT "You cannot go that way." PRINT "It seems to be locked." room = zone(room).exits(3)
cmmd$ = "l"
' special proc for Gorf's Tavern
i = -1
i = i + 1
j = -1
j = j + 1
IF item
(j
).keyword
= "key" THEN IF item
(j
).start
= -1 THEN ' one-time proc to drop key item(j).start = 1009
zone(1009).items(0) = zone(1009).items(0) + 1
PRINT "The bright light of a proper Gorf's Wicked Ale startles the patrons." PRINT "You think you hear something fall to the ground."
doprompt = 1
autoupdate = 0
autoupdate = 1
PRINT "Werewolf Game Hints" PRINT "Attempting to out a seer has a 50% chance of making a vigilante." PRINT "The meat has a special function." PRINT "It turns out that villagers wander for a reason."
'PRINT "Near the Droid Army"
'PRINT "You are on the planet Genosis. The Clone Wars rage nearby as"
'PRINT "battle droids attack clone troopers. Surrounded by Jedi, you"
'PRINT "feel quite safe here as you pensively watch the fighting."
IF zone
(room
).items
(0) <> -1 THEN 'PRINT "room: ";
'PRINT room;
'PRINT " item(";
'PRINT k;
'PRINT ").start: ";
'PRINT item(k).start
mobcount = 0
IF mobs
(mobcount
).room
= room
THEN IF mobs
(mobcount
).state
= 0 THEN ' mob is alive PRINT mobs
(mobcount
).descrip;
IF tagged
= mobcount
THEN ' rotten meat has tagged this wolf PRINT mobs
(mobcount
).role;
PRINT mobs
(mobcount
).title;
PRINT mobs
(mobcount
).role;
mobcount = mobcount + 1
IF room
= 4007 THEN 'deathtrap proc
PRINT "Jedi Master Obi-Wan Kenobi is standing here." PRINT "Jedi Master Qui-Gonn Jinn is standing here." PRINT "Jedi Knight Anakin Skywalker is standing here."
'PRINT zone(room).exits(0);
'PRINT " ";
'PRINT zone(room).exits(1);
'PRINT " ";
'PRINT zone(room).exits(2);
'PRINT " ";
'PRINT zone(room).exits(3);
'PRINT " ";
IF autoupdate
= 1 THEN ' automatically put update info in prompt 'PRINT lastcmmd$;
'PRINT cmmd$;
doprompt = 0
'LOOP UNTIL cmmd$ = "quit" OR kbhit$ = "9"
Count = 0
Count = Count + 1
Titles:
PRINT TAB(10);
"Characteristics of UserIn$" PRINT "Length";
TAB(10);
"1st char";
TAB(20);
"Asc";
TAB(30);
"2nd char";
TAB(40);
"Asc"
'':::::
DIM used
(PLAYERBASE
) as integer 'this will keep track of used mobs so we don't repeat
used(i-1) = 0
'PRINT "Used: ";
'for j = 1 to PLAYERBASE
'PRINT used(j-1);
'print ", ";
'next j
'PRINT
i = 0
'PRINT "maxmobs = ";
'print MAXMOBS
'print "i = ";
'print i
LOOP WHILE used
(x%
) = 1 ' loop until we find a nonrepeating mob
used(x%) = 1 'mark this mob as used so we don't repeat it
'PRINT "Used: ";
'for j = 1 to PLAYERBASE
'PRINT used(j-1);
'print ", ";
'next j
'PRINT
array(i).room = 1004
array(i).title = titles(x%)
array(i).descrip = descrips(x%)
array(i).state = 0
array(i).role = ""
array2(1004).mobs = array2(1004).mobs + 1
i = i + 1
deathtrap:
PRINT "You are DEAD! R.I.P."
endgame:
PRINT "Congratulations! You have killed all the WOLVES!" PRINT "The village is saved." PRINT "The wolves rise up and eat the remaining villagers." deathtrap2:
PRINT "The wolves were: ";
mobcount = 0
wolfcount = 0
IF mobs
(mobcount
).role
= "wolf" THEN wolfcount = wolfcount + 1
PRINT mobs
(mobcount
).title;
mobcount = mobcount + 1
PRINT "Try Again? (yes/no)
DO
cmmd$ = ""
kbhit$ = INKEY$
IF kbhit$ <> "" AND kbhit$ <> CHR$(13) THEN
' doprompt = 1
IF kbhit$ = CHR$(8) THEN
' backspace key was pressed - delete last letter
cmmdbuild$ = LEFT$(cmmdbuild$, LEN(cmmdbuild$)-1)
ELSE
' add last letter
cmmdbuild$ = cmmdbuild$ + kbhit$
END IF
' PRINT "cmmdbuild$ = " + cmmdbuild$
PRINT kbhit$;
END IF
IF kbhit$ = CHR$(13) THEN
doprompt = 1
cmmd$ = cmmdbuild$
PRINT
' PRINT "cmmd$ = " + cmmd$
cmmdbuild$ = ""
END IF
IF doprompt = 1 THEN
PRINT ">" + cmmdbuild$;
doprompt = 0
END IF
LOOP UNTIL cmmd$ = "yes" OR cmmd$ = "no"
IF cmmd$ = "yes" THEN
GOTO start
END IF
skip:
DATA "Idiot Boxer"
DATA "Norman Einstein"
DATA "malice"
DATA "babyd"
DATA "ratpfink"
DATA "Joseph"
DATA "Village Idiot"
DATA "Foosball God"
DATA "zippy"
DATA "PocketPasser"
DATA "fletch"
DATA "guppy"
DATA "tdoss"
DATA "psychopav"
DATA "noD"
DATA "sharkbait"
DATA "polecat"
DATA "cavalier"
DATA "UCONN"
DATA "Kendall"
DATA "BGP"
DATA "gorf"
DATA "BTSW"
DATA "Usual Suspects"
DATA "Gadwallgetter"
DATA "PirateMike"
DATA "Dickies"
DATA "cocoagirl"
DATA "aardball"
DATA "ColtsFreak"
DATA "snowmonkey"
DATA "swineflu"
DATA "worm"
DATA "DARAIDERS"
DATA "mjvb"
DATA "smoo"
DATA "wingnut"
DATA "Loan"
DATA "RWS"
DATA "Preds"
DATA "Harry"
DATA "Idiot Boxer stands here preparing some Boxerins."
DATA "Norman Einstein
is quickly figuring
out who the wolves are.
" DATA "malice
is upgrading packmentality.net
while finding wolves here.
" DATA "babydemon90 :coos: here."
DATA "ratpfink
is low flying
and enjoying a game here.
" DATA "Joseph
is hinting at a role here.
" DATA "Village Idiot
is with us
on satellite delay.
" DATA "Foosball God
is looking
to mess with some minds here.
" DATA "zippy
is here serving a timeout.
" DATA "PocketPasser
is getting ready
to cook something good.
" DATA "fletch
is low flying
while hunting wolves here.
" DATA "guppy
is trying
to help
out inbetween patients today.
" DATA "tdoss brings us his latest plan...
to catch the wolves....
" DATA "psychopav
is busy working but took time
out to play.
" DATA "noD
is going feral here.
" DATA "sharkbait
is looking
for an update.
" DATA "polecat
is a scary texas clown looking
to HAMMAH!
" DATA "cavalier
is feuding with malice here.
" DATA "UCONN
is in love with Diana Taurasi.
" DATA "Kendall
is hoping
to avoid a certain situation today.
" DATA "BGP
is jotting something down in his notebook here.
" DATA "gorf thinks you should check
out his tavern.
" DATA "BTSW wishes he were by the sea."
DATA "Usual Suspects
is quickly figuring
out who the wolves are here.
" DATA "Gadwallgetter
is here checking in.
" DATA "PirateMike
is enjoying a game today.
" DATA "Dickies takes time
out from working
on cars
to enjoy a game.
" DATA "cocoagirl
is stopping by from the movie set
to cast a vote.
" DATA "aardball looks
for clues here.
" DATA "ColtsFreak hopes he isn't the play today."
DATA "snowmonkey kicks back and enjoys another game." DATA "swineflu is a sick pig." DATA "worm ponders his vote here." DATA "DARAIDERS argues his case that he has found a wolf here." DATA "mjvb stops by to cast a vote." DATA "smoo slaps his beaver tail on the ground impatiently." DATA "wingnut is watching how people vote today." DATA "Loan has a big smile today because he thinks he's found a wolf." DATA "RWS is carefully watching the voting patterns at this point." DATA "Preds ponders over the recent deaths here." DATA "Harry hopes to lynch a wolf before he hits the sack."
DATA "This is a simple village cottage. Very cottagey." + CHR$(13) + CHR$(10) + "The door to the south is open."
DATA "You are outside a simple village cottage." + CHR$(13) + CHR$(10) + "The road leads south from here."
DATA "On a Cobblestone Road" DATA "You are on a village road paved with fine cobblestones." + CHR$(13) + CHR$(10) + "Hovels are on either side of the road. It leads north and south." DATA 1001, 1003, 1011 , 1010
DATA "On a Cobblestone Road" DATA "You are on a village road paved with fine cobblestones." + CHR$(13) + CHR$(10) + "Hovels are on either side of the road. The village square is to the south."
DATA "The Village Square" DATA "Before you is the village square. A well-oiled CataVillager" + CHR$(13) + CHR$(10) + "rests here awaiting use." DATA 1003, 1005, 1006, 1007
DATA "On a Cobblestone Road" DATA "You are on a village road paved with fine cobblestones." + CHR$(13) + CHR$(10) + "The village square is to the north."
DATA "On a Cobblestone Road" DATA "You are on a village road paved with fine cobblestones." + CHR$(13) + CHR$(10) + "The village square is to the west."
DATA "This is a simple dirt road in the village." + CHR$(13) + CHR$(10) + "The village square is to the east."
DATA "Road to Gorf's Tavern" DATA "The simple dirt road leads west towards the famous water hole and" + CHR$(13) + CHR$(10) + "east towards the village square."
DATA "The familiar, warm and cozy atmosphere of Gorf's Tavern welcomes you." + CHR$(13) + CHR$(10) + "Booths line one wall. Patrons are seated on stools at the main bar," + CHR$(13) + CHR$(10) + "enjoying a brew. Hey! It looks like your favorite seat is open!" + CHR$(13) + CHR$(10) + "A waiter notices you, smiles, and heads to your usual seat to make" + CHR$(13) + CHR$(10) + "sure everything is in good order."
DATA "This looks very much like the same type of hovel that" + CHR$(13) + CHR$(10) + "your family has lived in for three generations. You do," + CHR$(13) + CHR$(10) + "however, admire the stump the people that live here get to" + CHR$(13) + CHR$(10) + "sleep on. It sure is a nice one!"
DATA "This looks very much like the same type of hovel that" + CHR$(13) + CHR$(10) + "your family has lived in for three generations. You do," + CHR$(13) + CHR$(10) + "however, admire the stump the people that live here get to" + CHR$(13) + CHR$(10) + "sleep on. It sure is a nice one!"
DATA "Before an Opulent Mansion" DATA "The cobblestone road ends here at the gates of a magnificent" + CHR$(13) + CHR$(10) + "mansion. You lose count of all the handmaidens and concubines that" + CHR$(13) + CHR$(10) + "frolic beyond the gates. Speaking of which, the gates are shut" + CHR$(13) + CHR$(10) + "and there is no way in."
DATA "On a Cobblestone Road" DATA "You are on a village road paved with fine cobblestones." + CHR$(13) + CHR$(10) + "The town hall is to the south." DATA -1, 1014, 1019, 1006
DATA "Entrance to the Town Hall" DATA "This is the town hall, where civic leaders gather to run the village." + CHR$(13) + CHR$(10) + "Looks like its ok to snoop around." DATA 1013, 1015, 1016, -1
DATA "A huge oak desk sits in the middle of this room. Important paperwork" + CHR$(13) + CHR$(10) + "having to do with improving the quality of stumps the villagers" + CHR$(13) + CHR$(10) + "sleep on sit neatly in an OUT basket."
DATA "The Courtroom features a large judge's bench flanked by a witness" + CHR$(13) + CHR$(10) + "stand and clerk's table. Facing the bench are two simple tables." + CHR$(13) + CHR$(10) + "One table for the defendant and the other for the plaintiff." + CHR$(13) + CHR$(10) + "A jury box is to the left."
DATA "Another office, this one for the judge. A closet" + CHR$(13) + CHR$(10) + "full of black robes is to the east. A large gavel rests" + CHR$(13) + CHR$(10) + "on the judge's desk next to his wig."
DATA "Lots of black robes drape from hangars here."
DATA "The Village Entrance" DATA "The entrance to the village is here. A large wrought-iron" + CHR$(13) + CHR$(10) + "gate has been installed to protect the denizens from the hazards" + CHR$(13) + CHR$(10) + "beyond."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful. The village is to the west." DATA 2002, 2003, 2004, 1019
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2005, 2001, 2006, -1
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2001, 2007, 2008, -1
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2006, 2008, 2009, 2001
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2004, 4001, -1, 2003
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2010, -1, 2014, 2004
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2011, 2009, 2013, 2016
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA -1, 2006, 2012, 2015
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful." DATA 2012, 2014, -1, 2010
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful."
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful. You can barely make out a small trail in the woods here." DATA 2015, 2004, 2017, 2002
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful. You can barely make out a small trail in the woods here." DATA 2018, 2009, 2013, 2006
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful. You can barely make out a small trail in the woods here." DATA 2019, 2013, 2013, 2011
DATA "A chilling wind whispers through the trees, whipping up dead" + CHR$(13) + CHR$(10) + "leaves before you. Fresh wolftracks in the soft mud warn you to" + CHR$(13) + CHR$(10) + "be careful. You can barely make out a small trail in the woods here." DATA 2012, 2010, 2020, 2004
DATA "You are in a forgotten cave deep in the woods. The stench of" + CHR$(13) + CHR$(10) + "rotting meat is overpowering. A small fire deeper into the cave" + CHR$(13) + CHR$(10) + "lights your way."
DATA "Piles of rotten meat lie strewn everywhere. There are huge" + CHR$(13) + CHR$(10) + "clawmarks on the walls. The fire, however, is well-kept and" + CHR$(13) + CHR$(10) + "burns brightly"
DATA "On the Mansion Lawn" DATA "This is the well-trimmed lawn in front of the mansion. A handmaiden" + CHR$(13) + CHR$(10) + "is here. She winks at you and laughs."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "The village is northwest of here. The path leads south."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "The village is northwest of here. The path leads south."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A riverbank is to the east." DATA 4004, 4008, 4006, -1
DATA "The River of Blood" DATA "Chunks of flesh float down the rapids of this raging stream." + CHR$(13) + CHR$(10) + "The iron-colored riverbeds are shrouded in steam. Crows circle" + CHR$(13) + CHR$(10) + "overhead, eyeing you carefully. Written in blood on the ground" + CHR$(13) + CHR$(10) + "is an odd phrase. :COO:"
DATA "You jump headlong into the river! Its then you realize" + CHR$(13) + CHR$(10) + "That you can't swim! As you slowly drown in blood, you last" + CHR$(13) + CHR$(10) + "thoughts are about wondering when they will let you into the" + CHR$(13) + CHR$(10) + "green room."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A Path in the Woods" DATA "A canopy of trees covers this path that winds thru the woods." + CHR$(13) + CHR$(10) + "A slight breeze chills you."
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet. You think you can make out a path in the woods here." DATA 4011, 4016, 4014, 4013
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet."
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet."
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4013, 4023, 4016, 4021
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4012, 4019, 4017, 4015
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4014, 4018, -1, 4016
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4017, -1, 5001, 4019
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4016, -1, 4018, 4020
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet."
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet."
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet."
DATA "Entrance to the Burning Village" DATA "You have reached the outskirts of a local village. Smoke" + CHR$(13) + CHR$(10) + "billows from burning buildings. You see no-one around." + CHR$(13) + CHR$(10) + "The city gate lies ahead." DATA -1, 5003, 5002, 4018
DATA "The Burning Village" DATA "What was once a modest village has been turned into an" + CHR$(13) + CHR$(10) + "inferno. You gag on the smoke-filled air. As you stumble around" + CHR$(13) + CHR$(10) + "this place, you feel you've gained a better sense of understanding" + CHR$(13) + CHR$(10) + "about what it all means."
DATA "Cutting Through the Bushes" DATA "Deciding you cannot pass the gate, you've stumbled into the bushes" + CHR$(13) + CHR$(10) + "To try to find another way around it. Good thing you brought a" + CHR$(13) + CHR$(10) + "machete!"
DATA "Cutting Through the Bushes" DATA "Deciding you cannot pass the gate, you've stumbled into the bushes" + CHR$(13) + CHR$(10) + "To try to find another way around it. Good thing you brought a" + CHR$(13) + CHR$(10) + "machete!"
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4015, 4024, 4016, 4021
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4019, 4022, 4025, 4016
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4012, 4026, 4022, 4020
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4020, 4020, 4020, 4027
DATA "A think fog rolls through these woods, making it difficult to see" + CHR$(13) + CHR$(10) + "very far. The bark on all the trees has been shredded by something." + CHR$(13) + CHR$(10) + "It is very quiet." DATA 4021, 4028, 4014, 4012
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "You are on the road leading from the castle to the northern villages." + CHR$(13) + CHR$(10) + "Merchants, peasants, and other travellers pass by on occassion." + CHR$(13) + CHR$(10) + "To the west is the sea and to the east are the Alterac mountains."
DATA "Here stands the archway that opens to the city of Hearthglen. Guards" + CHR$(13) + CHR$(10) + "watch the crowd that bustles through carefully. Well, as long as they can" + CHR$(13) + CHR$(10) + "keep their eyes open!"
DATA "This street is immaculately clean. There isn't one piece of trash anywhere." + CHR$(13) + CHR$(10) + "The castle is south." DATA 6001, 6018, 6003, 6017
DATA "This street is immaculately clean. There isn't one piece of trash anywhere."
DATA "This street is immaculately clean. There isn't one piece of trash anywhere."
DATA "This is the university district of the city. Students brush past\r\nyou, late for class again."
DATA "This is the university district of the city. Students brush past\r\nyou, late for class again. The castle is west." DATA 6005, 6007, 6022, 6020
DATA "This is the university district of the city. Students brush past\r\nyou, late for class again."
DATA "The business sector lies in this district of Hearthglen. The offices\r\nof many of the largest companies that do business in the kingdom\r\nare found here. The eastern half is more blue-collar while the western\r\nhalf is more white collar."
DATA "The business sector lies in this district of Hearthglen. The offices\r\nof many of the largest companies that do business in the kingdom\r\nare found here. The eastern half is more blue-collar while the western\r\nhalf is more white collar."
DATA "The business sector lies in this district of Hearthglen. The offices\r\nof many of the largest companies that do business in the kingdom\r\nare found here. The eastern half is more blue-collar while the western\r\nhalf is more white collar. The castle lies north." DATA 6021, -1, 6009, 6011
DATA "The business sector lies in this district of Hearthglen. The offices\r\nof many of the largest companies that do business in the kingdom\r\nare found here. The eastern half is more blue-collar while the western\r\nhalf is more white collar."
DATA "The business sector lies in this district of Hearthglen. The offices\r\nof many of the largest companies that do business in the kingdom\r\nare found here. The eastern half is more blue-collar while the western\r\nhalf is more white collar."
DATA "This is the entertainment district of the city. Pubs line the street" + CHR$(13) + CHR$(10) + "on both sides. This section of town is closest to the beach as well."
DATA "This is the entertainment district of the city. Pubs line the street" + CHR$(13) + CHR$(10) + "on both sides. This section of town is closest to the beach as well." DATA 6015, 6013, 6019, 6023
DATA "This is the entertainment district of the city. Pubs line the street" + CHR$(13) + CHR$(10) + "on both sides. This section of town is closest to the beach as well."
DATA "This street is immaculately clean. There isn't one piece of trash anywhere."
DATA "This street is immaculately clean. There isn't one piece of trash anywhere."
DATA "The banners of the kingdom wave on flagpoles on either" + CHR$(13) + CHR$(10) + "side of the road here. The banners are scarlett with gold\r\ntrimming. Emblazoned on the banner is a script L.\r\nThe castle looms before you. It is easily the largest\r\nstructure in the city and has several spires."
DATA "The banners of the kingdom wave on flagpoles on either" + CHR$(13) + CHR$(10) + "side of the road here. The banners are scarlett with gold\r\ntrimming. Emblazoned on the banner is a script L.\r\nThe castle looms before you. It is easily the largest\r\nstructure in the city and has several spires."
DATA "The banners of the kingdom wave on flagpoles on either" + CHR$(13) + CHR$(10) + "side of the road here. The banners are scarlett with gold\r\ntrimming. Emblazoned on the banner is a script L.\r\nThe castle looms before you. It is easily the largest\r\nstructure in the city and has several spires."
DATA "The banners of the kingdom wave on flagpoles on either" + CHR$(13) + CHR$(10) + "side of the road here. The banners are scarlett with gold\r\ntrimming. Emblazoned on the banner is a script L.\r\nThe castle looms before you. It is easily the largest\r\nstructure in the city and has several spires."
DATA "Here stands the archway that opens to the city of Hearthglen. Guards" + CHR$(13) + CHR$(10) + "watch the crowd that bustles through carefully. Well, as long as they can" + CHR$(13) + CHR$(10) + "keep their eyes open!"
DATA "Here stands the archway that opens to the city of Hearthglen. Guards" + CHR$(13) + CHR$(10) + "watch the crowd that bustles through carefully. Well, as long as they can" + CHR$(13) + CHR$(10) + "keep their eyes open!"
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon." DATA 6025, 6028, 6023, -1
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "The Hinting Strand" DATA "These are the western beaches of the kingdom. The sea lies" + CHR$(13) + CHR$(10) + "beyond and stretches out to the horizon."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "The Alterac Mountain Pass" DATA "The kingdom road snakes thru a pass here in the Alterac mountains.\r\nIt grows colder and a few flakes of snow brush against your face.\r\nTowering above you is a huge mountain range. You can sometimes\r\nget a glimpse of the fortress built near the top."
DATA "The Alterac Mountain Pass" DATA "The kingdom road snakes thru a pass here in the Alterac mountains.\r\nIt grows colder and a few flakes of snow brush against your face.\r\nTowering above you is a huge mountain range. You can sometimes\r\nget a glimpse of the fortress built near the top."
DATA "The Alterac Mountain Pass" DATA "The kingdom road snakes thru a pass here in the Alterac mountains.\r\nIt grows colder and a few flakes of snow brush against your face.\r\nTowering above you is a huge mountain range. You can sometimes\r\nget a glimpse of the fortress built near the top."
DATA "The Alterac Mountain Pass" DATA "The kingdom road snakes thru a pass here in the Alterac mountains.\r\nIt grows colder and a few flakes of snow brush against your face.\r\nTowering above you is a huge mountain range. You can sometimes\r\nget a glimpse of the fortress built near the top."
DATA "The Alterac Mountain Pass" DATA "The kingdom road snakes thru a pass here in the Alterac mountains.\r\nIt grows colder and a few flakes of snow brush against your face.\r\nTowering above you is a huge mountain range. You can sometimes\r\nget a glimpse of the fortress built near the top."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals."
DATA "Flint, gravel, and other various stones pave this highway\r\nleading from the city of Hearthglen east towards the Alterac\r\nmountains. Inscribed milestones greet you at fixed intervals.\r\nIncreasing amounts of sand begin to blot out the road."
DATA "Entrance to the Castle" DATA "This is where the leadership of the city make their home. Guards\r\nin gleaming suits of platemail watch your every move, their swords ready.\r\nThe main hall leads further into the castle." DATA 6018, 7002, 6020, 6019
DATA "You walk down the main hall of the castle. Immense portraits of\r\nlate kings and queens adorn the walls. Guards in gleaming suits of\r\nplatemail stand at attention nearby, watching for trouble."
DATA "Exquisite furniture from far away lands adorn this room. Here, nobles\r\nand robed seerers who visit the royal family can rest while they wait\r\nfor an audience."
DATA "The Stormwind Desert" DATA "Oceans of sand dumped by a recent sandstorm have blotted\r\nout most of the road here. If you go Any further, it is\r\nunlikely you will see any road at all." DATA 8002, 8006, 8004, 6042
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8005, 8001, 8003, 8001
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8009, 8004, 8007, 8002
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8003, 8005, 8008, 8001
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8004, 8008, 8009, 8006
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8001, 8006, 8005, 8004
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8002, 8008, 8005, 8003
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8007, 8009, 8002, 8004
DATA "The Stormwind Desert" DATA "Nothing but miles and miles of sand in all directions." DATA 8008, 8003, 8009, 8005
DATA "Gorf's Wicked Ale (glowing)" DATA "A bottle of Gorf's Wicked Ale glows with a bright golden light here."
DATA "the key to the village" DATA "The key to the village rests at your feet."
DATA "A pile of rotten meat that used to be a villager lies here."
DATA "Robes of the Seerer" DATA "A pile of cloth made for a red alert lies here."