Each time you make a game, no matter how good, there's probably someone who can find something in the game that completely turns them off of it. It might be personal preference, glitches, or lack of features, but whatever it is can generally be fixed or altered. Here is a list of things to keep in mind when making a game:

RANDOMIZING:
It is quite common for people to complain about the lastability of your game. It might be 'the same thing over and over again', or just might not be big enough. If you make certain things in your game random, it's a different experience each time. I'm not talking about the amount of lives you start with, because that should always be the same. I'm talking about level layout, enemy AI, that sort of thing. If you make your levels randomly generated (this can be tricky depending on how your game works. Not everything can incorporate this) then they will be replayable over and over again. An example of a random formula, on a playfield with a 640x480 size, would be:

Condition:
Start Of Level
Event:
Set Y position of Wall to random(640)
+ Set X position of Wall to random(480)

Condition:
Wall is overlapping wall
Event:
Set Y position of Wall to random(640)
+ Set X position of Wall to random(480)

This would make the 'walls' in your level appear in different spots each time. It also stops the walls from overlapping each other. You could just as easily substitute the 'Wall' in this formula for an enemy, trap, or a powerup. Now, this may not be applicable to your game for several reasons; for example, your game is room-based and needs more structure than randomly placed walls. When this is the case, consider random enemy placement, or random powerup placement (a combination of both is good, too).

GRAPHICS AND EASTER EGGS:
There are probably thousands of articles written here that define how you can increase the quality of your graphics. I'm not going to go into that at the moment, but take a look at them, because they all have something to offer. To make your game look completely professional, you'd probably want to use the well-talked-about shading and lighting techniques (look up an article, they aren't hard to find. Fishhead's are good). Another thing that can make your game more presentable, fun and intriguing would be to include easter eggs. For those unfamiliar with the term, an easter egg is an aspect of the game that is included completely for fun or to enhance the atmosphere. The game could run quite well without the easter egg, but they're included anyway because they can enhance the player's experience. If you're making a game about big, lumbering giants, make them leave footprints. Make them permanent if you wish (set the 'Remember backdrop' option to off and destroy the object as soon as it's spawned, the image will remain as a part of the backdrop). If you're making a game about vehicles in the snow, make them leave tracks! Make frantic drivers escape exploding vehicles, leaves fall from trees... use your imagination! Draw 'boredom' animations for characters, make them humourous, frightening, whatever suits your game's atmosphere the most. Make fire send out smoke, make people blink and certain surfaces shine. If you're making a role playing game and on the map screen you have a port town, animate the town and draw tiny people going about their business and throwing fish into a net or boats leaving the harbour. Anything that gives life to your game makes it more absorbing, and more fun to play.

THE PLOT:
While many will argue, the plot is an essential ingredient to nearly any game. Really think about it... how can you integrate the story into your game, and visa versa? Obviously, puzzle games or card games don't need a story, but if you think that it could really havea compelling storyline, by all means USE IT! A storyline is something for the player to follow as they go, something that lets the player know what the hell they're destroying the aliens for, or why the bright green dots need to be collected. Use your imagination, and try to keep it interesting. Spend time on it.

INTERACTIVITY:
A high level of interaction is a GOOD level of interaction. Depending on the game, of course... it might not be a good idea to make the world completely interactive if it detracts from the task you're supposed to be doing. If you're making an action game, make it so that crates can be destroyed or moved, objects like rocks can be picked up and thrown, and so on. The more interactive your game is, the more lifelike it will be. Think about it, what object CAN'T you interact with in some way in real life? Some games, like card games for example, probably don't need to dwell on this point... being able to manipulate backdrop objects in a card game will probably only lead to confusion.

DIFFICULTY:
People often complain about the level of difficulty in a game. You might like that difficulty, but for reply value, why not add the ability to choose how hard the game is? The standard Easy, Medium, Hard is more than enough to tend to a gamer's needs, whether they want a challenge or just a gaming experience. With difficulty, think enemy hit points, enemy attack speed or firing rate, time, etc. Easy should be easy, and Hard should be hard. Don't make them all just varying degrees of too-damn-hard. Also, why not make multiple endings depending on the difficulty level? If you do so, make sure you tell people that there is a different ending for each difficulty level, or they'll probably just play the same one over and over again. If they're like me, they'll pass the game on easy and consider it game over. If your game is hard, give the poor player the ability to resume his progress via an ini, array, or password system.

MULTIPLAYER:
If your game would be able to incorporate two players doing the same thing (impossible for games like certain puzzle games, single-player focused journeys, etc.), then why not have the option? It is a well known fact that quite a lot of people prefer playing games with others than by themself. If your game has a two player mode, even if you have to modify the one player mode to make it possible, it can be more replayable and also accommodates everyone's needs.

INNOVATION:
Make sure that your game contains as many original ideas and concepts as possible. Nobody will absolutely love a game if it's just a rip off of another one, especially if it doesn't have more features. Nearly everyone's tried to clone something before, including me, so why not have a bash at doing your own thing? Inventing a completely fresh, new concept is something you can be truly proud of. A new idea is an attractive part of any game, and I for one would download any game that hasn't been seen before in some way or another. If your game is using an existing genre, think about how you can make your game different to those in the same genre. Consider the concept of a 'Point Of Difference', the thing(s) in your game that set it apart from all of the others. That's what you want it to have.

PLAY TESTING:
Don't just test it yourself. Send the game to at least another three or four people and test it to DEATH. Even if you get sick of the game, players of the game will be more than thankful to see minimal bugs in your game. Get people to tell you when something wierd has happened in a game, then think about how the hell you can fix it. Think about possible causes, possible solutions, any conflicts with other parts of your game that could result from the solution, and fix it to the best of your ability. Nobody likes a buggy game.

OPTIONS:
Consider a few unique options for your game that could add to the replay value or help the user customize it how they want. Let them choose between 3, 4 or 5 lives. Let them choose Trippy Mushrooms Mode that makes everything a wierd colour, or Monkey Mode that makes all enemies emit monkey sounds when hit. Little things like that (which can also be classed as easter eggs) can help make your game different from the rest.

UNLOCKABLES:
Make your player want to play for something! They'll keep coming back and playing if every time they reach a certain goal, something is unlocked. I'm not talking a locked door or anything, I mean bonus minigames, maybe a bonus level or 'extras' like in The Line. If the player can unlock things by playing, they'll want to play it again and again to get more from your product.

That about wraps it up. Consider the points above and how you can incorporate them into your game. Think about what you can do to best utilize this advise, to make your game thoroughly enjoyable. And finally, have some fun while doing it! It helps with the motivational aspects of making a game.

- Rick