Adaptive Directions (Left, Right, Forward, Back)

That was tricky, but I think what really made me striggle was … the library’s map wasn’t easy to remember. The author mentioned that they had planned a sort of dodecahedron (20 vertices) which has a lot of symmetry, so once you see a 5-room loop, you’ve got it. But then they cut things down to 12 rooms, and the result was that the map seemed like it had a couple 5-room loops, along with some smaller loops, because the math/geometry didn’t work out.

However, with the library, the idea seemed good. For a dodecahedron-style map, it’s awkward to map compass directions (of which there are 8) to a pentagon loop.

To build on Mike’s post, you could have something like

to say relative-direction-of (dir - a direction):
    let Z be the rotate-value of player-facing-direction - rotate-value of dir;
    if dir < 0, increase dir by 4;
    say "[if dir is 0]ahead[else if dir is 1]to the left[else if dir is 2]behind[else if dir is 3]to the right[end if]"

That’s the technical stuff, though I think Mike and Zarf’s design questions are pretty big ones. This sort of thing is a useful and fun programming exercise but that doesn’t always translate to the player. I think it might work better in Twine where you could use graphics and have a compass.

2 Likes

It’s just a way for players to do what’s familiar or comfortable. In the old Infocom games, each ship direction had a complementary compass direction. Players could use whatever they liked best. I don’t think Aft got an abbreviation.

North=Fore (F)
South=Aft
West=Port (P)
East=Starboard (SB)

According to Google, the International Space Station does use shipboard directions:

image

In other words, the six directions are semi-arbitrarily (not entirely arbitrarily because there is an overall direction of movement) named “fore”, “aft”, “port”, “starboard”, “overhead”, and “deck”. Google also tells me there are labels all over the place indicating which direction is which, to help people orient themselves. They’re the dark blue ones with white letters here:

Source

You could also arbitrarily name those directions “north”, “south”, “west”, “east”, “up”, and “down”. Or any other convention that lets the passengers and crew navigate! Long ago I had a WIP set on a spinning space station, the sort that uses centrifugal force to simulate gravity, where one direction around the ring was defined to be “east” and everything else came in relation to that. The important part is that the crew (and the player!) can remember that the airlock is some distance west of the engine controls.

3 Likes

I appreciate the design questions. I’m brand new to Inform, so I’m not yet trying to make a competitive game for wide consumption. I really enjoyed playing Battlestar all those years ago, and am trying to figure out how it could be done in Inform7. Using port and starboard would not accomplish that goal. I’m retired Navy, so I get the utility of port and starboard. But I also know, these maritime directions only work on small or familiar ships…anybody new on a Carrier will quickly tell you that they no longer remember which direction is aft, all directions look the same. Also, Battlestar did not suffer the defect people cite: it did not confuse players or make a frustrating maze that would turn players off. I get this is a frequent problem in games using relative directions, but Battlestar shows me it’s possible to do it well, despite the fact that many have failed there. So this is really just a programming exercise for me, to learn Inform, and start to see how it would be possible to program Battlestar using Inform7. I won’t complete that task…that game is somebody else’s work, and the game did not age well in some very critical respects, it should probably stay buried. Thanks all for the pointers and help, and pointing out the pitfalls.

2 Likes

It’s definitely been valuable to me to experiment even if something isn’t publishable. I’ve been fortunate enough to have ideas come back as something better (I think) later.

The thing is, you’ve tried and asked about something unusual, and that does pay off. And it’s neat to see what you can do or know some things are more accessible than you imagined.

And sometimes seeing limits on what can work or what has been done or what might not be enjoyable is really valuable data that helps you focus on the good stuff, by process of elimination or whatever.

1 Like