Posted
by
Soulskill
on Monday December 06, 2010 @09:08PM
from the zzzzzzzzzzzzzzzzzzzzzzzzzzz dept.

An anonymous reader sends this quote from Wired:
"A novel anti-piracy measure baked into the Nintendo DS version of Michael Jackson: The Experience makes copied versions of the game unplayable and taunts gamers with the blaring sound of vuvuzelas. Many games have installed switches that detect pirated copies and act accordingly, like ending the user's game after 20 minutes. Ubisoft has come under fire multiple times for what players have seen as highly restrictive anti-piracy measures that annoy legitimate users as much or more so than pirates. But some more-mischievous developers have used tricks similar to the vuvuzela fanfare to mess with pirates. Batman: Arkham Asylum lets unauthorized users play through the game as if it were a normal copy, with a single exception: Batman's cape-glide ability doesn't work, rendering the game impossible to finish — although you might bash your head against it trying to make what are now impossible jumps. If you pirate Command & Conquer: Red Alert 2, brace yourself for an explosion, as your entire base will detonate within 30 seconds of loading the game."

The same way they always have for the last 30 years. Bury some code that's supposed to toggle some hardware effect in the cartridge or media, check for the side effect, then crap out if it fails.

Another way is just using attributes of the cartridges against pirates. Copies are often made on read-write media, but legitimate cartridges are read-only. So you have legitimate executable code that says "DO_MUSIC: call PLAY_MUSIC", and you add a statement that says "write to address DO_MUSIC 'call PLAY_VUVUZELA'". A legitimate cartridge can't overwrite the ROM, so it fails, and the call to PLAY_MUSIC remains in place. But on a rewritable cartridge it does overwrite it and zzzzzzzzzzzzzz happens.

Copy protection is generally a module that's linked into the system, gets called at start up, does some validation / checksumming / decryption etc. Crackers tend to attack the validation so that it returns 'all good' even when its not. Or they wait until the relevant bits are decrypted and then copy those in and bypass the validation/decryption entirely.... its more complicated than that, but that's sort of the gist of it.

Crackers attack the copy protection, and then once its defeated release the cracks/cracked copies.

This piracy detection is essentially a separate redundant anti-piracy module, with the same sort of detection/validation stuff as the primary one. However it doesn't get activated at start up. It gets activated later, sometimes much later,and instead of throwing up a "not a valid copy" it instead modifies the game rules or parameters slightly.

The idea is that the crackers won't find it. They are attacking the primary copy protection which inevitibaly falls... but often they are only interested in cracking the game, and being the releaser; they often aren't actually all that interested in playing the game itself. So once the protection appears defeated and they appear to be able to play the game they release.

However the 2ndary copy protection is still intact, and messes with players who actually try to complete the game.

Its not really any harder to defeat than the primary copy protection; if anything its usually easier. But since it gets missed its gets to mess with pirate copy players for a few months while it gets identified, defeated, and then new cracks are released. Meanwhile there are now bunches of people running the old cracks who might never figure it out... especially if the impact is subtle.

The main problem with these copy protections is that like any copy protection, some times it doesn't work and legitmate customers are affected. This can be particularly troubling if the impact is subtle... so they come to think the game is just defective (which I guess it is).

One very old scheme is to embed a checksum of the code segment inside the binary itself and then check it at runtime. It's not foolproof but it will identify most pirated copies with zero chance of false positives.

Generally will fix whatever anti-piracy gimmicks they impliment. The same thing was done to Chrono Trigger on the DS where when you made it to the first time warp it would repeat that scene infinitely. As soon as somebody found out the trigger for what makes it repeat that they released the cheat codes to put onto your cart and you could play the game just fine.

More like you've been struck by...a total idiot. While this particular "trick" is obvious to anyone NOT what the real game is supposed to be like, one of the things that helped to kill the developers of Titan's Quest on the PC was their frankly insane copy protection. It would make a "pirated" game glitch, skip, and be all around unplayable for any length of time, but of course word quickly got out that "The game is a buggy POS" and people avoided it like the clap. It didn't help that the developers were so damned paranoid that ANYONE that complained of a bug was automatically labeled a pirate by them.

It is a damned shame I didn't somehow save the chatboard because me and one of the developers got into a nasty argument over that, with me going so far as to show him a pic of the game box sitting on top of my local paper with the date visible and he STILL accused me of being a pirate, saying I must have photoshopped the thing in the under 15 minutes it took me to take the pic and upload. Needless to say the next pic I uploaded was one of me chunking the POS game in the garbage, along with a promise to slam the game wherever it was being sold online (which I did).

So they really have to be careful with the anti-piracy crap, and they ought to give us something in return for putting up with their shit. Personally I think there ought to be a rule that after 2 years or the developer stops pushing patches, whichever comes first, a DRM removal patch should HAVE TO be released. That way those of us that buy our game fair and square don't end up having to hunt for cracks because their &^$%&^%$&$ DRM doesn't work on modern systems, or even worse have our new machine shit itself and die because their ring 0 crap is designed for x86 and we've moved on to X64.

A FINAL WORD OF WARNING...ALWAYS be sure to back up your machine BEFORE installing any older game on X64!!! Because I have found out the hard way that there are certain version of Starforce, safedisc, and SecuROM that will happily install on X64 but WILL NOT UNINSTALL, even with their supposed removal tools, and will cause all kinds of hell on your system! We are talking inability to hibernate or shutdown properly, random glitches, screwed up burns on your drives, it is a mess and the ONLY way I've found to fix it is to either boot into a second OS and remove the files, followed by a safe mode reg cleaning, or a full wipe and reinstall. Frankly I don't see why those damned Ring 0 DRM creators can't be busted just like malware writers, because they sure as hell can cause just as big a mess. Oh and be careful if you have both Starforce and either Safedisc or SecuROM, because certain versions will NOT play nice with each other and cause system instability! It is sad that it has gotten to the point that I just get a pirate version of my older games rather than using the discs, simply because the pirate version is less likely to mess up my X64 install.