# A complicated map

Good evening, all:

I am wondering if it is possible for a map to be too complicated to compile. It seems really silly to me to say that, but I’ll explain quickly – the map is a tesseract, which is a four-dimensional object projected into three dimensions. Because of this, the map folds back again and again on itself. Some rooms have as few as four exits, some as many as ten.

When I try to compile these two room definitions:

``````Room-24 is a room.  North is Room-23.  East is Room-22.  South is Room-21.  West is Room-20.  Northwest, northeast, southeast, southwest, and down is nowhere.  Up is Room-18.

Room-22 is a room.   South is Room-21.  East is Room-19.  Room-24 is west.  North is Room-23.  Down is Room-37.  Up is Room-48.  Northwest, northeast, southeast, and southwest is nowhere.
``````

I get this compiler error:

``````You wrote 'Up is Room-18'  , but in another sentence 'Up is Room-48'  : but this looks like a contradiction, which might be because I have misunderstood what was meant to be the subject of one or both of those sentences.
``````

But, as you can see, the sentences are part of two different rooms.

Furthermore, if I change the Up is Room-18 to Down is Room-18:

``````Room-24 is a room.  North is Room-23.  East is Room-22.  South is Room-21.  West is Room-20.  Northwest, northeast, southeast, southwest, and up is nowhere.  Down is Room-18.

Room-22 is a room.   South is Room-21.  East is Room-19.  Room-24 is west.  North is Room-23.  Down is Room-37.  Up is Room-48.  Northwest, northeast, southeast, and southwest is nowhere.
``````

I get:

``````You wrote 'Down is Room-18'  , but in another sentence 'Down is Room-37'  : but this looks like a contradiction, which might be because I have misunderstood what was meant to be the subject of one or both of those sentences.
``````

The common factor is Room-24. But I can’t find anything wrong with Room-24’s coding, unless it is so obvious I am not seeing it. But this is what led me to the unlikely conclusion that the map may be too complicated to compile.

Anyway, as always I appreciate everyone’s time and thoughts.

1 Like

Not sure what’s going on here, but after some messing around it looks like just swapping in “Room-18 is up from Room-22.” allows it to compile.

This sounds more complex than the tesseract I’m used to… Though I have found myself wondering how to connect8 cubic rooms representing the 8 cells of the tesseract such thatmoving in the same direction 4 times in a row always brings you back to where you start no matter which room you start in and which direction you travel… easy enough for the 4 rooms that form the upright of the 3-d cross net of the tesseract, but harder to figure out for thepaths through the cross bars and the bottom cube of the 3d cross or through the quartets that looked looped in the 3-d cross… and I’m not sure introducing ana and kata as directions helps solve the problem.

I’ve also wondered things like the best way to represent moving around a map on a hex grid or through the cells of a rhombic dodecahedral honeycomb… the standard directions really are quite limited if your map isn’t easily abstracted to a square grid or a cubic honeycomb, and even for those geometries, the only not immmediately adjacent moves are to diagonally adjacent in the same layer.

If you known C language, perhaps a solution for handling this very map is here ?

https://www.ifarchive.org/if-archive/games/source/tess.tar.gz

HTH and

Best regards from Italy,
dott. Piergiorgio.

1 Like

I’ll confess that I am using the map from a third source, there was an old D&D module printed in The Dragon magazine in 1984 called “The Dancing Hut” which had the layout of Baba Yaga’s Hut. In the module it is described as a tesseract. It may be a little more complex as there are 48 rooms. And perhaps the author just decided to call it a tesseract and made the room connections convoluted but not geometrically accurate. So, your question about the tesseract is a valid one.

I did this and it compiles but it makes a different connection, Room-18 is up from Room-24 not 22. But I think that it doesn’t matter in a complex map, nobody will konw the difference. So I’ll take your solution!

If you say “R1 is north of R2”, “R3 is up from R4” everywhere, instead of relying on the “North is R” shortcut, it should behave more predictably.

As for the tesseract, the Dancing Hut issue is findable online, but the map isn’t clearly explained. Your basic hypercube has 24 square faces, 32 edges, and 16 vertices, so maybe the author decided to place a room on each edge and vertex. But then there’s an entrance hall so I don’t know. I suspect it’s not very systematic.

48 rooms is a lot to fill up, mind you.

5 Likes