Maps & text based IF

4 views
Skip to first unread message

David Fisher

unread,
Mar 13, 2005, 6:43:05 PM3/13/05
to
Are there many / any IF games with a "map" command to show you the local
area ?

Here is the kind of thing I am thinking of (fixed width font required to
view properly):

Brightly lit chamber

> map

|
Closet -- Entrance way
|
+-- Library -- Main hall
| |
Alcove Secret passage Lounge room
| | |
? -- Brightly lit chamber -- Robe room -- ? ?
|
Dusty passage -- *Low tunnel* -- ?
/ | |
? ? ?

In this example, "*Low tunnel*" is the current location of the player, and
"?" represents an area which has not yet been visited.

The map would not need to be complete (just the local area) - north of the
"Entrance way" there is no question mark, since the player has been there
before. Representing "up" and "down" could be tricky, as well as adjusting
the text so that there is no overlap ...

Anyway, I was just wondering if this has been done before.

Thanks,

David Fisher


Michael Roy

unread,
Mar 13, 2005, 7:38:27 PM3/13/05
to
David Fisher wrote:
> Are there many / any IF games with a "map" command to show you the local
> area ?
>
> Here is the kind of thing I am thinking of (fixed width font required to
> view properly):
>
> Brightly lit chamber
>
>
>>map
>
<snip>

>
> In this example, "*Low tunnel*" is the current location of the player, and
> "?" represents an area which has not yet been visited.
>
> The map would not need to be complete (just the local area) - north of the
> "Entrance way" there is no question mark, since the player has been there
> before. Representing "up" and "down" could be tricky, as well as adjusting
> the text so that there is no overlap ...
>
> Anyway, I was just wondering if this has been done before.
>
> Thanks,
>
> David Fisher

I've never seen this done before, but it sounds like a great idea. I
would suggest leaving out up and down if you attempt this, as it'd just
make the map a mess and have a passage leading to a letter U or D would
work just as well for refreshing the player's memory (since up and down
are usually used less frequently than the other directions and even then
typically used in conjunction with a change of scene). What's more, if
you put a cap on the number of characters in a room name, I think that
text spacing wouldn't be too difficult either, except perhaps if you
have bending exits.

Michael

be...@pop.networkusa.net

unread,
Mar 13, 2005, 7:43:20 PM3/13/05
to
David Fisher wrote:
> Are there many / any IF games with a "map" command to show you the
local
> area ?
>

_Beyond Zork_ did this, if I understand you correctly.

David Fisher

unread,
Mar 13, 2005, 8:21:32 PM3/13/05
to

<be...@pop.networkusa.net> wrote in message
news:1110761000.1...@g14g2000cwa.googlegroups.com...

The picture on http://www.infocom-if.org/games/beyondzork/beyondback.jpg
looks like the map is made of small rectangles ... I was thinking more of an
ASCII drawing with room labels.

(I found a second picture at
http://www.adventurecollective.com/screenshots/bzork02.gif ...)

Thanks,

David Fisher


Andrew Plotkin

unread,
Mar 13, 2005, 8:40:00 PM3/13/05
to
Here, David Fisher <da...@hsa.com.au> wrote:
>
> <be...@pop.networkusa.net> wrote in message
> news:1110761000.1...@g14g2000cwa.googlegroups.com...
> > David Fisher wrote:
> >> Are there many / any IF games with a "map" command to show you the
> > local
> >> area ?
> >>
> >
> > _Beyond Zork_ did this, if I understand you correctly.
>
> The picture on http://www.infocom-if.org/games/beyondzork/beyondback.jpg
> looks like the map is made of small rectangles ... I was thinking more of an
> ASCII drawing with room labels.

Beyond Zork used character art. The game had a built-in specialized
font, which had box/line/corner characters, rather like old DOS fonts.
It would have been more or less the same with ASCII "| _ / \"
characters.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the borogoves..."
*
I'm still thinking about what to put in this space.

Esa A E Peuha

unread,
Mar 14, 2005, 4:36:28 AM3/14/05
to
be...@pop.networkusa.net writes:

Zork Zero and Arthur had maps as well, and so did Legend's games.

--
Esa Peuha
student of mathematics at the University of Helsinki
http://www.helsinki.fi/~peuha/

Joel Ray Holveck

unread,
Mar 14, 2005, 5:23:22 AM3/14/05
to
> Are there many / any IF games with a "map" command to show you the local area ?

An interp rather than a game, but Nitfol can autogenerate a map like that.

Piquan

Jan Thorsby

unread,
Mar 14, 2005, 5:55:24 AM3/14/05
to

"David Fisher" <da...@hsa.com.au> skrev i melding
news:1j4Zd.1686$Le2....@nasal.pacific.net.au...

> Are there many / any IF games with a "map" command to show you the local
> area ?

Adrift games often have maps. I think the system makes them automatically.
If you use up and down I think there is one map for each "floor".


Graham Holden

unread,
Mar 14, 2005, 7:05:36 AM3/14/05
to
On Mon, 14 Mar 2005 10:43:05 +1100, "David Fisher" <da...@hsa.com.au>
wrote:

>Are there many / any IF games with a "map" command to show you the local
>area ?
>

IIRC, Mulldoon Legacy didn't have it as a built-in command, but you
acquired a map or two that were broadly like the example you gave.


Regards,
Graham Holden (g-holden AT dircon DOT co DOT uk)
--
There are 10 types of people in the world;
those that understand binary and those that don't.

Greg Boettcher

unread,
Mar 14, 2005, 7:40:32 AM3/14/05
to
David Fisher wrote:
> Are there many / any IF games with a "map" command to show you the
local
> area ?
>
> Here is the kind of thing I am thinking of (fixed width font required
to
> view properly):

The game I was writing last summer does this, but it's not released and
probably never will be.

Arrival, by Stephen Granade, also comes to mind.

Greg

Message has been deleted

Katzy

unread,
Mar 14, 2005, 11:13:30 AM3/14/05
to
Heya.

David Fisher wrote in message <1j4Zd.1686$Le2....@nasal.pacific.net.au>...


>Are there many / any IF games with a "map" command to show you the local
>area ?

Castle Ralph has it. The map is built up step by step and gives your
position too. Split screen.

Greetz, Katzy.


dwh...@gmail.com

unread,
Mar 14, 2005, 1:24:10 PM3/14/05
to
You can generate a map in any Adrift game by simply pressing F2. It's
such a
handy tool that I'm surprised Tads, Inform, Hugo et al don't have it as

well.

David Fisher

unread,
Mar 14, 2005, 5:59:20 PM3/14/05
to
Joel said:

Looks good ...

If anyone else is interested, Nitfol (a Z-code interpreter) is available
from
http://www.ifarchive.org/indexes/if-archiveXinfocomXinterpretersXnitfol.html.

An extract from the "Automapping" section of the documentation file is
included below.

- David Fisher

---

Nitfol has the ability to display an on-screen map showing visited rooms and
their connections on the current floor. Below is a map generated from
Enchanter.

*-* *
| |
u-*-*-*-*-------*---*
| |
* * * | *---* |
|/ \ / | /|\ / \ |
* * * / | X * \ *
/ \ | / |/ v| \ |
/ * *-*-*-*-*---*---u---*-*-*-@
/ | / | |\ |\ ^| / |
*-* * * | | \ | X * / *-*
\ |/ | | \|/ \ / |
* * * * *---* *
\ / | | |
* u-d-*-----------*-u
|
*
\
*

The '*'s designate rooms; the '@' the current room. Rooms containing
staircases are shown with a 'u' or 'd', or 'b' if the staircase is
bi-directional. If the current room contains a staircase, nitfol draws it
with a 'U', 'D', or 'B'. Passageways are shown with lines; the 'X's are
crossed lines. One-way passages are shown as lines with arrows. Nitfol uses
'v', '^', '<', and '>' for arrow heads.

In Glks which provide mouse events, you can click on rooms and it will
display the room name (and number) in the upper left hand corner of the map.
Note that XGlk is slightly broken, so you need to click on the left-hand
side of the room. Clicking on an empty map space clears the name.

In order to use automapping, you must tell nitfol how to calculate the
current location. You do this by specifying an Inform expression, so you
must have debugging enabled.


David Fisher

unread,
Mar 14, 2005, 6:16:57 PM3/14/05
to
Poster wrote:

>> Are there many / any IF games with a "map" command to show you
>> the local area ?
>

> Christminster has a static map.

Hmm ... it's a nice map. If anyone wants to see what it looks like, scroll
down ...

David Fisher

---

(SPOILER SPACE)

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Bridge Street
._________________________________________________________. L
| | /~~/ | a
C | A Staircase Chapel Chapel | /~~/ N | d
h | ._________. Tower ._________| |~~| | | y
a |Porters| | | . Gardens |~~| W-+-E |
p | Lodge | | | . |~~| | | M
e | | |Master's| . |~~| S | a
l |_______| First |Lodgings| Second .________. \~~\ | r
| Court |________| Court | | \~~\ | g
S | Great . | C | Biblioll | a
t | Gate Archway . | Stair- | Drain | r
r |_______. ._______________________| Case | \~~\ | e
e | |Arch| | |~~| | t
e | |_way| Great Senior | /~~/ |
t | B Staircase Hall Common | /~~/ | G
| Library & Kitchens Room | |~~| | r
|_____________________________________________|___|~~|____| e
e
Biblioll Street n


Ashiq Alibhai

unread,
Mar 14, 2005, 6:45:19 PM3/14/05
to
It would make a wonderful addition towards a standard TADS
library...hmm. I'm almost inspired.

--Ashiq

David Fisher

unread,
Mar 14, 2005, 8:01:22 PM3/14/05
to
Ashiq mused:

>>> David Fisher wrote:
>>>Are there many / any IF games with a "map" command to show you the
>>> local area ?
>>

>> dwhyld replied:


>> You can generate a map in any Adrift game by simply pressing F2. It's
>> such a handy tool that I'm surprised Tads, Inform, Hugo et al don't
>> have it as well.
>

> It would make a wonderful addition towards a standard TADS library...hmm.
> I'm almost inspired.

I had a quick go at modifying the TADS version of "Colossal Cave Revisited",
and found a tricky things:

To work out if there is a "corner" (eg. going north from room X gets you to
Y, but going west from room Y takes you back to X), you need to check for
reciprocal entries/exits. A room definition in TADS might look something
like this:

SampleRoom: room
...
south =
{
if (bigRedButton.pressed) { return SomeOtherRoom; }
"There is a flash of blinding light ...\n";
someVariable := true;
return nil;
}
...
;

- which means that when you check the "south" exit from SampleRoom (to check
for the reciprocal entries/exits described above), you may get a side effect
of printing some text (which can be prevented by calling outhide(true)) and
changing the state of the game (which cannot be prevented).

So it may not always be straight forward to check for "corners" when
creating this kind of map.

David Fisher


Ashiq Alibhai

unread,
Mar 14, 2005, 8:11:10 PM3/14/05
to
David Fisher wrote:

> So it may not always be straight forward to check for "corners" when
> creating this kind of map.

Hrm. I think maps are easy to make--a special case of a six-way graph
(Computer Science definition). But yes, you raise a good point--we may
need to parse code to figure out the map. Interesting.

--Ashiq

Mike Roberts

unread,
Mar 14, 2005, 10:34:24 PM3/14/05
to
"Ashiq Alibhai" <ashe...@yahoo.com> wrote:
[about how evaluating a direction link from one room to another
can have side effects in TADS 2 games]

> But yes, you raise a good point--we may need to parse code to figure out
> the map. Interesting.

True in TADS 2, not in TADS 3. TADS 3's RoomConnector mechanism solves this
problem (among others) - you can reliably construct a map of a TADS 3 game
(without resorting to parsing code or anything else "hard").

Now, there are other issues involved in mapping that can still complicate it
a bit. For example, a map can be dynamic, so the map you get from
traversing the room graph at any given time won't necessarily be accurate at
any other time. A map can even vary according to who's looking at it: one
character might be able to perceive and/or traverse passages that another
can't, or two characters might end up in different destinations when
traversing the same passage. RoomConnector has well-defined ways of
encoding and querying things like this, so as long as you know what kind of
map you're looking for, you can reliably extract the information.

--Mike
mjr underscore at hotmail dot com


L. Ross Raszewski

unread,
Mar 14, 2005, 11:53:53 PM3/14/05
to
On Mon, 14 Mar 2005 10:43:05 +1100, David Fisher <da...@hsa.com.au> wrote:
>Are there many / any IF games with a "map" command to show you the local
>area ?
> >
>David Fisher
>
>

Moments Out Of Time features this sort of map, an automatically
generated one to boot (It does cheat a little; the designer has to
specify where the center of the map is). Personally, I've gone
totally off the idea of autmaps. For almost any sufficiently complex
map, a human is going to do a btter job of making a map, and there's
no advantage to having a library do it for you, other than that it
saves the author asmall bit of work.

I'm not really a huge fan of box-and-line maps anyway. If the author
wants to include a map, make it look like a real map.

David Fisher

unread,
Mar 15, 2005, 1:41:34 AM3/15/05
to
I asked:

> Are there many / any IF games with a "map" command to show you
> the local area ?

I just noticed this page ...
http://www.inform-fiction.org/extensions/map.html

It includes Inform source files "cmap.h" (which doesn't have a description)
and "dirsmap.h" ... this seems to show only the current room (as a little
ASCII map).

Some more googling found:

Mapping tools (external programs to help players do mapping) -
http://www.ifarchive.org/if-archive/mapping-tools/

Nick Montfort's paper, "ifMap: A Mapping System for Cooperatively Playing
Interactive Fiction Online." - access from http://nickm.com/if/ (some good
stuff there !)

TADSMap (HTML-based) - TADS 2 source (doesn't do automatic layout) -
http://www.umbar.com/tadsmap/Introduction.html

None of these do quite what I am talking about, though ...

FYI,

David Fisher


Timo Korvola

unread,
Mar 16, 2005, 4:35:41 PM3/16/05
to
Andrew Plotkin <erky...@eblong.com> writes:
> It would have been more or less the same with ASCII "| _ / \"
> characters.

Beyond Zork actually does that: you can run it under Unix Frotz on a
regular terminal, and it draws the map with ASCII.

--
Timo Korvola <URL:http://www.iki.fi/tkorvola>

David Fisher

unread,
Apr 1, 2005, 2:57:51 AM4/1/05
to
I originally asked:

> Are there many / any IF games with a "map" command to show you the local
> area ?

I just found a reference in the archives to a library for graphical maps
(not ASCII) using HTML TADS - http://www.umbar.com/tadsmap/ if anyone is
interested ...

David Fisher


Reply all
Reply to author
Forward
0 new messages