注册 | 登录

游侠NETSHOW论坛





查看: 135409|回复: 1956
打印 上一主题 下一主题

[原创] 【游侠MOD组】《信长之野望13天道》内存修改教学集,教你如何固化EXE(含原版+PK版) [复制链接]

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

跳转到指定楼层
楼主
发表于 2012-6-25 18:46:15 |只看该作者 |倒序浏览
本帖最后由 魔王莉莉 于 2012-6-25 20:00 编辑

前言:

这几天看到信长区的zipwinmax大大重出江湖,打算制作信13MOD,所以特意把之前没公布的信13MOD内存固化到EXE经验整理出来,望有意制作信13MOD的各位大大能参考参考^_^

本篇文章内容由游侠MOD组tkwlee编写,游侠MOD组魔王莉莉整理,欢迎转载但请写明出处友好互助,礼尚往来。

内容简介:

沙发:程序修改原理与操作流程
(先弄明白这些基础知识,对于固化内存到EXE很必要,后面的增加EXE空间更是必须的)

板凳:EXE修改法
(初步的固化内存到EXE方法,新手就从这里开始吧)

地板:信长之野望13天道中文PK版1.01的内存修改
(由游侠MOD组tkwlee之前为已经烂尾的PK版姬狩MOD编写的数据)

5楼:
信长之野望13天道日文原版1.01的内存修改
(由游侠MOD组tkwlee之前为原版的姬狩MOD修订版编写的数据)

6楼:后记





已有 29 人评分金钱 荣誉 人气 收起 理由
黑白琴键 + 1 高端大气上档次
乌鹊南飞3 + 1 高端大气上档次
niangnass + 3 感谢分享~
yzgrey + 1 感谢分享~
步行贵族骑士 + 1 助人为乐,品格高尚~
maplesong + 1 助人为乐,品格高尚~
woshisunbofu + 1 我很赞同~
fssf + 1 很好很强大的样子~
紫夜银霄 + 1 助人为乐,品格高尚~
阿幻 + 6 + 6 感谢分享~
gft14 + 3 + 3 精华文章!
雪代缘 + 2 莉莉同学辛苦了~!
tkwlee + 188 + 2 + 3 -_-b
Relax@ + 50 + 3 感谢分享~
a954332 + 1 感谢分享~
aa11229369 + 1 拍,补上
Escailbvr + 1 感谢分享~
~“君子”~ + 1 感谢分享~
xjwfs + 1 不明觉厉啊
axj07 + 6 感谢分享~
zhouli520 + 10 + 3 嘿嘿
8wy035415 + 1 莉莉的一定要顶
ice_dailei + 4 鼓励的句子……
M124210687 + 2 大家好,LMAO汉化组又和大家见面了!.
水龙袭 + 1 感谢分享~
hansomehy + 1 缅怀3年前的今天去世的麦克杰克逊.
theonekaka + 200 + 5 + 3 大家好,LMAO汉化组又和大家见面了!.
cyehua + 3 + 3 感谢分享~
tbchyu001 + 1 顶莉莉

总评分: 金钱 + 460  荣誉 + 7  人气 + 58   查看全部评分

使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

沙发
发表于 2012-6-25 18:49:46 |只看该作者
本帖最后由 peijian 于 2017-4-30 00:24 编辑



程序修改原理与操作流程:

1.序  言

    当时做信13日版姬狩(0.88版)的时候,我对汇编、破解这块也不懂,但因为mod有需求,所以边学边做,渐渐懂了不少。我现在写的东西,算比较浅的,如果将来想改其他游戏需要具体问题具体分析,这里只是一个引导文章。

老版姬狩mod那会儿,内存修改内容游侠的S大做过不少,所以我自己做的不多。当时的想法是,编写另一个程序,在游戏启动后对其自动进行内存修改,但是,因为壳、杀毒软件等等众多不稳定因素,玩家们常跳出不能游戏,而且当时还做了一些变态的防修改、防作弊工作,使得游戏更加不稳定,我很后悔。因此,在筹备第二版姬狩的时候,就准备固化到原程序里,这样比较稳定。萌娘MOD里就是这种方式的修改。



***********************************************************************************************************************************

2.PE头的知识和修改

    我们电脑上所用的程序一般都是exe格式,但不管什么文件,存储在计算机里的都是二进制的数据,程序也不例外。虽然实际上来讲,exe是由许多0和1组成的,但是我们一般将它们读取成16进制的数来进行研究,这样比较方便。

比如说,10进制的18,用16进制表示是12,用二进制表示就是0001 0010。

像0x12这样的数,我们称为一个字节(byte),两个字节就是一个字(word),两个字就是双字(dword)。计算机中,表示数据地址的数都是双字,像0x0057104C,这里的“0x”表示后面的是一个16进制的数。

微软的系统,在开始执行一个应用程序的时候,会自动开辟一个4G大小的虚拟内存空间,是虚拟的,所以只是逻辑上认为它是4G大小,实际上它几乎不占用内存,也不占用硬盘空间,只有当其中有代码载入或开辟了内存空间时才会占用计算机资源。总的来说,它是一种地址间的对应关系。

我们可以把这个虚拟空间想像成地图,但是这个地图上是空白的,什么都没有。而exe文件就是写了这些“内容”的文件,计算机会把这些代码对号入座的填到对应的位置上。什么地方有什么内容都是exe文件规定好了的,而每段程序代码所对应的虚拟地址也写在exe文件里,我们一般称之为PE文件头。

PE文件头是怎么规定的,格式应该怎么样,这里就不详说了,因为我们有工具——LordPE,用它可以对PE文件头进行编辑。

双击LordPE_hh.EXE打开程序,这个是汉化的版本,LordPE.EXE这个是原来的英文版本。




红框内是现在正在运行着的程序的信息,我们不用管,点击右边蓝色框里的“PE编辑器”按钮。

此时会弹出文件选择对话框,选择你要改的程序,比如说我们要改的信野13的主程序,NOBU13PK.exe。




这时候就可以看到一个程序PE头的一些信息了,内容很多,但我们只要注意两个地方,镜像基址和块对齐。

镜像基址,是一个额外的偏移量,它规定了计算机把程序代码载入到虚拟内存中时的起始偏移量。

块对齐,它规定了,每个代码块、数据块的最小大小,我们如果想增加一段代码空间,就必须是这个大小的倍数。

接下来点“区段”按钮。




好了,弹出了区段表,可以看到程序都定义了哪些区段。所谓区段,可以想象成一个个的住宅区,里面住着的就是程序的代码。每段都由程序制作者定义了名字、起始地址和大小。


比如说第一行的.text段:

名称        VOffset     VSize       ROffset     RSize       标志

.text       00001000    00A7BCFA    00001000    00A7C000    C0000040


名称,顾名思义,就是这个区段的名字,这个可以随便定义,计算机执行程序的时候并不在乎它叫什么名字,是用不到的。

VOffset,虚拟地址,它是一个参量,如果我们把这个数加上之前说过的那个镜像基址,在信野13中为0x400000,加上这个VOffset就是0x401000,这个地址就是.text这个区段里的代码载入到虚拟内存中时的实际地址,也就是我们常用金山游侠、CE等内存修改工具时用到的“内存地址”。

VSize,就是这个区段在程序运行后占用的虚拟内存空间的大小,这个大小可以按实际占用大小来算,可以看到这里的0x00A7BCFA很随意,并不是上面说过的块大小——0x1000的倍数。

ROffset,物理偏移量,这个是对exe文件而言的,它指出了,这个块的数据在exe文件中是从哪个地址开始的。

RSize,物理大小,这个区段在exe文件中占用的存储空间的大小。这个大小必须是块大小的倍数。

标志,这个区段是干什么的,是代码么?有数据么?可以读写么?这些信息就是标志的作用。


因为我们要固化代码到程序,有很多地方不只是修改,还要增加一些代码,而这些代码是需要空间来存储的。

所以接下来,我们就是要找到一些空闲的空间来写这些代码。

有两种方式,第一种,找到原先程序里本来就没用到的一些空白区域,直接写在那里。但是信野13里几乎没有这样的空间,所以作罢。


第二种,自己增加一段空间。


这里又有三种方式。

1.             观察区段定义,找到虚拟空间之间空白的区域,然后扩大区段大小达到增加空间的目的,这个我试过,信野13在运行的时候会释放一些代码到这些空白区域,实际上并不能使用,另外这种方式也不简单,放弃。

2.             增加一个区段,这是一般修改中用到的方法,但是因为信野13繁中PK版目前还没有去壳的破解exe放出,这里增加一个区段会导致游戏出错进不了游戏,只好放弃。

3.             扩大最后一个区段的大小,在这里就是.settec这个段,为什么是最后一个段,因为在末尾加比较容易、方便。

好了,点击.settec段,再单击右键,在弹出菜单中选择“编辑区段”。

可以看到这段的物理大小和虚拟大小都是0x0015A000,我们要增加一段,比如说增

0x4000大小的空间。将这两个数改成0x0015E000就行了。然后击“确定”退出区段修改框,再点击区段表对话框右上角的红色小叉退出到一开始打开PE编辑器时的界面。再点击“保存”按钮,保存现在对PE头的修改。




实际上,这个保存主要是为了保存PE头里的其他信息,我们增加段大小的数值,在退出段编辑器的时候工具已经对程序做了修改,所以如果怕误操作修改错了,最后自己先备份一下要修改的程序。

这一步所做的只是规定了这一段空白的区域,就像政府批了文件说可以在某个地方建楼,但是实际上那个地方可能还是原始森林……

接下来要做的就是在exe文件中增加一段真正的物理储存空间。

我们需要一个16进制编辑器,我用的是Hexworkshop这款软件,但是大多数人用的是Ultra Edit,希望名字没记错。看自己喜好用。

用编辑器打开exe文件。拖到文件末尾。




插入0x4000字节的内容。关于填充字节,可以是0x00,也可以是0xcc,这个随意填,但是一般填0xcc比较好,那样编辑起来比较直观,不容易出错。

上面的图是我用Hex Workshop编辑的界面,如果你用的是其他16进制编辑器,可能界面有所不同,需自行研究操作。

最后记得保存。

这一步,我们是从0xEF7568处加了0x4000字节。

*这一步中的插入的0x4000的这个大小严格上来讲并不正确!我们可以把最后一个区段的物理偏移与物理大小相加,得到的大小是0xEF6000,也就是说,这个程序严格上来说,exe文件的真实大小应该是0xEF6000,但是实际的大小却是0xEF7568!也就是说,原程序后面还附加了一些内容。我们在区段定义里加了0x4000的空间,但是因为实际大小比理论大小要大,所以0x4000是有点大了。我们应当填充的大小应该是:0x4000-(0xEF7568-0xEF6000)=0x2A98。而原程序后面多加的内容是当成这增加的0x4000空间的一部分了,所以我们真正可以用的地方是从exe文件中的0xEF7568处开始,内存中是从(0x0FC13000+0x15A000+0x400000)+(0xEF7568-0xEF6000)=0x1016E568处开始。


萌娘mod中,我加了0x4000字节的空间,因为多加了点空间其实也没什么问题,也就这样了。


我们新增加的代码在内存(我们一般讲的内存地址都是虚拟内存,真正的物理内存中的内容我们是看不到的)中是从哪个地方开始的呢?

通过前面讲到知识我们已经可以计算了。

这样,我们新增的内容,在内存中的地址是从0x1016E568开始,对应的exe文件中的内容是从0xEF7568开始。



***********************************************************************************************************************


3.内存研究成果的固化操作

做好前面的准备工作,就可以着手进行固化操作了。我是从干净的原程序开始做起讲的,如果是在我之前改过的exe文件上修改,则不需要之前讲过的步骤。

通过前面的说明,我们已经了解,对于增加的内存代码,我们是有要求的,就是要在0x1016E568后面才行,那里才有我们的新增的空间。

有些内存修改研究者,往往在改内存代码时见缝插针。如下面的代码:

00629EA4  jmp 0x400100

       ……

       ……

       00400100  mov eax,0x10


       在内存0x00400100处新增了代码。

我们知道,第一段的偏移是0x1000,而虚拟偏移量是0x400000,也就是说第一段程序是从0x401000处开始的,0x00400100这个地方,在exe文件中并没有指定的位置。另外,新增的代码写在自己定义的空间里才是最安全的,不容易出错。所以,我们要对别人的研究成果进行修改才能使用。

改成如下:

00629EA4  jmp 0x1016F000

……

……

1016F000  mov eax,0x10


修改代码往往是用OllyDbg这款工具完成的,可以说这是crack界的神器,非它不可。一般的工作都可以通过它来完成,但是如果是破解一些比较厉害的软件,可能就不行了,需要硬调试工具,那个在这里就不谈了。

有两种方式去调试一个程序,一种是先启动你的目标程序,再点OllyDbg菜单上的“文件”——“附加”,选择你的目标程序的进程,再点“附加”按钮,就会载入目标程序的信息,等待片刻,此时会自动中断目标程序的运行,按F9就可以继续让目标程序运行了。

另一种方式是,直接在菜单上点“文件”——“打开”,选择你的目标程序,工具会自动载入目标程序的代码,同样点工具栏上的运行按钮,或是按F9都可以让目标程序运行。

用打开方式载入信野13时,会提示代码被压缩或加密,这个不用管它,点是或否都行。如果你在这一步打开时,工具提示无法启动,或者游戏启动出错,那就说明你前面新增空间的部分有地方做得不对。

       F9运行游戏,进入游戏看到主界面,这时候就可以切到工具这里进行修改了。




    在上图蓝色框内右键——“转到”——“表达式”,打开一个对话框,在里面输入内存地址,按确定,转到对应的内存处,在对应的地方按下空格键就可以输入汇编码来进行修改了。

通常,在修改完成后,只要右键点击,使用“复制到可执行文件”命令,就可以把修改的内容写到exe文件中,但是信野13因为壳的关系,会出现无法定位的情况。这时候就需要人工进行输入修改了。

举个例子:

我要修改女武将可以跟姬百合,研究发现只要把内存0x008517c0处改成0x00就可以了。

