One week in

It’s been a very technical week for me, since MMORPG Tycoon 2 was greenlit!

Apologies for the lack of images in this post;  I actually haven’t done anything that’s affected how the game looks!

Here’s a rundown of what I’ve been up to in the last seven days:

  • Worked around a bug which caused a really interesting crash during game startup on 32-bit Windows builds.  (I guess these probably would have affected 32-bit Linux builds, but I fixed this crash before implementing a 32-bit Linux build;  it was all a subtle issue triggered by the 80-bit internal floating point registers in the x86 chip architecture)
  • Did all the paperwork to get the game onto Steam (which involved talking to accountants and bankers), and started reading documentation.
  • Figured out how to configure Steam’s distribution network, and upgraded the game’s build server to build all five builds of the game, and upload them all to Steam.  (I have now logged 21 minutes of play time in MMORPG Tycoon 2, on my personal Steam account).  I finished this process at about 3am this morning.  Wrangling those “Steam_Runtime” Linux builds can be surprisingly tricky, if you haven’t done it before!
  • Integrated high-end audio library FMOD Studio into the game;  finally, a proper sound library!  It’s kind of neat, hearing proper positional audio in one of my own games.
  • Speaking of which, I set up the VectorStorm library to be able to disable linking against Box2D and SDL_mixer, so those libraries no longer need to be distributed with games that don’t use them.  FMOD is replacing SDL_mixer for MMORPG Tycoon 2, and I’ve never actually used VectorStorm’s built-in Box2D integrations;  I made them immediately after Thunderstorm, thinking that they’d be useful for future games, but then never used them for anything;  might as well stop shipping Box2D with stuff that doesn’t use it, right?  Additionally, I’ve started to add support for games to provide their own “systems” which get handled like the built-in internal ones.  That functionality is currently in the engine’s system_configuration branch, but will be merged back into master sometime soon.
  • Also, I’ve been talking with Peter Wayne, who did the fantastic soundtrack for the game’s trailer, and he’s agreed to continue doing sound work on the game itself, and with Jessica Sage, who several years ago designed the look and feel of the game’s current UI, and she has agreed to help improve it some more.  I’m excited!

And finally, I’ve closed the game’s “Milestone 11” Trello board.  “Milestone 11” was just getting the game through Greenlight, and that’s now done!  Onwards to Milestone 12, in which I get back to implementing game features!  (Confession:  I’m actually about halfway done with the planned Milestone 12 stuff already;  I sort of worked ahead while the Greenlight campaign was in progress.  Planned stuff for Milestone 12 includes autosaves, revisions to terrain editing, subscriber petitions, a new interface for placing monster zones, more customisable building layouts, and heaps and heaps of bug fixes!)