标题: 原曹操传引擎修改击退敌军获得物品
性别:男-离线 513633522
(小越)

Rank: 7Rank: 7Rank: 7Rank: 7
组别 校尉
级别 右将军
功绩 12
帖子 1179
编号 349592
注册 2009-12-6
家族 轩辕狼党


发表于 2012-1-4 14:23 资料 文集 短消息 看全部作者
原曹操传引擎修改击退敌军获得物品

本人正在为自己的《群英乱三国》(可能换个题材,做这样的MOD是为了让自己更多的学习修改原曹操传引擎)修改引擎中,本人是边学习边修改,技术有限
以下代码只是我最初进行修改时写的,在我正在改的引擎中已经进行了部分修改

击退敌军获得物品修改
这样就不用在剧本中去测试某人撤退获得普通物品(如获得个豆子啊)了

0043DBE0  |> \8B4D F8       MOV ECX,DWORD PTR SS:[EBP-8]
0043DBE3  |.  81E1 FF000000 AND ECX,0FF
0043DBE9  |.  6BC9 24       IMUL ECX,ECX,24
0043DBEC  |.  81C1 502C4B00 ADD ECX,Ekd64.004B2C50
0043DBF2  |.  E8 99500300   CALL Ekd64.00472C90
0043DBF7  |.  85C0          TEST EAX,EAX
0043DBF9  |.  75 05         JNZ SHORT Ekd64.0043DC00
0043DBFB  |.  E8 8185FCFF   CALL Ekd64.00406181
把上面这段代码写到下面代码前面就可以了(由于我正在改的引擎 位置已经有所改变就不提供修改具体方法了)
0043DC09  |>  6A 06         PUSH 6
新写两个函数:
参数:概率
输出:0-9的数字
004CE287    55              PUSH EBP
004CE288    8BEC            MOV EBP,ESP
004CE28A    51              PUSH ECX
004CE28B    894D FC         MOV DWORD PTR SS:[EBP-4],ECX
004CE28E    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE291    50              PUSH EAX这个地方完全可以改成自己想要的概率
004CE292    E8 9B18FBFF     CALL Ekd62.0047FB32
004CE297    83C4 04         ADD ESP,4
004CE29A    85C0            TEST EAX,EAX
004CE29C    74 06           JE SHORT Ekd62.004CE2A4
004CE29E    33C0            XOR EAX,EAX
004CE2A0    B0 01           MOV AL,1
004CE2A2    EB 40           JMP SHORT Ekd62.004CE2E4
004CE2A4    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE2A7    50              PUSH EAX概率
004CE2A8    E8 8518FBFF     CALL Ekd62.0047FB32
004CE2AD    83C4 04         ADD ESP,4
004CE2B0    85C0            TEST EAX,EAX
004CE2B2    74 06           JE SHORT Ekd62.004CE2BA
004CE2B4    33C0            XOR EAX,EAX
004CE2B6    B0 02           MOV AL,2
004CE2B8    EB 2A           JMP SHORT Ekd62.004CE2E4
004CE2BA    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE2BD    50              PUSH EAX概率
004CE2BE    E8 6F18FBFF     CALL Ekd62.0047FB32
004CE2C3    83C4 04         ADD ESP,4
004CE2C6    85C0            TEST EAX,EAX
004CE2C8    74 06           JE SHORT Ekd62.004CE2D0
004CE2CA    33C0            XOR EAX,EAX
004CE2CC    B0 03           MOV AL,3
004CE2CE    EB 14           JMP SHORT Ekd62.004CE2E4
004CE2D0    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE2D3    50              PUSH EAX概率
004CE2D4    E8 5918FBFF     CALL Ekd62.0047FB32
004CE2D9    83C4 04         ADD ESP,4
004CE2DC    85C0            TEST EAX,EAX
004CE2DE    74 06           JE SHORT Ekd62.004CE2E6
004CE2E0    33C0            XOR EAX,EAX
004CE2E2    B0 04           MOV AL,4
004CE2E4    EB 70           JMP SHORT Ekd62.004CE356
004CE2E6    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE2E9    50              PUSH EAX概率
004CE2EA    E8 4318FBFF     CALL Ekd62.0047FB32
004CE2EF    83C4 04         ADD ESP,4
004CE2F2    85C0            TEST EAX,EAX
004CE2F4    74 06           JE SHORT Ekd62.004CE2FC
004CE2F6    33C0            XOR EAX,EAX
004CE2F8    B0 05           MOV AL,5
004CE2FA    EB 5A           JMP SHORT Ekd62.004CE356
004CE2FC    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE2FF    50              PUSH EAX概率
004CE300    E8 2D18FBFF     CALL Ekd62.0047FB32
004CE305    83C4 04         ADD ESP,4
004CE308    85C0            TEST EAX,EAX
004CE30A    74 06           JE SHORT Ekd62.004CE312
004CE30C    33C0            XOR EAX,EAX
004CE30E    B0 06           MOV AL,6
004CE310    EB 44           JMP SHORT Ekd62.004CE356
004CE312    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE315    50              PUSH EAX概率
004CE316    E8 1718FBFF     CALL Ekd62.0047FB32
004CE31B    83C4 04         ADD ESP,4
004CE31E    85C0            TEST EAX,EAX
004CE320    74 06           JE SHORT Ekd62.004CE328
004CE322    33C0            XOR EAX,EAX
004CE324    B0 07           MOV AL,7
004CE326    EB 2E           JMP SHORT Ekd62.004CE356
004CE328    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE32B    50              PUSH EAX概率
004CE32C    E8 0118FBFF     CALL Ekd62.0047FB32
004CE331    83C4 04         ADD ESP,4
004CE334    85C0            TEST EAX,EAX
004CE336    74 06           JE SHORT Ekd62.004CE33E
004CE338    33C0            XOR EAX,EAX
004CE33A    B0 08           MOV AL,8
004CE33C    EB 18           JMP SHORT Ekd62.004CE356
004CE33E    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
004CE341    50              PUSH EAX概率
004CE342    E8 EB17FBFF     CALL Ekd62.0047FB32
004CE347    83C4 04         ADD ESP,4
004CE34A    85C0            TEST EAX,EAX
004CE34C    74 06           JE SHORT Ekd62.004CE354
004CE34E    33C0            XOR EAX,EAX
004CE350    B0 09           MOV AL,9
004CE352    EB 02           JMP SHORT Ekd62.004CE356
004CE354    33C0            XOR EAX,EAX   以上都未发生 就输出0
004CE356    8BE5            MOV ESP,EBP
004CE358    5D              POP EBP
004CE359    C3              RETN


获得物品  原曹操传物品
00406181  /$  55            PUSH EBP
00406182  |.  8BEC          MOV EBP,ESP
00406184  |.  33C0          XOR EAX,EAX
00406186  |.  33C9          XOR ECX,ECX
00406188  |.  B9 1E000000   MOV ECX,1E
0040618D  |.  E8 F5800C00   CALL Ekd63.004CE287
00406192  |.  33D2          XOR EDX,EDX
00406194  |.  8A90 D0614000 MOV DL,BYTE PTR DS:[EAX+4061D0]
0040619A  |.  36:8915 DB614>MOV DWORD PTR SS:[4061DB],EDX
004061A1  |.  52            PUSH EDX                                 ; /Arg1
004061A2  |.  B9 70074B00   MOV ECX,Ekd63.004B0770                   ; |
004061A7  |.  E8 99780000   CALL Ekd63.0040DA45                      ; \Ekd63.0040DA45
004061AC  |.  36:8B15 DB614>MOV EDX,DWORD PTR SS:[4061DB]
004061B3  |.  52            PUSH EDX                                 ; /Arg1 => 90900000
004061B4  |.  E8 FF5C0000   CALL Ekd63.0040BEB8                      ; \Ekd63.0040BEB8
004061B9  |.  83C4 04       ADD ESP,4
004061BC  |.  50            PUSH EAX                                 ; /Arg3
004061BD  |.  68 B8B34800   PUSH Ekd63.0048B3B8                      ; |Arg2 = 0048B3B8
004061C2  |.  6A 02         PUSH 2                                   ; |Arg1 = 00000002
004061C4  |.  E8 D0940200   CALL Ekd63.0042F699                      ; \Ekd63.0042F699
004061C9  |.  83C4 0C       ADD ESP,0C
004061CC  |.  8BE5          MOV ESP,EBP
004061CE  |.  5D            POP EBP
004061CF  \.  C3            RETN
004061D0      57            DB 57       0豆                           ;  CHAR 'W'
004061D1      58            DB 58       1米                           ;  CHAR 'X'
004061D2      5A            DB 5A       2神秘水                       ;  CHAR 'Z'
004061D3      5B            DB 5B       3神秘酒                       ;  CHAR '['
004061D4      62            DB 62       4武力果                       ;  CHAR 'b'
004061D5      63            DB 63       5智力果                       ;  CHAR 'c'
004061D6      64            DB 64       6统率力果                     ;  CHAR 'd'
004061D7      65            DB 65       7敏捷果                       ;  CHAR 'e'
004061D8      66            DB 66       8好运果                       ;  CHAR 'f'
004061D9      67            DB 67       9经验果                       ;  CHAR 'g'


顶部
性别:男-离线 513633522
(小越)

Rank: 7Rank: 7Rank: 7Rank: 7
组别 校尉
级别 右将军
功绩 12
帖子 1179
编号 349592
注册 2009-12-6
家族 轩辕狼党


发表于 2012-1-4 23:03 资料 文集 短消息 看全部作者
回复 #2 砖家叫兽 的帖子

旧引擎


顶部

正在浏览此帖的会员 - 共 6 人在线




当前时区 GMT+8, 现在时间是 2025-2-1 01:02
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.010712 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP