icy_hexplorer.png

Every now and then, I dust off one of the many classic games I never finished and give it another go. This time it’s Baldur’s Gate II. Every time I do this, I have to deal with the “Insert Your Play Disc” hassle. I don’t mind this when it’s my desktop computer, but on my notebook, I don’t want to get all worked up for a big battle only to find that the disc I need is sitting on a shelf back at home.

The usual solution to this is to find a “NoCD” crack for the game, but this means I’m downloading an executable from an unknown source. If it has a trojan or some other kind of malware in it, I won’t find out until too late.

So when I searched for the Baldur’s Gate II NoCD crack, I got a little more aggressive and looked for a patch I could apply myself. In this case, it was pretty easy, thanks to a simple patch based on Softbeard’s work, and published by Shea Kauffman:

File: BGMAIN.EXE
Change bytes (all numbers in hex):
  Find  0F84DA08
after these numbers should be
  00006a006a008b
Change them to
  0000e9ee030000 

To apply this patch, I used ICY Hexplorer (pictured above) to patch the file. (You should always back up the file you’re patching first, just in case you mess something up.) And be sure to verify that the patch applies to the exact version of the game that you have (patch 26498 in my case).

If you can’t find a manual patch like this one, you can at least use ICY Hexplorer to take a peek at what modifications have been made to the altered version of the game you want to run. Open both .exe files in ICY and choose File->Export->Ascii Hex, then compare the output using a command-line utility like diff or fc. You probably won’t understand the change, but if the magnitude of the change is pretty small, then you can at least be confident that there isn’t some kind of massive payload lurking in the crack:
fc before.txt after.txt

Comparing files before and AFTER.TXT
***** before.txt
B7 00 FF 92 94 00 00 00 8B 85 B8 FE FF FF 83 B8
3C 01 00 00 00 0F 84 DA 08 00 00 6A 00 6A 00 8B
0D CC 73 B7 00 E8 65 59 CA FF 25 FF 00 00 00 85
***** AFTER.TXT
B7 00 FF 92 94 00 00 00 8B 85 B8 FE FF FF 83 B8
3C 01 00 00 00 0F 84 DA 08 00 00 E9 EE 03 00 00
0D CC 73 B7 00 E8 65 59 CA FF 25 FF 00 00 00 85
*****

I wish I didn’t have to do this; I think it would be reasonable to expect game makers to release a patch late in the game’s life cycle that eliminates the CD check. I can excuse it for the first few months of a game’s life, but after that, how much does it help? IIRC, some of the first-person shooters I’ve played in recent years have eliminated the CD check by the second or third patch. I think that’s a better way to go.

Related:

  • Retro Gaming Hacks – Link
  • Gaming Hacks – Link
  • ICY Hexplorer – Link