Thursday, September 13, 2007

Making Games On A Budget - Part 2

This is the second part of an article I wrote for PC Powerplay, an Australian gaming magazine. More to come in the next few days. Enjoy!

How To Find Time
Before I start talking about the development environment and tools, there’s another really important aspect of game development to think about. This is finding time to actually make a game.

Chances are indie development is not your full time job, so the key here is to find small slices of time and use that time well. It might mean giving up an hour of TV a night or spending less time in World of Warcraft. Now an hour a day may not seem like a lot of time, but over a week it almost adds up to a full working day. Use the time wisely. Resist the urge to surf the web and get stuck into work as soon as you sit at your PC. If you’ve kept your game small enough you’ll be surprised at how quickly it will start to come together. For a cool tip on how to be more productive check out this article from Life Hacker about Jerry Seinfelds' productivity secret.

Now that you’ve got an idea for your game it’s time to start making it. I love puzzle games and brainteasers, so as a follow up to Word Shake I decided to do a brain training style of game with 16 unique mini-games. Because this was my second game I felt okay with the increased game scope - I already had an existing game engine and was comfortable with my tools and programming environment. Again, I want to re-iterate that for your first game, start small.

There are so many game-programming options available that I only have the space to talk about a few of my favorites. I recommend trawling through the Indie Gamer Forums to find out more. This is a great place to find programmers, musicians and artists who want to make indie games as well as catch up on the latest news.

For Brainiversity I used Visual C++ 2005 Express Edition as my development environment. It’s available from Microsoft and is 100% free.

If you don’t want to learn C you could try BlitzBasic, BlitzMax or DarkBASIC. They’re not free, but are reasonably priced and offer enough power to get you building a game fast. They also come with lots of example game source code to get you started. If you use Blitz Basic then I recommend downloading the Protean IDE. It gives you a cleaner interface to the fairly basic Blitz environment. Be warned that Protean is now a discontinued product, but is free. If you want to focus on 2D games then BlitzMax might be right for you – it has the ability to create Linux, Windows and Mac OS X executables. Blitz3D costs USD $100, BlitzMax costs USD $80 and DarkBASIC is USD $39.99.

If you decide to use Visual C++ 2005 you’ll need a game engine to get started. The good news is that there are a lot of excellent free engines to use. Each of these frameworks gives you an easy way to load and render your graphics, handle sound and a whole lot of other stuff – letting you focus on making gameplay.

I chose the PopCap Framework for Brainiversity. It’s free and has been used in many games like Bejeweled and Bookworm that have been downloaded a lot (over 200,000,000 times according to the PopCap website!) so it’s pretty robust.

Other free game engines include the Play Ground SDK from Play First, the Irrlicht engine and Ogre3D.

Garage Games has their Torque Engine but it costs USD $150. Garage Games also has a suite of other inexpensive game development products and is worth considering if you want to transition to Xbox360 development.

Next... Graphics and Sound

No comments: