I’ve always loved video games, ever since I first played them on your friend in the afternoon after elementary school. There is something almost magical about the fact that we can move images around and interact with virtual worlds, living fantasy presented for us to interact with however we please. I’ve also always wanted to make games myself but, until recently, did not have the technical expertise to do so. Now, I’m a second year software engineering student, so if I were not able to code a game without too many dramas there was something significantly wrong. But what about the common person: the person that the term ‘memory leak’ conjures up images of their grandfather, ‘pipeline’ is where the water flows, and ‘blitting’ is unheard of? Well, everyone can get in on the creation of a process and you need not even learn ‘real’ programming to do so.
So where do games start? With the idea. games, like all fiction, require an idea to be successful. Yes, the same way you can just sit down and write a story without foresight, you can jump in and slap a game together. However, unless you get ridiculously lucky, the best works usually the ones that have been well thought out in advance.
There are two methods organizing tasks. You can start from a known technological standpoint and build your project on top of that or you can just go in the design, add as many features and ideas that you want, and then remove the ones that you can not use when you have decided the technology you are going to implement the game with. In general, the second type is probably best to go with when designing games. When you’re first starting out, however, the first option will save you many headaches.
So, for the first game you’re going to want a pretty simple idea. Do not get me wrong, crazy-go-nuts ideas games are great, and it should be more of them out there, but you’re not going to be able to create a real world simulator with fifty billion virtual people all communicating real time with your actions have a butterfly effect on the future of the virtual universe when it’s just the first game. Really. Many people try it; no one that I know of have succeeded. Imitation is the best way to start out. Simple games like “Space Invaders”, “Tetris,” “Pacman” or even “Pong” is a great place to start. All are largely simple to create but have some inherent challenges. ‘Pacman’ for example, requires the way to feel the ghosts. I recommend that you start even simpler than that for your first attempt. “Space Invaders” is a nice point to jump in. You can make a simple, complete game without much effort and it’s almost infinitely extensible.
If you’re stuck for an idea, pick a genre that you enjoy. love adventure games like “Monkey Island,” “Grim Fandango ‘,’ Space Quest ‘,’ king of search ‘, etc.? Hanna one of them. Are you a fighting game like “Street Fighter”, “Tekken ‘,’ Soul Calibur ‘,’ Mortal Kombat” and so on? Come up with an idea for it. Do you like first-person shooters like “Quake”, “Half Life” or “Doom”? I do not recommend it as a first task, but you can always give it a go. Feel free to be as general as you want, this is the program after all.
Now that you have an idea it’s time to flesh it out. Do not worry about the technology or the fact that you may not know how to actually perform the play immediately, just grab yourself some paper and a pencil and go crazy with ideas. Describe the main characters, game play, goals, interactions, history and key mappings, anything you can think of. Make sure you have enough detail so that someone can read through the notes and play through the game in their head with relative accuracy. Changing game design coding process is almost always a bad idea. Once it is installed, it should remain set until the tweaking phase (I’ll go into this more later) or you’re likely to enter ‘development hell’, as the project goes on and on, more and more work is done with less and less outcome
At the end of this period, game creation, you should have the following :.
– A written outline of the game’s characters and possibly a sketch or two (if they are a spaceship, yellow circles, cars or the prince of the dark kingdom Falgos, you need to know who or what he will be and who they will compete against )
– A written outline of the story (if there is one, this is not too vital for ‘Space Invaders’ or’ Tetris’, but for ‘Uber Quest: An Adventure of awesomeness “it is a very good idea)
– Description of the game play, written or storyboarded. Storyboards visual representations of ideas. Drag characters in action, with arrows showing the flow of action and short written descriptions of events in pictures (because some of us are not fantastic artists and our images can be a little … open to interpretation …)
Now once you’ve fleshed out idea, it’s time to work out how this will all get put together. If you have got to this point and are worried that you are going to have to spend years learning complex programming languages to implement the idea, do not fear! Others have already done the hard yards for you. There are many RAD (Rapid Application Development) Tools available for game creation, a number of which are available for free online. Some of them still need to learn a ‘scripting language’ (a simplified programming language made for specific projects), but in general this is not too complicated or involved. I’ve compiled a short list of some of these I have found at the end of the article. Free ones are listed first, organized by game type.
Well, that should be enough to get you started in the creation of your game. The important thing to remember when you’ve got so far is that you need to finish the game. Many people start a project and then lose interest and it fails, or they continue on one new project after another without finishing anything. Start small, build a working (if simple) game that is, above all else, complete . When you get to this stage you will always have a huge number of things that you want to change, fix etc. but you’ll get a great feeling to know that it is in the way, finished.
From this point, you can start the tweaking phase. Play the game several times and ask others to do the same. Take note of what is not fun or could be better and change things here. At this stage, it is more important than ever to keep copies of previous versions, if the change does not work you can go back and try something different without losing any of your work. It is at this point you can add any new features, improved graphics and sounds, whatever you please, safe in the knowledge that you are working on a solid foundation.
When you are happy with your game, why not share it with the world? There are many cheap or free places out there for you to host files and then you can jump on link lists and forums and let everyone know about your creation. Well, I hope this has been helpful introduction into the art of creating games. There is a lot of fun, and can open entirely new ways of creative expression for you to explore. Jump in and have fun
Links:
General Game Creation:
(Tools that allow easy creation of many different game types)
Game Maker http://www.gamemaker.nl
MegaZeux http://megazeux.sourceforge.net/
Adventure Games:
(Games like Monkey Island, King Quest, Space Quest, etc.)
Adventure Game Studio [http://www.bigbluecup.com]
Agas http://www.allitis.com/agast/
3D Adventure Studio: http://3das.noeska.com/
ran (for text adventures) http://www.adrift.org.uk/
Role Playing Games (RPGs)
(Games like Final Fantasy, Breath of Fire, Diablo)
OHRPG http://www.hamsterrepublic.com/ohrrpgce/
RPG Toolit http://www.toolkitzone.com/~~number=plural
Fighting Games:
(Games such as Street Fighter, Mortal Kombat, Tekken, Soul Calibur, etc.)
KOF91 http://sourceforge.net/projects/kof91/
Mugen (unfortunately this site is mostly in French): http://www.streetmugen.com/mugen-us.html
side-scrolling Games:
(Games such as the 2D Mario games, Sonic the Hedgehog, Double Dragon etc.)
The scrolling Game Development Kit http://gamedev.sourceforge.net/
There are many others available as well. One particularly useful site for finding game creation tools is: http://www.ambrosine.com/resource.html
Also of note, although not free, are good tools game creation free of Team Click on [http://www.clickteam.com/English/]
Klik and Play and Games Factory particular program to have a look at and download a free demo of.
If you really want to make things right and program the game yourself, there are some excellent resources programming available at the following locations:
Java Game Programming:
http://fivedots.coe.psu.ac.th/~ad/jg/
http://www.gamedev.net/reference/articles/article1262.asp
http://javaboutique.internet.com/tutorials/Java_Game_Programming/
Visual Basic Game Programming:
[http://markbutler.8m.com/vb-tutorial.htm]
C ++ Game Programming:
http://www3.telus.net/alexander_russell/course_dx/introduction_dx.htm
http://www.rit.edu/~jpw9607/tutorial.htm
General information:
http://www.gamedev.net/
http://www.gamasutra.com/