暗黑破坏神2重制版BIN文件解析示例
feirnova
2024年05月10日 17:36

暗黑2重制版大部分bin文件格式都是一致的,下面以经验文件(experience.bin)为例做下解析:

解析步骤:

1 使用vscode或其他可以编辑hex格式的编辑器打开experience.bin文件

2 文件的前四位代表记录条数,如experience.bin的记录条数为 65 00 00 00 即为 101

记录条数

3 用鼠标拖动到最后确定最后位置+1(即文件总长度)

文件总长度为:3235+1=3236

4 用总长度减去4(记录条数占用的长度)即为数据总长度

    这里数据中长度为: 3236 - 4 =3232

5 用数据总长度除以记录条数可算出单条记录的长度

    这里单条记录的长度为: 3232÷101=32

6 取单条数据的记录和对应的txt文件进行对照(有问题的话需要多找几条记录对照)(txt文件是用castview软件导出来的)

红线部分为第一条记录(即为txt文件的MaxLvl那行,依次类推可以查看其他行)

txt文件

7 经过仔细对照确定 每列对应的数据偏移

        对照结果: 

列                            偏移

Amazon 亚马逊             0

Sorceress 女巫             4

Necromancer 死灵        8

Paladin 圣骑                 12

Barbarian 野蛮人          16

Druid 德鲁伊                 20

Assassin 刺客               24

ExpRatio 经验倍率       28

列偏移对照结果

8 然后就可以自己查找修改了

注意:并不是每个bin文件都这么简单,数据格式也不一定都是占4位,所以需要自己仔细查找确认

注意2:有的文件值和txt的值是对不上的,因为有些值是引用值,目前我也不太清楚具体是怎么引用的

注意3:有的txt的部分列是bool类型的,可能会有多个列合到一个位置的情况,需要自己仔细确认