I figured out via the “Fore” example that I need to do this to allow shipboard directions:
The starboard is a direction. The starboard has opposite port. Understand "sb" as starboard.
The port is a direction. The port has opposite starboard. Understand "p" as port.
The fore is a direction. The fore has opposite aft. Understand "f" as fore.
The aft is a direction. The aft has opposite fore. Understand "a" as aft.
But if I want to allow the player to be able to type, say, “east” and “starboard” I have to do this:
The Conn is a room.
It is east of the Deck.
It is starboard of the Deck.
Is there some way to just have “starboard” and “east” refer to the same direction so I can keep the code DRY? An “Understand” rule does not work for this. Doing that gives responses like “Which do you mean, the east or the starboard?”
Ah! Quite a bit simpler. Yes, I see – the examples were assuming certain things (like I would only want nautical directions in a nautical context). But assuming you always want the directions to be available, this is by far the simplest!