7 June, 2006
I’ve read a few posts lately that have inspired me to write this entry.
Creating the Wrong Experience over on Damion’s blog. An interesting post where Damion talks about his distaste for use-based systems, as demonstrated by how an Assassin in Oblivion has to go hopping through fields collecting flowers in order to increase his skills.
UO’s resource system on Raph’s blog. This fascinating post, in three parts, talks about the goals, design, implementation, and final removal of the UO ecology system. Really interesting stuff.
In both cases, the core argument is that the game should be “realistic”. Damion argues that use based systems create unrealistic behaviors such as the assassin jumping around everywhere and having to collect flowers in a sun lit meadow in order to practice skills. Raph says that simulating complex systems allows for all sorts of neat emergent behavior.
As you might expect, I’m going to argue that realism isn’t a very good reason.
Now, I should admit my biases: I’m not terribly fond of heavy simulation games. The closest I get are the “Sim” games, but I would argue that these aren’t true simulations. Instead, the Sim games take the right combination of simulation, abstraction, and simplification to keep the game fun. I’ve been told that running a real city is nowhere near as fun as it is in SimCity. I’ve also been told that the techniques used in SimCity to build the “perfect” cities are often flawed in the real world. But, this didn’t stop me from wasting hour upon hour with the game. So, my preferred games don’t rely very heavy on “realism”. Not to say these types of games don’t have fans, but that’s not where my biases lie.
I tend to think that simulating “reality” tends to lead to very boring games. Too often game developers fetishize the development of physics or other aspects in order to simulate reality in games. For example, there have been numerous games that try to simulate “realistic” physics, from the notorious Trespasser (updated link to a good description of game) to more recent games including Half-Life 2. In all this time, the only really interesting gameplay feature has been the gravity gun in Half-Life 2, in my not-so humble opinion. And even that got annoying many times.
This doesn’t mean I take an extreme position, however. Games tend to require some basis in reality in order to operate. Even very abstract games like Pac-Man or Tetris require the adherence to common rules such as geometry. Trying to implement Pac-Man in a bizarre form of non-Euclidean geometry would be a pain, and trying to play it would be damn near impossible. Even the most fantastical games tend to follow rules we’re familiar with in the real world, even if it’s using a real language in order to communicate with the player. But, the inclusion of a basis in reality doesn’t necessarily mean that the game must include a detailed simulation of reality.
In many cases, I view simulating reality as purely intellectual exercises. It’s the ultimate “wouldn’t it be cool if…” scenario conjured up by game designers wanting to break away from the old models. Advancement systems that are “realistic”, or in-depth simulations that lead to astounding emergent behavior tend to fit this bill. The tend to be complicated boondoggles that never seen to quite live up to their promises.
Now, let’s focus on the posts above. Damion argues that use-based systems lead to unrealistic behavior: an assassin hopping through the fields collecting flowers is perhaps a little out of character. Damion’s dislike of use-based systems is a bit ironic given his involvement with them in Meridian 59. Familiarity breeds contempt, I’m sure.
The problem with Damion’s complaints is two-fold, in my mind. First, “realistic” learning isn’t fun. How do you learn in “real life”? You go to school. You sit in a room for hours on end reading books, listening to lectures, and sometimes getting to do some practical training. Boy, wouldn’t that be fun! I can see the bullet point on the back of the box now:
- Hundreds of hours of realistic training in a school before you can do anything in the game!
Okay, maybe not.
To really evaluate the problem, we have to consider the purpose of the use-based system. The system allows for character advancement that is largely under the player’s control. Want to get better at casting attack spells? Then go cast them! You don’t have to go murder monsters to gain abstract points which allows you to improve multiple abilities at a time, even if they are never used. The whole point is that the player can choose the development of his or her character in the world by focusing on some skills instead of others.
Of course, this relates to the second problem: the most efficient path to build skills isn’t necessary the most realistic. When I played Morrowind, I gained several skill points in spell abilities by casting useless little spells near a shrine where I could easily replenish my mana. Sure, it wasn’t exactly exciting or realistic for me to be casting a silly summoning spell in the middle of a shrine, but it was the best way to gain skill points in an efficient way. The assassin in question could have chosen to do his hopping in the middle of the night or in some deep, dark cave in order to stay in character. But hopping around in darkness is boring; it’s easier to hop around as you’re going form one place to another, perhaps stopping along the way to collect some herbs for alchemic practice. In Morrowind, it was possible to save up money to buy training from NPCs to gain skill points; note that this was significant harder than just hopping everywhere, or otherwise practicing your skills repeatedly.
This efficiency problem is the same one we run into in online games: people bottom-feed to minimize risk, get bored, then blame the game (and, by extension, the game designers) for being boring. Game designers need to discourage people from doing the easy-but-boring things in order to keep them interested in the game. In the case of this single-player game, this is harder. The biggest problem is that a dark assassin shouldn’t be skipping around in the daylight. So, should the game penalize people for being out of character? That’s always a dangerous road to tread since the player’s concepts and the designer’s concepts could be at odds. Maybe I’m playing a ninja, a master of disguise, and skipping along in the meadow is part of that disguise. Should the game penalize me, even though I’m potentially acting “in character”? Should the player blame the game when he or she has chosen to act out of character in the name of convenience?
Perhaps we should put more thought into designing a system that allows players to actively choose which skills to develop in a system of meaningful character advancement that doesn’t lead to “unrealistic” behaviors. Unfortunately, I don’t think the answer is going to be an easy one. If the answer were easy, someone would have done it already.
Now, let’s consider the UO ecology system that Raph describes in his posts. An ambitious system, for sure, which was part of the “world simulation” aspect of the game. The system never really came together, and was eventually ripped out of the system since it declared it a “boondoggle” by the person in charge of implementation.
The goal of such a system is emergent behavior. That is, behavior that the designers didn’t necessarily intend, but that adds to the feel of the game. It makes the game feel more immersive. It’s also pretty neat to think about.
Raph does point out a few problems with this kind of system: a complete system demands more and more granularity, and the simulation of more and more systems. It also requires a lot of processing in order to work correctly; the processing requirements have almost certainly gotten much steeper with the complexity and 3D-focus of most modern online RPGs.
Raph also points out a huge problem: there needs to be causality for the system to really work. If players don’t understand why something happens, then you have spent a lot of time implementing a system that seems no different to the player than random chance or a simple scripted system. If the players can’t tell the difference, then there’s no reason spending so much time and effort on a large-scale simulation of the end result will be largely the same.
But, the problems don’t stop there. There are three practical problems to tackling this sort of project that make it unfeasible. First, not every bit of “emergent behavior” is good. What if someone figures out that casting water spells makes it rain more in the desert, which increases the frequency of desert plant that is supposed to be rare? We already have a huge number of “unintended consequence” type problems in our games without implementing systems to create more! From an engineering point of view, “unintended consequences” can also be a code word for “bug” in the game. These types of systems can be breeding grounds for bugs (in the form of design flaws) in the game.
Second, the designer still needs to figure out all the consequences of the system in order to make sure it fits within the game. In the end, the designer ends up doing at least as much work in designing a system like this. Unfortunately, the engineering side of things will likely take longer to implement a robust simulation than to implement a simple scripted event system. And, let’s not even start on the massive load this will put on QA. This type of system isn’t really saving any work, unless you leave the door wide open for bugs to show up in the system.
Finally, there’s no real “end” to the implementation of the system. As Raph points out, it can require more and more layers and levels of simulation to have everything work as one might expect. Budgets and schedules are finite, so having something that can’t be easily broken up into chunks for development purposes is going to be problematic. This type of system can’t just be developed in chunks, because adding new aspects to the system could radically change the system from what players expect. And, believe me, players hate changes like this. So, if nothing can change radically, you’re pretty much stuck with variations of whatever system you implement in the first place. The nature of this type of system mean that you probably won’t get a very good simulation with only a small fraction of the system in place.
So, what are the right answers?
Once again, there is no silver bullet. Despite my arguments above, use-based systems aren’t a panacea to solve all ills. And, I do admit that simulations can be done properly and be an entertaining basis for a game. The big question is: do these tools fit within your game? Will players play hopping, flower-gathering assassins and then blame you for making them behave out-of-character? Or, does the system give users enough control over their characters to cause real emotional investment? Will players be able to tell your detailed ecology apart form something scripted or random? Or, have you figured out a way to show the player causality in order to clue them into the larger working system in the game? The answers to these questions like these will determine if these systems are right for your game.
But, putting these systems into the game simply for the sake of “realism” will result in someone crying every time. Players don’t want realism, they want fun. And, although a game can’t be 100% fun 100% of the time, we have to be careful in which areas we sacrifice a bit of fun for anything else. On the other hand, you might have found that niche of masochists that love whatever pain you throw at them. If so, I’ve got a few pet projects I’d like to inflic…er, I mean, test on them. :)