EA Games are scum sucking dogs. I have never seen such overzealous copy protection in a computer game before. Since the times of Warcraft 2, I've played networked games with my brothers on the house LAN. But EA seems to actually think that I should buy 3 copies of C&C Generals to play at home! And it's not the half-assed copy protection that's so common today. I lost 2 hours of valuable game playing time making this work!
So, I will pass that knowledge on to you.
There are 3 obstacles to playing this game networked without buying multiple copies of it:
- Standard CD check. If you've ever played a computer game, you probably already know how to get rid of this.
- Cheating check. The game checks if its been modified and other clients won't play with modified games. The no CD crack triggers this as well.
- Serial number check. Two games with the same serial can't play with each other, even on the local network. This is what I find most disgusting.
And here are my solutions:
- Update to the latest version (1.05 at the time this was written) and bypass the CD check with any of the cracks available from your favorite site (gamecopyworld.com, megagames.com, etc.) This would be straightforward, if not for...
- The cheating detector will not allow you to play if you modify the game for no-CD. So you need to have a no-CD crack that addresses this. My favorite is the FineWolf crack. Not only does it allow online play with unpatched clients, but it also has a "quick start" feature, allowing you to skip the obnoxious "EA Games" intro advertisement. Catching cheaters is a noble goal, but this is only a further example that if you trust the client, it is impossible.
- You're going to have to generate fake serials for everybody who wants to play. Get a keygen from your favorite keygen site (go.to/gamefix, etc.) and make some. Unfortunately, you can't just go into the windows registry and change the key. The game also has it stored and obfuscated in Generals.dat. If there's a mismatch, it allows play for 30 seconds and then blows up all your units. Those fiends! You need to reinstall, and enter your new fake key when prompted. Now you can play with your siblings or friends or whatever, in spite of whatever greedy EA exec dreamed this up.
Now, you don't want to go using your fake key on the internet. That would probably make someone mad. So, the first time you install the game with your legitimate key. Keep a backup copy of Generals.dat (I call it Generals.dat.real). Then reinstall with your fake key. Keep a backup of the new Generals.dat (I call it Generals.dat.fake). Now, when you want to switch between your legit serial and your fake one, no reinstall is necessary. Just enter the serial into the registry key "My Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\EA GAMES\ Generals\ergc" under the default name with type REG_SZ. Then, copy the correct Generals.dat file to the game directory.
The next step would be to generate the Generals.dat files yourself. I guess with enough fake serials and Generals.dat files and some knowledge in cryptology, you could eventually figure it out. But since you've already broken several laws and international treaties just to play the damn thing on your private network, you might as well take a debugger to the executable and find the algorithm yourself.
Share and enjoy. I know I am.