计算一下这个地方对应在exe文件中的具体位置,0x008517c0-0x00400000=0x004517c0,用16进制编辑器打开游戏程序NOBU13PK.exe,把0x004517c0处改成0x00,保存。重新运行程序,用CE或者Ollydbg等可以查看内存的工具,找到0x8517c0处,发现,改过的数值并不是0x00,而是0x83!这是因为有壳的关系,数值发生了变化。幸好的是,信野13的壳很有意思,如果把0x83这个数再写到exe文件对应的地址0x004517c0处,你会发现,重启游戏后,数值居然正确了。这就是目前修改原有代码的步骤。

再举个例子:

我要修改0x1016F201处为:

1016F201    8948 04           mov     dword ptr ds:[eax+4], ecx


计算一下0x1016f201对应在exe文件中的地址:

0x1016f201-(0x0FC13000+0x00400000-0x00D9C000)

=0x1016F201-0x0F277000

=0xEF8201

因为这里是我们新增的内容,壳管不到,所以就简单多了,只要在0xEF8201处写入这段汇编的机器码0x8948 04就行了。有时候,需要写入的代码会比较长,手工输入一大堆数字也挺烦的,但是也没什么办法,目前我也没找到什么好的工具或是方法。


用Ollydbg主要是可以进行调试,另外,用Ollydbg写汇编码的时候,生成的机器码要比CE规范,极个别的汇编码CE会出错。但是如果你习惯用CE来改代码,也不是不可以。


好了,这就是需要了解的内容了,一时兴起写的文章,或许有疏漏,请见谅。





                                                                                           Tkwlee

                                                                                    2011年8月19日





使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

板凳
发表于 2012-6-25 19:11:28 |只看该作者
本帖最后由 peijian 于 2017-4-30 00:25 编辑



EXE修改法:
1.这里,先引入两篇简单的EXE文字修改:
[分享] exe字符修改指南 (作者:一肚子坏水 )
[原创] 天道战法文字图片修改方法 (作者:f8dchao )

这两篇文章,分别都教了修改EXE中文字的方法,如“足轻”改为“战士”,战法“枪一”改成“神杀”等


*****************************************************************************************************************************

2.现在开始教大家直接简单内存固化EXE的方法:

如何固化exe代码,一般向(有个别情况会因为出错而无法更改,这种情况解决起来有点烦,不谈)
例如,要把0067ee91=数A 写到exe 里,用16进制编辑器打开exe,找到27ee91(0067ee91-400000),把数A写进去 保存。
再启动这个刚改过的exe,到游戏主界面,用内存修改工具找到内存0067ee91处,查看此时数据为数B,然后关掉游戏,再用16进制编辑器打开exe文件,找到刚才修改的地址27ee91,改为数B 保存。完工
以上方法适用于经过壳加密的代码的修改,如果是像固定的值,如战法指令的名字、四围的名字等,还有我新加的代码部分 都是可以直接修改的,不需要上面的转化。


以上方法是修改简单的固定数值的初入门,只要把论坛各位大大已经找到的内存数据,直接转换替换到EXE就可以了



*****************************************************************************************************************************



3.信长之野望13天道中日文威力加强版的内存数据(游侠论坛里各位大大已经找出来的)

[原创] 信長之野望.天道 繁中pk1.01 內存修改 (作者:small1256  )

[原创] 天道繁中PKV1.01的一点点内存修改(主要是限制军队规模和灭队高讨死) (作者:kyohlb  )

[原创] 中文天道PK1.01架空子女戰法修改 (作者:bnn00023 )






使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

地板
发表于 2012-6-25 19:39:23 |只看该作者
本帖最后由 魔王莉莉 于 2012-6-25 19:51 编辑

信长之野望13天道中文PK版1.01的内存修改

以下是本来打算加入到信13PKMOD姬狩新传的内存数据
特别是(7.妨害战法带伤害值),还没使用到现有的MOD上
(5.MOD锁定势力名专用)和(6.读取BGMSET.ini中的内容来调整背景音乐)已经使用在《逸闻秋叶原》 《东方秋靥缘》 《萌娘之野望》各个MOD上了

1,不能生男子
0045E31E 0    60
0045E322 0    ae
0045E32B 57   9b

2,改生姬的机率,“高”改为50,“标准”改为20
(原来高是20 标准是5)
0045E3B7 32   69
0045E3C7 14   bd

0045e3d2 57   37

3,各大名可以生姬(包括女大名)
0046559A  c408    6ac6
004655CA  0        00
004655AD  0a      c4
004655BD  64      34

4,女将跟姬可以百合
008517c0  00      83

5.MOD锁定势力名专用
(例如有些人物的名字只有一个字“凉”,原来大名挂了后,由“凉”做新大名,势力会变成“无名氏“家的。
还有开了传承后,上衫跟德川两势力会固定变回“上衫家”跟“德川家”的,使用下面锁定势力名内存,将可以解决着这两个问题)

从1016f201处写入自定义函数内容,之前的部分虽然有空白区间 但是会莫名发生更改。。。
0057104c call 00520190             nop掉     //一般大名更换后换家名
0057104C    90   23           nop
0057104D    90   5c           nop
0057104E    90   05           nop
0057104F    90   2e           nop
00571050    90   90           nop

009E0241 call 00520190             nop掉    //开局传说换家名

009E0241    90   40           nop
009E0242    90   6b           nop
009E0243    90   c0           nop
009E0244    90   3e           nop
009E0245    90   5e           nop

1016F201    8948 04           mov     dword ptr ds:[eax+4],ecx
1016F204    8338 00           cmp     dword ptr ds:[eax], 0
1016F207  - 0F84 ADEF38F0     je      modNOBU1.004FE1BA
1016F20D    8848 0A           mov     byte ptr ds:[eax+A], cl
1016F210    8B4C24 04         mov     ecx, dword ptr ss:[esp+4]1016F214    8379 18 10        cmp     dword ptr ds:[ecx+18],10
1016F218    72 12             jb      short modNOBU1.1016F22C
1016F21A    8B49 04           mov     ecx, dword ptr ds:[ecx+4]
1016F21D    6A 0A             push    0A
1016F21F    51                push    ecx
1016F220    50                push    eax
1016F221    E8 5DF7ACF0       call    modNOBU1.00C3E983
1016F226    83C4 0C           add     esp, 0C
1016F229    C2 0400           retn    4
1016F22C    83C1 04           add     ecx, 4
1016F22F    C2 0400           retn    4
1016F232    90                nop

1016F240    8948 04           mov     dword ptr ds:[eax+4],ecx
1016F243    8338 00           cmp     dword ptr ds:[eax], 0
1016F246  - 0F84 FEEF38F0     je      modNOBU1.004FE24A
1016F24C    66:8948 08        mov     word ptr ds:[eax+8], cx
1016F250    8848 0A           mov     byte ptr ds:[eax+A], cl
1016F253    8B4C24 04         mov     ecx, dword ptr ss:[esp+4]
1016F257    8379 18 10        cmp     dword ptr ds:[ecx+18], 10
1016F25B    72 12             jb      short modNOBU1.1016F26F
1016F25D    8B49 04           mov     ecx, dword ptr ds:[ecx+4]
1016F260    6A 0A             push    0A
1016F262    51                push    ecx
1016F263    50                push    eax
1016F264    E8 1AF7ACF0       call    modNOBU1.00C3E983
1016F269    83C4 0C           add     esp, 0C
1016F26C    C2 0400           retn    4
1016F26F    83C1 04           add     ecx, 4
1016F272    C2 0400           retn    4

让新武将不会更改家名。这里的改动会让改名事件发生后,实际上人物的名字并不会发生变化。
004FE1B5  - E9 4710C70F   57 4710a7df   jmp     modNOBU1.1016F201
004FE245  - E9 F60FC70F   57 f60fa7df    jmp     modNOBU1.1016F240


*****************************************************************************************************************************

6.读取BGMSET.ini中的内容来调整背景音乐
(就是任何势力都可以有自己的独有BGM的内存修改)

游戏中切换势力更改玩家指针的地方:
原代码
00629EA0 - 8b 44 24 04                - mov eax,[esp+04]
00629EA4 - 89 81 20 02 00 00          - mov [ecx+00000220],eax
00629EAA - c2 04 00                   - ret 0004

内存中改为:
00629EA0 - e9 3b 54 b4 0f             - jmp 1016f2e0
00629EA5 - 90                         - nop
00629EA6 - 90                         - nop
00629EA7 - 90                         - nop
00629EA8 - 90                         - nop
00629EA9 - 90                         - nop
00629EAA - c2 04 00                   - ret 0004

---------------------------------------------------------------------
exe 00229ea0处改为  5AF7C10A0F90F0406BC0
---------------------------------------------------------------------

载入游戏时更改玩家指针的地方
原代码:
004FEDE1 - 89 07                      - mov [edi],eax    //
004FEDE3 - 5f                         - pop edi          //此三行,除了本身顺序的函数调用会用到,还会在其他地方引用
004FEDE4 - 5e                         - pop esi          //所以这三行,是不可以改的
004FEDE5 - c3                         - ret

内存中改为:
004FEDE1 - eb 03                      - jmp 004fede6     //为了保证原来代码的内容不变,先短跳跃一下
004FEDE3 - 5f                         - pop edi
004FEDE4 - 5e                         - pop esi
004FEDE5 - c3                         - ret
004FEDE6 - e9 23 05 c7 0f             - jmp 1016f30e

---------------------------------------------------------------------
exe 000fede1处改为  EB638FA59347ED406E8F
---------------------------------------------------------------------

exe 00ef8280 处,修改为以下内容,这些是变量的初始化,凡地址后面有数据的都要改

1016f280 2e 5c 42 47 4d 53 45 54 2e 69 6e 69 00        .\BGMSET.ini
1016f290 00 00 00 00 00                                存放读取的字符的地方
1016f298 42 47 4d 31 39 00                             默认的值 BGM19 只读
1016f2A0 66 6c 61 67 31 32 38 00    flagXXX            给定的参数存放
1016f2a8 4e 4f 52 4d 41 4c 00       NORMAL             段,只读
1016f2B0 00 00 00 00                  存放家纹
1016f2b4                                               家纹10进制 百位
1016f2b8                                               家纹10进制 十位
1016f2bc                                               家纹10进制 个位
1016f2c0                                               跳跃标志
1016f2c8 42 47 4d 30 32 00                             默认的值 BGM02 只读
1016f2ce 42 47 4d 30 34 00                             默认的值 BGM04 只读
1016f2d4 42 47 4d 30 35 00                             默认的值 BGM05 只读

1016f520 53 49 45 47 45 00                             SIEGE
1016f528 46 49 45 4c 44 00                             FIELD
1016f530 42 41 54 54 4c 45 00                          BATTLE

exe 00ef82e0  处修改为以下值

1016F2E0    8B4424 04                mov     eax, dword ptr ss:[esp+4]
1016F2E4    8981 20020000            mov     dword ptr ds:[ecx+220], eax
1016F2EA    C705 C0F21610 01000000   mov     dword ptr ds:[1016F2C0], 1
1016F2F4    53                       push    ebx
1016F2F5    8B1D F04A0701            mov     ebx, dword ptr ds:[1074AF0]
1016F2FB    8B9B 0C030000            mov     ebx, dword ptr ds:[ebx+30C]
1016F301    3BD9                     cmp     ebx, ecx
1016F303    75 63                    jnz     short 1016F368
1016F305    90                       nop
1016F306    90                       nop
1016F307    90                       nop
1016F308    90                       nop
1016F309    EB 2A                    jmp     short 1016F335
1016F30B    90                       nop
1016F30C    90                       nop
1016F30D    90                       nop
1016F30E    8907                     mov     dword ptr ds:[edi], eax
1016F310    C705 C0F21610 02000000   mov     dword ptr ds:[1016F2C0], 2
1016F31A    53                       push    ebx
1016F31B    8B1D F04A0701            mov     ebx, dword ptr ds:[1074AF0]
1016F321    8B9B 0C030000            mov     ebx, dword ptr ds:[ebx+30C]
1016F327    81C3 20020000            add     ebx, 220
1016F32D    3BFB                     cmp     edi, ebx
1016F32F    75 3B                    jnz     short 1016F36C
1016F331    90                       nop
1016F332    90                       nop
1016F333    90                       nop
1016F334    90                       nop
1016F335    85C0                     test    eax, eax
1016F337    74 0E                    je      short 1016F347
1016F339    90                       nop
1016F33A    90                       nop
1016F33B    90                       nop
1016F33C    90                       nop
1016F33D    8378 08 00               cmp     dword ptr ds:[eax+8], 0
1016F341    75 2D                    jnz     short 1016F370
1016F343    90                       nop
1016F344    90                       nop
1016F345    90                       nop
1016F346    90                       nop
1016F347    C705 44F0E700 42474D31   mov     dword ptr ds:[E7F044], 314D4742
1016F351    C705 48F0E700 372E6B76   mov     dword ptr ds:[E7F048], 766B2E37
1016F35B    833D C0F21610 01         cmp     dword ptr ds:[1016F2C0], 1
1016F362    75 08                    jnz     short 1016F36C
1016F364    90                       nop
1016F365    90                       nop
1016F366    90                       nop
1016F367    90                       nop
1016F368    5B                       pop     ebx
1016F369    C2 0400                  retn    4
1016F36C    5B                       pop     ebx
1016F36D    5F                       pop     edi
1016F36E    5E                       pop     esi
1016F36F    C3                       retn
1016F370    50                       push    eax
1016F371    8B58 08                  mov     ebx, dword ptr ds:[eax+8]
1016F374    8B83 C4000000            mov     eax, dword ptr ds:[ebx+C4]
1016F37A    A3 B0F21610              mov     dword ptr ds:[1016F2B0], eax
1016F37F    52                       push    edx
1016F380    BA 00000000              mov     edx, 0
1016F385    BB 64000000              mov     ebx, 64
1016F38A    F7F3                     div     ebx
1016F38C    A3 B4F21610              mov     dword ptr ds:[1016F2B4], eax
1016F391    8BC2                     mov     eax, edx
1016F393    BA 00000000              mov     edx, 0
1016F398    BB 0A000000              mov     ebx, 0A
1016F39D    F7F3                     div     ebx
1016F39F    A3 B8F21610              mov     dword ptr ds:[1016F2B8], eax
1016F3A4    8915 BCF21610            mov     dword ptr ds:[1016F2BC], edx
1016F3AA    8305 B4F21610 30         add     dword ptr ds:[1016F2B4], 30
1016F3B1    8305 B8F21610 30         add     dword ptr ds:[1016F2B8], 30
1016F3B8    C125 B8F21610 08         shl     dword ptr ds:[1016F2B8], 8
1016F3BF    8305 BCF21610 30         add     dword ptr ds:[1016F2BC], 30
1016F3C6    C125 BCF21610 10         shl     dword ptr ds:[1016F2BC], 10
1016F3CD    C705 A0F21610 666C6167   mov     dword ptr ds:[1016F2A0], 67616C66
1016F3D7    A1 B4F21610              mov     eax, dword ptr ds:[1016F2B4]
1016F3DC    A3 A4F21610              mov     dword ptr ds:[1016F2A4], eax
1016F3E1    A1 B8F21610              mov     eax, dword ptr ds:[1016F2B8]
1016F3E6    0105 A4F21610            add     dword ptr ds:[1016F2A4], eax
1016F3EC    A1 BCF21610              mov     eax, dword ptr ds:[1016F2BC]
1016F3F1    0105 A4F21610            add     dword ptr ds:[1016F2A4], eax
1016F3F7    68 80F21610              push    1016F280                                       ; ASCII ".\BGMSET.ini"
1016F3FC    6A 06                    push    6
1016F3FE    68 90F21610              push    1016F290
1016F403    68 98F21610              push    1016F298                                       ; ASCII "BGM19"
1016F408    68 A0F21610              push    1016F2A0
1016F40D    68 A8F21610              push    1016F2A8                                       ; ASCII "NORMAL"  平时
1016F412    FF15 08CE1510            call    dword ptr ds:[1015CE08]     ; kernel32.GetPrivateProfileStringA
1016F418    A1 90F21610              mov     eax, dword ptr ds:[1016F290]
1016F41D    A3 44F0E700              mov     dword ptr ds:[E7F044], eax
1016F422    A1 94F21610              mov     eax, dword ptr ds:[1016F294]
1016F427    25 FF000000              and     eax, 0FF
1016F42C    05 002E6B76              add     eax, 766B2E00
1016F431    A3 48F0E700              mov     dword ptr ds:[E7F048], eax
1016F436    68 80F21610              push    1016F280                                       ; ASCII ".\BGMSET.ini"
1016F43B    6A 06                    push    6
1016F43D    68 90F21610              push    1016F290
1016F442    68 D4F21610              push    1016F2D4                                       ; ASCII "BGM05"
1016F447    68 A0F21610              push    1016F2A0
1016F44C    68 20F51610              push    1016F520                                       ; ASCII "SIEGE"  攻城
1016F451    FF15 08CE1510            call    dword ptr ds:[<&KERNEL32.GetPrivateProfileStringA>]     ; kernel32.GetPrivateProfileStringA
1016F457    A1 90F21610              mov     eax, dword ptr ds:[1016F290]
1016F45C    A3 40EFE700              mov     dword ptr ds:[E7EF40], eax
1016F461    A1 94F21610              mov     eax, dword ptr ds:[1016F294]
1016F466    25 FF000000              and     eax, 0FF
1016F46B    05 002E6B76              add     eax, 766B2E00
1016F470    A3 44EFE700              mov     dword ptr ds:[E7EF44], eax
1016F475    68 80F21610              push    1016F280                                       ; ASCII ".\BGMSET.ini"
1016F47A    6A 06                    push    6
1016F47C    68 90F21610              push    1016F290
1016F481    68 CEF21610              push    1016F2CE                                       ; ASCII "BGM04"
1016F486    68 A0F21610              push    1016F2A0
1016F48B    68 28F51610              push    1016F528                                       ; ASCII "FIELD"  野战
1016F490    FF15 08CE1510            call    dword ptr ds:[<&KERNEL32.GetPrivateProfileStringA>]     ; kernel32.GetPrivateProfileStringA
1016F496    A1 90F21610              mov     eax, dword ptr ds:[1016F290]
1016F49B    A3 2CEFE700              mov     dword ptr ds:[E7EF2C], eax
1016F4A0    A3 68EFE700              mov     dword ptr ds:[E7EF68], eax
1016F4A5    A1 94F21610              mov     eax, dword ptr ds:[1016F294]
1016F4AA    25 FF000000              and     eax, 0FF
1016F4AF    05 002E6B76              add     eax, 766B2E00
1016F4B4    A3 30EFE700              mov     dword ptr ds:[E7EF30], eax
1016F4B9    A3 6CEFE700              mov     dword ptr ds:[E7EF6C], eax
1016F4BE    68 80F21610              push    1016F280                                       ; ASCII ".\BGMSET.ini"
1016F4C3    6A 06                    push    6
1016F4C5    68 90F21610              push    1016F290
1016F4CA    68 C8F21610              push    1016F2C8                                       ; ASCII "BGM02"
1016F4CF    68 A0F21610              push    1016F2A0
1016F4D4    68 30F51610              push    1016F530                                       ; ASCII "BATTLE"  进军
1016F4D9    FF15 08CE1510            call    dword ptr ds:[<&KERNEL32.GetPrivateProfileStringA>]     ; kernel32.GetPrivateProfileStringA
1016F4DF    A1 90F21610              mov     eax, dword ptr ds:[1016F290]
1016F4E4    A3 04EFE700              mov     dword ptr ds:[E7EF04], eax
1016F4E9    A3 54EFE700              mov     dword ptr ds:[E7EF54], eax
1016F4EE    A1 94F21610              mov     eax, dword ptr ds:[1016F294]
1016F4F3    25 FF000000              and     eax, 0FF
1016F4F8    05 002E6B76              add     eax, 766B2E00
1016F4FD    A3 08EFE700              mov     dword ptr ds:[E7EF08], eax
1016F502    A3 58EFE700              mov     dword ptr ds:[E7EF58], eax
1016F507    5A                       pop     edx
1016F508    58                       pop     eax
1016F509    5B                       pop     ebx
1016F50A    833D C0F21610 01         cmp     dword ptr ds:[1016F2C0], 1
1016F511    75 03                    jnz     short 1016F516
1016F513    C2 0400                  retn    4
1016F516    5F                       pop     edi
1016F517    5E                       pop     esi
1016F518    C3                       retn

ps:
[1074af0]  基址a
[基址a+0x30c]+0x220  就是判断玩家是哪个势力的地址 该地址指向势力列表中对应的势力开始的地址




*****************************************************************************************************************************


7.妨害战法带伤害值:
(就是使妨害战法,如骂声,乱破等都带伤害参数,而原来的离间,火牛也可以使用这些新的伤害参数)

1016f540 储存施放者智力

<原文件exe   ef8550处开始修改>

1016F550    50                    push    eax                       //获得施术武将智力并储存的函数
1016F551    8B46 08               mov     eax, dword ptr ds:[esi+8]
1016F554    8B40 20               mov     eax, dword ptr ds:[eax+20]
1016F557    8B40 10               mov     eax, dword ptr ds:[eax+10]
1016F55A    8B40 08               mov     eax, dword ptr ds:[eax+8]
1016F55D    8B80 C0010000         mov     eax, dword ptr ds:[eax+1C0]
1016F563    A3 40F51610           mov     dword ptr ds:[1016F540], eax
1016F568    58                    pop     eax
1016F569    C3                    retn

1016F570    E8 DBFFFFFF           call    modNOBU1.1016F550      //与原程序接口,先调用自写函数获得施术武将智力并储存
1016F575    6A FF                 push    -1
1016F577    68 88FADB00           push    modNOBU1.00DBFA88
1016F57C  - E9 960947F0           jmp     modNOBU1.005DFF17

1016F5B0    83EC 08               sub     esp, 8                    //自写伤害函数
1016F5B3    53                    push    ebx
1016F5B4    56                    push    esi
1016F5B5    8B7424 14             mov     esi, dword ptr ss:[esp+14]
1016F5B9    56                    push    esi
1016F5BA    8BD9                  mov     ebx, ecx
1016F5BC    E8 2F093CF0           call    modNOBU1.0052FEF0         //?判断小队是否受到伤害
1016F5C1    83C4 04               add     esp, 4
1016F5C4    84C0                  test    al, al
1016F5C6    0F84 E8000000         je      modNOBU1.1016F6B4
1016F5CC    8B06                  mov     eax, dword ptr ds:[esi]
1016F5CE    8B90 84000000         mov     edx, dword ptr ds:[eax+84]
1016F5D4    57                    push    edi
1016F5D5    8BCE                  mov     ecx, esi
1016F5D7    BF 01000000           mov     edi, 1
1016F5DC    FFD2                  call    edx
1016F5DE    84C0                  test    al, al
1016F5E0    74 1B                 je      short modNOBU1.1016F5FD
1016F5E2    90                    nop
1016F5E3    90                    nop
1016F5E4    90                    nop
1016F5E5    90                    nop
1016F5E6    56                    push    esi
1016F5E7    E8 34BD4CF0           call    modNOBU1.0063B320
1016F5EC    83C4 04               add     esp, 4
1016F5EF    85C0                  test    eax, eax
1016F5F1    7E 0A                 jle     short modNOBU1.1016F5FD        //判断对象是否是一个据点,如果是部队就跳
1016F5F3    90                    nop
1016F5F4    90                    nop
1016F5F5    90                    nop
1016F5F6    90                    nop
1016F5F7    BF 02000000           mov     edi, 2                         //对城效果减半
1016F5FC    90                    nop
1016F5FD    8B06                  mov     eax, dword ptr ds:[esi]
1016F5FF    8B90 88000000         mov     edx, dword ptr ds:[eax+88]
1016F605    8BCE                  mov     ecx, esi
1016F607    FFD2                  call    edx
1016F609    BA 14000000           mov     edx, 14                        //伤害变量 A = 20
1016F60E    E8 AC000000           call    modNOBU1.1016F6BF              //调用自写伤害数值函数
1016F613    8BCE                  mov     ecx, esi
1016F615    C74424 0C 64000000    mov     dword ptr ss:[esp+C], 64
1016F61D    F7FF                  idiv    edi                            //对据点减弱倍数
1016F61F    8BF8                  mov     edi, eax
1016F621    897C24 18             mov     dword ptr ss:[esp+18], edi
1016F625    E8 066D3CF0           call    modNOBU1.00536330
1016F62A    83FF 64               cmp     edi, 64
1016F62D    8BC8                  mov     ecx, eax
1016F62F    894C24 10             mov     dword ptr ss:[esp+10], ecx
1016F633    8D4424 18             lea     eax, dword ptr ss:[esp+18]
1016F637    7F 04                 jg      short modNOBU1.1016F63D
1016F639    8D4424 0C             lea     eax, dword ptr ss:[esp+C]
1016F63D    3908                  cmp     dword ptr ds:[eax], ecx
1016F63F    7C 04                 jl      short modNOBU1.1016F645
1016F641    8D4424 10             lea     eax, dword ptr ss:[esp+10]
1016F645    8B38                  mov     edi, dword ptr ds:[eax]
1016F647    8B06                  mov     eax, dword ptr ds:[esi]
1016F649    8B90 DC000000         mov     edx, dword ptr ds:[eax+DC]
1016F64F    6A 01                 push    1
1016F651    6A 01                 push    1
1016F653    57                    push    edi
1016F654    68 822D0000           push    2D82
1016F659    8BCE                  mov     ecx, esi
1016F65B    FFD2                  call    edx
1016F65D    8BCE                  mov     ecx, esi
1016F65F    E8 CC6C3CF0           call    modNOBU1.00536330
1016F664    2BC7                  sub     eax, edi
1016F666    50                    push    eax
1016F667    8BCE                  mov     ecx, esi
1016F669    E8 821A3AF0           call    modNOBU1.005110F0
1016F66E    8BCE                  mov     ecx, esi
1016F670    E8 BB6C3CF0           call    modNOBU1.00536330
1016F675    85C0                  test    eax, eax
1016F677    5F                    pop     edi
1016F678    7F 3A                 jg      short modNOBU1.1016F6B4           //判断是否灭队,没灭就跳
1016F67A    8B4B 08               mov     ecx, dword ptr ds:[ebx+8]
1016F67D    8B01                  mov     eax, dword ptr ds:[ecx]
1016F67F    8B90 CC000000         mov     edx, dword ptr ds:[eax+CC]
1016F685    FFD2                  call    edx
1016F687    84C0                  test    al, al
1016F689    74 10                 je      short modNOBU1.1016F69B
1016F68B    8B06                  mov     eax, dword ptr ds:[esi]
1016F68D    8B90 84000000         mov     edx, dword ptr ds:[eax+84]
1016F693    8BCE                  mov     ecx, esi
1016F695    FFD2                  call    edx
1016F697    84C0                  test    al, al
1016F699    75 19                 jnz     short modNOBU1.1016F6B4           //?是否全灭
1016F69B    8B4B 08               mov     ecx, dword ptr ds:[ebx+8]
1016F69E    8B06                  mov     eax, dword ptr ds:[esi]
1016F6A0    8B50 40               mov     edx, dword ptr ds:[eax+40]
1016F6A3    6A 00                 push    0
1016F6A5    6A 00                 push    0
1016F6A7    51                    push    ecx
1016F6A8    8BCE                  mov     ecx, esi
1016F6AA    FFD2                  call    edx
1016F6AC    5E                    pop     esi
1016F6AD    5B                    pop     ebx
1016F6AE    83C4 08               add     esp, 8
1016F6B1    C2 0400               retn    4
1016F6B4    5E                    pop     esi
1016F6B5    5B                    pop     ebx
1016F6B6    83C4 08               add     esp, 8
1016F6B9    C2 0400               retn    4

1016F6BF    53                    push    ebx                        //自写伤害计算函数,最终伤害为eax
1016F6C0    52                    push    edx
1016F6C1    8BD8                  mov     ebx, eax
1016F6C3    A1 40F51610           mov     eax, dword ptr ds:[1016F540]
1016F6C8    B9 02000000           mov     ecx, 2                     //变量B
1016F6CD    F7E9                  imul    ecx
1016F6CF    3BC3                  cmp     eax, ebx
1016F6D1    7F 02                 jg      short modNOBU1.1016F6D5
1016F6D3    8BC3                  mov     eax, ebx
1016F6D5    2BC3                  sub     eax, ebx
1016F6D7    5A                    pop     edx
1016F6D8    03C2                  add     eax, edx
1016F6DA    B9 0A000000           mov     ecx, 0A                    //变量C
1016F6DF    F7E9                  imul    ecx
1016F6E1    5B                    pop     ebx
1016F6E2    C3                    retn

对部队伤害 dmg = (施术武将智力*变量B - 受害部队武将智力+变量A )*变量C

此处,变量A=20,变量B=2,变量C=10

施术武将智力*变量B - 受害部队武将智力  此处会判断结果是否大于0,如果不是,会强制赋0。也就是说,
dmg>=变量A*变量C,如果变量A*变量C小于100,则dmg=100。这是原游戏的设定,伤害最低不得少于100。

对城,dmg减半。

(其中变量A可根据不同战法需要改变数值,以备将来可能修改更多的计谋战法时用;但是B和C固定在程序中,作为整体调整)


**建议调整变量A 和变量C,变量A在exe文件中的地址ef860a,变量C在exe中的地址ef86db,可以自己用16进制编辑器修改

005DFF10    - E9 5BF6B80F   7c e5f6b86f      jmp     mod.1016F570
005DFF15      90            40      nop
005DFF16      90            6b      nop

005DFFAA    E8 01F6B80F     call    modNOBU1.1016F5B0

_______________________火牛__________________________________
005E06A0  - E9 4BF0B80F  ac e270e38c   jmp     1016F6F0
005E06A5    90           86             nop
005E06A6    90           23            nop

005D9421    BA 1E000000           mov     edx, 1E
005D9426    E8 9462B90F           call    modNOBU1.1016F6BF
005D942B    8BCE                  mov     ecx, esi
005D942D    C74424 0C 64000000    mov     dword ptr ss:[esp+C], 64
005D9435    EB 1A                 jmp     short modNOBU1.005D9451

1016F6F0    E8 5BFEFFFF           call    modNOBU1.1016F550
1016F6F5    6A FF                 push    -1
1016F6F7    68 E8FADB00           push    modNOBU1.00DBFAE8
1016F6FC  - E9 A60F47F0           jmp     modNOBU1.005E06A7



参数A 原文件 1d9422处

_____________________离间_____________________________________

005E0BA0  - E9 63EBB80F           jmp     modNOBU1.1016F708
005E0BA5    90                    nop
005E0BA6    90                    nop

005D9641    BA 0A000000           mov     edx, 0A
005D9646    E8 7460B90F           call    modNOBU1.1016F6BF
005D964B    8BCE                  mov     ecx, esi
005D964D    C74424 0C 64000000    mov     dword ptr ss:[esp+C], 64
005D9655    EB 1A                 jmp     short modNOBU1.005D9671

1016F708    E8 43FEFFFF           call    modNOBU1.1016F550
1016F70D    6A FF                 push    -1
1016F70F    68 78FBDB00           push    modNOBU1.00DBFB78
1016F714  - E9 8E1447F0           jmp     modNOBU1.005E0BA7

参数A 原文件 1d9642处

_____________________乱破_____________________________________

005E0840  - E9 DBEEB80F     jmp     modNOBU1.1016F720
005E0845    90              nop
005E0846    90              nop

005E08DA  - E9 B1ECB80F     jmp     modNOBU1.1016F590

1016F590    51                    push    ecx                       //在原骂声战法效果前增加伤害效果,此处先保存现场
1016F591    52                    push    edx
1016F592    53                    push    ebx
1016F593    54                    push    esp
1016F594    55                    push    ebp
1016F595    56                    push    esi
1016F596    57                    push    edi
1016F597    50                    push    eax
1016F598    E8 9B010000           call    modNOBU1.1016F738         //调用自写伤害效果函数
1016F59D    5F                    pop     edi                       //调用完毕,恢复现场
1016F59E    5E                    pop     esi
1016F59F    5D                    pop     ebp
1016F5A0    5C                    pop     esp
1016F5A1    5B                    pop     ebx
1016F5A2    5A                    pop     edx
1016F5A3    59                    pop     ecx
1016F5A4    E8 979C46F0           call    modNOBU1.005D9240         //原骂声减士气效果函数
1016F5A9  - E9 311347F0           jmp     modNOBU1.005E08DF

1016F720    E8 2BFEFFFF     call    modNOBU1.1016F550
1016F725    6A FF           push    -1
1016F727    68 18FBDB00     push    modNOBU1.00DBFB18
1016F72C  - E9 161147F0     jmp     modNOBU1.005E0847

1016F738    83EC 08               sub     esp, 8
1016F73B    53                    push    ebx
1016F73C    56                    push    esi
1016F73D    8B7424 14             mov     esi, dword ptr ss:[esp+14]
1016F741    56                    push    esi
1016F742    8BD9                  mov     ebx, ecx
1016F744    E8 A7073CF0           call    modNOBU1.0052FEF0
1016F749    83C4 04               add     esp, 4
1016F74C    84C0                  test    al, al
1016F74E    0F84 DF000000         je      modNOBU1.1016F833
1016F754    8B06                  mov     eax, dword ptr ds:[esi]
1016F756    8B90 84000000         mov     edx, dword ptr ds:[eax+84]
1016F75C    57                    push    edi
1016F75D    8BCE                  mov     ecx, esi
1016F75F    BF 01000000           mov     edi, 1
1016F764    FFD2                  call    edx
1016F766    84C0                  test    al, al
1016F768    74 12                 je      short modNOBU1.1016F77C
1016F76A    56                    push    esi
1016F76B    E8 B0BB4CF0           call    modNOBU1.0063B320
1016F770    83C4 04               add     esp, 4
1016F773    85C0                  test    eax, eax
1016F775    7E 05                 jle     short modNOBU1.1016F77C
1016F777    BF 02000000           mov     edi, 2
1016F77C    8B06                  mov     eax, dword ptr ds:[esi]
1016F77E    8B90 88000000         mov     edx, dword ptr ds:[eax+88]
1016F784    8BCE                  mov     ecx, esi
1016F786    FFD2                  call    edx
1016F788    BA 14000000           mov     edx, 14         //参数A
1016F78D    E8 2DFFFFFF           call    modNOBU1.1016F6BF
1016F792    8BCE                  mov     ecx, esi
1016F794    C74424 0C 64000000    mov     dword ptr ss:[esp+C], 64
1016F79C    F7FF                  idiv    edi
1016F79E    8BF8                  mov     edi, eax
1016F7A0    897C24 18             mov     dword ptr ss:[esp+18], edi
1016F7A4    E8 876B3CF0           call    modNOBU1.00536330
1016F7A9    83FF 64               cmp     edi, 64
1016F7AC    8BC8                  mov     ecx, eax
1016F7AE    894C24 10             mov     dword ptr ss:[esp+10], ecx
1016F7B2    8D4424 18             lea     eax, dword ptr ss:[esp+18]
1016F7B6    7F 04                 jg      short modNOBU1.1016F7BC
1016F7B8    8D4424 0C             lea     eax, dword ptr ss:[esp+C]
1016F7BC    3908                  cmp     dword ptr ds:[eax], ecx
1016F7BE    7C 04                 jl      short modNOBU1.1016F7C4
1016F7C0    8D4424 10             lea     eax, dword ptr ss:[esp+10]
1016F7C4    8B38                  mov     edi, dword ptr ds:[eax]
1016F7C6    8B06                  mov     eax, dword ptr ds:[esi]
1016F7C8    8B90 DC000000         mov     edx, dword ptr ds:[eax+DC]
1016F7CE    6A 01                 push    1
1016F7D0    6A 01                 push    1
1016F7D2    57                    push    edi
1016F7D3    68 822D0000           push    2D82
1016F7D8    8BCE                  mov     ecx, esi
1016F7DA    FFD2                  call    edx
1016F7DC    8BCE                  mov     ecx, esi
1016F7DE    E8 4D6B3CF0           call    modNOBU1.00536330
1016F7E3    2BC7                  sub     eax, edi
1016F7E5    50                    push    eax
1016F7E6    8BCE                  mov     ecx, esi
1016F7E8    E8 03193AF0           call    modNOBU1.005110F0
1016F7ED    8BCE                  mov     ecx, esi
1016F7EF    E8 3C6B3CF0           call    modNOBU1.00536330
1016F7F4    85C0                  test    eax, eax
1016F7F6    5F                    pop     edi
1016F7F7    7F 3A                 jg      short modNOBU1.1016F833
1016F7F9    8B4B 08               mov     ecx, dword ptr ds:[ebx+8]
1016F7FC    8B01                  mov     eax, dword ptr ds:[ecx]
1016F7FE    8B90 CC000000         mov     edx, dword ptr ds:[eax+CC]
1016F804    FFD2                  call    edx
1016F806    84C0                  test    al, al
1016F808    74 10                 je      short modNOBU1.1016F81A
1016F80A    8B06                  mov     eax, dword ptr ds:[esi]
1016F80C    8B90 84000000         mov     edx, dword ptr ds:[eax+84]
1016F812    8BCE                  mov     ecx, esi
1016F814    FFD2                  call    edx
1016F816    84C0                  test    al, al
1016F818    75 19                 jnz     short modNOBU1.1016F833
1016F81A    8B4B 08               mov     ecx, dword ptr ds:[ebx+8]
1016F81D    8B06                  mov     eax, dword ptr ds:[esi]
1016F81F    8B50 40               mov     edx, dword ptr ds:[eax+40]
1016F822    6A 00                 push    0
1016F824    6A 00                 push    0
1016F826    51                    push    ecx
1016F827    8BCE                  mov     ecx, esi
1016F829    FFD2                  call    edx
1016F82B    5E                    pop     esi
1016F82C    5B                    pop     ebx
1016F82D    83C4 08               add     esp, 8
1016F830    C2 0400               retn    4
1016F833    5E                    pop     esi
1016F834    5B                    pop     ebx
1016F835    83C4 08               add     esp, 8
1016F838    C2 0400               retn    4

参数A 原文件 ef8789 处
_____________________________________________________________________________________________________
以下为研究手稿
_____________________________________________________________________________________________________


读取斗气消耗
005F8900 - 8b 41 74                   - mov eax,[ecx+74]
005F8903 - c3                         - ret


减斗气
536166

减对手兵力
5361BF

005D5DEE    52              push    edx    //对象部队的数据开头指针
005D5DEF    50              push    eax    //部分伤害数
005D5DF0    8BCD            mov     ecx, ebp
005D5DF2    E8 A903F6FF     call    mod.005361A0

005E178F    52              push    edx
005E1790    50              push    eax
005E1791    8BCF            mov     ecx, edi
005E1793    E8 3845FFFF     call    mod.005D5CD0

005E18B0    56              push    esi
005E18B1    8BF1            mov     esi, ecx
005E18B3    8B4E 08         mov     ecx, dword ptr ds:[esi+8]
005E18B6    8B01            mov     eax, dword ptr ds:[ecx]
005E18B8    8B90 F8000000   mov     edx, dword ptr ds:[eax+F8]
005E18BE    FFD2            call    edx
005E18C0    84C0            test    al, al
005E18C2    75 07           jnz     short mod.005E18CB
005E18C4    8BCE            mov     ecx, esi
005E18C6    E8 95FCFFFF     call    mod.005E1560
005E18CB    32C0            xor     al, al
005E18CD    5E              pop     esi
005E18CE    C2 0400         retn    4



减士气
//005D9284 - 89 56 48                   - mov [esi+48],edx
005DFFA7    50              push    eax //对象部队的数据开头指针
005DFFA8    8BCF            mov     ecx, edi
005DFFAA    E8 9192FFFF     call    mod.005D9240

005DFF10    6A FF                 push    -1
005DFF12    68 88FADB00           push    mod.00DBFA88
005DFF17    64:A1 00000000        mov     eax, dword ptr fs:[0]
005DFF1D    50                    push    eax
005DFF1E    83EC 24               sub     esp, 24
005DFF21    53                    push    ebx
005DFF22    56                    push    esi
005DFF23    57                    push    edi
005DFF24    A1 7C2B0601           mov     eax, dword ptr ds:[1062B7C]
005DFF29    33C4                  xor     eax, esp
005DFF2B    50                    push    eax
005DFF2C    8D4424 34             lea     eax, dword ptr ss:[esp+34]
005DFF30    64:A3 00000000        mov     dword ptr fs:[0], eax
005DFF36    8BF9                  mov     edi, ecx
005DFF38    E8 3314E2FF           call    mod.00401370
005DFF3D    33F6                  xor     esi, esi
005DFF3F    56                    push    esi
005DFF40    8D4C24 14             lea     ecx, dword ptr ss:[esp+14]
005DFF44    51                    push    ecx
005DFF45    8BC8                  mov     ecx, eax
005DFF47    E8 B450E2FF           call    mod.00405000
005DFF4C    E8 CF13E2FF           call    mod.00401320
005DFF51    56                    push    esi
005DFF52    8D5424 1C             lea     edx, dword ptr ss:[esp+1C]
005DFF56    52                    push    edx
005DFF57    8BC8                  mov     ecx, eax
005DFF59    E8 A250E2FF           call    mod.00405000
005DFF5E    E8 0D14E2FF           call    mod.00401370
005DFF63    56                    push    esi
005DFF64    8D4C24 24             lea     ecx, dword ptr ss:[esp+24]
005DFF68    51                    push    ecx
005DFF69    8BC8                  mov     ecx, eax
005DFF6B    E8 9050E2FF           call    mod.00405000
005DFF70    8D4C24 28             lea     ecx, dword ptr ss:[esp+28]
005DFF74    E8 A7C4F2FF           call    mod.0050C420
005DFF79    894424 2C             mov     dword ptr ss:[esp+2C], eax
005DFF7D    897424 30             mov     dword ptr ss:[esp+30], esi
005DFF81    8D5424 28             lea     edx, dword ptr ss:[esp+28]
005DFF85    52                    push    edx
005DFF86    8BCF                  mov     ecx, edi
005DFF88    897424 40             mov     dword ptr ss:[esp+40], esi
005DFF8C    E8 BFFEFFFF           call    mod.005DFE50
005DFF91    8B4424 2C             mov     eax, dword ptr ss:[esp+2C]
005DFF95    8B30                  mov     esi, dword ptr ds:[eax]
005DFF97    8BD8                  mov     ebx, eax
005DFF99    8DA424 00000000       lea     esp, dword ptr ss:[esp]
005DFFA0    3BF3                  cmp     esi, ebx
005DFFA2    74 0F                 je      short mod.005DFFB3
005DFFA4    8B46 08               mov     eax, dword ptr ds:[esi+8]
005DFFA7    50                    push    eax
005DFFA8    8BCF                  mov     ecx, edi
005DFFAA    E8 9192FFFF           call    mod.005D9240
005DFFAF    8B36                  mov     esi, dword ptr ds:[esi]
005DFFB1  ^ EB ED                 jmp     short mod.005DFFA0
005DFFB3    8D4C24 28             lea     ecx, dword ptr ss:[esp+28]
005DFFB7    E8 44C5F2FF           call    mod.0050C500
005DFFBC    8B7424 2C             mov     esi, dword ptr ss:[esp+2C]
005DFFC0    E8 5B13E2FF           call    mod.00401320
005DFFC5    8B08                  mov     ecx, dword ptr ds:[eax]
005DFFC7    890E                  mov     dword ptr ds:[esi], ecx
005DFFC9    8930                  mov     dword ptr ds:[eax], esi
005DFFCB    32C0                  xor     al, al
005DFFCD    8B4C24 34             mov     ecx, dword ptr ss:[esp+34]
005DFFD1    64:890D 00000000      mov     dword ptr fs:[0], ecx
005DFFD8    59                    pop     ecx
005DFFD9    5F                    pop     edi
005DFFDA    5E                    pop     esi
005DFFDB    5B                    pop     ebx
005DFFDC    83C4 30               add     esp, 30
005DFFDF    C2 0400               retn    4





005D9240    51                   push    ecx
005D9241    56                   push    esi
005D9242    8B7424 0C            mov     esi, dword ptr ss:[esp+C]
005D9246    57                   push    edi
005D9247    56                   push    esi
005D9248    8BF9                 mov     edi, ecx
005D924A    E8 A16CF5FF          call    mod.0052FEF0
005D924F    83C4 04              add     esp, 4
005D9252    84C0                 test    al, al
005D9254    74 43                je      short mod.005D9299
005D9256    8B47 08              mov     eax, dword ptr ds:[edi+8]
005D9259    56                   push    esi
005D925A    50                   push    eax
005D925B    E8 10EBF5FF          call    mod.00537D70
005D9260    8B4E 48              mov     ecx, dword ptr ds:[esi+48]
005D9263    83C4 08              add     esp, 8
005D9266    2BC8                 sub     ecx, eax
005D9268    894C24 08            mov     dword ptr ss:[esp+8], ecx
005D926C    C74424 10 00000000   mov     dword ptr ss:[esp+10], 0
005D9274    8D4C24 10            lea     ecx, dword ptr ss:[esp+10]
005D9278    78 04                js      short mod.005D927E
005D927A    8D4C24 08            lea     ecx, dword ptr ss:[esp+8]
005D927E    8B11                 mov     edx, dword ptr ds:[ecx]
005D9280    6A 01                push    1
005D9282    6A 01                push    1
005D9284    8956 48              mov     dword ptr ds:[esi+48], edx
005D9287    8B16                 mov     edx, dword ptr ds:[esi]
005D9289    50                   push    eax
005D928A    8B82 DC000000        mov     eax, dword ptr ds:[edx+DC]
005D9290    68 832D0000          push    2D83
005D9295    8BCE                 mov     ecx, esi
005D9297    FFD0                 call    eax
005D9299    5F                   pop     edi
005D929A    5E                   pop     esi
005D929B    59                   pop     ecx
005D929C    C2 0400              retn    4



//火牛 减兵力
0051112E - 89 51 28                   - mov [ecx+28],edx

005E06A0    6A FF                push    -1
005E06A2    68 E8FADB00          push    mod.00DBFAE8
005E06A7    64:A1 00000000       mov     eax, dword ptr fs:[0]
005E06AD    50                   push    eax
005E06AE    83EC 24              sub     esp, 24
005E06B1    53                   push    ebx
005E06B2    56                   push    esi
005E06B3    57                   push    edi
005E06B4    A1 7C2B0601          mov     eax, dword ptr ds:[1062B7C]
005E06B9    33C4                 xor     eax, esp
005E06BB    50                   push    eax
005E06BC    8D4424 34            lea     eax, dword ptr ss:[esp+34]
005E06C0    64:A3 00000000       mov     dword ptr fs:[0], eax
005E06C6    8BF9                 mov     edi, ecx
005E06C8    E8 A30CE2FF          call    mod.00401370
005E06CD    33F6                 xor     esi, esi
005E06CF    56                   push    esi
005E06D0    8D4C24 14            lea     ecx, dword ptr ss:[esp+14]
005E06D4    51                   push    ecx
005E06D5    8BC8                 mov     ecx, eax
005E06D7    E8 2449E2FF          call    mod.00405000
005E06DC    E8 3F0CE2FF          call    mod.00401320
005E06E1    56                   push    esi
005E06E2    8D5424 1C            lea     edx, dword ptr ss:[esp+1C]
005E06E6    52                   push    edx
005E06E7    8BC8                 mov     ecx, eax
005E06E9    E8 1249E2FF          call    mod.00405000
005E06EE    E8 7D0CE2FF          call    mod.00401370
005E06F3    56                   push    esi
005E06F4    8D4C24 24            lea     ecx, dword ptr ss:[esp+24]
005E06F8    51                   push    ecx
005E06F9    8BC8                 mov     ecx, eax
005E06FB    E8 0049E2FF          call    mod.00405000
005E0700    8D4C24 28            lea     ecx, dword ptr ss:[esp+28]
005E0704    E8 17BDF2FF          call    mod.0050C420
005E0709    894424 2C            mov     dword ptr ss:[esp+2C], eax
005E070D    897424 30            mov     dword ptr ss:[esp+30], esi
005E0711    8D5424 28            lea     edx, dword ptr ss:[esp+28]
005E0715    52                   push    edx
005E0716    8BCF                 mov     ecx, edi
005E0718    897424 40            mov     dword ptr ss:[esp+40], esi
005E071C    E8 BFFEFFFF          call    mod.005E05E0                //  可能是判断是否被对方高智武将格档
005E0721    8B4424 2C            mov     eax, dword ptr ss:[esp+2C]
005E0725    8B30                 mov     esi, dword ptr ds:[eax]
005E0727    8BD8                 mov     ebx, eax
005E0729    8DA424 00000000      lea     esp, dword ptr ss:[esp]
005E0730    3BF3                 cmp     esi, ebx
005E0732    74 0F                je      short mod.005E0743
005E0734    8B46 08              mov     eax, dword ptr ds:[esi+8]
005E0737    50                   push    eax
005E0738    8BCF                 mov     ecx, edi
005E073A    E8 918CFFFF          call    mod.005D93D0    // 小队效果
005E073F    8B36                 mov     esi, dword ptr ds:[esi]
005E0741  ^ EB ED                jmp     short mod.005E0730
005E0743    8D4C24 28            lea     ecx, dword ptr ss:[esp+28]
005E0747    E8 B4BDF2FF          call    mod.0050C500
005E074C    8B7424 2C            mov     esi, dword ptr ss:[esp+2C]
005E0750    E8 CB0BE2FF          call    mod.00401320
005E0755    8B08                 mov     ecx, dword ptr ds:[eax]
005E0757    890E                 mov     dword ptr ds:[esi], ecx
005E0759    8930                 mov     dword ptr ds:[eax], esi
005E075B    32C0                 xor     al, al
005E075D    8B4C24 34            mov     ecx, dword ptr ss:[esp+34]
005E0761    64:890D 00000000     mov     dword ptr fs:[0], ecx
005E0768    59                   pop     ecx
005E0769    5F                   pop     edi
005E076A    5E                   pop     esi
005E076B    5B                   pop     ebx
005E076C    83C4 30              add     esp, 30
005E076F    C2 0400              retn    4

005D93D0    83EC 08              sub     esp, 8
005D93D3    53                   push    ebx
005D93D4    56                   push    esi
005D93D5    8B7424 14            mov     esi, dword ptr ss:[esp+14]
005D93D9    56                   push    esi
005D93DA    8BD9                 mov     ebx, ecx
005D93DC    E8 0F6BF5FF          call    mod.0052FEF0
005D93E1    83C4 04              add     esp, 4
005D93E4    84C0                 test    al, al
005D93E6    0F84 46010000        je      mod.005D9532           //判断小队是否受计谋影响
005D93EC    8B06                 mov     eax, dword ptr ds:[esi]
005D93EE    8B90 84000000        mov     edx, dword ptr ds:[eax+84]
005D93F4    57                   push    edi
005D93F5    8BCE                 mov     ecx, esi
005D93F7    BF 01000000          mov     edi, 1
005D93FC    FFD2                 call    edx
005D93FE    84C0                 test    al, al
005D9400    74 13                je      short mod.005D9415
005D9402    56                   push    esi
005D9403    E8 181F0600          call    mod.0063B320
005D9408    83C4 04              add     esp, 4
005D940B    85C0                 test    eax, eax
005D940D    7E 06                jle     short mod.005D9415  //是否是对城
005D940F    8B3D 24DE0001        mov     edi, dword ptr ds:[100DE24]
005D9415    8B06                 mov     eax, dword ptr ds:[esi]
005D9417    8B90 88000000        mov     edx, dword ptr ds:[eax+88]
005D941D    8BCE                 mov     ecx, esi
005D941F    FFD2                 call    edx
005D9421    8B15 48DE0001        mov     edx, dword ptr ds:[100DE48]
005D9427    2B15 4CDE0001        sub     edx, dword ptr ds:[100DE4C]
005D942D    8BC8                 mov     ecx, eax
005D942F    0315 3CDE0001        add     edx, dword ptr ds:[100DE3C]
005D9435    A1 40DE0001          mov     eax, dword ptr ds:[100DE40]
005D943A    2BC1                 sub     eax, ecx
005D943C    0FAFC2               imul    eax, edx
005D943F    99                   cdq
005D9440    F73D 44DE0001        idiv    dword ptr ds:[100DE44]
005D9446    8BCE                 mov     ecx, esi
005D9448    C74424 0C 64000000   mov     dword ptr ss:[esp+C], 64
005D9450    99                   cdq
005D9451    F7FF                 idiv    edi
005D9453    8BF8                 mov     edi, eax
005D9455    897C24 18            mov     dword ptr ss:[esp+18], edi
005D9459    E8 D2CEF5FF          call    mod.00536330
005D945E    83FF 64              cmp     edi, 64
005D9461    8BC8                 mov     ecx, eax
005D9463    894C24 10            mov     dword ptr ss:[esp+10], ecx
005D9467    8D4424 18            lea     eax, dword ptr ss:[esp+18]
005D946B    7F 04                jg      short mod.005D9471
005D946D    8D4424 0C            lea     eax, dword ptr ss:[esp+C]
005D9471    3908                 cmp     dword ptr ds:[eax], ecx
005D9473    7C 04                jl      short mod.005D9479
005D9475    8D4424 10            lea     eax, dword ptr ss:[esp+10]
005D9479    8B38                 mov     edi, dword ptr ds:[eax]
005D947B    8B06                 mov     eax, dword ptr ds:[esi]
005D947D    8B90 DC000000        mov     edx, dword ptr ds:[eax+DC]
005D9483    6A 01                push    1
005D9485    6A 01                push    1
005D9487    57                   push    edi
005D9488    68 822D0000          push    2D82
005D948D    8BCE                 mov     ecx, esi
005D948F    FFD2                 call    edx
005D9491    8BCE                 mov     ecx, esi
005D9493    E8 98CEF5FF          call    mod.00536330
005D9498    2BC7                 sub     eax, edi
005D949A    50                   push    eax
005D949B    8BCE                 mov     ecx, esi
005D949D    E8 4E7CF3FF          call    mod.005110F0 //改变兵力的函数,游戏中多处调用
005D94A2    8BCE                 mov     ecx, esi
005D94A4    E8 87CEF5FF          call    mod.00536330
005D94A9    85C0                 test    eax, eax
005D94AB    5F                   pop     edi
005D94AC    7F 3A                jg      short mod.005D94E8     //是否因伤害而灭队 如果没有就跳
005D94AE    8B4B 08              mov     ecx, dword ptr ds:[ebx+8]
005D94B1    8B01                 mov     eax, dword ptr ds:[ecx]
005D94B3    8B90 CC000000        mov     edx, dword ptr ds:[eax+CC]
005D94B9    FFD2                 call    edx
005D94BB    84C0                 test    al, al
005D94BD    74 10                je      short mod.005D94CF
005D94BF    8B06                 mov     eax, dword ptr ds:[esi]
005D94C1    8B90 84000000        mov     edx, dword ptr ds:[eax+84]
005D94C7    8BCE                 mov     ecx, esi
005D94C9    FFD2                 call    edx
005D94CB    84C0                 test    al, al
005D94CD    75 19                jnz     short mod.005D94E8
005D94CF    8B4B 08              mov     ecx, dword ptr ds:[ebx+8]
005D94D2    8B06                 mov     eax, dword ptr ds:[esi]
005D94D4    8B50 40              mov     edx, dword ptr ds:[eax+40]
005D94D7    6A 00                push    0
005D94D9    6A 00                push    0
005D94DB    51                   push    ecx
005D94DC    8BCE                 mov     ecx, esi
005D94DE    FFD2                 call    edx
005D94E0    5E                   pop     esi
005D94E1    5B                   pop     ebx
005D94E2    83C4 08              add     esp, 8
005D94E5    C2 0400              retn    4
005D94E8    56                   push    esi
005D94E9    E8 32DCF5FF          call    mod.00537120
005D94EE    83C4 04              add     esp, 4
005D94F1    84C0                 test    al, al
005D94F3    74 3D                je      short mod.005D9532   //判断是否增加混乱状态,如果对手抵抗了就跳
005D94F5    8B06                 mov     eax, dword ptr ds:[esi]
005D94F7    8B90 84000000        mov     edx, dword ptr ds:[eax+84]
005D94FD    8BCE                 mov     ecx, esi
005D94FF    FFD2                 call    edx
005D9501    84C0                 test    al, al
005D9503    75 0D                jnz     short mod.005D9512
005D9505    6A 05                push    5
005D9507    8BCE                 mov     ecx, esi
005D9509    E8 A2850200          call    mod.00601AB0
005D950E    84C0                 test    al, al
005D9510    75 20                jnz     short mod.005D9532
005D9512    8B43 18              mov     eax, dword ptr ds:[ebx+18]
005D9515    6A 00                push    0
005D9517    6A 02                push    2
005D9519    50                   push    eax
005D951A    56                   push    esi
005D951B    E8 F0E0F5FF          call    mod.00537610
005D9520    8B4B 08              mov     ecx, dword ptr ds:[ebx+8]
005D9523    6A 01                push    1
005D9525    6A 00                push    0
005D9527    50                   push    eax
005D9528    51                   push    ecx
005D9529    56                   push    esi
005D952A    E8 11450300          call    mod.0060DA40
005D952F    83C4 24              add     esp, 24
005D9532    5E                   pop     esi
005D9533    5B                   pop     ebx
005D9534    83C4 08              add     esp, 8
005D9537    C2 0400              retn    4


伤害计算
dmg=(p173-对象部队智力)*(p175-p176+p172)/p174/1
对城
dmg=(p173-对象部队智力)*(p175-p176+p172)/p174/p166

[[[[esi+8]+0x20]+0x10]+8]武将数据起始地址+0x1c0 = 武将智力地址





使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

5#
发表于 2012-6-25 19:48:23 |只看该作者
本帖最后由 魔王莉莉 于 2012-6-25 19:52 编辑

信长之野望13天道日文原版1.01的内存修改:

这里把原版中的姬狩外传修订版的EXE修改内存公布出来:
(MOD连接)《信长之野望13-天道》大型MOD-《姬狩外传》修订版

主程序窗口名改为“姬狩外传”   00964290    bca7e1f7cde2b4ab00000000000000

(一)人物4围名称
统率(不改动)
武勇95909745=攻击8d558c82   改动exe地址 970614 970af8 974668
知略926d97aa=魔力968297cd               970868 970b10 9746cc
政治90ad8ea1=智慧92718c64               97097c 97465c

(二)出自修改:
武士95908e6d——学生8a7790b6            973ecc
高家8d8289c6——王室89a48eba        96c8B4
僧侣916d97b5——巫女9bde8f97        9708e0
商人——商人
海贼8a4391af——海军8a438c52        973ed4
忍者94458ed2——魔族968291b0        968f38
剑豪8c958d8b——战士90ed8e6d        973edc
庶民8f8e96af——精灵90b8e8cb        973ee4


新开区段2000H字节  实际开始写入地址0FFC2528 文件地址 00D56528
(三)游戏选项修改
1,不能生男子
  0045C7AD 00  生子机率(高)  密文 cd  
  0045c7b4 00  中              密文 FB  文件偏移 5c7b4
  0045C7BD 57H 机率保持             40           5c7bd

还有生姬那里改两点东西啊
1是改大名10-99岁都可以生

00462B3D=大名年龄下限(10)(修改范围0~127)     0a     c7       62b3d
00462B4D=大名年龄上限(100)(修改范围0~127)    64     73       62b4d

2是改生姬的机率,“高”改为30,“标准”改为20啊
(原来高是20 标准是5)
0045C857=玩家势力生女机率加成(30) (初始设定=多)    1e   4e     5c857
0045C867=玩家势力生女机率加成(20) (初始设定=标准)  14   c4     5c867


2,不能选“围城阵形” 。

007cdab9  call 0FFC2600  e8 42 4b 7f 0f      b1 c1 5c cb c2  3cdab9

0FFC2600    6A 01                         PUSH 1
0FFC2602    E8 59AA4CF0                   CALL mod1_01_.0048D060
0FFC2607    83C4 04                       ADD ESP,4
0FFC260A    85C0                          TEST EAX,EAX
0FFC260C    74 06                         JE SHORT mod1_01_.0FFC2614
0FFC260E    8B4C24 04                     MOV ECX,DWORD PTR SS:[ESP+4]
0FFC2612    8908                          MOV DWORD PTR DS:[EAX],ECX
0FFC2614    8D48 04                       LEA ECX,DWORD PTR DS:[EAX+4]
0FFC2617    85C9                          TEST ECX,ECX
0FFC2619    74 06                         JE SHORT mod1_01_.0FFC2621
0FFC261B    8B5424 08                     MOV EDX,DWORD PTR SS:[ESP+8]
0FFC261F    8911                          MOV DWORD PTR DS:[ECX],EDX
0FFC2621    8D48 08                       LEA ECX,DWORD PTR DS:[EAX+8]
0FFC2624    85C9                          TEST ECX,ECX
0FFC2626  ^ 74 F9                         JE SHORT mod1_01_.0FFC2621
0FFC2628    8B5424 0C                     MOV EDX,DWORD PTR SS:[ESP+C]
0FFC262C    8B12                          MOV EDX,DWORD PTR DS:[EDX]
0FFC262E    817A 04 95EF88CD              CMP DWORD PTR DS:[EDX+4],CD88EF95
0FFC2635    75 06                         JNZ SHORT mod1_01_.0FFC263D
0FFC2637    81EA 84000000                 SUB EDX,84
0FFC263D    8911                          MOV DWORD PTR DS:[ECX],EDX
0FFC263F    C2 0C00                       RETN 0C



(四)程序修改:
1,玩家募兵参数  粮收入X0.6+主城6000

限制函数
0FFC2528    56                             PUSH ESI
0FFC2529    57                             PUSH EDI
0FFC252A    55                             PUSH EBP
0FFC252B    8B4424 10                      MOV EAX,DWORD PTR SS:[ESP+10]
0FFC252F    6A 00                          PUSH 0
0FFC2531    6A 00                          PUSH 0
0FFC2533    50                             PUSH EAX
0FFC2534    E8 27A355F0                    CALL mod1_01_.0051C860
0FFC2539    8BE8                           MOV EBP,EAX
0FFC253B    6A 00                          PUSH 0
0FFC253D    6A 01                          PUSH 1
0FFC253F    8B4424 24                      MOV EAX,DWORD PTR SS:[ESP+24]
0FFC2543    50                             PUSH EAX
0FFC2544    E8 17A355F0                    CALL mod1_01_.0051C860
0FFC2549    03C0                           ADD EAX,EAX
0FFC254B    03E8                           ADD EBP,EAX
0FFC254D    8B4424 28                      MOV EAX,DWORD PTR SS:[ESP+28]
0FFC2551    6A 00                          PUSH 0
0FFC2553    6A 02                          PUSH 2
0FFC2555    50                             PUSH EAX
0FFC2556    E8 05A355F0                    CALL mod1_01_.0051C860
0FFC255B    03E8                           ADD EBP,EAX
0FFC255D    83C4 24                        ADD ESP,24
0FFC2560    B8 99999999         MOV EAX,99999999
0FFC2565    F7E5                MUL EBP
0FFC2567    8BC2                MOV EAX,EDX
0FFC2569    C1E8 1F             SHR EAX,1F
0FFC256C    8D2C10              LEA EBP,DWORD PTR DS:[EAX+EDX]
0FFC256F    8B4C24 10           MOV ECX,DWORD PTR SS:[ESP+10]
0FFC2573    6A 01               PUSH 1
0FFC2575    E8 364B55F0         CALL mod1_01_.005170B0
0FFC257A    69C0 70170000       IMUL EAX,EAX,1770
0FFC2580    03E8                           ADD EBP,EAX
0FFC2582    8B4424 10                      MOV EAX,DWORD PTR SS:[ESP+10]
0FFC2586    50                             PUSH EAX
0FFC2587    E8 94FC65F0                    CALL mod1_01_.00622220
0FFC258C    83C4 04                        ADD ESP,4
0FFC258F    33C9                           XOR ECX,ECX
0FFC2591    3BC5                           CMP EAX,EBP
0FFC2593    0F9CC1                         SETL CL
0FFC2596    8AC1                           MOV AL,CL
0FFC2598    5D                             POP EBP
0FFC2599    5F                             POP EDI
0FFC259A    5E                             POP ESI
0FFC259B    C2 0400                        RETN 4

玩家受控
0FFC259E    3D 20A10700                    CMP EAX,7A120
0FFC25A3    7D 0D                          JGE SHORT mod1_01_.0FFC25B2
0FFC25A5    8BCE                           MOV ECX,ESI
0FFC25A7    E8 A4C553F0                    CALL mod1_01_.004FEB50
0FFC25AC    50                             PUSH EAX
0FFC25AD    E8 76FFFFFF                    CALL mod1_01_.0FFC2528                   ; 限制函数
0FFC25B2    84C0                           TEST AL,AL
0FFC25B4  - 0F85 A37A87F0                  JNZ mod1_01_.0083A05D
0FFC25BA  - E9 947A87F0                    JMP mod1_01_.0083A053

0083A04C  jmp 0FFC259E   玩家受控   e9 4d 85 78 0f    7c f3 85 78 6f  0043a04c

00839D4D  jmp 0FFC25BF   奉行受控   e9 6d 88 78 0f    b9 a1 47 34 d3   00439d4d

奉行受控
0FFC25BF    E8 8CC553F0                    CALL mod1_01_.004FEB50
0FFC25C4    50                             PUSH EAX
0FFC25C5    E8 5EFFFFFF                    CALL mod1_01_.0FFC2528
0FFC25CA    84C0                           TEST AL,AL
0FFC25CC  - 0F84 8E7787F0                  JE mod1_01_.00839D60
0FFC25D2    8BCF                           MOV ECX,EDI
0FFC25D4    E8 475856F0                    CALL mod1_01_.00527E20
0FFC25D9  - E9 747787F0                    JMP mod1_01_.00839D52


2,玩家战斗能力提升7%   AI战斗能力提升3%
(建设房子,筑城,这两处加政治都取消)
0054B3F8  jmp 0FFC25DE  增长  e9 e1 71 a7 0f    7c 5f 71 a7 6f   0014b3f8
增长
0FFC25DE    03C7                           ADD EAX,EDI
0FFC25E0    50                             PUSH EAX
0FFC25E1    8BCE                           MOV ECX,ESI
0FFC25E3    E8 E81153F0                    CALL mod1_01_.004F37D0
0FFC25E8    84C0                           TEST AL,AL
0FFC25EA    75 04                          JNZ SHORT mod1_01_.0FFC25F0
0FFC25EC    6A 03                          PUSH 3
0FFC25EE    EB 02                          JMP SHORT mod1_01_.0FFC25F2
0FFC25F0    6A 07                          PUSH 7
0FFC25F2  - E9 068E58F0                    JMP mod1_01_.0054B3FD

街町设施建设完成后增加施工武将政治
00647F83    - E9 08A9970F       JMP mod1_01_.0FFC2890     e9 68 79 6c 5f       247f83

0FFC2890    56                  PUSH ESI
0FFC2891    57                  PUSH EDI
0FFC2892    8B7E 0C             MOV EDI,DWORD PTR DS:[ESI+C]
0FFC2895    8B76 08             MOV ESI,DWORD PTR DS:[ESI+8]
0FFC2898    8B36                MOV ESI,DWORD PTR DS:[ESI]
0FFC289A    8B46 08             MOV EAX,DWORD PTR DS:[ESI+8]
0FFC289D    6A 00               PUSH 0
0FFC289F    6A 01               PUSH 1
0FFC28A1    6A 03               PUSH 3
0FFC28A3    50                  PUSH EAX
0FFC28A4    E8 C78A58F0         CALL mod1_01_.0054B370
0FFC28A9    83C4 10             ADD ESP,10
0FFC28AC    8B36                MOV ESI,DWORD PTR DS:[ESI]
0FFC28AE    83EF 01             SUB EDI,1
0FFC28B1    85FF                TEST EDI,EDI
0FFC28B3    85FF                TEST EDI,EDI
0FFC28B5  ^ 7F E3               JG SHORT mod1_01_.0FFC289A
0FFC28B7    5F                  POP EDI
0FFC28B8    5E                  POP ESI
0FFC28B9    6A 01               PUSH 1
0FFC28BB    6A 02               PUSH 2
0FFC28BD    57                  PUSH EDI
0FFC28BE  - E9 C55668F0         JMP mod1_01_.00647F88


3,各大名可以生姬(包括女大名)
   00462B5A 00  女大名可生子女   4C   62b5a
462b2a 9c08  让515号谦信可以生,近卫前久代之  28C5    62b2a
   女将跟姬可以百合
809400 00    cc  409400
done!

4,(此处可能会出现问题,取消)
选择让姬成为武将后仍然可以用该姬进行缘组
00566064  0960    相同      166064
00561A08  909090909090909090   进行缘组后姬不会变成无所属军团 5c 5f dc 4c 0d c9 13 87 24  161a08
done!


5,AI研究技术以修得济完成:
0055d69a   jmp 0ffc2690    e9 f1 4f a6 0f        25 3e 03 7a 92     0015d69a

0FFC2690    E8 CB4E55F0              CALL mod1_01_.00517560
0FFC2695    8BC7                     MOV EAX,EDI
0FFC2697    E8 7B2E56F0              CALL mod1_01_.00525517
0FFC269C    84C0                     TEST AL,AL
0FFC269E    75 04                    JNZ SHORT mod1_01_.0FFC26A4
0FFC26A0    6A 03                    PUSH 3
0FFC26A2    EB 02                    JMP SHORT mod1_01_.0FFC26A6
0FFC26A4    6A 01                    PUSH 1
0FFC26A6  - E9 F6AF59F0              JMP mod1_01_.0055D6A1
0FFC26AB    83FF 03                  CMP EDI,3
0FFC26AE    74 0E                    JE SHORT mod1_01_.0FFC26BE
0FFC26B0    397E 38                  CMP DWORD PTR DS:[ESI+38],EDI
0FFC26B3  - 0F85 25BB55F0            JNZ mod1_01_.0051E1DE
0FFC26B9  - E9 F2BA55F0              JMP mod1_01_.0051E1B0
0FFC26BE    837E 38 01               CMP DWORD PTR DS:[ESI+38],1
0FFC26C2  - 0F85 16BB55F0            JNZ mod1_01_.0051E1DE
0FFC26C8    8B4424 10                MOV EAX,DWORD PTR SS:[ESP+10]
0FFC26CC    6A 01                    PUSH 1
0FFC26CE    50                       PUSH EAX
0FFC26CF    8BCD                     MOV ECX,EBP
0FFC26D1    E8 5A6C55F0              CALL mod1_01_.00519330
0FFC26D6  - E9 FCBA55F0              JMP mod1_01_.0051E1D7


0051e1ab   jmp 0ffc26f0   e9 40 45 aa 0f    39 bb 15 66 c0         0011e1ab

0FFC26F0    83FF 03         CMP EDI,3
0FFC26F3    74 0E           JE SHORT mod1_01_.0FFC2703
0FFC26F5    397E 38         CMP DWORD PTR DS:[ESI+38],EDI
0FFC26F8  - 0F85 E0BA55F0   JNZ mod1_01_.0051E1DE
0FFC26FE  - E9 ADBA55F0     JMP mod1_01_.0051E1B0
0FFC2703    837E 38 01      CMP DWORD PTR DS:[ESI+38],1
0FFC2707  - 0F85 D1BA55F0   JNZ mod1_01_.0051E1DE
0FFC270D    8B4424 10       MOV EAX,DWORD PTR SS:[ESP+10]
0FFC2711    6A 01           PUSH 1
0FFC2713    50              PUSH EAX
0FFC2714    8BCD            MOV ECX,EBP
0FFC2716    E8 156C55F0     CALL mod1_01_.00519330
0FFC271B  - E9 B7BA55F0     JMP mod1_01_.0051E1D7


0051e12c  JGE SHORT 0051E13A   7d 0c    1d dc     0011e12c

电脑AI势力占领街町时可获得其中已研究完成的技术(以修得济的型态)
0FFC2730    8B77 1C               MOV ESI,DWORD PTR DS:[EDI+1C]
0FFC2733    E8 98FD59F0           CALL mod1_01_.005624D0
0FFC2738    83C4 04               ADD ESP,4
0FFC273B    8B7D 14               MOV EDI,DWORD PTR SS:[EBP+14]
0FFC273E    85FF                  TEST EDI,EDI
0FFC2740    74 09                 JE SHORT mod1_01_.0FFC274B
0FFC2742    F687 24010000 08      TEST BYTE PTR DS:[EDI+124],8
0FFC2749    74 05                 JE SHORT mod1_01_.0FFC2750
0FFC274B  - E9 589F5AF0           JMP mod1_01_.0056C6A8
0FFC2750    837C24 14 01          CMP DWORD PTR SS:[ESP+14],1
0FFC2755  ^ 75 F4                 JNZ SHORT mod1_01_.0FFC274B
0FFC2757    56                    PUSH ESI
0FFC2758    8BCF                  MOV ECX,EDI
0FFC275A    E8 213D55F0           CALL mod1_01_.00516480
0FFC275F    84C0                  TEST AL,AL
0FFC2761  ^ 75 E8                 JNZ SHORT mod1_01_.0FFC274B
0FFC2763    6A 01                 PUSH 1
0FFC2765    56                    PUSH ESI
0FFC2766    57                    PUSH EDI
0FFC2767    E8 14FE59F0           CALL mod1_01_.00562580
0FFC276C    6A 01                 PUSH 1
0FFC276E    56                    PUSH ESI
0FFC276F    57                    PUSH EDI
0FFC2770    E8 5B5A58F0           CALL mod1_01_.005481D0
0FFC2775    83C4 18               ADD ESP,18
0FFC2778  ^ EB D1                 JMP SHORT mod1_01_.0FFC274B

0056c6a0  jmp 0ffc2730  e9 8b 60 a5 0f       e9 8b 00 75 f4          0016c6a0

电脑AI势力灭亡它势力后获得其恒久技术(以修得济的型态),独有技术不会被掠夺

注:判断是否为独有技术的关键数值为 技术的“水準”,原版獨有技術的水準在van的修改器中以空白顯示,在游戲中
以“-”來表示,非獨有技術的水準为从D~A,因为修改器不能选择空白水準,為了以防萬一,將S也定義為獨有技術的標志,
這樣有個好處,可以自行設定哪些技術不會被掠奪,想把一般技術設為無法掠奪只要把水準設為S就行了。
目前能找到的判斷是否為獨有技術的方法只有這個了,但不清楚水準在游戲中究竟有什么影響。

0FFC2790    F685 24010000 0>TEST BYTE PTR SS:[EBP+124],8
0FFC2797    75 07           JNZ SHORT tmod1_01.0FFC27A0
0FFC2799    55              PUSH EBP
0FFC279A    57              PUSH EDI
0FFC279B    E8 0A000000     CALL tmod1_01.0FFC27AA
0FFC27A0    8D4C24 1C       LEA ECX,DWORD PTR SS:[ESP+1C]
0FFC27A4    51              PUSH ECX
0FFC27A5  - E9 63D45AF0     JMP tmod1_01.0056FC0D
0FFC27AA    56              PUSH ESI
0FFC27AB    8B7424 08       MOV ESI,DWORD PTR SS:[ESP+8]
0FFC27AF    57              PUSH EDI
0FFC27B0    8B7C24 10       MOV EDI,DWORD PTR SS:[ESP+10]
0FFC27B4    55              PUSH EBP
0FFC27B5    8BAE 30010000   MOV EBP,DWORD PTR DS:[ESI+130]
0FFC27BB    85ED            TEST EBP,EBP
0FFC27BD    7F 06           JG SHORT tmod1_01.0FFC27C5
0FFC27BF    5D              POP EBP
0FFC27C0    5F              POP EDI
0FFC27C1    5E              POP ESI
0FFC27C2    C2 0800         RETN 8
0FFC27C5    8BB6 2C010000   MOV ESI,DWORD PTR DS:[ESI+12C]
0FFC27CB    8B36            MOV ESI,DWORD PTR DS:[ESI]
0FFC27CD    8B46 08         MOV EAX,DWORD PTR DS:[ESI+8]
0FFC27D0    50              PUSH EAX
0FFC27D1    8BCF            MOV ECX,EDI
0FFC27D3    E8 A83C55F0     CALL tmod1_01.00516480
0FFC27D8    84C0            TEST AL,AL
0FFC27DA    75 2B           JNZ SHORT tmod1_01.0FFC2807
0FFC27DC    8B46 08         MOV EAX,DWORD PTR DS:[ESI+8]
0FFC27DF    8378 58 00      CMP DWORD PTR DS:[EAX+58],0      //这里对技术水准进行比较0xffffffff为独有技术状态
0FFC27E3    7C 22           JL SHORT tmod1_01.0FFC2807
0FFC27E5    8378 58 03      CMP DWORD PTR DS:[EAX+58],3
0FFC27E9    7F 1C           JG SHORT tmod1_01.0FFC2807
0FFC27EB    6A 01           PUSH 1
0FFC27ED    FF76 08         PUSH DWORD PTR DS:[ESI+8]
0FFC27F0    57              PUSH EDI
0FFC27F1    E8 8AFD59F0     CALL tmod1_01.00562580
0FFC27F6    83C4 0C         ADD ESP,0C
0FFC27F9    6A 01           PUSH 1
0FFC27FB    FF76 08         PUSH DWORD PTR DS:[ESI+8]
0FFC27FE    57              PUSH EDI
0FFC27FF    E8 CC5958F0     CALL tmod1_01.005481D0
0FFC2804    83C4 0C         ADD ESP,0C
0FFC2807    83ED 01         SUB EBP,1
0FFC280A  ^ 7F BF           JG SHORT tmod1_01.0FFC27CB
0FFC280C  ^ EB B1           JMP SHORT tmod1_01.0FFC27BF

0056fc08  jmp 0ffc2790  e9 83 2b a5 0f           74 da a8 b2 bb        0016fc08



6.大名更换后,家名不变


0055d06c 90 90 90 90 90     原指令 CALL 00513CF0   dc 4c 0d c9 13  15d06c          //一般大名更换后换家名
0091d871 90 90 90 90 90        5d 05 2e 90 90            51d871           //开局传说换家名
0091d59f //开局改姓,备忘,无需修改

保留新武将的姓有用,传承武将不改姓   
0FFC2810 - 89 48 04                   - mov [eax+04],ecx
0FFC2813 - 83 38 00                   - cmp dword ptr [eax],00
0FFC2816 - 0f 84 6e 19 53 f0          - je 004f418a
0FFC281C    90              NOP
0FFC281D    90              NOP
0FFC281E    90              NOP                                     //0FFC281C - 89 48 08     - mov [eax+08],ecx备忘 无用,这一指令会使名第1位为0x00,必需去掉
0FFC281F - 88 48 0a                   - mov [eax+0a],cl
0FFC2822 - 8b 4c 24 04                - mov ecx,[esp+04]
0FFC2826 - 83 79 18 10                - cmp dword ptr [ecx+18],10
0FFC282A - 72 12                      - jb 0ffc283e
0FFC282C - 8b 49 04                   - mov ecx,[ecx+04]
0FFC282F - 6a 0a                      - push 0a
0FFC2831 - 51                         - push ecx
0FFC2832 - 50                         - push eax
0FFC2833 - e8 ab 7a b4 f0             - call 00b0a2e3
0FFC2838 - 83 c4 0c                   - add esp,0c
0FFC283B - c2 04 00                   - ret 0004
0FFC283E - 83 c1 04                   - add ecx,04
0FFC2841 - c2 04 00                   - ret 0004

004f4185  jmp 0ffc2810   e9 86 e6 ac 0f     fe 32 2b 39 b1            000f4185   

名:0091d637

004F4215      8908          MOV DWORD PTR DS:[EAX],ECX
004F4217      8948 04       MOV DWORD PTR DS:[EAX+4],ECX
004F421A      66:8948 08    MOV WORD PTR DS:[EAX+8],CX
004F421E      8848 0A       MOV BYTE PTR DS:[EAX+A],CL
004F4221      8B4C24 04     MOV ECX,DWORD PTR SS:[ESP+4]
004F4225      8379 18 10    CMP DWORD PTR DS:[ECX+18],10
004F4229      72 12         JB SHORT mod1_01_.004F423D
004F422B      8B49 04       MOV ECX,DWORD PTR DS:[ECX+4]
004F422E      6A 0A         PUSH 0A
004F4230      51            PUSH ECX
004F4231      50            PUSH EAX
004F4232      E8 AC606100   CALL mod1_01_.00B0A2E3
004F4237      83C4 0C       ADD ESP,0C
004F423A      C2 0400       RETN 4
004F423D      83C1 04       ADD ECX,4
004F4240      6A 0A         PUSH 0A
004F4242      51            PUSH ECX
004F4243      50            PUSH EAX
004F4244      E8 9A606100   CALL mod1_01_.00B0A2E3
004F4249      83C4 0C       ADD ESP,0C
004F424C      C2 0400       RETN 4

004f4215   e9 36 e6 ac 0f JMP 0FFC2850       fe 82 2b 39 b1         f4215


0FFC2850    8948 04             MOV DWORD PTR DS:[EAX+4],ECX
0FFC2853    8338 00             CMP DWORD PTR DS:[EAX],0
0FFC2856  - 0F84 BE1953F0       JE mod1_01_.004F421A
0FFC285C    66:8948 08          MOV WORD PTR DS:[EAX+8],CX
0FFC2860    8848 0A             MOV BYTE PTR DS:[EAX+A],CL
0FFC2863    8B4C24 04           MOV ECX,DWORD PTR SS:[ESP+4]
0FFC2867    8379 18 10          CMP DWORD PTR DS:[ECX+18],10
0FFC286B    72 12               JB SHORT mod1_01_.0FFC287F
0FFC286D    8B49 04             MOV ECX,DWORD PTR DS:[ECX+4]
0FFC2870    6A 0A               PUSH 0A
0FFC2872    51                  PUSH ECX
0FFC2873    50                  PUSH EAX
0FFC2874    E8 6A7AB4F0         CALL mod1_01_.00B0A2E3
0FFC2879    83C4 0C             ADD ESP,0C
0FFC287C    C2 0400             RETN 4
0FFC287F    83C1 04             ADD ECX,4
0FFC2882    C2 0400             RETN 4



7.玩家有 辻说法 技术,则战法附带范围效果和伤害
附加效果
005BBAEC    - E9 DF6DA00F    e9 df 0d 70 f4   JMP mod1_01_.0FFC28D0    1bbaec

0FFC28D0    8B4F 08         MOV ECX,DWORD PTR DS:[EDI+8]
0FFC28D3    8B01            MOV EAX,DWORD PTR DS:[ECX]
0FFC28D5    FF50 20         CALL DWORD PTR DS:[EAX+20]
0FFC28D8    8BC8            MOV ECX,EAX               //此处ecx有可能为0,导致下面读取内存时发生跳出
0FFC28DA    83F9 00         CMP ECX,0
0FFC28DD    90              NOP
0FFC28DE    90              NOP
0FFC28DF    90              NOP
0FFC28E0    90              NOP
0FFC28E1    75 0E           JNZ SHORT amod1_01.0FFC28F1
-----------------------------------------------------------------------
0FFC28DA    E8 342C56F0     CALL mod1_01_.00525513              //此处为S所用代码,仅作备忘,无用
0FFC28DF    84C0            TEST AL,AL
0FFC28E1    EB 0E           JNZ SHORT mod1_01_.0FFC28F1    //判断是否为玩家
--------------------------------------------------------------------------
0FFC28E3    3B6B 04         CMP EBP,DWORD PTR DS:[EBX+4]
0FFC28E6  - 0F85 0A925FF0   JNZ mod1_01_.005BBAF6
0FFC28EC  - E9 00925FF0     JMP mod1_01_.005BBAF1
0FFC28F1    6A 4E           PUSH 4E
0FFC28F3    E8 B83B55F0     CALL mod1_01_.005164B0
0FFC28F8    84C0            TEST AL,AL
0FFC28FA  ^ 74 E7           JE SHORT mod1_01_.0FFC28E3
0FFC28FC    FF36            PUSH DWORD PTR DS:[ESI]
0FFC28FE    8BCF            MOV ECX,EDI
0FFC2900    E8 0B000000     CALL mod1_01_.0FFC2910
0FFC2905  - E9 1A925FF0     JMP mod1_01_.005BBB24


附加效果函数
0FFC2910    56              PUSH ESI
0FFC2911    57              PUSH EDI
0FFC2912    53              PUSH EBX
0FFC2913    8BF1            MOV ESI,ECX
0FFC2915    8B7C24 10       MOV EDI,DWORD PTR SS:[ESP+10]
0FFC2919    6A 03           PUSH 3
0FFC291B    E8 40E668F0     CALL mod1_01_.00650F60
0FFC2920    83C4 04         ADD ESP,4
0FFC2923    8BD8            MOV EBX,EAX
0FFC2925    53              PUSH EBX
0FFC2926    57              PUSH EDI
0FFC2927    8BCE            MOV ECX,ESI
0FFC2929    E8 42215FF0     CALL mod1_01_.005B4A70
0FFC292E    53              PUSH EBX
0FFC292F    57              PUSH EDI
0FFC2930    8BCE            MOV ECX,ESI
0FFC2932    E8 A9245FF0     CALL mod1_01_.005B4DE0
0FFC2937    53              PUSH EBX
0FFC2938    57              PUSH EDI
0FFC2939    8BCE            MOV ECX,ESI
0FFC293B    E8 F0275FF0     CALL mod1_01_.005B5130
0FFC2940    57              PUSH EDI
0FFC2941    8BCE            MOV ECX,ESI
0FFC2943    E8 382B5FF0     CALL mod1_01_.005B5480
0FFC2948    57              PUSH EDI
0FFC2949    8BCE            MOV ECX,ESI
0FFC294B    E8 A0185FF0     CALL mod1_01_.005B41F0
0FFC2950    57              PUSH EDI
0FFC2951    8BCE            MOV ECX,ESI
0FFC2953    E8 48FD5EF0     CALL mod1_01_.005B26A0
0FFC2958    84C0            TEST AL,AL
0FFC295A    74 26           JE SHORT mod1_01_.0FFC2982
0FFC295C    57              PUSH EDI
0FFC295D    8BCE            MOV ECX,ESI
0FFC295F    E8 1CFE5EF0     CALL mod1_01_.005B2780
0FFC2964    84C0            TEST AL,AL
0FFC2966    74 1A           JE SHORT mod1_01_.0FFC2982
0FFC2968    57              PUSH EDI
0FFC2969    8BCE            MOV ECX,ESI
0FFC296B    E8 40015FF0     CALL mod1_01_.005B2AB0
0FFC2970    53              PUSH EBX
0FFC2971    57              PUSH EDI
0FFC2972    8BCE            MOV ECX,ESI
0FFC2974    E8 47025FF0     CALL mod1_01_.005B2BC0
0FFC2979    53              PUSH EBX
0FFC297A    57              PUSH EDI
0FFC297B    8BCE            MOV ECX,ESI
0FFC297D    E8 DE025FF0     CALL mod1_01_.005B2C60
0FFC2982    5B              POP EBX
0FFC2983    5F              POP EDI
0FFC2984    5E              POP ESI
0FFC2985    C2 0400         RETN 4


范围伤害
0FFC2990    8B8C24 84000000 MOV ECX,DWORD PTR SS:[ESP+84]
0FFC2997    8B01            MOV EAX,DWORD PTR DS:[ECX]
0FFC2999    FF50 20         CALL DWORD PTR DS:[EAX+20]
0FFC299C    8BC8            MOV ECX,EAX
0FFC299E    83F9 00         CMP ECX,0
0FFC29A1    90              NOP
0FFC29A2    90              NOP
0FFC29A3    90              NOP
0FFC29A4    90              NOP
0FFC29A5    75 0D           JNZ SHORT amod1_01.0FFC29B4
0FFC29A7    85FF            TEST EDI,EDI
0FFC29A9  - 0F84 B4D462F0   JE mod1_01_.005EFE63
0FFC29AF  - E9 C9D262F0     JMP mod1_01_.005EFC7D
0FFC29B4    6A 4E           PUSH 4E
0FFC29B6    E8 F53A55F0     CALL mod1_01_.005164B0
0FFC29BB    84C0            TEST AL,AL
0FFC29BD  ^ 74 E8           JE SHORT mod1_01_.0FFC29A7
0FFC29BF    85FF            TEST EDI,EDI
0FFC29C1  - 0F84 E0D262F0   JE mod1_01_.005EFCA7
0FFC29C7  ^ EB E6           JMP SHORT mod1_01_.0FFC29AF

005EFC75      0FB6F8             MOVZX EDI,AL               18 02 35 7c ad 2d 9d 6f         1efc75
005EFC78    - E9 132D9D0F        JMP mod1_01_.0FFC2990


范围判断
005EFCA7    - E9 242D9D0F        JMP mod1_01_.0FFC29D0      35 b9 74 1e 18 24             1efca7
005EFCAC      90                 NOP

0FFC29D0    8BCB                 MOV ECX,EBX
0FFC29D2    8B03                 MOV EAX,DWORD PTR DS:[EBX]
0FFC29D4    FF90 84000000        CALL DWORD PTR DS:[EAX+84]
0FFC29DA    84C0                 TEST AL,AL
0FFC29DC    74 0B                JE SHORT mod1_01_.0FFC29E9
0FFC29DE    8B8B 10010000        MOV ECX,DWORD PTR DS:[EBX+110]
0FFC29E4  - E9 C4D262F0          JMP mod1_01_.005EFCAD
0FFC29E9    8D8B A8000000        LEA ECX,DWORD PTR DS:[EBX+A8]
0FFC29EF    8B39                 MOV EDI,DWORD PTR DS:[ECX]
0FFC29F1    8B71 04              MOV ESI,DWORD PTR DS:[ECX+4]
0FFC29F4    83EE 02              SUB ESI,2
0FFC29F7    83EF 02              SUB EDI,2
0FFC29FA    897C24 44            MOV DWORD PTR SS:[ESP+44],EDI
0FFC29FE    6A 05                PUSH 2                        //范围
0FFC2A00    6A 05                PUSH 2
0FFC2A02    8D4424 3C            LEA EAX,DWORD PTR SS:[ESP+3C]
0FFC2A06    50                   PUSH EAX
0FFC2A07  - E9 CFD262F0          JMP mod1_01_.005EFCDB

0FFC27DF   /E9 3C020000     jmp     0FFC2A20
0FFC27E4   |90              nop

0FFC2A20    83F8 00         cmp     eax, 0
0FFC2A23  ^ 0F84 DEFDFFFF   je      0FFC2807
0FFC2A29    8378 58 00      cmp     dword ptr [eax+58], 0
0FFC2A2D  ^ 0F8C D4FDFFFF   jl      0FFC2807
0FFC2A33  ^ E9 ADFDFFFF     jmp     0FFC27E5



已有 1 人评分人气 收起 理由
贝伦卡斯泰露 + 3 据说是妹子,不带这么可怕的~

总评分: 人气 + 3   查看全部评分

使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

6#
发表于 2012-6-25 19:57:42 |只看该作者
本帖最后由 魔王莉莉 于 2012-6-26 00:27 编辑

后记:
[原创] 天道: 内存代码修改与相关資料(7.22更新) (作者:sergi  )

其实,信13用内存修改,都是靠sergi 大大的这贴文章开始引发,在这里身份感谢sergi 大大为光荣游戏研究出这么多的内存数据
内存修改相对比较难学,请各位看众能细心慢慢研究,就算T大也是花了1年多时间才精进起来,我们更要努力学习了

最后,信13PK版的姬狩外传MOD已经停止制作,但有兴趣接手的制作者
可以联系我,2000+的人物头象跟不少数据都保留着
{:13_450:}


使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

7#
发表于 2012-6-25 20:00:47 |只看该作者
占个楼后备一下

使用道具 举报

游侠剑阁工作组【制作】

人气勋章·初级

帖子
23180
精华
3
积分
14193
金钱
2715
荣誉
108
人气
9191
评议
0

8#
发表于 2012-6-25 20:00:53 |只看该作者
占个楼后备一下

使用道具 举报

可爱的小花猪 夏磊
2017年十佳版主
游侠元勋版主
『动作/射击游戏区』
侠盗联盟组【组长】
侠盗汉化组【监制】
永远萌系会员·小花猪·夏磊
动作游戏一统江湖.夏磊

游侠元勋版主元老版主勋章版主勋章资深版主勋章大头像勋章白金会员勋章活跃勋章荣誉勋章特色头衔勋章高级荣誉勋章人气勋章·高级人气勋章·初级勤劳之证资深水手勋章游侠之星2017十佳版主勋章2013年度杰出版主勋章2014年杰出版主勋章侠盗工作组一周年专属勋章2015年杰出版主勋章侠盗工作组二周年勋章侠盗工作组三周年勋章

帖子
246077
精华
0
积分
134082
金钱
299876
荣誉
879
人气
22536
评议
89

9#
发表于 2012-6-25 20:02:01 |只看该作者
什么都不懂,纯顶贴的。{:13_461:}

使用道具 举报

真三國無雙⑦ C.C.
聖鬥士·雙子座·雅典娜の驚歎

大头像勋章荣誉勋章特色头衔勋章人气勋章·初级

帖子
35288
精华
0
积分
20054
金钱
134492
荣誉
161
人气
7659
评议
0
10#
发表于 2012-6-25 20:02:31 |只看该作者
支持莉莉酱{:13_447:}
告别一段时间,大家珍重哈!

使用道具 举报

游侠剑阁工作组【美工】
三國志 美圖士
懷鈴鳥羽•錦帆遊俠
♥萌神四糸乃♥

大头像勋章白金会员勋章活跃勋章荣誉勋章特色头衔勋章高级荣誉勋章综合区荣誉会员勋章剑阁工作组资深组员勋章

帖子
73554
精华
5
积分
44465
金钱
326336
荣誉
666
人气
277
评议
0

11#
发表于 2012-6-25 20:04:30 |只看该作者
尽管用不着,但还是支持下技术贴

使用道具 举报

聖鬥士·天秤座·雅典娜之驚歎

白金会员勋章活跃勋章

帖子
13843
精华
1
积分
8377
金钱
1371
荣誉
98
人气
2759
评议
0
12#
发表于 2012-6-25 20:04:38 |只看该作者
好高端……不懂……纯支持了

使用道具 举报

Maha Vairocana
春日部防衛隊 小新隊長!

白金会员勋章活跃勋章荣誉勋章特色头衔勋章人气勋章·初级

帖子
42290
精华
1
积分
23623
金钱
63129
荣誉
177
人气
4875
评议
0
13#
发表于 2012-6-25 20:05:30 |只看该作者
我了个妈呀.....完全看不懂啊

阿幻是学电脑的么{:10_335:}

使用道具 举报

Maha Vairocana
春日部防衛隊 小新隊長!

白金会员勋章活跃勋章荣誉勋章特色头衔勋章人气勋章·初级

帖子
42290
精华
1
积分
23623
金钱
63129
荣誉
177
人气
4875
评议
0
14#
发表于 2012-6-25 20:06:09 |只看该作者
看来这帖子绝对是精华了{:13_431:}

使用道具 举报

永远の萌哒
游侠元老版主

元老版主勋章版主勋章资深版主勋章活跃勋章2013年度杰出版主勋章2014年优秀版主勋章2015年优秀版主勋章

帖子
24167
精华
0
积分
12649
金钱
43121
荣誉
47
人气
951
评议
3

15#
发表于 2012-6-25 20:06:17 |只看该作者
{:10_332:}如此技术帝。。。。。。。。。。。。。。。。。。

使用道具 举报

金色的温柔霞光 宛若淡淡熏衣五毒教主

大头像勋章

帖子
9232
精华
1
积分
5364
金钱
2897
荣誉
38
人气
1670
评议
2

16#
发表于 2012-6-25 20:06:49 |只看该作者
{:13_432:}围观。。。。

使用道具 举报

☆永恒的真理☆
吏部尚書郎
海皇七將軍·南太平洋·六聖獸

大头像勋章白金会员勋章活跃勋章荣誉勋章特色头衔勋章

帖子
14142
精华
0
积分
8865
金钱
123066
荣誉
175
人气
440
评议
0
17#
发表于 2012-6-25 20:08:13 |只看该作者
支持下莉莉,不过这些都看不懂

使用道具 举报

超级皮波 因扎吉 不灭神话
聖鬥士·天秤座·雅典娜之驚歎

白金会员勋章活跃勋章荣誉勋章特色头衔勋章人气勋章·初级综合区荣誉会员勋章

帖子
62839
精华
0
积分
34600
金钱
4796
荣誉
284
人气
3403
评议
0

18#
发表于 2012-6-25 20:08:19 |只看该作者
支持修改

使用道具 举报

帖子
7690
精华
0
积分
4136
金钱
203
荣誉
23
人气
591
评议
0
19#
发表于 2012-6-25 20:08:29 |只看该作者
{:10_325:}邀请我做什么 13是哪一代?天道!?这么垃圾的游戏不要来邀请我

使用道具 举报

超级皮波 因扎吉 不灭神话
聖鬥士·天秤座·雅典娜之驚歎

白金会员勋章活跃勋章荣誉勋章特色头衔勋章人气勋章·初级综合区荣誉会员勋章

帖子
62839
精华
0
积分
34600
金钱
4796
荣誉
284
人气
3403
评议
0

20#
发表于 2012-6-25 20:08:35 |只看该作者
支持莉莉的技术贴

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|游侠NETSHOW论坛 ( 苏ICP备2023007791号 )

GMT+8, 2024-4-26 12:23 , Processed in 0.432423 second(s), 12 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

分享到