What Makes A Game Fun? June 5th, 2015

What makes a game fun?

A lot of people ask this. It seems to some to be very important to understand why something is fun. It is implied that you can't make a fun game unless you have a good understanding of how to create fun, and that starting from nothing, you should be able to put things together in a planned method and deliberately create fun.

Understanding why something is fun is apparently very important to many people. I think that's wrong. This is very much putting the cart before the horse.

How do you work with something you can't understand? Do you spend years fruitlessly trying to figure out its mysteries? If we look at other real-world examples, the answer is "no". You take a pragmatic approach instead.

An Example

Let's say you want to get some gold, because gold is valuable. There are two ways to go about this. Historically, one of the main goals of alchemy was to try and understand the means to create gold from lesser metals. People have been trying to accomplish this for 2000 years with, and let's be generous here, limited success. But they kept on trying, because they believed that the understanding of the process was in some way necessary.

The pragmatic man instead does not follow this approach. Instead he recognizes that gold exists out there somewhere in the world. To obtain it, he digs a mine, gets down there with a pickaxe, and goes to find it. He doesn't know the process that made it, but he knows how to recognize the end result when he sees it.

Can you guess which was more successful in the production of gold?

Working with things we don't understand

If we accept the initial premise that fun things exist in the world but we don't understand them, that doesn't mean we can't have them. The key is to accept that fun is a substance that occurs naturally by chance sometimes during game production. What is required is a willingness to recognize which things happen to be fun when you see them, and to maximize those areas. Sometimes this may involve throwing away things you previously thought were important in your game, and investigating avenues you hadn't considered.

I'll give you an example. After the release of Quake, some players figured out that if you fire a rocket launcher directly at the ground while jumping, you'd get propelled very high up into the air. They were then able to use this to get to areas they weren't supposed to. When designer John Romero found out about this, it shocked him a little:
John Romero - "Devs Play" S01E05 - Doom

After the game launched, and we saw that, it was like "I... is the whole game ruined now? Because you can just go anywhere?". So I was was really worried about the design of the game after that was found out, and it's funny because we were playing it not like that and we figured that people played the same way. So it didn't feel like the game was ruined so much, but it was kinda scary... just like "wow, I need to check all the levels right now".
So the designer's initial instinct, when faced with something like this, is to fix it. The designer thinks "oh, I don't want players doing things I hadn't planned to be fun". And so the designer fixes the game code so that rocket jumps are no longer possible. He does this because it doesn't fit with his preconceived idea of what is supposed to be fun in his game.

But that's not what id Software did. By recognizing that there's something fun here, and seizing on it instead of rejecting it, a new gameplay mechanic was created. By the release of Quake III, even the bots were doing it.

Don't set out to create fun, set out to find it. If you played a game where the climbing felt good, design a game about climbing. Or if you played a game where it was fun to bounce on the heads of enemies, base something around that.

And if you accidentally find some fun hiding in your game somewhere, don't let it get away. Grab onto it, slap a saddle on the back and ride it all the way into the sunset.

Written by Richard Mitton,

software engineer and travelling wizard.

Follow me on twitter: