Switch to full style
A place to discuss and ask questions about the second part of The Elder Scrolls series
Post a reply

Hammerfell Town NPCs Fix

Fri Dec 07, 2018 9:14 pm

Hi all,

For those still playing the original Daggerfall using DOSBox, I managed to fix the textures used for town people in most part of Hammerfell.

So, as you already know, the problem is that instead of Redguard textures, DF uses Breton textures for some of Hammerfell NPCs, for example in Sentinel. Nord textures are also used for the Dragontail Mountains and Ephesus. How DF works is like this:

Get the climate value corresponding to the current player location. The climate value is stored in CLIMATE.PAK, which is probably read when the game starts.
Get the race number corresponding to the climate value. I spent hours trying to figure this out, using mostly IDA Pro, WinDbg and the DOSBox debugger. So it works as follows:
Code:
Climate value    Race number
   <=225             2 (Redguard)
     226             0 (Nord)
     227             2 (Redguard)
     228             1 (Breton)
     229             1 (Breton)
   >=230             1 (Breton)


Our luck here is that the two regions we have to tweak, i.e. corresponding to Hammerfell locations, are available directly in fall.exe third segment. I mean that DF devs could have put Breton race for all climate values equal to or above 228, in which case patching the code would have been much more difficult. But here, we only have to replace the race number for climate values 228 and 229 with 2.

To do this, open fall.exe with your favorite hex editor and locate the following byte sequence:
Code:
02 00 02 01 01 01 83


Replace it with:
Code:
02 00 02 02 02 01 83


Launch DF, travel to Sentinel and see beautiful Redguards wandering the streets! :D

Now, the problem with the Dragontail Mountains and Ephesus is they use the same climate value as the Wrothgarian Mountains, value which is 226. But while Wrothgarian Mountains are supposed to be inhabited by Nords, Dragontail Mountains are home to the Redguards. So the only fix here is to tweak climate.pak and replace all Dragontail Mountains and Ephesus values with values ranging from 224 to 229, with the exception of 226. We can make some gradient here to reflect climate transitions.

I used FiryWoods found on the UESP to export/import the file.

Here is the new climate.pak:
Image

Compare it to the previous one:
Image

The image is provided here with enhanced contrast only to show the differences, but the climate.pak file you can download below has the correct light grey values ranging from 223 to 232.

Replace the older one in DF and enjoy Redguards in the Dragontail Mountains! :)

The following zip contains the modified CLIMATE.PAK file as well as a small patch to fix FALL.EXE without the need of an hex editor.
HammerFix.zip

Re: Hammerfell Town NPCs Fix

Sat Dec 08, 2018 12:19 am

Interesting. :) I haven't played Daggerfall yet, but when I do I'll be sure to check out your mod! Thank you for sharing it.

Re: Hammerfell Town NPCs Fix

Tue Feb 05, 2019 4:53 pm

Cool, thanks for sharing these fixes!

If you'd feel inclined to do some poking around FALL.EXE, do you think you could find solutions for some other stuff? E.g. all those wrong colours on certain clothing, artifacts and items due to the fact that the game tries to apply the change weapon material colour logic to inventory items that shouldn't have changing colours?
Post a reply