Threads about NSEW/compass alternatives

Splitting this off from Does anyone else confuse East and West?: yeah, it comes up all the time. Here are a few threads:

Off the top of my head:

  • Some people don’t visualise directions at all, or really struggle with them.
  • Sticking to a square grid and avoiding diagonals maaaybe helps with that?
  • Typing go to building or even just building is a LOT more typing than just W. It’s really really hard to match that.
  • For a lot of people, compass directions just fade into the background as part of “this is how the game works,” in the same way that most we gloss over english-language fiction using “said” constantly – it just fades into the background.
  • For those of us who do visualize things spatially, it’s (algorithmically, theoretically) easier to think “oh, this thing is over here” than tracing through the web of connections if we don’t have directions.
  • But if the “texture” and shape of the space don’t matter, you can just let the player go anywhere and elide the traversal, like in some graphical adventure games, just one click on the map to go anywhere, and you don’t think about the space in between and that’s fine. This year’s The Den does this really well in a choice-based format, I thought.
  • Or you can have a really simple map that’s mostly a straight line, maybe with a few brief side rooms: I don’t know how well this worked for directionally challenged people but I thought this year’s The Dragon of Silverton Mine did a good job of this: it’s not a straight line so it feels varied, but it’s a single main path with only short spurs (only ever one room or two?).
  • I’m blanking on the name of the game, but there is at least one where you go up/down and in/out: you’re like climbing a tree or going up the shaft of a mine or something? That was a neat way to orient people: again, it was clear that there was a main direction and side directions.

So there are other options, depending on what you’re doing in your game and how you want it to feel, but for the classic text adventure compass directions are one possible really solid sweet spot of being a quick to type and working OK for a fair number of people.

20 Likes

Wonderful ! Thank you so much for gathering all these ressources.

4 Likes

Down, the Serpent and the Sun does this. But although the navigation might work well, I wouldn’t look to that game as an example of good design otherwise.

This is something that doesn’t happen for me. Compass navigation always has a sort of mechanical flavor in my imagination. I feel like I’m in the Boy Scouts or something, constantly consulting a compass during a hike. I picture a compass: the rose, the glass, the little revolving needle. In most games, this clashes with the aesthetics and the tone.

Of my own games, Eat Me is the worst offender. That game is fantastical, organic, chaotic. But then you’ve got the compass as a point of scientific order stuck into the game as a mechanical centerpiece, and it feels mechanical. Doesn’t match the fairy-tale atmosphere at all.

I agree, though, that the one-letter commands have a utility that’s hard to beat. Alternatives like “go to building” are much more cumbersome.

9 Likes

Maybe because I’m used to top-down games where the directions on a d-pad are locked to directions on a map in standard orientation and people often talk in terms of compass directions when discussing those kinds of game as well, but the compass has never felt intrusive to me.

That said, I do agree there are cases when a different movement system makes more sense aesthetically(took some getting used to the first time I encountered shipboard directions in a text adventure, and a bit jarring when that game then shifted between an environment that used shipboard and one that used compass, but it made sense once I got use to it)… And Compass does have the issue that it doesn’t really handle spaces not mapped on a square grid and not every space lends itself to being crammed into a square grid.

As for the single letter shortcuts, while they beat giving every exit a bespoke label, they do feel a bit clunky as directional input, especially with how a qwerty keyboard puts n so far away from the others and only one being on the home row. Feel like it would be nice if, regardless of the direction system used in the narrative, the four main directions where mapped to WASD* with order independent(e.g. as and sa are equivalent) two letter combos for the intermediates.

*Example mappings might include:
W: North, towards the bow of a ship, back of a building, or rim of a wheel and spoke map.
a: west, to the left side of a ship, to the left of a person looking at the front of a building, counterclockwise around a wheel.
S: South, towards the stern of a ship, the front of a building, or the hub of a wheel.
D: East, towards the right of a ship/building, clockwise around a wheel.
With perhaps R/F for up and down and three-letter combos for choosing to move in a direction that both changes your map coordinate and elevation(perhaps a grand foyer of a mansion has the front door, hallways leading to the left, right, and back of the house, and twin staircases heading up, and instead of the staircases being awkwardly labelled as northeast and northwest, they are treated as up to the left and up to the right.

Granted, such a scheme has conflicts with the scheme players have come to expect in parsers and I have no idea how complicated it would be to implement such a scheme in existing parser engines or to let the player pick between schemes… IJKL is another option. as are arrows, though there you run into conflicts with basic line editing and command history…

1 Like

I mean, you can also do that on the player side with a text expander: Kara made a thread about her AutoHotKey script that maps the numpad to all eight directions, plus up and down on numpad minus/plus, and Control+key for nautical directions. AutoHotKey is Windows-only, but you could do the same with other text expander programs. Each key sends the direction word/letter plus the enter key, so they go immediately. I don’t use that kind of thing very often but it’s pretty handy if you have a game with a lot of moving around…

1 Like

I secretly hoped that Kerkerkruip, “The Interactive Fiction Roguelike”, had undocumented support for H/J/K/L navigation. (Although the last of those would be a bit of a problem given parser IF conventions.)

1 Like

I agree it looks attractive, but then you are losing everyone whose keyboard layout doesn’t match (includes non-native English speakers with AZERTY, but also English speakers using Dvorak, and so on).

1 Like

I think parser games are, by nature, mechanical. An author can ignore that, hide it, or lean into it, but productive commands do not tend to resemble idiomatic English (I can only speak as an English speaker). I think what deters a lot of people who haven’t gotten into parser games is the uncanny near-English of it. Part of that dialect involves navigation by compass, which few of us (can?) do in our day-to-day lives. It’s so baked into conventional parser design that deviations–even sensible and intuitive ones–might encounter resistance.

Time to type, as many say, is an obstacle beyond the mechanics.

I’ve thought of enabling a command that lists visited rooms (grouped by region), and granting players the ability to travel by inputting just a room name (or maybe some sort of three-letter abbreviation as a synonym), but I think the map would have to be pretty large before players invested in it. Effort would be small, though.

I’ve also thought of changing room descriptions to specify what room is adjacent once the player has visited, so “To the south, a passage narrows.” becomes “To the south, a narrow passage leads to the misty lake.” Handcrafting these conditionals for every room would be higher effort, but maybe worth it?

It would help me, as I usually just brute force directions until I memorize the combinations of inputs leading to various places. I’m not very good at visualizing the actual map.

8 Likes

This makes me think it could be done so a parser game could use a menu system to include “authored” directional exploration, but then still have a map and world model if the player prefers to type compass directions.

So for example, the description in the first location of Fair could be:

The elementary school hallway smell is common to every institute of young learning. Battered lockers line the walls to the east and west, and every wall space in between which isn’t a closed classroom door crackles with tacked art and “satisfactory” handwriting examples on newsprint.

The dull roar of children and their parents echoes in the gymnasium to the south. The hallway is populated by a few solitary people and groups at the moment. Cigarette smoke wafts from the propped-open main doors to the north.

Wander along the lockers.
Check out the classrooms.
Head into the chaos of the gymnasium.
Barge past the smokers to get some air.
>_

The choices would equate to compass directions mentioned in the text, but offer more organic descriptions of navigation and exploration. The player could just type EAST instead of clicking to wander the lockers but the game would produce the same command functionally. The player can still type commands to examine objects and manipulate the environment as usual

The author could omit compass directions in the descriptions altogether if they prefer while still working within a map. Maybe a game could include an actual compass inventory item that would spell out map directions:

X COMPASS
Hallways lead east and west, the gym is south, and the door exiting the school is north.

In the blue-sky description of Inform 10 years ago, I was hoping this type of combined interface could be offered. Say if choices were offered in a location or attached to an item description, they could appear in a separate lower pane from the transcript and change based on context. Looking at the room description gives authored directional choices; examining a table might switch the separate choice menu to authored choices such as “look at that scratched butter knife” which could equate to typed command X KNIFE.

Functionally, perhaps the choice-pane could be toggled off or replaced with an exit list if the player does not want to be offered choices.

2 Likes

When I say mechanical, I’m not talking about whether the commands are idiomatic. I mean the thematic flavor. The aesthetics. The vibe.

Eating is a bodily, organic action. Looking is bodily and organic. But compass navigation is precise, scientific, tool-based. It feels metallic to me, in a way. I see a red-tipped needle. I hear it clicking against glass, the way needles will when they wobble sometimes as they spin. In real life, I rarely think in terms of compass directions, so they aren’t intuitive for me. I’m consciously aware that they’re a system, whereas verbs like EAT and LOOK don’t “taste” systematic to my mental tongue, so to speak.

This is why they’re such a weak point in Eat Me. The PC is a young child who wouldn’t have a strong grasp of compass navigation, especially not in the game’s setting. It’s a fantasy world where concepts like “north” shouldn’t even apply.

This is one possibility, but as long as compass directions are an option, you’d still get the “flavor” that I’m trying to describe, which will always be out of place in a game like Eat Me.

6 Likes

That makes sense! My experience is that, because convention and innocuousness overlap sometimes, solutions are sometimes more jarring than problems. I just revisited the first handful of rooms (in Eat Me) to confirm my sense of it, and it all felt good to me.

I understand and respect your feelings re: your own work, of course.

4 Likes

Yeah, for me it fades into the background, like how I can train yourself to notice the artificiality of all the “___ said” dialogue tags in novels, but mostly it feels natural, whereas when a writer tries to “solve” the problem by mixing it up, it serves mostly to draw attention to the artificiality. But I definitely respect that other folks’ experiences of this are different!

I do feel like finding a solution that works for all, or even most, players might be an insoluble problem. I’m almost considering what it would be like to offer different “modes” at the beginning, and use different command grammar but also rewrite location descriptions so they do or don’t incorporate compass directions based on the toggle? But you’d also need to plan the map carefully for it to work under both approaches…

3 Likes

It’s hard. My next major game has a BIG map, which I really can’t do anything about, and I don’t want people to have to break out Trizbort to get around. I mean, I want them to if they enjoy that, but I don’t want it to be required. I should probably prototype some kind of system for people to beat on.

(as I said, I’m bad at directions too)

4 Likes

I was at a John Scalzi talk a couple years ago and he talked about how “___ said” always blended into the background for him until he first heard one of his own books as an audiobook and it just felt like a constant barrage of “___said” which seemed annoying for both the listener and the VA reading the book so he drastically reduced them.

The compass thing in IF to me always felt like the first town in a JRPG where you’d often meet people in town who would have dialog like “It’s written that you can press X to bring up the equipment menu. I have no idea what that means”

5 Likes

Back in school, I disliked writing fiction–I was a poetry person–because I felt it was too cluttered. For instance, I loved writing dialogue, but I hated dialogue tags. “They interrupt the natural music of speech,” I thought. “Most of the time it’s obvious who is speaking anyway,” I thought. In the first workshop, people really seemed to like my story, but everyone agreed that there weren’t enough dialogue tags. It wasn’t clear who was speaking.

Well, I didn’t like it, but I added more tags to the second story. What can you do? I’m teachable! Once again, my story was well-received, but there still weren’t enough dialogue tags. That comprised most of the feedack: formatting and tagging dialogue.

I’d had it. I added more, and thought, “This is too much, they’ll finally back off. They’ll see my point! Dialogue tags really are inelegant and redundant.” But it must have been the right number, because in the next workshop people focused on what they liked about the story.

My big takeaway from that was that I don’t have a clear idea of what it’s like to read my own work.

This isn’t a comment about John Scalzi, who clearly knows what he’s doing better than I do.

7 Likes

This is how I feel about compass directions. Like there’s always pressure to add some horrible ingredient to a dish – rotten eggs or rusty nails – just because it’s “conventional.” And then I do it for games like Eat Me and people approve. Writing that game, I went through periods of hating it. Sometimes I still do.

But I love dialogue tags. I love how you can use them to control the flow of a scene and enhance the drama. Henry James is a master at this. Maybe the master. No author I’ve read does it better.

3 Likes

Of course the other interesting thing here is that this is a perfect example of the technology’s blind spots warping the design space: tab-completion would solve most of the issues with location names being longer (and solve a host of other problems at the same time) but with Infocom’s tech and everything directly descended from it being implemented in ways that’s actively hostile to allowing that…

Like… I’ve implemented command-line interfaces with tab-completion on low-resource old systems like that. With how much they made the Z-machine a custom fit to the kind of games they wanted to make, there’s no reason they couldn’t have made it slightly differently to support tab-completion with very little extra code. But they didn’t. So this is the world we have.

5 Likes

The Z-machine can deal with it, since the game dictionary is stored in a standard, uniform way. Glulx unfortunately can’t. (With an asterisk that Inform’s Glulx output stores the dictionary in a standard, uniform way that you could exploit.)

2 Likes

Considering my preferred playing environment(The Linux console with the espeakup screen reader), the kind of keyboard I have( a slightly shrunken qwerty keyboard with full-sized keys for the most part thatputs the function row right above the number row, integrates the arrow keys into the lower right corner of the main block, puts navigation keys as the Fn functions of the arrows has no numpad, but a touchpad and mouse buttons where the navigation keys would be on a full sized keyboard)and some of what was said since my last post, I find myself thinking it would be useful if the interpreter bound most of the left hand keys to common commands with a modifier key combo, perhaps with game specific configs. And I specify left hand because espeakup’s screen review functions mostly eat up right hand, so it would be kind of convenient to mostly move with one hand and mostly review the screen with the other.

I do agree that tab completion would help a lot with wordier games on the typing side of things.

As for speaker tags, in text, I feel they are vital and that even a conversation between just two characters can sometimes be hard to follow as to who says what if such tags are missing, and that holds true for using a TTS that reads everything in the same voice. I do find myself wondering how well an audiobook where the reader gives each character a unique voice or audio dramatization where the voice actors read their lines directly from the original text would fair if you cut out the speaker tags and whether it would decrease runtime by a significant fraction.

And yeah, calcified standards can make it difficult to establish new ways of doing things in practice, even if everyone agrees the proposal is better than the standard in theory. And compass directions aren’t just calcified, but straight up fossilized.

I also own a mini keyboard with integrated gaming controls, so I find myself wondering how well supplementing a parser with gamepad controls would work.

4 Likes

Yeah, sure, of course. But … so what?

If we’re talking about parser-based interactive fiction, then players are already onboard with typing (or other form of text entry). Unless the game is primarily about exploring territory or mapping mazes, there are going to be a few commands like Put Miss Acorn in the squirrel cage for every Go to the small mammals exhibition building. There are, of course, terser forms of these commands, and I expect nearly all players will frequently abbreviate commands. But even put acorn in cage requires more keystrokes than building.

To be clear, I am not arguing for or against compass-based navigation. (Well, not here. I have made more than enough arguments about it elsewhere.)

I am saying that this particular bullet point (about compass-based navigation requiring less typing than other kinds of travel commands) should be irrelevant when deciding what kind of navigation to offer in a work of parser-based interactive fiction.

All the other points deserve consideration, and I appreciate having them summarized here. Bookmarked.