This article is for Game developers who are finding it difficult to finish there game projects, And tries to point out some of the reasons why these projects fail.
Lack of tool support
It has been my experience that when it comes to creating a game the biggest difficulty in doing so is the lack of tool support. For example, I am currently attempting to create a two dimensional game engine. But before I can create this engine I must first create the necessary utilities for creating the game's content such as characters and maps.
Even during the development of the character editor, I had to take the time to create my own custom controls. In particular a timeline control similar to that of the Macromedia flash timeline that you use to create flash animations.
The character editor alone took up a significant amount of development time. The level editor although necessary for creating the maps for the game Also had its challenges.
These are the things you must think about even before you think about creating the game you want. I would suggest extensively searching the internet for the tools you will need to create your game and only create these tools if you cannot find adequate tools on the web. It is far easier to create a file conversion utility than it is to create a whole new level editor from scratch.
I would also suggest that instead of creating your own game engine that you seek out existing engines over the internet. In the long run this may save you a hell of a headache.
If and when you decide to create your own custom tools be aware that there are also many other programmers that we're creating the same type of tools. I often try to create a tool that will output generic data. For example if you are creating a two dimensional level editor, try to provide a feature for saving the data out to a file, that can be easily read and understood by other programmers. XML for example is a great format that is commonly used and it's human readable. By doing this simple thing you can not only help attract users to use your program but also empower them with there own projects.
Quite often a game programmer will give up simply because they find themselves spending too much time creating the tools necessary to create the game.
One other thing of note, if you do seek out existing game engines over the internet, keep in mind that the artwork that you see in screen shots from other games based on that engine may not be representative of the full feature list that the engine provides. Basically what I am saying is do not judge the engine simply by what others have made. Read the documentation for the engine. Have a look through the engines API, and see if it is easy to use and meets the requirements of the game that you wish to create.
Game Content
The next most important thing you need to think about is the game content itself. This is the artwork, sounds and music you will need to create your game. Now this may seem trivial. But without this content you will not be able to test/create levels or characters for your game.
Hard work is in the details. You may want to create a game , but have you thought about all of the items and environments in your game? What type of characters will be in the game and what will they look like? Have you sketched out what each of these things will look like and sound like? Often times a game developer will want to create a specific genre of game but they do not take the time to think about these things.
Also note, that there are many places on the internet that provide game specific artwork, sounds and music. if you are having difficulty creating character artwork for example, try scouting the internet for ideas, or free artwork that you can download and use in your game.
The Engine
After you have nearly completed the tools you will need to create your game content, and after you have created sufficient artwork, sounds and music for the game. You can now focus squarely on the game engine itself.
The development of the engine should be far easier now that you have the tools and game content for the engine to use.
You may have heard this before, but I will reiterate it once more. Keep it very simple at first. Takeout every excess feature and tweak, that you're planning on putting into the game engine. Do not allow your imagination to run wild and cause you to envision something that is far in excess of what you originally conceived. Remember you can always add these features at a later time.
Remember you're number one concern at this point is creating a working engine. After you create a working engine everything including your enthusiasm has nowhere to go but up.
If you can make it to this point, you are very likely to see your game come to fruition.
Game Ideas
The following is a list of my likes and dislikes that I have compiled over the past few months, as it regards to game play and a game's fun factor.
Dislikes
- Do not like dying!
- Multiple weapons, multiple items and multiple settings. IE: Too confusing!
- Leader / Henchmen structure <-- Like beating a dead horse
- weapon reloading <-- Cirtian games take way too long to reload a weapon
Likes
- Simple colors as apposed to highly detailed and complex scenes. Legend of Zelda A link to the Past for the SNES is a example of using simple colors
- hand to hand combat with or without hand weapons <-- your still a badass even if you are not carring any weapons
- A narrator narrating the story as it progresses <-- can be used to help the player figure out what they need to do
- Puzzles that flow well with the story line (Legacy of Kain Soul Reaver "Cathedral")
- No load times <-- no one like to wait
- Easy to grasp story line <-- Don't throw down a complex time travaling paradox that will confuse the player
- Storylines completely based on the evil side and or from the evils perspective
- Many different forms of transportation trains, planes, automobiles, snowboards , bicycles, etc. <-- gta games are awsome :)
- The ability to pull weapons off of the walls and use them. Or the ability to pickup items from the environment and use them as weapons
Misc Ideas
- Character can become who ever gets assassinated or destroyed <-- body swapping
- Character has ability to adapt. For example in hand to hand combat, if an opponent uses a spin kick, eventually players character can learn to do it also.
- Other players can join into and leave a single player game at any time.
- The game demo should be a prelude to the actual game and not just be the first couple of levels etc. This prevent the player having to play the first couple of levels over again.
- If second household has no copy, try to set up the game so that it works like the Gameboy Advance, and only one person needs the game to play.
- Energy weapons use the same energy modules as the lights in the environment. The player can take an energy modules from lights witch are refueled through circuits and the walls. A unified replacable power system that is interchangeable with any other device that uses that system.
Licensing Ideas
- Unlimited copies or installs per household.
- For commercial licensing, license should allow for say 10 installs per 1000 square feet of floor space.
- Purchase always includes two licenses or install disks. Buy one get one free.
- Free LAN party distribution but requires non-owners to uninstall before leaving the premises.
- Game should ship with all or partial source code and utilities etc, bound by its own licenses.
- The actual game engine is free but the game content is not. So you are not really selling a game you are selling a content pack.