Double Buffered

A Programmer’s View of Game Design, Development, and Culture

Archive for October, 2008

Of Fallout and Far Cry

Posted by Ben Zeigler on October 31, 2008

I started playing two new games this week, and both of them are excellent so far. Both Far Cry 2 and Fallout 3 start extremely strongly, and combined it’s been the best 4-5 hours of gaming I’ve had this year. I suspect both might be less compelling the farther I get in, but they have something important to say and genuinely new experiences to show players. It might just be becuase I’ve been thinking about it recently, but both games remind me strongly of elements of Deus Ex, but in very different ways.

The core mechanics of Far Cry 2 are extremely exciting and well implemented. The key word for Far Cry 2, and for once it isn’t a cliche, is Immersion. The opening interactive cut scenes really set the mood, with a real sense of body awareness and environmental integration. You really do feel like you are in war-torn Africa, and all of the elements emphasize both the YOU part and the AFRICA part. For instance, you suffer a malaria fit from first person, and then the primary antagonist (maybe, I’m not very far) points a gun in your face. And then once you get out into the world, you can freely wander around an awesomely realized world. The environmental effects and lighting are the best looking I have seen, and it runs great on my 8800 (unlike Crysis). Oh, and then you get into combat, shoot a onrushing jeep with an RPG, watch it flip into a field, set it on fire, and kill several enemies and zebras. That NEVER gets old, and Far Cry 2 is the best open-world pure shooter I have played.

Fallout 3 also starts with some very interesting interactive cutscenes, principally you being born. Your movement tutorial takes place when you are 1 year old. From the very beginning, it starts throwing a lot of choices at you, and they’re all interesting and important. The skill system is straight out of Fallout, and the character advancement is WAY more satisfying than oblivion so far. Also, they do a really good job of letting you stumble on media and materials from the post-apocalyptic world. There are compelling character interactions and moral choices, and I’m very much looking forward to where the story goes. Fallout 3 is so far the best choice-based game I’ve played this year.

The main fault of Far Cry 2 is a lack of non-combat characters and actions. There aren’t really many conversations, and after the beginning 99% of the NPCs in the game will shoot you on sight. The main fault of Fallout 3 is a lack of immersion and versimillitude. The combat feels a bit detached, and many of the animations are pretty crappy. The interesting thing is that while both Far Cry 2 and Fallout 3 are GREAT open-world first-person games, both are great at the one thing the other is lacking. Perhaps combining them together would make the best game ever, but for now we’ll just have to be happy with two (so far) great games that complement each other nicely.

Posted in Game Design | Tagged: , , , | 5 Comments »

Why Deus Ex Is Important

Posted by Ben Zeigler on October 20, 2008

I’ve you’ve recently read anything about Deus Ex 3 and wondered why all of the comments were hyper critical and full of fanboy angst, this post is for you. If you weren’t playing PC games 10 years ago, you missed out on one of the best games of all time: Deus Ex. Deus Ex is an FPS-RPG hybrid, and was released by Ion Storm (no, not the crappy Ion Storm that made Daikatana, the Austin one) in June of 2000. It is probably my favorite game of all time, and nothing since has come close to duplicating why I love it. From reading my quick description and the wikipedia article, you may be thinking “That sounds like BioShock”, but BioShock is really a very different type of game. WARNING: The rest of this post has some spoilers for both Deus Ex and BioShock.

Jonathan Blow (who also mentioned Deus Ex recently) has given a couple of lectures about the conflict between game design and story, and has used BioShock as an example twice. In addition to the conflicts that Blow points out, I have a huge problem with the big plot reveal. So, you spend the first 2/3 of the game trundling through with no free will, following the suggestions implanted in you. Then, once your character goes through the extremely important development of acquiring free will, the gameplay does not change at all. BioShock, despite having a plot that revolves around choice, gives you very few meaningful gameplay choices, and they do not complement each other at all. In contrast, Deus Ex was designed from the ground up to revolve entirely around Choice, in both plot and gameplay.

At one point fairly early on, you (as JC Denton) have cornered Juan Lebedev, head of a group of separatist terrorists known as the NSF. He has peacefully surrendered to you and your partner, Anna Navarre. Anna tells you that Juan is a very dangerous man, and must be killed immediately. She wants you to do it, to prove you can really do what you were trained for. Earlier, your brother told you to talk to Juan, so you ask him a few questions before making a decision. He starts to tell you things about the conspiracy behind all of this, the plague started by your superiors in UNATCO, and what happened to your parents. Anna angrily threatens that if you don’t kill him now, she’ll have to do it herself and it will look horrible on your record. What do you do? In most games, you would be forced to kill Juan to make the game continue. In some games, you would have two choices, between the “evil” choice of killing him and the “good” choice of trying to talk Anna out of killing him. In Deus Ex, you can try either of those or you can murder your partner in cold blood.

Like the rest of the choices in the game, your choice matters. All 3 of the options have completely logical consequences, and there is no “morality bar” that strictly judges all of your actions. The game doesn’t break when you try something unconventional, it just adjusts and keeps going. Killing Anna gets your geek friend in trouble (because he has to cover it up), but Juan shows up later and thanks you for saving his life. The main plot goes on regardless of your choices, because the conspiracy plants evidence to blame you. But you still care, because the lives of Anna and Juan matter to you. You’ve read their personal email and political philosophy. You’ve commiserated with Anna over the crappy quality of food at work. You can see the logic of the terrorists, but understand the good intentions of the anti-terrorists. You might be kind of irritated at your boss, because he scolded you for surreptitiously visiting the women’s bathroom. Oh, and in the end when you get decide the future of humanity, all of the available choices make equal sense.

The plot of Deus Ex clearly revolve around Choice, but so do many other games, such as BioShock and Indigo Prophecy. The element that elevates Deus Ex from a great game to a Brilliant one is the way the choices in gameplay complement the plot choices. A typical mission goal can be achieved through conversation, stealth, hacking, long-ranged sniping, lockpicking, melee combat, or exploration. You gain experience points for accomplishing sub-goals, and can spend those to customize your character. You have to manage inventory space, and can modify weapons and ammunition for special cases. You have a limited number of slots for advanced nano-augmentations that dramatically modify gameplay. On top of that, you have to carefully manage your resources, which adds a survival-horror tension that makes your choices feel all the more meaningful. From reading this list, you (and the designers of Deus Ex 2) surely think it’s all a bit excessive, and the game would be better if pared down to fewer, but more meaningful, choices. Everyone says the best design is the leanest, right?

But Deus Ex 2 sucked. Despite having better graphics, a better interface, and (in my opinion) a better-written plot, the game was vastly inferior. The problem was that the designers stripped it down way too far. Because they were developing for both PC and console, they jettisoned skill choices. They put a focus on graphics and shadows, leading to small map sizes that killed exploration. They took out all of the resource management and unified the ammo supply. Worse, because the game was more “efficiently” designed, it was always obvious that there was one stealth path and one combat path per mission goal. The game changed from using your skills to navigate interesting spaces, to choosing between two symmetrical corridors. Stripped of its gameplay choices, the plot choices fell flat and the game was a universal disappointment.

So, why is Deus Ex such an important, beloved game? It is in an elite group of games where the player gets to make natural, interesting choices that have a logical effect on a realistic, engaging world (the Fallout games are just as good at this, which is a big part of why they’re so beloved). Why is that a compelling goal for a game? Because (wthout real-world consequences) it is something that only games can do. Deus Ex and similar games really move the entire medium forward, and I am eagerly awaiting the day that somone takes the ideas in Deus Ex and raises them to the next level. It’s been 8 years, and maybe Deus Ex 3 has what it takes? If not, expect the backlash to be thunderous, because it helps prove that games haven’t really advanced yet.

UPDATED: Hah, so I just browsed a copy of the game script to refresh me about the Lebedev conversation, and apparently there is a 4th option! If you block off the entrance to the plane where you confront Lebedev, you can ensure that Anna can’t get in, and you can end the conversation with both Lebedev and Anna alive. I never knew that, and it proves my point even better.

Posted in Game Design | Tagged: , , , , | 11 Comments »

Can EVE Evolve?

Posted by Ben Zeigler on October 5, 2008

Massively has an article about EVE Online’s server architecture and their plans for the future. The article is a great overview, and matches with notes I took from a GDC ’07 presentation CCP gave. I’m frankly impressed with CCP’s ability to get a max concurrent of 40k, but I really don’t think there’s much room left for improvement. Eve’s population is growing just slowly enough that the can keep up with it, but the fact that they’ve started putting in zone limits shows that even they realize this. Why does the EVE model work, and why can’t it go much farther?

First of all, they obviously have some solid programmers. Getting 40k concurrent on one database server is impressive, ESPECIALLY one based on SQL. My understanding is that they have some hardcore SQL programmers who write a lot of logic in higly optimized stored procedures. But, they still needed to buy a military-grade static ram hard drive to keep up, and I know they’ve been getting help from IBM and other companies to get performance as high as possible. So, database performance is stretched near breaking, but isn’t actually the current problem.

The problem is the performance on their application servers, or SOL servers. These are the ones that handle combat and all of the player interaction, and these have always been incredibly lagged. But, how are they able to get a few thousand people in a zone in the first place, without resorting to the client-side heavy method used by WoW (WoW does almost everything client side, which is why hacked servers are possible)? The answer is that it’s heavily optimized for automation. For instance, ship movement is not synced every frame, but is instead sent down only when players actually change parameters. In normal movement, the client solves complicated differential equations to predict the location, which works perfectly when you’re mining.

When does this model break down? It breaks down in the most complicated, hardest to optimize and yet most important part of the game: combat. During combat players are constantly changing movement and using powers, which kills all of their optimizations. I’m sure they’ve done work since launch, but interaction between players has always been deemphasized. From the GDC talk, I learned that the original version of combat in EVE was entirely deterministic, and it took a LOT of complaining from designers to make combat fun at all. So, the entire EVE architecture is designed to optimize highly parallel, noninteractive processes in the vein of a supercomputer. So how are they proposing they fix the performance problems with combat, which is the least parallel computing activity I know of?

As mentioned in the article, they want to fix this by… adding in a bunch of supercomputer features. The main thing they’re working on now is to set up Infiniband network connects to make it easier to swap processes between physical machines. I guess the idea is to split up the over-taxed zones between several physical machines, but this is going to be fiendishly complicated. My understanding is that large fleet battles include a large variety of connections between players, so splitting these up accross machines, even with a fast net connect, means that anything involving connections between players in different physical machines is going to be slow. They’re also going to have to rewrite a large chunk of their code.

Paralellizing multiplayer combat accross different processes and physical machines is an insanely complicated task, and I frankly don’t have much confidence that CCP will actually be able to do it effectively. I could be proven wrong, we’ll see if EVE is still having horrible combat performance problems in a year.

Posted in Game Development, Uncategorized | Tagged: , , , , | 6 Comments »