由于原贴中的代码少了一条导致无法调整必杀技,另外如果读之前的存档会给武将装配上其没有学会的必杀技且无法更改,所以另开一贴,原帖我将删除。这次主要更改了读档部分的代码,存档部分没有更改。另外必杀技数目限制部分的代码更改了第一处,补充了上次缺少了一条代码。
存档:跟上次的代码完全一样

读档:对上次的代码进行了更改

注意照此更改后如果读之前的存档,因为数据格式不符的原因,大部分情况下武将都没有装配其已会的必杀技,至少没有装配全,所以我方每个武将的必杀技需要重新装配。至于其他君主的武将,计算机会自动装配的,不需要我们关心。
另外我是在原代码地址处直接修改的,照此修改后,胡杨大神原先的读存档代码就不需要了。
必杀技数目修改:
我是按武将等级决定能装配几个必杀技,初始3个,达到一定等级后增加1个,最多8个,共三处代码:

上次发的图少了最后一条JNZ指令,这次补上了。
下面的两个图跟上次是完全一样的。


图中最上面箭头所指为初始必杀技数,其余箭头所指为增加一个必杀技数须达到的等级,均为16进制数,大家可以根据自己的需求更改。10进制数和16进制数的转化网上有在线计算器,请自行搜索。
如果不想按武将等级决定能装配的必杀技数目,直接设置成8 ,可以无视以上三处代码的修改,只需要把原代码处的cmp eax,3中的3改为8即可,当然大家可能早已改成6了。
最后简单说一下如何利用OllyDBG修改代码,其实非常简单,会用Offie或WPS就会修改代码,相比16进制编辑不容易改错代码。
以1.10英文版OllyDBG为例,首先打开要修改的可执行文件,然后在代码区(就是左上有指令的那部分)右键菜单依次选择“go to”(转到)、“Expression”(表达式)就会跳出一个地址框,在其中输入需要修改代码的地址,比如要修改读档部分就输入45c706,然后回车或点击地址框“OK”(确定)就转到需要修改代码的地址了。当然你也可以通过鼠标滚轮查看当前当前位置附近的其它指令代码。
接下来双击要修改的指令(注意不是指令的二进制代码部分,否则成设置断点了)或单击要修改的指令后直接开始输入就会出现指令框,输入完一条指令按回车或单击指令框“Assemble”,然后继续输入下一条指令。当前位置所有指令修改完毕后按Esc或单击指令框“Cancel”,指令框就消失了,此时选中当前位置所有修改过的指令然后选右键菜单中的“Copy to Executable”(复制到可执行文件),点击“Selection”(选中)后就会出现修改后的新可执行文件框,不过暂时现别理它。点击代码区后继续修改其它位置的代码,每修改完一处代码都重复刚才的操作将修改后的代码复制到新可执行文件,在最后一处代码修改完并复制到新可执行文件后,在新可执行文件框里点右键选“Save file”保存就可以了,注意另取一名,别覆盖原文件。
存档:跟上次的代码完全一样

读档:对上次的代码进行了更改

注意照此更改后如果读之前的存档,因为数据格式不符的原因,大部分情况下武将都没有装配其已会的必杀技,至少没有装配全,所以我方每个武将的必杀技需要重新装配。至于其他君主的武将,计算机会自动装配的,不需要我们关心。
另外我是在原代码地址处直接修改的,照此修改后,胡杨大神原先的读存档代码就不需要了。
必杀技数目修改:
我是按武将等级决定能装配几个必杀技,初始3个,达到一定等级后增加1个,最多8个,共三处代码:

上次发的图少了最后一条JNZ指令,这次补上了。
下面的两个图跟上次是完全一样的。


图中最上面箭头所指为初始必杀技数,其余箭头所指为增加一个必杀技数须达到的等级,均为16进制数,大家可以根据自己的需求更改。10进制数和16进制数的转化网上有在线计算器,请自行搜索。
如果不想按武将等级决定能装配的必杀技数目,直接设置成8 ,可以无视以上三处代码的修改,只需要把原代码处的cmp eax,3中的3改为8即可,当然大家可能早已改成6了。
最后简单说一下如何利用OllyDBG修改代码,其实非常简单,会用Offie或WPS就会修改代码,相比16进制编辑不容易改错代码。
以1.10英文版OllyDBG为例,首先打开要修改的可执行文件,然后在代码区(就是左上有指令的那部分)右键菜单依次选择“go to”(转到)、“Expression”(表达式)就会跳出一个地址框,在其中输入需要修改代码的地址,比如要修改读档部分就输入45c706,然后回车或点击地址框“OK”(确定)就转到需要修改代码的地址了。当然你也可以通过鼠标滚轮查看当前当前位置附近的其它指令代码。
接下来双击要修改的指令(注意不是指令的二进制代码部分,否则成设置断点了)或单击要修改的指令后直接开始输入就会出现指令框,输入完一条指令按回车或单击指令框“Assemble”,然后继续输入下一条指令。当前位置所有指令修改完毕后按Esc或单击指令框“Cancel”,指令框就消失了,此时选中当前位置所有修改过的指令然后选右键菜单中的“Copy to Executable”(复制到可执行文件),点击“Selection”(选中)后就会出现修改后的新可执行文件框,不过暂时现别理它。点击代码区后继续修改其它位置的代码,每修改完一处代码都重复刚才的操作将修改后的代码复制到新可执行文件,在最后一处代码修改完并复制到新可执行文件后,在新可执行文件框里点右键选“Save file”保存就可以了,注意另取一名,别覆盖原文件。