DevDiary: Sid Meier’s Civilization V Mac

written by Russ Looney on October 27, 2010 in Classic Posts and Development Diaries

Sid Meier's Civilization V Mac boxshot

We recently sat down with the development team at Aspyr Media to ask some questions about their experience  working on the newest strategy game for the Mac, Sid Meier’s Civilization V.  In this first installment of a multi-part series, we take a quick look at the differences between Sid Meier’s Civilization IV Mac and Sid Meier’s Civilization V Mac.  We also look into some of the bigger development hurdles the Aspyr team has faced in working on Civilization V for the Mac.

Have some questions of your own for our development team?  Send them our way and we’ll answer them in upcoming DevDiary!  You can leave a comment below, post a message on our Facebook wall, or send your questions via Twitter to @Civ5Mac.

What are the major differences between working on Civ IV and Civ V?

The most notable difference has been incorporating SteamWorks for networking and matchmaking into the game which replaces GameSpy.  SteamWorks offers many features including games saved to the SteamCloud, matchmaking, PC-to-Mac play and multiplayer servers.  Users will need to download the Steam client and create a Steam account; this will allow users game authentication, auto-updating, achievements, potential downloadable content support and more.  As this is our first SteamWorks enabled Mac title this has been a learning experience, but the net result for the end user is a more integrated PC-to-Mac experience.

Civilization V on the PC was a significant rewrite of Civilization IV.  The GameBryo rendering engine and ScaleForm UI engine were replaced with all new Firaxis code, the Python scripting was replaced with Lua, Fork and Granny middleware were integrated, D3D Effects was replaced with a new Firaxis system, etc.  Much of our experience porting Civilization IV Mac has been of little use predicting issues that we will encounter with this port.

Additionally, RapidXML middleware is used for parsing XML assets, replacing the MSXML-based code in Civilization IV Mac.  This has helped in avoiding the significant challenges we encountered simulating MSXML in Civ 4.  Fonts are supported directly in the Firaxis renderer using their own XML-based font format, which again has helped in avoiding the difficulties with font metrics that we encountered with Civ 4.

This has been a completely unique experience from our Civilization IV Mac porting experience with a new set of challenges, but in the end it’s turning out to be a great Mac game which we hope our Mac users will enjoy immensely.

What have been the biggest development hurdles in making this game?

In addition to the fact that working on Civ 5 has been nothing like working on Civ 4?  (Kidding…)  Perhaps the biggest challenge in developing Civilization V Mac is simply the timeline.   We’ve been working very hard to get the game available for holiday so folks can enjoy playing this holiday season.