4 Powerful Game Development Tools

When making a game, you want to :

  • Work efficiently and quickly
  • Easily organize and keep track of your ideas
  • See your game in action as soon as possible
  • Easily test if the final product matches to your Game Design

In this article, I present 4 powerful game development tools that you can use to achieve the 4 goals stated above.

1)   Game Design document (GDD)

Update 23/03/2013 : some of my ideas here about game design documents may be outdated, check this article for more up-to-date ideas. I keep this here so I can see how my ideas about game design progress as I become more experienced. Enjoy reading !

When a game is born, it comes to the world in the form of a piece of paper or a word document called Game Design Document

A Game Design Document describes EVERY feature of your game in a precise, clear and detailed way.

Every detail should be there, no exception. The more area a GDD covers, the easier it gets to produce the game.

When I started game development a few years ago, I made very incomplete or no GDDs at all. As a consequence, I was never able to finish a single game.

By neglecting to maintain a GDD, I was off-topic most of the time. I would spend weeks trying to implement secondary features. I would focus on implementing something very difficult for me and persist even after spending a lot of time on it without seeing results.

If you are a beginner, doing what you like and going randomly with the flow of your thoughts is great.

However, if you have some experience and want to make a game quickly you have to take the time to write a design document.

The quickest way to develop a game is to imagine it first. Have a clear vision of your game in your mind. I talked about that in a previous article.

A Game Design Document is the outlet of your imagination.

Simply describe your game as good as you can. You can use words, pictures, UML diagrams, anything you want.

However, don’t force yourself to write or draw. Writing/drawing a Game Design Document should be wonderful for you, it should feel  like “leaping into space” :

“Each time I undertake to paint a picture I have a sensation of leaping into space. I never know whether I shall fall on my feet. It is only later that I begin to estimate more exactly the effect of my work.” Pablo Picasso


2)   Dev Journal

A journal is a document where you describe, in an informal way, what you did at a given date and how you felt about it.

Feelings are very important. You are a human being, not a robot.

You may implement a feature in your game and it turns out to be very cool. So you’re excited and you feel good.

You may stumble upon a difficult problem, or you may realize that an important feature in which you spent a lot of time turns out to be boring. So you get angry, sad, or you think about giving up. You don’t feel good.

Writing down your feelings lets you understand and control them.

Like what I said about the Game Design Document, don’t feel obliged to have a journal. It must come to you naturally.

If you do keep a journal, don’t feel obliged to write on it everyday either.

In my dev journal, I try to write everyday what I did that day. When I don’t feel like writing, I draw something or take screenshots of my game.

Sometimes I write only when I implement a new feature, when I get new ideas that I’m excited about, or when something doesn’t work and I don’t know why.

3)   Prototypes

A prototype is usually the first playable version of your game.

Prototypes are meant to be ugly. A game’s fun factor doesn’t depend on the graphics it’s using. Graphics can be enhanced later. They don’t have to be perfect from day one.

Having a prototype is very important. It shows that your Game Design Document is actually capable of producing a real and playable game.

Because prototypes are not the final product, they usually require little resources to be made. According to how your ideas turn out in a prototype, you can decide to cut development costs and move to another game. Or you can recycle, update or change your ideas and make another prototype.

Be bold. Create prototypes. A lot of them. Test your ideas. Learn. Recycle.

4)   Testing Facilities

When I started working on my first game, I thought that in order to test it, I would just play it. So I did.

I spent plenty of time and energy playing until I was completely bored and disgusted. I felt so sick that I couldn’t even look at my game once more, and it lasted for more than a week.

I was oblivious to the fact that I didn’t have fun at all. I was playing from a developer’s perspective.

I didn’t know that I was spoiling all the fun that my game could offer. I was just amazed by playing a descent playable version of it.

No, playing the game a lot is NOT an efficient solution for testing it.

In that case, how can I test my game without playing it ?

After taking a break and playing other games, the idea of cheats started to emerge in my mind.

Cheats let you quickly modify the behavior of your game without wasting time playing it over and over again.

For example, let’s say you want to tweak the “Game Over” screen. If you had to play your way through 5 levels just to do that it would be a huge waste of your time and energy. Having a button “Go to Game Over Screen” for example lets you instantly go to that screen.

I usually need cheats to make me win or lose immediately. I also use them a lot for tweaking screens as I explained in the example above.

Cheats can be implemented as GUI elements (like buttons or drop-down lists) or keystrokes that trigger actions in the game.

Don’t forget to remove all testing facilities like cheats from the released version of your game.


I talked about 4 powerful tools that I use when creating games.

Notice how every single tool serves a purpose, and can let you understand the game from a different perspective.

Having different perspectives of your game enriches your initial Game Design and lets you turn even the most boring experience to an amazingly fun piece of art.

Having many tools in your arsenal is a great way to tackle any obstacle that you encounter in your game dev endeavor.

Mastering every tool you have is also very important. Mastery only comes with time and efforts so don’t wait, go make your awesome game NOW !

Keep in touch !

by Zouhair Serrar