Automap by Mark Tilford

I’ve been playing around with Automap by Mark Tilford, and it seems to compile, but it doesn’t do any mapping. I’ve been running around my game world with it on, but it only maps the one room. Is this a bug? After going through about five rooms it still looks like this:


I used this extension before, and found it invaluable.

…but I wonder whether it got broken with the recent Inform changes… Try out the examples; do they compile and work as advertised?

The first one kinda does, but there are some diagonal lines where there shouldn’t be any lines at all. The second one refuses to compile and is full of old syntax. I think this is a case of the extension needing updating. Would anyone be willing to help me sort it out?

Do you have this version? There’s an old version floating around on a different github repository, but the version on the I7 extensions repository seems to have been updated for 6L02.

…in fact, Google turned up the “archive” version at the I7 repo, which is the old one. To find the new one I had to back out to the main extensions repo. That’s a thorny situation.

I just downloaded the one from the extensions database. Is the one you linked to the newest one? Only that one has the same ‘change’ script in the examples.

I just ran the version matt w linked. First example ran fine. Second required commenting out the “use Basic Hyperlinks by Emily Short.” The interpreter didn’t support the Beyond Zork set, but everything else worked.

If you run your old game and type “map view”, are all the visited rooms listed as coregional with the current room?

That’s “change the west exit of room1 to room2” or something like that? This is actually not outdated, unlike most “change… to…” syntaxes. Changing room exits is more complicated than setting a property and has a set phrase that still involves the word “change.” It’s defined in the Standard Rules thus:

To change (D - direction) exit of (R1 - room) to (R2 - room) (documented at ph_changeexit): (- AssertMapConnection({R1},{D},{R2}); -).

…which obviously is some I6 hacking but as you can see is called with “change…” and was never a standard “change” script.

Also ralphmerridew is Mark Tilford so you should listen to him about the extension.

Hi Mark! I tried the new version with your extension and it seems to be doing the same thing with my game, but it works perfectly in a blank test. I set up this group of rooms and used them to test both in my game and in a new blank game and got the same result. It doesn’t seem to be conflicting with any of the other extentions I’m using and removing the ‘Include Basic Hyperlinks by Emily Short.’ line from yous doesn’t seem to fix it. So I guess it is something in my actual game that’s doing it, but I can’t think what.

Here is the in-game room layout:

West of Market Stalls is Potter's Corner. South of Tailors Ave is Market Stalls. South of Brick Row is Tailors Ave. East of Brick Row is Cloth & Spice. West of Brick Row is Brass Market. North of Cloth & Spice is Endways.

Is that output what comes with a game where the displayed automap is working correctly?

Also, are you using the term “distance” anywhere within your own code?

I’m afraid that’s the output for the main game where the automap isn’t working. I was using the word, distance, but I removed it and it’s still not working right. :confused: I even tried changing every instance of ‘distance’ in automap to ‘DistanceMAP’ and it still didn’t work, so I don’t think that’s the conflict.

Just figured I’d drop this in here as well:

In 6L38 OS X, while the extension works fine, even seems to map perfectly with the default settings, when compiled and run via another terp, the built-in terp chokes and freezes the entire Inform 7 suite completely, requiring a force-quit. i.e. you can’t test the game in the Inform 7 IDE itself without first commenting out the Automap include.