Video Gaming

Empathy for the Daemon, or are you a good simulator?

Game designer Sid Meier, creator of the “Civilization” series of video games gave a talk recently called “The Psychology of Game Design (Everything You Know Is Wrong).” His main thesis was that game designer have to understand the player’s psychology when designing the gameplay elements and gave some examples from his games which violated player expectations.

Now, speaking from a programmer’s perspective, one of the prerequisite of being a good programmer is the ability to read code and understand the effects of its execution. Without this basic skill, coding becomes a matter of trial and error. Bad code will confound even good programmer’s ability to understand it, and that is one of the code smells that I look for. Quite simply, programmers must be able to simulate a computer in their heads. Some programmers can even simulate a computer down to the hardware level, to optimize registers and cache lines.

So how does this relate to Meier’s talk? Well, what he is saying is basically that game designers need to simulate the player in their heads. Each gameplay mechanic and every decision about the game that designers make must take into account how it will affect the player. But to be able to simulate the player, you must first have a model of how a player behaves. That’s why understanding player psychology is the important.

Generalizing even further, this ability to simulate is fundamental to being human, it is also called empathy. Empathy is the ability to share another person’s feelings and emotions. This can happen because we place ourselves in the shoes of another person. Some studies have shown that our neuron firing actually mirrors another person’s from just observing their emotions.

So work on improving your empathy, whether it’s for players of your game, users of your website, or executor of your code.

I Didn’t Join the Video Games Industry to Make Glorified Random Number Generators

I said that last night while discussing the state of Flash/Facebook games with my friend David. has a great article explaining some of the techniques video games use to keep players engaged.

Notice that I said engaged, not entertained. They are two different things. Games used to want players to have fun so they will eventually buy another game. If it was so the players will buy another game from the same studio, it was called building a brand. If it was so the players will buy another sequel, it was called building a franchise.

But that is a very risky thing isn’t it? To always build new games and hope it does well? A brand can be trashed with a few not so great games, see Rare. Sequels can be milked to death, see Tomb Raider. So the new way to make games is to engage the players so they don’t want to stop playing. The players don’t have to enjoy the experience, but have just enough rewards to keep them coming back. Now you can charge users more and more money for the same game without having to risk making something new. You can tweak your reward delivery channel, aka game, to ensure maximum engagement and of course maximum profit.

Not all game company think like that of course, just the more profitable ones. The problem is that this way of viewing players is growing. When engagement games grows, it takes time and attention away from enjoyment games. To compete for time and attention of the players, all games will adopt the same kind of techniques to keep players playing.

How do you see the future of gamings? Will it be drowned by the sounds of pavlovian mouse clicks?

How iPad Multitasking Might Work

There has been much complaining on the web about how iPad doesn’t support multitasking, and little analysis of why Apple doesn’t allow it. Adam C. Engst wrote up a great analysis of the types of benefits that multitasking can provide and what technology is required to achieve those benefits.

I’d like to approach the question of multitasking from the user’s perspective and not from a technology standpoint. How would allowing third-party background processes impact the user experience?

Games Don’t Want Multitasking

Gaming is a largest category of the applications for the iPhone. I come from a video game background, so lets compare how game consoles approach multitasking to the iPhone.

Game consoles don’t allow third-party background processes, period. Even first-party background processes are limited. Xbox 360’s dashboard and PS3’s XMB is the interface to access system functionalities while playing a game. Both systems also reserve a small amount of memory and CPU to run system functionalities.

PS3 XrossMediaBar

The reason why consoles take such extremes to limit multi-tasking is to give games consistent hardware performance. Games typically pushes the performance of the system to the limit. When a game updates at 60 frames per second, a small decrease in performance will drop the frame rate to 30, which is immediately noticeable by the player.

Now imagine a game developer writing games for the iPad. It would be impossible to squeeze every ounce of performance out of it if at any point a random third-party application can wreck your performance and turns your game from running smoothly to slowing to a crawl.

For this reason alone, I don’t think any iPad application should expect to be running in the background at all times.

Multitasking on iPad

Believe it or not, there exists an API that manages multitasking on the iPhone. It is called Audio Sessions. An application can claim exclusive access to hardware audio codecs and stop the iPod application from running in the background by setting the appropriate audio session category.

