by Marz

Flowcharting my friend is a programmer's BEST FRIEND. If you have ever taken a programming course for C++ or pretty much everything, then my guess is that you know how to do something like a flowchart. Now, over the years of programming I have developed some different methods of flowcharting. Some for more business reasons, others to just remind me of things.

What is it really though? Flowcharting is a graphic and text based summary of what you are going to program and how you are going to piece it together. It typically gets drawn on a piece of printing paper and is usually scratched out and redone 500 times during the development of the game! *lol*. But, no matter what, it can save you loads of time when getting into the real programming comes around.

This my friend.. Is what a typical flowchart might just look like. All right, seeing as how my scanner is being entirely ghetto, I'm going to have to display this through a Flash Drawing:

[ example of a flow chart ]

All right, I know it's very small but at the same time, it conveys what a flowchart might look like and some of the elements found in a flowchart. I know, I know... It doesn't look like a flowchart you might see in a real programmer's hands, but it still shows you what a flowchart is.

Now, a real programmer's flowchart will be a lot more complex. Sometimes it will look something like this:

[ another example of a complex flow chart ]

Now, looks complex doesn't it? Multiply that by about 50 and you'll have yourself a working game flowchart! But no worries...it can be a pain, but like I said it can help out tremendously. Each symbol in a flowchart has its own function and use.

Like, the diamond symbol is used for an if type statement. Basically stating that if, this happens.. Go this way, if it doesn't happen go this way or if this happens go this other way..

On with the flowcharting symbols:

  • Diamond
    Used for if statements. Each message branches off in a different area, each with their own line.

  • Box
    Can be used to describe functions, variables or anything really. The function, variable name is located at the top in the gray area and the information and description about the object is located in that box right below it. Also, if it returns a value (true or false), then separate lines can be drawn off this function as well if it goes well.


  • Parallelogram
    Is used to actually state the function and use it. This is where the action typically happens. For example, throwBaseball() for instance. If that function returns anything, then that is when you start to branch off with different lines.


  • Solid Box
    This is where you put the final layout image, or whenever you print to the screen this is what happens!


  • Lightning Bolts
    Are used for debugging and termination. If you run into this area, your program should quit in an error or terminate without saying. A problem should occur at these areas. This is great for debugging everything.

These are all of the basic symbols, if you have any problems using these or if you need a better description of what to do with these, ask and you shall receive at [email protected]

You can also post into the Game/AI Programming forum also.

Mental Concepts



kirupa.com's fast and reliable hosting provided by Media Temple.