Game Development Geek / Technical

Automating Build and Test Systems

Years ago, I read Automating the Build Process at Gamasutra, which documented an automated build process for the game Creatures 3. The advantages for implementing an automated build process include better reliability, reduced time, and reduced risk.

A few weeks ago, a new article has appeared called
Automated Build and Test Systems for Games, which outlines what Nihilistic Software does when developing their own games. Once again, time savings are emphasized.

In both articles, it seemed that some customization was needed, but you should be able to find a way to automate the process for your own games. One tool I found is BuildBot, which mentions among its users id, which uses it for Return to Castle Wolfenstein: Enemy Territory.

The overall goal is to reduce tree breakage and provide a platform to run tests or code-quality checks that are too annoying or pedantic for any human to waste their time with. Developers get immediate (and potentially public) feedback about their changes, encouraging them to be more careful about testing before checkin.

Any time you can use a computer to automate a repetitive task, you’ll find consistency in quality and speed as well as fewer headaches related to the meta-work of making a game. While I believe that having it automatically build everytime a change is made would be overkill for a one-indie shop, having it delegated to a button-press would definitely help.

2 replies on “Automating Build and Test Systems”

Having worked at a big publisher/developer in QA for many years, I can safely say man-months worth of testing could have been saved if we’d implemented any sort of automatic testing procedures earlier.

Hours spent by human testers loading every car on every track, loading every weapon on every level and firing them all at every enemy type, loading every livery/clothing for each car/avatar etc., etc. can easily be reproduced automatically as long as the dev team include it in their initial toolset and schedule it.

Which they’re finally doing! So no longer will I hear the groans when I tell my team “Right, we’re doing cars plus tracks today.”, because a computer is doing it all for us.
Then again one day computers will be doing all our jobs… 🙂

Comments are closed.