仙5最悲催的就是故事还没结束,女主角就香消玉殒了啊……仙4里至少还有个梦璃的复制品啊……
还是改改保存文件吧……
按4字节一个计算偏移,+0表示+0x00,+1表示+0x04,+2表示+0x08....
前4个没啥用,就是为显示该存档现在在队列有哪些人,1是姜云凡,2是唐雨柔,4是龙幽,8是小蛮。接着4个是指示人物目前等级。
再接着的19个表示不知道是什么……
文件偏移+0x6c处(就是+27)是金钱,最大貌似是9999999,改多了,钱有更改就变成这个值了。
+28是队列领队,然后+29~+34也不知道所云,反正是一堆标志位就是了……
+35(+0x8c)是可用人物队列人数,然后就是每个人52(0xD0)个数据,列表:
注意:云凡的数据可能会大于0xD0,反正看着标志数据1248找每个人物数据开始是最好。
| 相对偏移 | 描述 | 说明 |
| +0 | 人物标志 | 1=云凡 2=雨柔 4=龙幽 8=小蛮 |
| +1 | ||
| +2 | ||
| +3 | ||
| +4 | 等级 | |
| +5 | 经验值 | |
| +6 | 精 | |
| +7 | 精最大值 | |
| +8 | 神 | |
| +9 | 神最大值 | |
| +10 | 气 | 最大值为100 |
| +11 | ||
| +12 | ||
| +13 | ||
| +14 | ||
| +15 | ||
| +16 | ||
| +17 | ||
| +18 | ||
| +19 | ||
| +20 | ||
| +21 | ||
| +22 | 力 | 和攻击力等有关系,仙5的一般属性是按以下5个值包括本行进行计算的 |
| +23 | 体 | 和精最大值等有关系 |
| +24 | 逃 | |
| +25 | 术 | |
| +26 | 运 | |
| +27 | 是否在队列中 | 这个比较重要,到时候雨柔死后然她重新归队要靠这家伙 |
| +28 | ||
| +29 | ||
| +30 | ||
| +31 | ||
| +32 | ||
| +33 | ||
| +34 | ||
| +35 | 雷 | 法术修为 |
| +36 | 风 | |
| +37 | 水 | |
| +38 | 火 | |
| +39 | 土 | |
| +40 | 阴 | |
| +41 | 阳 | |
| +42 | ||
| +43 | ||
| +44 | ||
| +45 | ||
| +46 | ||
| +47 | ||
| +48 | ||
| +49 | 自动战斗类型 | 0=攻 1=术 2=辅 |
| +50 | ||
| +51 |
紧接着1个是不在队列中的人物数量,再加人物数据
人物数据后是道具了。
先是一个道具数量,然后是按照(编号,数量)的数对存储
后面就懒得分析了,无非是剧情啊任务啊什么什么一堆一堆的……
最后说下让四人总在队列中的方法:
先记录文件+35(+0x8c)的地方为x,并改为4,再到+35+52x的地方把那个字节移动到+35+52*4(+0x3d0),并把此数值改为0,这样就让所有人都在队列里。
但是发现加载后可以运行,但一进菜单就程序崩溃,或者打完仗就……
最后发现每个人物+27处若为0要改成1,再进程序,OK,搞定。
(补充)
存档人物队列是这样的顺序:队列中人物数量n(4Bytes), 人物数据(208Bytes*n,云凡可能特殊……),不在队列中人物数量(4-n)(4Bytes),人物数据(208Bytes*(4-n))
修改后的顺序是:队列中人物数量4(4Bytes),人物数据(208Bytes*4=832Bytes),不在队列中人物数量0

云凡的数据有点特殊,估计是剧情标志,可能超208B……






这里发张云凡对老爹的战斗图,雨柔姐在战斗哦!!祝大家玩得愉快!

J.Y.Liu
2011.07.13
本文详细解析了《仙剑奇侠传5》游戏中人物队列的存储方式和调整方法,包括金钱、等级、技能等关键数据的读取与修改技巧,以及如何确保四名主要角色始终在队列中,避免程序崩溃的问题。
8916





