There is a lot of misunderstanding on the nuts and bolts of this new DRM scheme. This is, of course, the fault of EA for making something so convoluted, but we can’t really heap anger and shame on the thing until we have our facts right.
Some people think that if they just don’t play at all for a couple of weeks they will be locked out forever. This is not the case. To clear things up:
- You get three total “activations”. This means the game can be placed onto three computers. This can be three different computers, or the same computer upgraded three times. Every time you try to run the game on what the server thinks of as a “new” system, one of your three activations is consumed. This means your relationship with the game is directly affected by how often you upgrade.
- Once the game is “activated”, you’re free to play for five days without hassle. After five days, the game will try to call the mothership on startup. If it can’t get through – for whatever reason – it will still let you play.
- After ten days since activation, if it still hasn’t been able to reach the mothership, the game will refuse to run. It will not run again until it can once again call home. Anytime it does call home and finds out everything is fine, the timer is reset and you have five days before it will attempt to connect again.
- If your serial number ends up on the web, it will be blacklisted. (Note that this means they must be trolling the warez sites and torrents. Which makes this entire charade even more ludicrous. They must know how quickly their games are cracked. This isn’t ignorance, this is willful delusion.) Next time the game phones home, it will… what? They aren’t really specific on what it will say or do if you’re using a banned serial number, but whatever it is you won’t be playing your game.
- They claim that there is only a 1 in 3 billion chance of someone guessing your registration number. I’ve written about the massive number space of serial numbers before, and this isn’t that hard to believe. But this assumes the hacker is just going to sit there and blindly guess at numbers. Hackers aren’t that stupid. The hacker will usually (I assume) try to figure out what system is used to denote valid serial numbers via some sort of reverse-engineering. Since the server is in charge of approving serial numbers and not the local executable, this would be very hard to do. The hacker would need an awful lot of serial numbers to work with. So this part of the system is pretty secure. However, it’s still pointless, since it will be easy enough to disable the mothership call – no different than disabling a DVD check.
- You do not need to have the DVD in the drive to play. This is what they are using to sell the scheme to users as one of the “benefits” of the new system.
In the original Monkey Island, at one point you are captured by natives who lock you in a simple bamboo hut. There is a trap door in the floor through which you may escape. If you’re dumb you can walk over to the natives once you’re out, and they will grab you and throw you back into the hut. The second time they throw you in, they nail the door shut. The next time they add chains to the door This keeps going until eventually (if you keep going back) they have a bamboo shack with a massive steel vault door on the front, a timed lock with an alarm system on it. It looks like the front of Fort Knox.
“How he keeps getting out is almost as mysterious as why he keeps coming back.“
In a lot of ways these DRM schemes are a bamboo hut with a vault door on the front. The keep using a bigger and bigger lock and a more complex system of authentication, but it still has to run on a machine where you can edit the executable, and all the hacker has to do is go in and disable the part that says, “Do the security check.” It doesn’t matter how secure or complex or devious the security check is, if the machine’s not doing it, it’s not doing it.
C++ is a wonderful language for making horrible code.
Why Batman Can't Kill
His problem isn't that he's dumb, the problem is that he bends the world he inhabits.
id Software Coding Style
When the source code for Doom 3 was released, we got a look at some of the style conventions used by the developers. Here I analyze this style and explain what it all means.
The Strange Evolution of OpenGL
Sometimes software is engineered. Sometimes it grows organically. And sometimes it's thrown together seemingly at random over two decades.
Starcraft 2: Rush Analysis
I write a program to simulate different strategies in Starcraft 2, to see how they compare.