Patrick Avella dot Com
 
Free Games
• Ball: Buster
• Heroes of Roswell

Community
• Forum

Misc.
• Links

Articles
• Game Making, For Absolute Newbies
• My GED Scores, and What GED Scores Mean

Copyright 2003, 2004, 2005
Patrick Avella
A Guide On How To Make Games... For Absolute Newbies
  Foreward: I originally wrote this article as a way to cut down on "newbie posts" on my favorite game programming message board. While I may not be a "professional" programmer, and do not (currently) hold a job as one, this guide should be enough to point most young people in the right direction. This is the unchanged post in it's entirety, it is in it's second revision, and has helped many, many people figure out what the hell to do with themselves.
The Date of this writing is 01-24-04


Good morning newcomer, and welcome to the Game Design and Programming Board. In this post I will outline for you the process of making games, what you yourself must do to make games, along with skimming over some guidelines about what to post (or not post) on the message board.

First and foremost, you have many many options open to you. There is no one single way of making games.

Case 1: I want to make games professionally for a career
   Make a backup plan :) This is a lot like saying you want to be a rocket scientist. It *is* possible, but will take more than just schooling to get you there. Take all the computer courses you can muster throughout school, and make learning C++ your new favorite hobby. You must dedicate your life to C and C++. Buy a book to help you learn. It is very important that you eventually go to college for a 4 year degree in Computer Science, and possibley Software Engineering. Now what next after 3-4 years of college? Well, I hope you took me seriously about that c++ thing being your hobby. Before you can get a job game programming, you need to already have made games!!! One way to make games with c is with libsdl.org but i warn you now... You must have first learned and understand very well C++!!!!!!!! You must start out small... like a guess the number game. Then move onto something like a non graphical poker... then once you have some c++ under your belt, learn sdl, directX, opengl, or similar. At this point in you life learning a new library won't be a big deal, because you are a programmer, and that's what programmers do! It takes a long time for even a diligent person to learn to properly program! Do not expect overnight results, and expect to add programming as one of your favorite, most frequented hobbies.

   Recently Java is getting big on the market, so it's feasable that in the future C may or may not be interchangable with Java in the above paragraph. Here's some very primitive (free) links to get you started:

http://www.bloodshed.net - go here and download "Dev-c++ 5", make sure you get the LARGER download. This is what's called an IDE/Compiler package. This is what you will type c++ into in order to make programs.
http://www.cplusplus.com - This is one of the MANY websites on the internet where you can find tutorials on using C++. While some of the methodology the tutorials on this site us is outdated, they still work, and will still teach you to use C++. Have patience when learning. If you'd like, use google to find more tutorials.
Google and ask.com - These will be your new best friends. Before asking for help on this message board, you should first search for your question on both of these search engines. 9 out 10 times your answer will be within the first page of results.

Case 2: I just want to make games for fun, i'm not serious about all that crap you mentioned above. *maybe* i'd like to sell them too
   Here is where all of your options come into play. If you're not serious about the programming aspect, you can use a game making program. They come in a variety of qualities from low like game maker (Found at download.com) to 3dgamestudio.com which is an awesome 3d game engine that comes with everything you need. Some game makers cost money but some of them are well worth it. Especially since you can sell the games you make (If you can convince people to buy them of course). Using a game maker is a good idea for a non programmer, and allows you to focus on your creativity (And artwork!!).

   The other option for hobbyist game programming is still job related, as you are building a 'general programming' portfoloio. Don't ask me how good or not good that is, being that I don't have a job as a programmer :) Basically, just a pick a language, and learn it :) Games can be written in almost any programming language, from Basic, to Perl, to even javascript.

   There is also the option of flashMX or directorMX, both will allow you to make games that can be distributed/sold or put on a webpage ala shockwave.com however these programs are slightly more advanced then game makers, cost money, and will require you to learn something called "action script" or "Lingo".


I hope you've found this passage to be an all encompassing answer to all of your newbie questions. Everyone is new at one point, and my goal here was to not only steer you in the right direction, but to cut down on all of the "how do I make games?!?" posts as well. You are not alone in being a newbie, you share your dream of game designing and developing with many thousands of newbies. Only as a fair warning, game making is not for everyone. It is a very (intellectually) labor intensive process, that takes years to fully understand. There is no such thing as an "Easy" game to make. All games take hard work and dedication... and if they don't, they suck.

Please make a note of the following:

It is damn near impossible to make an MMORPG on your own, especially if you're a beginner. I suggest FORGETTING YOU EVER HAD THE IDEA

RPGs are of the hardest genre of video game to make. Do not take one on as your first project, under the hood, RPG games are very very complicated, and require a wealth of artwork and resources.

RTS is another incredibley difficult genre of video game to produce.

Games like Space Invaders and Tetris make good games for your "first graphical game". Not only will it teach you the basics, but will give you some experience so you may more properly gauge what goes into a larger project.

Stories do not equal games (story!=game). In the bluntest of terms, nobody cares. No one wants to make a game of your story, and that includes both the people on this board, and the people at Nintendo and Square. Write it down, tuck it away, bring it back out when you know how to make games.

When you're ready to move onto graphics in c++, cone3d.gamedev.net has some great tutorials under "gfx with sdl". They are very outdated, but will teach you the basics.

No one here will make your game for you.

No one here will do your homework for you, we will help, but please show that you've already put some of your own effort into solving the problem.

You can learn a lot by reading through other people's posts on this board.

In the next post, I will include a list of useful links around the internet for you to use.

If you have a question, post it, and one of us will be glad to help you, provided that you've followed the guidelines set out above.

*note: if you need help on this website, you can visit me on the PatrickAvella.com forums, located in the sidebar to your left

Free Shipping
The best way to learn programming is from a book!