Maxis has done a big 180 degree turnaround, and has announced it’lll finally be adding the much requested, previously impossible-to-implement offline mode to city builder SimCity. In a new update, lead game engineer Simon Fox has said in a new blog post that implementing offline wasn’t as easy as flipping a switch.
“Lucy Bradshaw once said that offline wouldn’t be possible ‘without a significant amount of engineering work’, and she was right,” said Fox. “By the time we’re finished we will have spent over 6 ½ months working to write and rewrite core parts of the game to get this to work. Even things that seem trivial, like the way that cities are saved and loaded, had to be completely reworked in order to make this feature function correctly.
“I wish it were as simple as flipping a switch and telling the game to communicate with a dummy client rather than our server, but it’s more than that. Entire calculations had to be rewritten in order to make the game function correctly.”
SimCity, he says, was originally written to rely on magical cloud servers to keep the simulation, and that making all of that happen locally requires quite a bit of work.
“This meant rewriting the entire system, which previously existed in Java, and putting it into C++,” he further explained. “We’ve had to knock out the internet pipe stuff. There’s lots of code that hits the servers looking for information. We’ve had to write a lot of code to produce that data locally, specifically for region information.
“Now, all of the regional simulation needs to be done locally. The algorithms governing trading between cities needed to be retuned in order to make the behavior between cities more responsive for this type of play. This in itself required major optimizations in order to run the simulation locally. We have an obligation to make the game fun and functional on all specs of machines. We wouldn’t want someone who was enjoying the Multiplayer game to find the Single Player game crippled due to poor optimization.
“We had to remove parts of the game for it to function properly as well. This means removing lots of code integral to Multiplayer include code and UI supporting Trading, Social Features, Global Market, Leaderboards and Achievements. And, all without crippling the Multiplayer game.”
Maxis has routinely said that EA did not force the online requirement, and that it has nothing to do with DRM – and that may be the case. they clearly had a vision for the game and its scope – even if that vision has really bitten them in the ass. They greatly underestimated how many people like playing games offline, alone, without all that social nonsense that gamers are being force-fed all the time.