RPS: As we’ve repeatedly pointed out, while not offering an offline version of SimCity is entirely Maxis’s call, our issue this week has been with their claiming it would be near impossible, rather than their simply believing it undesirable. (Obviously we have enormous issues with any game being crippled by such DRM, too.)
So how simple does Azzer think getting an offline version going might be? “They could make an entire region single player offline with absolute ease. It would be as simple as coding in a switch saying, ‘Is this person playing single player? Take the power values of each city from local memory instead of ask for it from the server instead.’ The only thing missing is saving to local hard drive – but let’s be real, the code for saving your city already exists, I can’t imagine even that would take more than an hour to put into the client (and it probably already exists in the client for development builds), plus a little bit of time for the UI elements for Save/Load.”
“For an offline mode,” he continues, “instead of asking EA servers how much power is available from a fellow city in the region, it will simply have it in memory, as a small handful of values from another city. No live calculations done on them. Just raw values, all the EA servers send anyway. And as you’ll only be playing/simulating one city at a time in offline mode (cities you don’t play are “frozen in time”) – those values of how much spare power, resources, etc. other cities have won’t even need updating, until you change cities.”
But how exactly would that work? If those cities are frozen, resources won’t be renewed, nor depleted? “Let’s say you and I play in a region together,” says Azzer, talking about the regular online game. “You build a town that has lots of power and water (water is a consumable just like coal) and spare fire trucks. I build a big casino city with lots of criminals. You go offline and don’t play for a whole week, but I keep playing for an entire week.” Okay, with you. “During that week, my client will keep telling me stories about fire trucks coming to help me from your city, I’ll keep getting water from you, I’ll keep getting power from you – of a ‘set amount’ dictated by how much you had spare when you last logged off.
This is all processed by my client, not by the server. All the server did was tell me ‘X fire trucks available, Y water available, Z power available, from city with the name ABC,’ as a raw list of values. When you log back on, your water levels will be exactly as they were when you last logged off, because EA’s servers were NOT doing any processing, and my client only affects the city I am simulating.”
Crikey. So an offline version of the game could act in exactly the same way. You could play multiple cities in your private region, each freezing when not played just as the current game operates. “No processing is done on the cities you aren’t currently playing on – they simply freeze in time and provide a fixed set of values of ‘resources’ that the currently played city simulates. The client does all the processing, which is why any city not being played (online or not) has nothing done to it by EA’s servers if the owner of that city is not playing their city at the time.”