Jump to content

Fixing UFO's Difficulty Bug (Dos edition)


NKF

Recommended Posts

I know the difficulty bug is one of the things XComutil was designed to fix for the dos version, but I thought I'd do it the macho way and try and repair it manually with MS-Edit's binary mode.

 

What I want to do is make a copy of the game that is as plain vanilla and untouched by any editors as possible, but would at least like the difficulty bug corrected. I don't want to use XComutil to do this however as it introduces a few other fixes that I'd rather not have applied to this copy of the game, therefore manually fixing the bug seems like the cleanest option.

 

Does anyone know what exactly needs to be done to manually correct the difficulty bug? If I remember correctly, it involved a single byte that isn't set correctly. Obviously I haven't a clue where this would be, and it's not something we have in the wiki file information section.

 

 

- NKF

Link to comment
Share on other sites

  • 7 months later...

So, it didn't take too long, just searched for a string that should have been somewhat unique. Here's the location of the bug fix in all of the dos versions:

 

(DOS 1.0 - GEOSCAPE FILE SIZE: 414419):

OFFSET 97228(0x17BCC): change value from 60(0x3C) to 64(0x40) for difficulty problem fix

 

(DOS 1.2 GEOSCAPE FILE SIZE: 415271)

OFFSET 101068(0x18ACC): change value from 60(0x3C) to 64(0x40) for difficulty problem fix

 

(DOS 1.3 GEOSCAPE FILE SIZE: 419367)

OFFSET 101068(0x18ACC): change value from 60(0x3C) to 64(0x40) for difficulty problem fix

 

(DOS 1.4 GEOSCAPE FILESIZE: 382957)

OFFSET 95676(0x175BC): change value from 60(0x3C) to 64(0x40) for difficulty problem fix

 

DOS 1.1 version has the same executable as 1.0. Also, 1.3 and 1.2 have the same offset for the fix, but they are not the same file.

Link to comment
Share on other sites

  • 2 months later...
So, it didn't take too long, just searched for a string that should have been somewhat unique. Here's the location of the bug fix in all of the dos versions:

 

(DOS 1.0 - GEOSCAPE FILE SIZE: 414419):

OFFSET 97228(0x17BCC): change value from 60 to 64 for difficulty problem fix

 

(DOS 1.2 GEOSCAPE FILE SIZE: 415271)

OFFSET 101068(0x18ACC): change value from 60 to 64 for difficulty problem fix

 

(DOS 1.3 GEOSCAPE FILE SIZE: 419367)

OFFSET 101068(0x18ACC): change value from 60 to 64 for difficulty problem fix

 

(DOS 1.4 GEOSCAPE FILESIZE: 382957)

OFFSET 95676(0x175BC): change value from 60 to 64 for difficulty problem fix

 

DOS 1.1 version has the same executable as 1.0. Also, 1.3 and 1.2 have the same offset for the fix, but they are not the same file.

BIG thanks for this!!

Having a small problem tho... My XCom Version is 1.2 and the filesize you wrote matches exactly to 415271 bytes.

However the byte at the given offset 0x18ACC is a "3C" instead of a "60".

I can't spot a 60 in the near vincinity of that offset either.

I have not applied any custom mods/unofficial patches via xcomutil or other means.

Link to comment
Share on other sites

You probably have 1.2a (also not listed above is X-COM 1.0 (US version), Italian and Spanish versions) they all use the 0x18ACC for IGLOB.dat length. They have different sizes and some difference in other offsets.

 

3C is HEX for 60

Change it to 40

 

-Blade FireLight

Link to comment
Share on other sites

Hells bells! *facepalm*

I thought you meant 0x60 ! Sorry LOL Think I was too tired last night :)

It makes sense, sorry for the confusion, I gave Hex for the location but not for the value. I'll fix that in my post.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...