侠客风云传前传错过任务存档修改方法
2016-10-13 11:37:02来源:优游网发布:优游网
侠客风云传前传错过任务存档怎么修改;侠客风云传前传错过任务存档修改方法;
基本原理:通过观察任务完成前后存档中的"m_EventList"与"m_QuestList"两个数组的数据变化来还原任务的完成情况
========
说明:
1.存档槽位001对应存档文件【Save0.Save】,即:存档文件对应存档槽位的数字减一。
2.本文中存档名字只是为了便于理解,具体存档名字没有要求。(Save0-19.Save皆可)
3.数据是否有【逗号】,以及【逗号】的位置要看清楚。
========
举个例子:史燕未触发少林寺两个小基佬对话导致萧复、水盼盼少林寺百鸟朝凤事件没有十八基佬捉奸的事件
========
需要工具三个:
1.【相对麻烦】记事本/Beyond Compare(文本比较工具)
2.【Save0.Save】还没触发目标任务的存档(萧复、水盼盼未触发少林寺狗男女事件的存档)
3.【Save2.Save】目前进度存档(已经错过任务,即:萧复、水盼盼已触发少林寺狗男女事件但没有基佬捉奸的存档)
流程:
1.记得备份存档!!!!!!!
========
2.读取【Save0.Save】还没触发目标任务的存档。
========
3.保证【Save0.Save】存档萧复、水盼盼在队伍中。
========
4.从大地图进入少林寺,读图进度条结束以后,不要移动角色?覆盖保存【Save0.Save】。
========
5.触发萧复、水盼盼少林寺狗男女事件,和【Save2.Save】目前进度存档一样不会触发基佬捉奸事件。
========
6.离开少林寺到大地图,再进入,读条结束以后,不要移动角色?存新档【Save1.Save】。
========
7.1新建一个文本文档,最小化。(要word文档/ppt幻灯片/excel/cpp/java/xml/sql也可以,随便你)
========
7.2用记事本打开【Save0.Save】,(ctrl+F)搜索 “m_EventList”(不包括引号,下同)。
========
7.3可以看到类似"m_EventList":[很长很长一大堆数字]的数组。(图:1)
例:"m_EventList":[220102008,220105005,220105006,220105009,220105025]
========
========
7.4复制整串数组到文本文档,换行(图:2),最小化。
========
========
7.5最小化【Save0.Save】,重复7.2-7.4打开【Save1.Save】。搜索“m_EventList”,复制数组到记事本。(图:3)
========
========
7.6很明显,数组【末尾】多出了“,220601003”这个元素(【注意】有些任务不止对应一个EventList元素),记下来。
========
7.7再次打开【Save0.Save】,(ctrl+F)搜索 “m_QuestList”。
7.8可以看到类似 "m_QuestList":[{"m_strQuestID":"Q数字","iType":数字}] 的数组。(图:4)例:"m_QuestList":[{"m_strQuestID":"Q200021","iType":0}]
========
========
7.9复制整串数组到文本文档,换行,最小化。
========
7.10最小化【Save0.Save】,重复7.7-7.9打开【Save1.Save】。搜索“m_QuestList”,复制数组到记事本。(图:5)
========
========
7.11相当明显,数组前面多了“{"m_strQuestID":"Q200064","iType":1},”,记下来。
========
8.现在应该有【m_QuestList】、【m_EventList】这两个数组多余出来的元素:“{"m_strQuestID":"Q200064","iType":1},”和“,220601003”,这就是存档对【完成任务后】写入的东西。
========
9.打开【Save2.Save】目前进度存档,分别搜索“,220601003”,删掉,搜索“{"m_strQuestID":"Q200064","iType":1},”删掉。保存,任务重新完毕。
========
10.读取目前进度存档,带史燕不要带萧复、水盼盼去少林寺就可以触发两个小基佬的对话了,接下来带上萧复、水盼盼在少林寺ooxx就可以触发十八基佬捉奸了。
========
总结:
1.完成任务后(非传闻)会修改“m_EventList”和“m_QuestList”这两个数组的元素,本质只要删掉多出来的元素就可以重置任务(对道具,阅历等其他的还原不在本文讨论范围)。
2.写入存档时“m_EventList”增加的新元素在数组末尾,“m_QuestList”增加的新元素在数组前,当然人工修改加载哪里都无所谓,删除时需要注意位置,不要删错了。
3.一个任务可能会修改对应“m_EventList”和“m_QuestList”中的【一个或多个】元素!(当然本文的例子只对应一个)
4.推荐使用【Beyond Compare】其实是因为侠客的存档太乱,是要数据变量控制得好用【Beyond Compare】一目了然。
5.本文仅仅是抛砖引玉,只要找到任务编号的对应关系,可以根据不同任务添加和修改这两个数组中的元素,也可以利用这个原理把修改任务的功能加入修改器中(懒得写程序)。
========
注?:存档中会以浮点数记录玩家的坐标,由于每个坐标的小数点后精度不一样会严重影响【Beyond Compare】的比较。游戏中【任何场景切换后的坐标是固定的】,所以不要移动是用来控制变而已。
========
另:
1.百鸟朝凤任务对应的元素为 m_EventList:220601003和 m_QuestList:{"m_strQuestID":"Q200064","iType":1}。 //type:0/1似乎是未完成和完成?
2.LZ已经通过本方法修改了“百鸟朝凤”,“井中八法”,“快刀小孟”等任务。目前没有副作用。(除了有两本百鸟朝凤和多花的5000=。=)