I posted this article once. A lot of people thought it was a load of what ever word the moderators will let me get away with using. Though I still believe it, and it is the first thing I think about whenever I try to make a game. (Okay, so I've only ever made one game, which isn't quite finished yet.) I hope it changes your outlook on the difference between a good game and a bad game.



A game's sole purpose is to satisfy the player, by attending the player's 'needs'. (They could be named 'urges' or 'wants', but for the sake of consistency, I'll call them needs.)
The game must subtly promise the player, that his or her needs will be satisfied. Even if it doesn't, the player subconsciously expects these needs to be met in the sequel. The needs can't all be met straight away. Otherwise, the player would never actually play the game. If subtle promises for the below can be made during the demo, people will buy the game.

Such needs include:

Sexual Need:
Mostly from the male side, having sexy people in a game can attract an audience. Such attractive people can be, the main character, assisting characters, goal character (the one you save from the dragon or whatever,) or anyone on the sidelines. Though sexy enemies would create a conflict in emotion.
Subconsciously, the player needs to think that if he or she reaches a far enough level, he or she will have a greater chance of having sex with the sexy character. Hormones never realize the impossibilities of such things. This is why men look at porn, and women read romance novels.
Keep in mind that males would travel to the ends of the earth, if they think they might see a little more skin. Though females don't really want to see men naked, unless it's for a laugh. To get female attention, you need to add a great personality into the sexy character. My guess, is most of us fellow programmers, haven't yet learnt how to satisfy a woman, (I'm talking about being romantic etc. etc. not sex.) so how the hell are any of us going to program a game to do it.

(This is a later edit: I once thought it was impossible, but now I must try. I will design a game that plays on female hormones as a main means of addiction. Incase there are any girls are out there who thinks I'm shallow, I DO realize that it will take more than a guy with an attractive body to keep a gal playing. Though I'm gonna finish my current demo first.)

The Need to Achieve:
People need to feel like they have achieved something. If you can convince a player, that he or she is good at the game, he or she will continue playing it.
This can be done, (if based on reality,) by making the controls easier than actually doing what the player is doing. No one wants to spend ages of their time trying to land a drop ship, or jumping the correct amount of distance. They want to defeat armies, travel to the center of the earth, and become a millionaire, all before bedtime.
If the game isn't based on reality, like Tetris, or Bust a Move, make it, so that, just a little increase in skill, can cause the players score to double, or triple. If scores reflected skill to scale, the promise of cheap achievement would be gone.

The Need For the 'Rush':
Adrenaline happens, whenever someone is in danger, or close to victory. You can give the player adrenaline, by making it at least seem like they are close to defeat and victory at the same time. Thus, forcing out that energy in the body reserved for such an occasion. Though, if the player meets victory, it's a rush of enjoyment. If the player meets defeat, it's a rush of frustration.
Making a game easy, will ensure, that no one gets frustrated, though, it is difficult to convince the player he or she close to defeat, without actually defeating him or her.
The solution to this, is difficulty setting. Though, clearly state, that the difficulty can be changed part way through the game, because there have been so many times, I've chosen easy, so I don't have to restart the game if I get stuck, and then find that it's too easy.

Curiosity:
This here, is a big one. The whole, What will happen if I pass this level? Make 'em guess. No one puts in 100% to complete a level, when they know what's going to happen if and when they do. I have a great game of sokoban, which I got off the net. It's fun, but they give me access to all the 468 levels. If a level defeats me, I try another one. I rarely play it now.
By adding a variety of things to happen at the end of each level, the player will strive to find out what the next one is. This could be as small as having a different "LEVEL COMPLETE" screen, or as big as a cut scene, the bigger the better.

The Need to Blow Stuff Up:
This one kind of explains its self. Though remember, it's as easy to program a weak weapon than a powerful one, so why not give the player the big stuff. They should be killing mosquitoes with anti aircraft missiles. They should be using tanks to run down trees. They should be able to blow up, whatever the hell they want! Though in most games, this in inappropriate, but where possible, let things be blown up. You'd be surprised how much fun people get from destroying the terrain, such as trees and light posts.

The Need for Something New:
This need comes, more from the designer, than the player. You can't do the same thing over and over, each time expecting quicker reflexes. There needs to always be a new thought process. The player must think, "Will I do this, or that?" If they're put in the same situation over and over, they will know for sure which is the better option.
Variety can be added by changing the level design. Though, if the game design is all, jump large gaps, and shoot bad guys before they shoot you, a new game play all together is needed. (A great example of this is conquers bad fur day. A more realistic transition of game plays includes Grand Theft Auto, Blast Core and Halo. These three seem more realistic, because you have the option to get out and walk at any time.)

Need To Be Wanted:
People need to feel wanted. Most games satisfy that need until the game is conquered. At that point, the player goes out, and buys the sequel. In the same way, if you just finished helping an old lady cross the street, you'd naturally look to see if anyone else needs a hand across.
The best way to do this, is to record an actor (the word 'actor' is no longer gender specific,) and get that actor, to beg the player to help. If getting an actor is too difficult, try digital 3D animation, hand drawn animation or a very detailed text file. Realism is important, as no one tries to impress an icon. (A variety of needs met can be promised in the format of a character begging. They can subtly promise achievement, satisfying curiosity, and the chance of sex.)


It is the total effect of all the above that make a player need a game. Once they need it, it is officially addictive. Now it doesn't matter if you've got the best graphics, music, concept and story line in the world. If the demo ain't addictive, the game wont sell. (Theoretically speaking.)