Once you've got a game in development, it becomes important to streamline your build process, so you can quickly create a build without a lot of manual work. (I explain what a build process is at the bottom.)
This is a list of products I've found which aim to speed up and automate the compilation and build process.
- Automated Build Studio
- Electric Cloud
- MSBuild (part of Visual Studio)
- Visual Build
What do you use?
What's a build process?
A typical build process might look like this:
- Fetch the latest code and data from source control.
- Run a perl script which updates a version number in a header file.
- Compile the game, and the editor.
- Run the editor in command line mode, telling it to 'pack' all the game data for the various levels of the game.
- Run a script which packages the compiled game and game data into a windows installer 'MSI' file.
- Copy the MSI to the network for consumption by the team.
- Send an email to the team, saying that the new build is available.
The reality is that they get a lot more complicated than this, as some steps may fail, you might be building for multiple consoles, you might be building from multiple code branches, you might have to build for multiple languages, etc...