Friday, January 18, 2008

Linear vs Freedom, Part I: Invisible Rails

Playing Aquaria lately has got me thinking more about player exploration, how fun it is, and how tricky it is to get right without sacrificing other game aspects to. Read on for some random game design musings on walking the balance between making sure the player doesn't get stuck, and letting them feel like they have complete freedom to explore.


It's always been a hard problem. How do you make the player feel like they can go anywhere they want and explore, without worrying that they'll go
somewhere they can't do anything yet, and become frustrated? If you make a giant world with multiple ways to go, there is no way you can ensure the
player will go the way you want or expect. Some of them will go some random other ways, possibly towards obstacles they can't overcome yet.

The usual complaints that this brings out in a user are:

  • Why did the game let me go somewhere I'm not supposed to go?

  • Spent time coming here and have nothing to show for it.

  • Have to spend more time getting back to someplace interesting.



These are things feelings that we, as game designers, usually want to avoid or minimize. Logically, it seems like there are two general classes of solution:
  1. Attempt to change the user's reaction to the game world's behavior.

  2. Attempt to change the game world in reaction to the user's behavior.


So first let's talk about #1. Trying to modify the user's reaction. This is by far the most common approach taken, and there are several ways to approach it. Most involve attacking these common complaints directly. Here are some solutions I've seen games use:
  • Provide obvious in-game clues when the player is somewhere they are not supposed to be. This can range from subtle (jumps that are obviously too far) to heavy-handed. (Voice tells them "I'd better come here later after I can double jump!") If overused, it runs the risk of making the game feel too directed, but does make it fairly unlikely the player will waste much time trying to do something they can't, if the game itself tells them "go do something else for now."

  • Related to the above, provide obvious in-game clues for what areas *are* open to the player. A compass that points to open areas, a helpful person who makes suggestions about where to go next, blinking icons on the map, etc. Again, this runs the risk of feeling too linear if used too heavily.
  • "Lock" areas so that you can't get to them until you're able to navigate/explore them. Make the entrance to the land of long jumps require the double-jump boots to even get into. One hand, this also gives you a good way of making sure that the player understands some mechanic, by forcing them to demonstrate it to get in the door. On the other hand, this too runs the danger of "feels too linear", since if used overmuch it requires players to explore areas areas in a fixed order, and can give them hints about what is expected of them within.
  • Provide easy ways back after dead ends. Examples include things like one-way doors, ledges to jump down from, and free teleports back to one or more fixed locations.
  • Provide useful (but limited) general transportation. Make it easier to get from one end of the game to the other. Teleporter networks (sometimes disguised as something else, like horse routes, or sea turtles) seem to be the most common way to make this work.
  • Provide multiple rewards in all directions. By scattering enough small but significant rewards around, players can at least feel like it wasn't a wasted trip, since they still got something useful out of it. Legend of Zelda's pieces of heart containers are a good example of this sort of thing.
  • Just let them actually go anywhere they want, and do whatever they want. The danger here is that if they can just go to the end of the game, they may skip a lot of your carefully designed content, so using this well requires that the game be set up in such a way that this is either impractical for some reason, or acceptable to the designer. (Good example of this: Fallout. Nothing stops you from going straight to the final dungeon, if you know where it is.)

All of these methods are largely examples of the subtle nuance that is the level-designer's art. They all revolve around crafting the world in a way that guides the player toward the areas that the player is expected to experience next. I like to think of this as the "invisible rails" game model. Granted, in some cases, the rails are built out of game rules (lack of keys or items) and in other cases, the rails are built out of player ignorance (not knowing where to go or what to do) but in all of these cases, the general goal is to make the game world in such a way that the user feels completely free, but is blocked or discouraged if they try to deviate too far from the planned experience.

These approaches have served games well so far, but as the fine people who partake in Project Horseshoe have been telling us, the best stories in games are often the ones that the player feels like they have a play a large part in creating themselves.

This post is already getting pretty long, so I think I'll break it up into separate posts. In part 2, I'll talk about the second, seldom used approach of modifying the game to adapt to the user.

2 comments:

Moni said...

I definitely hate not knowing if I'm supposed to be at some place or not. Not knowing if you can defeat an enemy/boss is the same.
A free roaming game always puts doubt in the player's mind "do I have all the items to beat this part?". I think it's still best for the game to be blunt about it if there is room for doubt. The Mythalas boss in Aquaria comes to mind...

Montoli said...

(Yay! A post! I'm curious how you found this, since I haven't gotten around to posting a link yet anywhere.)

Yes, the Mithalas temple was definitely a "should I be here right now?" spot for me. Although in Bit-Blot's defense, they were at least nice enough to make a one-way current to get out of the temple quickly and painlessly. Still a little vexing, but far less than if I'd had to spend another 15 minutes getting back outside so I could explore somewhere else.