Thread: [DFX] problem with bfm mod
View Single Post
  #3  
Old 02-15-2024, 01:03 PM
avble is offline avble
Registered User

Join Date: Feb 2021
Posts: 8

Quote:
Originally Posted by Baldo_the_Don View Post
TL;DR: Hex 8B [00] = SP. Hex 88 [4?] = SP with respawn.

Details:

The following information is based on work in JO .bms files. I do not doubt it will work on DFX and DFX2 .bms files, but I cannot confirm that. I can confirm that single player respawn is not a thing in DFBHDTS. Damn it.

If you're not afraid to use a hex editor on a .bms, you can fairly easily convert a co-op map to single player.

First, save a copy of the .bms to a safe location in case you mess up. Do not argue. Back it up.

Open the .bms in a hex editor of your choice. Find address hex 8B (eight bravo, decimal 139). If the value there is [01], that's a co-op map. Confirm whether the hex editor is in overwrite or insert mode. Overwrite is my preference for this task. Then change the value from [01] to [00]. Save the file. The map is now SP.

What if you want SP respawns?

Oh, boy...

Address hex 88 (eighty-eight, decimal 136) is where the game reads which checkboxes in the General Information dialog have been activated.

This one's a bit complicated. I'll try to keep it simple.

If the value of hex 88 is between [00] and [0F], and it most likely is, you can change the digit on the left from 0 to 4, and that will activate SP respawn. Hex 88 [03] means the "Water Level (x0.5 m)" and "Fog Distance (m)" checkboxes are activated. Hex 88 [43] means the "Water Level (x0.5 m)", "Fog Distance (m)", and "Single Player Respawn" checkboxes are activated.

Basically, hex 88 [40] to [4F] is the "Single Player Respawn" checkbox range.

You should not ever see a .bms with hex 88 being between [10] and [1F]. That is the range of the "No Voxels" checkbox, according to my notes. "No Voxels" is probably a hold over from DF1, maybe DF2. I don't know if it has an effect of any kind in other games. If it does, that effect is probably not desirable.

Hex 88 [20] to [2F] is the range of the "Rotate Map 180 degress" checkbox. I doubt you'll ever see hex 88 with values in this range 'cause rotating the map 180° does not function correctly and causes glitches. Only the tactical maps get turned. The spin map does not. Location and people names will be 180° off. If hex 88 is in this range, you'd probably be best off changing the digit on the left from 2 to a 0 or a 4. If for some inexplicable reason you want to preserve the 180° twist, yet have SP respawns, change the digit on the left from 2 to a 6, and may [DEITY OF YOUR CHOICE] save your soul.

Conclusion:

There are a bunch of things you can tweak in a .bms with a hex editor.

Like an SP BHD map made by a vicious idiot that has three saves and no health packs. Edit hex 108 from [00] to [01] to regenerate 1 hp every 0.25 seconds. Convert hex 22B from [03] to [09] for the maximum nine saves.

Mappers are anything from unmindful to pure evil when it comes to saves and health BHD SP maps. Don't let them ruin your fun.

I hope this is helpful, and that if these edits do not work for DFX or DFX2, please let me know. Matter of fact, let me know if they do work in DFX and DFX2. That's valuable info, really.
Thanks, I don't have experience with this kind of stuff, I used hxd, and got confused where to look for 8B, can you post a screenshot please?
Reply With Quote