Release checklist

From Bitfighter
  1. Make sure all code is checked in to HG
    • Disable any experimental features in development
  2. Update checkIfThisIsAnUpdate() in main.cpp and add any update tasks
  3. Update joystick definition file from
  4. Make sure dedicated server compiles
  5. Update version.h:
    • Change ZAP_GAME_RELEASE to new version
    • Change BUILD_VERSION to (current commit number + 1) (found by running 'hg summary')
    • If new client-server is incompatible with the old, update CS_PROTOCOL_VERSION
    • If new client-master is incompatible with the old, update MASTER_PROTOCOL_VERSION
    • Important: Make sure version.h parsing works in CMake. It will output to the console when it is run.
  6. Re-checkin to HG, so version numbers are correct, and everything aligns correctly NOTE THAT THE TAG WILL COUNT AS A VERSION!
  7. Tag the release in HG. Use format "bitfighter-019d"
  8. Build for Windows (32-bit is NSI, 64-bit is MSI):
    • Compile the game as a Release version
    • Compile 'bfup'
    • Build notifier; use script in notifier/pyinstaller/
    • Build package using the PACKAGE target in Visual Studio
    • Test the installers
    • Don't forget portable build!
  9. Build for OSX (ppc, i386, x86_64)
    • Each architecture is a different DMG
    • Test DMGs
  10. Build for Linux
  11. Update Desura page
  12. Upload all builds to
    • Test downloads
  13. Put copy of source tarball at static URL to help maintainers:
  14. Rebuild any servers that need rebuilding
  15. Update master.ini:
    • [host] section:
      • Update latest_released_client_build_version
      • Update latest_released_cs_protocol (if needed)
    • [motd_clients] section:
      • Add a new line for a message for a particular release (like if a bad client was released)
  16. Update auto-update file (/var/www/html/files/getDownloadUrl.php) on master server
    • Sign the Mac files with our private key for the Sparkle updates
    • Update versions/dates in the php file (add sparkle signatures)
  17. Update bitfighter website
    • Add new release to all releases page
    • Update download page to show new release
    • Add story to main page on website announcing new release
    • Update luadoc/doxygen
  18. Post announcement in forums
  19. Announce new version via email
  20. Post the update to gaming web sites
  21. Update /topic on #bitfighter IRC channel
  22. Update the Building Bitfighter page

Update screenshots here: Desura GameJolt