标题: 孔明传补丁大全 [打印本页]
作者:
阿尔法孝直 时间: 2010-9-9 04:49 标题: 孔明传补丁大全
一、修改法:
1、修改从423AD4开始的指令:
00423AD4 /75 36 JNZ SHORT 00423B0C
00423AD6 |B9 D0A64600 MOV ECX,0046A6D0
00423ADB |E8 D07FFEFF CALL 0040BAB0
00423AE0 |83F8 01 CMP EAX,1
00423AE3 |74 27 JE SHORT 00423B0C
00423AE5 |B9 D0A64600 MOV ECX,0046A6D0
00423AEA |E8 C17FFEFF CALL 0040BAB0
00423AEF |85C0 TEST EAX,EAX
00423AF1 |74 08 JE SHORT 00423AFB
00423AF3 |8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00423AF6 |6BC0 0C IMUL EAX,EAX,0C
00423AF9 |EB 06 JMP SHORT 00423B01
00423AFB |8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00423AFE |6BC0 08 IMUL EAX,EAX,8
00423B01 |B9 0A000000 MOV ECX,0A
00423B06 |99 CDQ
00423B07 |F7F9 IDIV ECX
00423B09 |8945 FC MOV DWORD PTR SS:[EBP-4],EAX
00423B0C \8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00423B0F 85C0 TEST EAX,EAX
00423B11 77 11 JA SHORT 00423B24
00423B13 C745 FC 01000>MOV DWORD PTR SS:[EBP-4],1
00423B1A 90 NOP
00423B1B 90 NOP
00423B1C 90 NOP
00423B1D 90 NOP
00423B1E 90 NOP
00423B1F 90 NOP
00423B20 90 NOP
00423B21 90 NOP
00423B22 . 90 NOP
00423B23 . 90 NOP
2、将0042A569~0042A5B2,与00408824~0040885E全部用NOP(机器码90)来填充。
二、补丁效果:
1、跳过物理攻击与攻击性策略一开始的命中率计算;
2、在函数末尾,若发现伤害计算为0,则将伤害变为1。
[ 本帖最后由 阿尔法孝直 于 2010-9-13 04:59 编辑 ]
附件:
Attack.rar (2010-9-13 04:40, 127.27 K) / 该附件被下载次数 915
http://xycq.org.cn/forum/attachment.php?aid=101052
作者:
海潮探长 时间: 2010-9-9 08:19
占领沙发。问题:连击、暴击是否有控制,反击是不是必成功
作者:
阿尔法孝直 时间: 2010-9-9 08:21
反击必成功;连爆和以前一样。
作者:
KYOKO 时间: 2010-9-9 23:57
用什么修改软件改的?
作者:
阿尔法孝直 时间: 2010-9-10 00:12 标题: 回复 #4 KYOKO 的帖子
OLLYDBG修改,IDA检验。
作者:
阿尔法孝直 时间: 2010-9-10 00:17
必晴天/雨天补丁:
修改0x443C7E开始的指令:
00443C7E /$ 55 PUSH EBP
00443C7F |. 8BEC MOV EBP,ESP
00443C81 |. 83EC 0C SUB ESP,0C
00443C84 |. 53 PUSH EBX
00443C85 |. 56 PUSH ESI
00443C86 |. 57 PUSH EDI
00443C87 |. 894D F4 MOV DWORD PTR SS:[EBP-C],ECX
00443C8A |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
00443C8D |. C640 04 00 MOV BYTE PTR DS:[EAX+4],0 ;改成0/1/2是晴天,3是云天,4/5是雨天
00443C91 |. 90 NOP
00443C92 |. 90 NOP
00443C93 |. 90 NOP
......
......
00443D08 |. 90 NOP
00443D09 |. 90 NOP
00443D0A |. 90 NOP
00443D0B |. E9 00000000 JMP edk2kmz1.00443D10
00443D10 |> 5F POP EDI
00443D11 |. 5E POP ESI
00443D12 |. 5B POP EBX
00443D13 |. C9 LEAVE
00443D14 \. C3 RETN
补丁效果:每回合开始时锁定为晴天/雨天。
[ 本帖最后由 阿尔法孝直 于 2010-9-13 04:41 编辑 ]
附件:
Weather.rar (2010-9-13 04:41, 254.47 K) / 该附件被下载次数 238
http://xycq.org.cn/forum/attachment.php?aid=101059
作者:
阿尔法孝直 时间: 2010-9-10 16:22
天气自选补丁:
修改函数0x443C7E:
00443C7E $ 55 PUSH EBP
00443C7F . 8BEC MOV EBP,ESP
00443C81 . 83EC 0C SUB ESP,0C
00443C84 . 53 PUSH EBX
00443C85 . 56 PUSH ESI
00443C86 . 57 PUSH EDI
00443C87 . 894D F4 MOV DWORD PTR SS:[EBP-C],ECX
00443C8A . 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
00443C8D . C640 04 05 MOV BYTE PTR DS:[EAX+4],5
00443C91 . 68 E03C4400 PUSH 00443CE0
00443C96 . 6A 01 PUSH 1 ;这个参数,若为1则是图1的形式,若为6则是图2的形式
00443C98 . E8 9852FFFF CALL 00438F35
00443C9D . 83C4 08 ADD ESP,8
00443CA0 . 85C0 TEST EAX,EAX
00443CA2 . 74 67 JE SHORT 00443D0B
00443CA4 . 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
00443CA7 . C640 04 00 MOV BYTE PTR DS:[EAX+4],0
00443CAB . EB 5E JMP SHORT 00443D0B
00443CAD 90 NOP
00443CAE 90 NOP
00443CAF 90 NOP
......
......
00443CDD 90 NOP
00443CDE 90 NOP
00443CDF 90 NOP
00443CE0 D1 DB D1 ;这儿开始是对话框里面的字符串
00443CE1 A1 DB A1
00443CE2 A1 DB A1
00443CE3 B0 DB B0
00443CE4 CA DB CA
00443CE5 C7 DB C7
00443CE6 A1 DB A1
00443CE7 B1 DB B1
00443CE8 CE DB CE
00443CE9 AA DB AA
00443CEA C7 DB C7
00443CEB E7 DB E7
00443CEC CC INT3
00443CED EC DB EC
00443CEE A3 DB A3
00443CEF AC DB AC
00443CF0 D1 DB D1
00443CF1 A1 DB A1
00443CF2 A1 DB A1
00443CF3 B0 DB B0
00443CF4 B7 DB B7
00443CF5 F1 DB F1
00443CF6 A1 DB A1
00443CF7 B1 DB B1
00443CF8 CE DB CE
00443CF9 AA DB AA
00443CFA D3 DB D3
00443CFB EA DB EA
00443CFC CC INT3
00443CFD EC DB EC
00443CFE A1 DB A1
00443CFF A3 DB A3
00443D00 00 DB 00
00443D01 00 DB 00
00443D02 00 DB 00
00443D03 00 DB 00
00443D04 00 DB 00
00443D05 00 DB 00
00443D06 00 DB 00
00443D07 00 DB 00
00443D08 00 DB 00
00443D09 00 DB 00
00443D0A 00 DB 00
00443D0B > E9 00000000 JMP 00443D10
00443D10 > 5F POP EDI
00443D11 . 5E POP ESI
00443D12 . 5B POP EBX
00443D13 . C9 LEAVE
00443D14 . C3 RETN
补丁效果:
在每回合开始之前,都会弹出一个对话框,如图,若选择“是”,则本回合天气为晴天,若选“否”,则本回合天气为雨天。
[ 本帖最后由 阿尔法孝直 于 2010-9-13 04:43 编辑 ]
图片附件:
[图1]
图1.jpg (2010-9-10 16:22, 145.35 K) / 该附件被下载次数 237
http://xycq.org.cn/forum/attachment.php?aid=101067
图片附件:
[图2]
图2.jpg (2010-9-10 16:22, 142.66 K) / 该附件被下载次数 231
http://xycq.org.cn/forum/attachment.php?aid=101068
附件:
[“天气自选1”为图1的形式,“天气自选6”为图2的形式]
天气自选.rar (2010-9-13 04:43, 254.57 K) / 该附件被下载次数 257
http://xycq.org.cn/forum/attachment.php?aid=101069
作者:
阿尔法孝直 时间: 2010-9-13 04:56
自动恢复自选补丁:
1、从0x42A6E2开始修改:
...
0042A6E2 74 05 JE SHORT 0042A6E9
0042A6E4 E9 AB040000 JMP 0042AB94
0042A6E9 8B45 C4 MOV EAX,DWORD PTR SS:[EBP-3C]
0042A6EC 83C0 05 ADD EAX,5
0042A6EF 50 PUSH EAX
0042A6F0 E8 E5EEFEFF CALL 004195DA
0042A6F5 83C4 04 ADD ESP,4
0042A6F8 8845 F4 MOV BYTE PTR SS:[EBP-C],AL
0042A6FB C745 F0 00000>MOV DWORD PTR SS:[EBP-10],0
0042A702 8B45 C4 MOV EAX,DWORD PTR SS:[EBP-3C]
0042A705 83C0 05 ADD EAX,5
0042A708 50 PUSH EAX
0042A709 E8 A0EAFEFF CALL 004191AE
0042A70E 83C4 04 ADD ESP,4
0042A711 85C0 TEST EAX,EAX
0042A713 74 36 JE SHORT 0042A74B
0042A715 C745 F0 01000>MOV DWORD PTR SS:[EBP-10],1
0042A71C 8B4D EC MOV ECX,DWORD PTR SS:[EBP-14]
0042A71F E8 6CF0FDFF CALL 00409790
0042A724 8BD8 MOV EBX,EAX
0042A726 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
0042A729 50 PUSH EAX
0042A72A 33C0 XOR EAX,EAX
0042A72C 8A45 F4 MOV AL,BYTE PTR SS:[EBP-C]
0042A72F 90 NOP
0042A730 90 NOP
...
2、重写函数0x42AB99(计算自动恢复百分比的函数)
0042AB99 /$ 55 PUSH EBP
0042AB9A |. 8BEC MOV EBP,ESP
0042AB9C |. 83EC 04 SUB ESP,4
0042AB9F |. 53 PUSH EBX
0042ABA0 |. 56 PUSH ESI
0042ABA1 |. 57 PUSH EDI
0042ABA2 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
0042ABA5 |. 8B0485 683245>MOV EAX,DWORD PTR DS:[EAX*4+453268]
0042ABAC |. 50 PUSH EAX
0042ABAD |. 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
0042ABB0 |. 83C0 06 ADD EAX,6
0042ABB3 |. 50 PUSH EAX
0042ABB4 |. 68 E0004800 PUSH 恢复自选.004800E0
0042ABB9 |. 6A 00 PUSH 0
0042ABBB |. E8 75E30000 CALL 恢复自选.00438F35
0042ABC0 |. 83C4 10 ADD ESP,10
0042ABC3 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
0042ABC6 |. 83E8 07 SUB EAX,7
0042ABC9 |. 83F8 07 CMP EAX,7
0042ABCC |. 7D 34 JGE SHORT 恢复自选.0042AC02
0042ABCE |. FF2485 C00048>JMP DWORD PTR DS:[EAX*4+4800C0]
0042ABD5 |> C745 FC 0A000>MOV DWORD PTR SS:[EBP-4],0A
0042ABDC |. EB 28 JMP SHORT 恢复自选.0042AC06
0042ABDE |> C745 FC 0F000>MOV DWORD PTR SS:[EBP-4],0F
0042ABE5 |. EB 1F JMP SHORT 恢复自选.0042AC06
0042ABE7 |> C745 FC 05000>MOV DWORD PTR SS:[EBP-4],5
0042ABEE |. EB 16 JMP SHORT 恢复自选.0042AC06
0042ABF0 |> C745 FC 19000>MOV DWORD PTR SS:[EBP-4],19
0042ABF7 |. EB 0D JMP SHORT 恢复自选.0042AC06
0042ABF9 |> C745 FC 14000>MOV DWORD PTR SS:[EBP-4],14
0042AC00 |. EB 04 JMP SHORT 恢复自选.0042AC06
0042AC02 |> 33C0 XOR EAX,EAX
0042AC04 |. EB 2B JMP SHORT 恢复自选.0042AC31
0042AC06 |> 6A 00 PUSH 0
0042AC08 |. 6A 00 PUSH 0
0042AC0A |. 6A 00 PUSH 0
0042AC0C |. 6A 01 PUSH 1
0042AC0E |. 6A 05 PUSH 5
0042AC10 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0042AC13 |. C1E0 02 SHL EAX,2
0042AC16 |. 05 00004800 ADD EAX,恢复自选.00480000
0042AC1B |. 50 PUSH EAX
0042AC1C |. 68 80000000 PUSH 80
0042AC21 |. 68 E0000000 PUSH 0E0
0042AC26 |. E8 C9D10000 CALL 恢复自选.00437DF4
0042AC2B |. 83C4 20 ADD ESP,20
0042AC2E |. 25 FF000000 AND EAX,0FF
0042AC33 |. 0345 FC ADD EAX,DWORD PTR SS:[EBP-4]
0042AC36 |. EB 00 JMP SHORT 恢复自选.0042AC38
0042AC38 |> 5F POP EDI
0042AC39 |. 5E POP ESI
0042AC3A |. 5B POP EBX
0042AC3B |. C9 LEAVE
0042AC3C \. C3 RETN
3、打开UE,从0x80000(程序运行时为内存偏移0x480000)开始修改:
0x80000:
04 E8 44 00 08 E8 44 00 0C E8 44 00 10 E8 44 00
14 E8 44 00 18 E8 44 00 1C E8 44 00 20 E8 44 00
24 E8 44 00 28 E8 44 00 2C E8 44 00 30 E8 44 00
34 E8 44 00 38 E8 44 00 3C E8 44 00 40 E8 44 00
44 E8 44 00 48 E8 44 00 4C E8 44 00 50 E8 44 00
54 E8 44 00 58 E8 44 00 5C E8 44 00 60 E8 44 00
64 E8 44 00 68 E8 44 00 6C E8 44 00 70 E8 44 00
74 E8 44 00 78 E8 44 00 7C E8 44 00 80 E8 44 00
84 E8 44 00 88 E8 44 00 8C E8 44 00 90 E8 44 00
94 E8 44 00 98 E8 44 00 9C E8 44 00 A0 E8 44 00
A4 E8 44 00 A8 E8 44 00 AC E8 44 00 B0 E8 44 00
B4 E8 44 00 B8 E8 44 00 BC E8 44 00 00 00 00 00
D5 AB 42 00 DE AB 42 00 E7 AB 42 00 02 AC 42 00
02 AC 42 00 F0 AB 42 00 F9 AB 42 00 00 00 00 00
C7 EB D1 A1 D4 F1 25 73 D4 DA 25 73 B5 D8 D0 CE
B5 C4 BB D6 B8 B4 B0 D9 B7 D6 B1 C8 A1 A3 00 00
补丁效果:当回合开始时,有部队处于村庄、鹿砦等恢复地形中时,会弹出一个菜单,提示玩家选择恢复最大耐久力的百分比,如图,如果点击“18”则表示恢复量为最大耐久力的18%。
补丁缺点:即使处于恢复地形的部队是满血状态,也会跳出提示,让玩家选择恢复最大耐久力的百分比。此时,无论选择哪一项都不会再恢复。
[ 本帖最后由 阿尔法孝直 于 2010-9-13 13:07 编辑 ]
图片附件:
[先跳出一个提示]
图1.jpg (2010-9-13 04:56, 79.1 K) / 该附件被下载次数 199
http://xycq.org.cn/forum/attachment.php?aid=101155
图片附件:
[接着是一个菜单]
图2.jpg (2010-9-13 04:56, 76.99 K) / 该附件被下载次数 211
http://xycq.org.cn/forum/attachment.php?aid=101156
附件:
恢复自选.rar (2010-9-13 13:07, 127.39 K) / 该附件被下载次数 235
http://xycq.org.cn/forum/attachment.php?aid=101157
作者:
doublecat 时间: 2010-9-13 09:00
昨晚已在留意“《三国志孔明传》分析结果”的帖子,想不到今早又看到这个帖子。
厉害厉害!下来学习!
作者:
redrumcha 时间: 2010-9-13 17:49
太牛了,吐血支持,希望越来越丰富
作者:
阿尔法孝直 时间: 2010-9-16 04:59
战场测试模式补丁:
UE修改主程序:
0x407A5:00 ——> 02
补丁效果:
一进入战场就进入测试模式,无需之前的秘籍操作。
询问回合是否结束时选NO即可呼出测试模式菜单。
具体见http://www.xycq.net/forum/thread-213378-1-1.html 的5楼。
附件:
测试模式.rar (2010-9-16 04:59, 127.16 K) / 该附件被下载次数 431
http://xycq.org.cn/forum/attachment.php?aid=101218
作者:
54476333 时间: 2010-9-30 21:19
好像不错啊
作者:
小兵1234 时间: 2010-10-21 14:24
沒有完過原版,請問在哪裡有載?(給個連結吧)
作者:
wdill 时间: 2011-3-11 15:00
有没最大成长补丁呢!像天地劫那样的
作者:
WHITESHIP 时间: 2013-1-26 19:18
原帖由 阿尔法孝直 于 2010-9-10 16:22 发表
天气自选补丁:
修改函数0x443C7E:
补丁效果:
在每回合开始之前,都会弹出一个对话框,如图,若选择“是”,则本回合天气为晴天,若选“否”,则本回合天气为雨天。
挖个坟。
想问下,图1里点击YES和NO响应是通过VC什么函数实现的?
最近致力于研究怎么废弃曹操传的WIN界面对话框,恢复成英杰传前两代的界面。
如果都能改成这样,就用不着pushbutton了。
作者:
阿尔法孝直 时间: 2013-1-26 20:22 标题: 回复 #15 WHITESHIP 的帖子
提示框函数原型:
int __cdecl sub_438F35(char* a1, char a2)
a1是提示文字的地址,a2是提示框样式,按下YES或NO决定这个函数的返回值。
欢迎光临 轩辕春秋文化论坛 (http://xycq.org.cn/forum/) |
Powered by Discuz! 5.0.0 |