I think this could be a glimpse into how Apple will implement multitasking on the iPad. Apple can define a set of categories for multitasking and each application will set it’s category to the most appropriate one.

Here are some categories which I think might be usedful:

  • Multitask Session Default – allow other application to run in the background with the current application. Quit the current application when the home screen is brought up.
  • Multitask Session Background – allow other applications to run in the background and also wants to keep running when another application starts, maybe quit if an exclusive application starts.
  • Multitask Session Background Resume – Same as background, except restart the application in the background when possible, i.e. after an exclusive application stops.
  • Multitask Session Exclusive – Do not allow other applications to run in the background. Quit the current application when home screen is brought up.

By defining the multitasking behavior through the API, Apple will still have complete control over the user experience, without exposing the complicity of managing processes to the users.

The Apple Way

I am just conjecturing how Apple might add multitasking to the iPad. I don’t have any sources inside Apple. However I believe that Apple will provide the best possible user experience when using the iPad. If they determine that multitasking will decrease the overall user experience then they will not add it.

Like the Cut-and-Paste complaints of a few years ago, Apple will wait until it finds the best possible way of introducing a functionality before adding it. That is the Apple way.

Making Games Look Fun

Video games are suppose to be fun to play, but what about to watch? A famous name in Japan’s video game culture is Takahashi-meijin who’s special gift is making games look fun.

In shooting games, if you want to get high scores, you shoot the enemies as soon as they appear on the screen, but if I did that, the audience would just see the bullets and the explosions. So I wait until the ship is halfway down the screen before I shoot it. You can’t get a high score that way, but it looks more exciting.”

More >

Game Developers Are From Mercury and Marketing Is From Neptune

One of the big bogeymen in stories that developers tell each other is the “Marketing Department.” The story always ends up the same way, “and then we had to change the game … for the worse.” If you read any developer’s blogs, it is clear that most don’t hold marketing in high esteem. They are the enemy, an agent of “The Man,” suits sent to crush the creativity of us geniuses. I wasn’t particularly kind to them either in my previous posts.

Why is there such acrimony between these two groups? This is actually by design, if you look at it from the publisher’s perspective. More >

Why Carmack’s iPhone Visual Tour De Force Will Flop

Two words, “Battery Life.”

I have no doubts about Mr. Carmack’s technical ability. His games defined ‘cutting edge’ graphics on the PC for many years. But even he can’t fight against the biggest weakness of the iPhone, a short battery life.
More >

Why the Games Industry Needs E3

Apprently it is news to some people that E3 is dead. I wrote my own eulogy to E3 a couple of month ago, around the time E3 is suppose to take place. The real E3, not whatever just happened last week.

E3 was important to the industry because it represented gaming as a “Culture” and that’s why we need it back.
More >

Have Sony Been Preparing Gamers for Losing the Final Fantasy XIII Exclusive?

Square-Enix announced that Final Fantasy XIII is coming to 360 during Microsoft’s E3 press conference yesterday. It came as a surprise to many people and has already gotten plenty of reaction from people.

But I bet it wasn’t a surprise for Sony, since a deal between Square-Enix and Microsoft must have been in the works for a while. So have Sony been preparing for this moment?
More >

Cast of Characters pt 2 : the Broken

If you want to work in the games industry, know that it is filled with geeky guys. Be prepared to put up with a certain amount of ‘eccentricities.’ In this series, I offer up a sampling of the types of people you might meet in your journey.

Last time I talked about the ‘Burnout’, this time I’ll be talking about a close cousin to the ‘Burnout’ I like to call the ‘Broken.’

The inspiration for the name comes from something that Dan, a fellow gameplay programmer on BioShock, told me. After I was hired at Irrational, I learned that there was long search to fill the position I was hired for. When I asked Dan why it took so long, he explained that it was hard finding experienced people that still had the passion to make great games, and the person they interviewed right before me was ‘broken and bitter.’
More >

Make Better Games by Reducing Interactivity

Most people believe that interactivity is what separates games from other kinds of media, so how can you make games better by taking away that advantage?

Back when we were creating the interface on BioShock, Ken was the one who always pushed for a simpler interface. The main method we used was to remove options from the main in-game menu and placing them into the UI of machines you interacted with instead.
More >