xx xx xxxx 项目总数 xx xx xx xx xx xx 结束位置
项目总数:占2个字节(4H~5H),高低位颠倒——4H是低位,5H是高位。
结束位置:查看末项目最后一个数据位置(注意,不是BIN文件的最后一个数据所在位置),其紧邻的下一个位置值就是该值。占2个字节(CH~DH),高低位颠倒——CH是低位,DH是高位。
以幻世录Ⅰ的LEVEL001.BIN为例,
原项目总数是「50 00」,表示有「0050Hex」个项目(80个项目)
末项目最后一个数据所在位置是410FH,取紧邻的下一个位置值,所以结束位置的值为「10 41」。
加入一个宝箱后,项目变成81个(0051Hex个),所以4H~5H的值要改为「51 00」,
每个宝箱占208个字节(D0Hex),
4110Hex+D0Hex=41E0Hex
所以CH~DH的值变成「E0 41」。
其实开发工具SETBOX会根据项目数量自动修改上文提及的两个值,不过SETBOX的新增项目只能排在最后,有时候看起来不方便,所以如果想在中间插入项目,就只能手动修改上述两个参数以保证修改后的BIN文件能被正确识别。
项目总数:占2个字节(4H~5H),高低位颠倒——4H是低位,5H是高位。
结束位置:查看末项目最后一个数据位置(注意,不是BIN文件的最后一个数据所在位置),其紧邻的下一个位置值就是该值。占2个字节(CH~DH),高低位颠倒——CH是低位,DH是高位。
以幻世录Ⅰ的LEVEL001.BIN为例,
原项目总数是「50 00」,表示有「0050Hex」个项目(80个项目)
末项目最后一个数据所在位置是410FH,取紧邻的下一个位置值,所以结束位置的值为「10 41」。
加入一个宝箱后,项目变成81个(0051Hex个),所以4H~5H的值要改为「51 00」,
每个宝箱占208个字节(D0Hex),
4110Hex+D0Hex=41E0Hex
所以CH~DH的值变成「E0 41」。
其实开发工具SETBOX会根据项目数量自动修改上文提及的两个值,不过SETBOX的新增项目只能排在最后,有时候看起来不方便,所以如果想在中间插入项目,就只能手动修改上述两个参数以保证修改后的BIN文件能被正确识别。