|
ABOUT THE AUTHOR
Daniel Punch
M6.Net
The Source of this article:ArticleFactory
Ive always loved video games, ever since I first played them
on a friends computer in the afternoon after elementary school.
Theres something almost magical about the fact that we can
move images around and interact with virtual worlds, a living fantasy
presented for us to interact with however we please. Ive also
always wanted to make games myself but, until recently, didnt
have the technical knowledge to do so. Now, Im a second year
software engineering student, so if I werent able to code
a game without too many dramas thered be something drastically
wrong. But what about the common person: the person for whom 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 game creation process,
and you dont even need to learn real programming
to do so.
So where do games start? With an idea. Games, like all fiction,
require an idea to be successful. Sure, in the same way you can
just sit down and write a story without foresight, you can jump
on in and slap a game together. However, unless you get ridiculously
lucky, the best works are usually the ones that have been well thought
out beforehand.
There are two methods of planning a project. You can start from
a known technological standpoint and build your project on top of
that or you can just go for the design, add as many features and
ideas as you like, and then remove the ones that you cant
use when youve decided on the technology youre going
to implement the game with. In general, the second type is probably
the best one to go with when designing games. When youre first
starting out however, the first option will save you many headaches.
So, for a first game youre going to want a pretty simple
idea. Dont get me wrong, crazy-go-nuts game ideas are fantastic,
and there should be more of them out there, but youre not
going to be able to create a real world simulator with fifty billion
virtual people all interacting real time with your actions having
a butterfly effect on the future of the virtual universe when its
just your first game. Really. Many people try it; none that I know
of have succeeded. Imitation is the best way to start out. Simple
games such as Space Invaders, Tetris, Pacman
or even Pong are great places to start. All are largely
simple to create but have some inherent challenges. Pacman
for example, requires path finding for the ghosts. I recommend that
you start even simpler than that for your very first attempt. Space
Invaders is a nice point to jump in. You can make a simple,
complete game without much effort and its almost infinitely
extensible.
If youre stuck for an idea, pick a genre that you enjoy.
Do you love adventure games such as Monkey Island, Grim
Fandango, Space Quest, Kings Quest
etc.? Design one of those. Are you into fighting games like Street
Fighter, Tekken, Soul Calibur, Mortal
Kombat and so on? Come up with an idea for that. Do you like
first person shooters such as Quake, Half Life
or Doom? I dont recommend it as a first project,
but you can always give it a go. Feel free to be as generic as you
like, this is a learning experience after all.
Now that you have your idea its time to flesh it out. Dont
worry about the technology or the fact that you may not know how
to actually implement a game just yet, just grab yourself some paper
and a pencil and go crazy with ideas. Describe the main characters,
game play, goals, interactions, story, 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 during the coding process
is almost always a bad idea. Once its set, it should remain
set until the tweaking phase (Ill go into this more later)
or youre likely to enter development hell, where
the project goes on and on; more and more work is done with less
and less outcome.
At the end of this period of your game creation, you should have
the following:
-A written outline of the games characters and possibly a
sketch or two (be they space ships, yellow circles, cars or the
prince of the dark kingdom of Falgour, you need to know who or what
the player will be and who they will compete against)
-A written outline of the story (if there is one, this isnt
too vital for Space Invaders or Tetris,
but for Uber Quest: An Adventure of Awesomeness its
a really good idea)
-A description of game play, written or storyboarded. Storyboards
are visual representations of ideas. Draw your characters in actions,
with arrows showing the flow of action and short written descriptions
detailing the events occurring in your image (because some of us
arent fantastic artists and our images can be a little
open to interpretation
)
Now that you have a fleshed out idea, its time to work out
how this will all get put together. If youve gotten to this
point and are worried that youre going to have to spend years
learning complex programming languages in order to implement your
idea, fear not! 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 require you to learn a scripting language
(a simplified programming language made for a specific task) but
in general this isnt too complicated or involved. Ive
compiled a brief list of some of these I have found at the end of
the article. The free ones are listed first, organized by game genre.
Well, that should be enough to get you started in the creation
of your game. The most important thing to remember once youve
gotten this far is that you need to complete your game. Many people
start a project and then lose interest and it fails, or they keep
moving on to 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 wish to change, fix etc. but youll
get a great feeling from knowing that it is, in its way, finished.
From this point, you can start the tweaking phase. Play your game
a few times and ask others to do the same. Take note of what isnt
fun or could be better and change things here. At this stage, it
is more important than ever to keep backups of previous versions
so that if a change doesnt work you can go back and try something
different without losing any of your work. It is at this point that
you can add all new features, improve graphics and sounds, whatever
you please, safe in the knowledge that youre working on a
solid foundation.
When youre happy with your game, why not share it with the
world? There are many cheap or free places out there for you to
host your files on and then you can jump on link lists and forums
and let everyone know about your creation. Well, I hope that this
has been a helpful introduction into the art of creating games.
Its a great deal of fun, and can open whole new avenues of
creative expression for you to explore. Jump in and have fun!
Daniel Punch
M6.Net
http://www.m6.net
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 such as Monkey Island, Kings Quest, Space Quest etc.)
Adventure Game Studio: http://www.bigbluecup.com
AGAST: http://www.allitis.com/agast/
3D Adventure Studio: http://3das.noeska.com/
ADRIFT (for text adventures): http://www.adrift.org.uk/
Role Playing Games (RPGs):
(Games such as Final Fantasy, Breath of Fire, Diablo)
OHRPG: http://www.hamsterrepublic.com/ohrrpgce/
RPG Toolit: http://www.toolkitzone.com/
Fighting Games:
(Games such as Street Fighter, Mortal Kombat, Tekken, Soul Calibur
etc.)
KOF91: http://sourceforge.net/projects/kof91/
MUGEN (unfortunately the site is largely 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 freeware, are the excellent game creation
tools available by Clickteam at: http://www.clickteam.com/English/
Klik and Play and The Games Factory in particular are the programs
to have a look at and download the free demos of.
If you really want to do things right and program the game yourself,
there are some excellent programming resources 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/
ABOUT THE AUTHOR
Daniel Punch
M6.Net
This article published courtesy of: ArticleFactory
|