Friday, October 18, 2013

Accessible Complexity

I've built a number of game prototypes about science, and I've discovered a lot of subtle things involving complexity.

As I touched on in the last essay, the science part of games is not usually complex. It's usually quite simple and straightforward, and the complexity of the game lies in the framework of how you generate science.

For example, the new version of Kerbal (KSP) includes a compelling science system... but the way you do it is to build rockets and ship stuff around the universe. The science itself works the same no matter how the instruments get to the new location. The complexity is, as usual, all in the other part of the game.

And building a rocket sure has a lot of complexity to it, at least in Kerbal. They physics of the game are quite complex. The exact structure of every rocket varies, as does how it handles and so on. There are some very clear "optimums" once you play it for long enough, but in the beginning it feels extremely open and free.

Getting that level of complexity is actually a bit challenging. Basic physics is something we're wired to understand. We learn from birth (and perhaps even from our fundamental brain structure) that things have weight and react in certain ways when pushed. We understand that things can break, or swing, or spin, or bounce, or do any number of other complex physics stunts. So physics comes with a massive stack of variety and complexity that we take for granted.

If you decide to use something besides physics, you have to use something with the same level of complexity and emergence. But here's the thing: there's not really anything else we intrinsically understand to that degree.

So most complex games use methods to teach the player the complexity of the game. This is generally done through two methods: the "maturation" method or the "replay" method.

For example, in Civilization you build cities and terraform the world tile by tile. Nothing about the starting cities or terrain is complex - it's all very straightforward. However, as time passes the cities mature, their complexity grows. A player grows familiar with more complex structures and technologies as their cities grow into them. Of course, each city follows the same basic trajectory, so it's the pioneer cities that train the player to understand the situation, and then the the player guides the bulk of her cities down the same path with aplomb.

The "replay" method is found in games like Dungeon Keeper. Again, the foundational pieces are pretty easy to understand. However, rather than maturing them, the game forces you to rebuild your base from scratch over and over. Each time, the way the enemy pressures your base and the options you have change slightly. KSP is actually similar to this, once you get into learning how fuel actually works.

The big difference in terms of the complexity these games use is this:

In a "replay"-centric game, the complexity is all available right from mission start. Like a fighting game, once you learn the complexity you have it all at your fingertips at all times. On the other hand, "maturing" games always start you with only very simple pieces, and you have to lay out the foundation that will mature. Because of this, maturing games are much more focused on careful layout planning, while replay games tend to be focused on economic balancing. Both types have both, obviously, but there is a distinct difference in focus.

Are there other ways to create complexity that the player won't get lost in?

Sure. The key here is that the player has to internalize the nature of the complexity. For example, when I talk about KSP rocket designs, I might say "Well, even with the advanced SAS module we may still need some RCS spin assist". And everyone who's internalized KSP's complex gameplay understands exactly what I mean.

But there's lots of ways to internalize something besides simply playing the game for a long time.

The easiest is to import complexity that's already been internalized. Physics is the biggest example, but there are others. We don't intrinsically understand these things, but we do have a scaffold that we can fill in very rapidly.

For example, the Force from Star Wars. We don't know exactly how it will work in every game, but we have a grasp on the ways it might work, and we can very rapidly slot the game into place and get going. Similarly, space ships with shields and lasers. Hacking the internetz. Any concept we've internalized from common culture.

The downside of these is that at the moment we're not using them to create complexity. We're just using them to create spectacle.

There is no game where the Force has complexity. In every Star Wars game, the Force is just a stack of powers and a simple "light side dark side" scale.

But imagine a game where the whole purpose is to create multiple Jedi. Like designing a rocket or a dungeon or a city, you design Jedi. The internal workings of their soul are laid bare: the machinery of the Force. You send them on specific missions, and the powers your machinery has enabled in them help them on these missions. But the Force is also related to the emotions we feel, and therefore the machinery of the Force will change as the Jedi goes through various experiences (which in turn depend on which mission the Jedi is on).

So it's a balance: you can build a powerful Jedi, but you need to be careful that she won't fall. A Jedi that is exposed to the grinding hopelessness of poverty and disease in the undercity will suffer very different emotional impacts than one that has to fight Sith while also fighting the rage in their own hearts. The "mechanical" structure of how their personal force is laid out will also need to be different.

I think that game would be hella fun!

No comments: