原曹操传引擎修改击退敌军获得物品
  
本人正在为自己的《群英乱三国》(可能换个题材,做这样的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' 
 |