Fix town people in Hammerfell

Off topic discussion. Talk about gaming and life in general. Be awesome to each other.
Post Reply
User avatar
Ferital
Posts: 11
Joined: Thu Apr 05, 2018 8:01 am

Fix town people in Hammerfell

Post by Ferital » Fri Dec 07, 2018 12:19 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. The only exception is the Dragontail Mountains as it requires tweaking climate.pak and I didn't take the time to do it yet.

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. It also uses Nord textures for the Dragontail Mountains. 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: Select all

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: Select all

02 00 02 01 01 01 83
Replace it with:

Code: Select all

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 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 values with values ranging from 224 to 229, with the exception of 226. We could make some gradient here to reflect climate transitions.

Edit: actually, it took me a little time to tweak climate.pak.
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! :)
Attachments
CLIMATE.zip
(7.68 KiB) Downloaded 4 times

User avatar
Interkarma
Posts: 3592
Joined: Sun Mar 22, 2015 1:51 am

Re: Fix town people in Hammerfell

Post by Interkarma » Fri Dec 07, 2018 9:58 pm

Nice work Ferital!

In DFU, I matched mobile NPCs races to classic, but there is a good case to be made for this being a bug in classic. I'm curious if others would like this changed in DFU as well.

At least in DFU we have Kramer's villager mod to add a lot of variety anyway. :)

User avatar
Ferital
Posts: 11
Joined: Thu Apr 05, 2018 8:01 am

Re: Fix town people in Hammerfell

Post by Ferital » Fri Dec 07, 2018 10:16 pm

Thanks Interkarma! :)

I think this is more or less a bug in classic in the sense that people are given Redguard names in all parts of Hammerfell, no matter the texture. DelphiSnake mentioned this as an issue here 6 or 7 years ago.

Anyway as you say, I would be curious about what others think about this.

Also, I must admit Kamer's villagers mod is impressive!

User avatar
Ferital
Posts: 11
Joined: Thu Apr 05, 2018 8:01 am

Re: Fix town people in Hammerfell

Post by Ferital » Sat Dec 08, 2018 8:35 am

I tested my CLIMATE.PAK changes in DFU and it works perfectly in areas using 224 and 225 climate values :)
Dragontail_Screenshot.png
Dragontail_Screenshot.png (356.85 KiB) Viewed 107 times

User avatar
pango
Posts: 417
Joined: Wed Jul 18, 2018 6:14 pm
Location: France
Contact:

Re: Fix town people in Hammerfell

Post by pango » Sat Dec 08, 2018 9:56 am

I'm in Alik'R desert, going east to Scourg Barrow for a cartographer quest, the timing is perfect :)
Thank you Ferital!
When a measure becomes a target, it ceases to be a good measure.
-- Charles Goodhart

Post Reply