Linked by Thom Holwerda on Mon 11th Mar 2013 14:46 UTC
Games "To see anyone defending EA and Maxis for the state of SimCity, even were it in perfect working order on launch, depresses me to my core. This self-flagellation-as-skincare notion, where gamers loudly and proudly defend the destruction of their own rights as consumers, is an Orwellian perversity. That it might be considered in any way controversial to call them out on their crap, to point out that no, always-on DRM is not an advantage to anyone, is bewildering. It's a sign of just how far the gaming world has fallen into the rabbit hole of the publisher's burrowing." As usual, RPS hits the nail on the head so hard it shoots through the board.
Thread beginning with comment 555191
To read all comments associated with this story, please click here.
Technical Stuff!
by Brendan on Tue 12th Mar 2013 06:48 UTC
Brendan
Member since:
2005-11-16

Hi,

Imagine you're writing a multi-player online game. You're going to get "shared state" (this can't be avoided). The end result is that a lot of things that effect the shared state (things like AI, weather, etc) are going to be done at the server. The client is just there for user input and output.

Now imagine that you want to add a single-player capability to the multi-player online game. Do you:

a) duplicate all of the game's logic in the client (creating a lot more work and bloat)

b) give the end user a copy of the server, where "single-player" means running a local server (increasing work and documentation/support/updates and code portability hassles)

c) make "single-player mode" re-use the existing servers

In my opinion, the first option is a mistake. The second option is the best option for small games developers (where the cost of running their own servers is costly). The third option makes the most sense for someone like EA, even if you don't take into account any of the DRM/piracy issues at all.

- Brendan

Reply Score: 2

RE: Technical Stuff!
by WereCatf on Tue 12th Mar 2013 07:20 in reply to "Technical Stuff!"
WereCatf Member since:
2006-02-15

a) duplicate all of the game's logic in the client (creating a lot more work and bloat)


If we're talking about SimCity, well, the game actually does continue to run fine even if you disconnect the Internet, ie. all the game logic needed for single-player is already there. It's the social stuff and what effect other players' cities in the same region have on your city that are done server-side -- ie. stuff that you wouldn't need for single-player anyways.

Reply Parent Score: 4

RE: Technical Stuff!
by static666 on Tue 12th Mar 2013 09:42 in reply to "Technical Stuff!"
static666 Member since:
2006-06-09

Imagine you're writing a multi-player online game. You're going to get "shared state" (this can't be avoided). The end result is that a lot of things that effect the shared state (things like AI, weather, etc) are going to be done at the server. The client is just there for user input and output.

Really can't think of that much "shared state" in a city-building simulation game that would require centralized processing and justify always-online requirement. This is no MMORPG with tons of actors, buffs/debuffs/area effects, 3D terrain, complex boss encounters; nor it is a competitive online game where server-side processing is required to prevent cheating.

a) duplicate all of the game's logic in the client (creating a lot more work and bloat)
b) give the end user a copy of the server, where "single-player" means running a local server (increasing work and documentation/support/updates and code portability hassles)
c) make "single-player mode" re-use the existing servers

Heh, "duplicate". Sure, why include any game's logic into the purchase at all (after all it's more work and bloat) or letting the user run a local server (again more work, who ever reads documentation, plus users's stupid anyway). Let's sell just a bunch of textures packed in proprietary format with a dumb client app and PROFIT! :-)

Reply Parent Score: 1

RE: Technical Stuff!
by peejay on Tue 12th Mar 2013 15:39 in reply to "Technical Stuff!"
peejay Member since:
2005-06-29

b) give the end user a copy of the server, where "single-player" means running a local server (increasing work and documentation/support/updates and code portability hassles)

The second option is the best option for small games developers (where the cost of running their own servers is costly).

I think this is what happened with Minecraft. Originally the single player and multiplayer versions were separate, so you'd get bugs/updates in one that weren't in the other. Finally they did set it up (I think) so that the single player does just essentially run a local server that you connect to, so that the single and multi versions are the same (thus actually decreasing rather than increasing the support/updates problems).

That said, my problem with games isn't DRM, it's TRM. All of my games are essentially unplayable because I can't manage my time. ;)

(So many Steam games and Humble Bundle games I haven't even downloaded months after buying them, much less played...so sad.)

Reply Parent Score: 2

RE: Technical Stuff!
by Delgarde on Tue 12th Mar 2013 20:20 in reply to "Technical Stuff!"
Delgarde Member since:
2008-08-19

a) duplicate all of the game's logic in the client (creating a lot more work and bloat)


We call this a library... a standard feature for code reuse for many, many years now. No duplication required - just run the same code on both client and server.

Reply Parent Score: 2