标题: 关于先手攻击代码..
性别:未知-离线 席卷天下

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 24
编号 253510
注册 2007-12-21


发表于 2009-9-15 21:57 资料 短消息 只看该作者
关于先手攻击代码..

有谁能帮忙发个用exp护具改的先手攻击代码吗?
我按这个帖子:http://www.xycq.net/forum/thread-140147-1-1.html弄出来老是报错...(抓狂了)
而且那里的是连武将一起改,我找了半天没找单独的代码...
那位好心的前辈能提供下,谢谢了!


[ 本帖最后由 席卷天下 于 2009-9-17 11:29 编辑 ]


顶部
性别:未知-离线 席卷天下

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 24
编号 253510
注册 2007-12-21


发表于 2009-9-17 01:04 资料 短消息 只看该作者
有人知道吗....囧||


顶部
性别:未知-离线 ducksuper

Rank: 2Rank: 2
组别 百姓
级别 奋威校尉
功绩 1
帖子 129
编号 68614
注册 2006-5-13


发表于 2009-9-18 22:08 资料 短消息 只看该作者
引用自NORTON的Ekd5.exe修改实践(uedit)代码:

先手攻击(原每回合获得护具exp)+皇帝 先手攻击+许楮 先手攻击
3CF3B处开始的字节:E9 D9 EF 04 00 90

3A02F处开始的字节:E9 D4 20 05 00 90 90

8B708处开始的字节:FF 75 F0 FF 75 F8 E8 56 FF FF FF 83 C4 08 85 C0 74 1A 8A 45 F8 8B 4D F0 8A 51 04 52 50 B9 F0 27 49 00 E8 C2 97 F7 FF E9 10 DF FA FF 8B 45 F8 50 8B 4D F0 E9 F6 DE FA FF

8B669处开始的字节:55 8B EC 83 EC 14 8B 45 0C 89 45 F8 8B 45 08 89 45 FC 25 FF 00 00 00 6B C0 24 05 50 2C 4B 00 89 45 F4 8B C8 E8 DE E7 FA FF E9 E2 01 00 00 6A 08 8B 4D F4 E8 3F 9A F7 FF 85 C0 74 02 EB 4E 8B 4D F8 E8 C1 29 FD FF 89 45 F0 8B 4D F4 E8 B6 29 FD FF 89 45 EC 6A 00 FF 75 F0 FF 75 EC B9 F0 5D 4B 00 E8 FB E2 FC FF 85 C0 74 22 6A 00 6A 00 6A 00 68 FF 00 00 00 FF 75 F0 FF 75 EC B9 F0 5D 4B 00 E8 3A A7 FC FF B8 01 00 00 00 EB 02 33 C0 8B E5 5D C3

8B519处开始的字节:83 C4 08 FF 75 F4 FF 75 F8 E8 42 01 00 00 83 C4 08 85 C0 74 1A 8A 45 F8 8B 4D F4 8A 51 04 52 50 B9 F0 27 49 00 E8 AE 99 F7 FF E9 0B 10 FB FF 8B 45 F8 E9 F1 0F FB FF

8B879处开始的字节:3C 19 75 05 E9 81 02 00 00 8B 4D F4 E8 E6 27 FD FF 3D 0F 00 00 00 0F 85 47 02 00 00 E9 69 02 00 00

8BADC处开始的字节:6A 17 8B 4D F4 E8 8A 25 FD FF 8B C8 6B C9 48 81 C1 68 1B 4A 00 E8 13 A9 F7 FF 85 C0 0F 84 F7 FB FF FF E9 94 FB FF FF 6A 17 8B 4D F8 E8 63 25 FD FF 8B C8 6B C9 48 81 C1 68 1B 4A 00 E8 EC A8 F7 FF 85 C0 0F 84 72 FB FF FF E9 CB FB FF FF


其中红字0F为许褚代号 紫色19为大兵种类型皇帝

绿色17为定义给先手攻击的代码 (原效果17为每回合获得护具Exp) 如此修改后可将先手攻击特效合并到每回合获得护具Exp  改为其他即与其他特效合并

按在下的推测  8B879处开始的字节:3C 19 75 05 E9 81 02 00 00 8B 4D F4 E8 E6 27 FD FF 3D 0F 00 00 00 0F 85 47 02 00 00 E9 69 02 00 00 这一行不修改 应该可以实现阁下需要的效果(在下时间不够未测试,楼主可自行备份原文件后修改测试)

另:该代码应该适合原版曹操传 其他MOD修改较大的EXE文件可能不适用 需要找空白位置
至于如何增加空白位置 可参考
http://www.xycq.net/forum/viewthread.php?tid=193425&highlight=

[ 本帖最后由 ducksuper 于 2009-9-18 22:09 编辑 ]
顶部
性别:未知-离线 席卷天下

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 24
编号 253510
注册 2007-12-21


发表于 2009-9-19 11:19 资料 短消息 只看该作者
谢谢LS~^^
我昨天OF一个个换过去也试出来了~
又弄懂了要一些东西,再次感谢!!~

[ 本帖最后由 席卷天下 于 2009-9-19 11:20 编辑 ]
顶部
性别:未知-离线 ducksuper

Rank: 2Rank: 2
组别 百姓
级别 奋威校尉
功绩 1
帖子 129
编号 68614
注册 2006-5-13


发表于 2009-9-19 13:05 资料 短消息 只看该作者
以下代码是平远侯godtype
根据norton的UE改法转回OB代码的:

0043AC2F   >-E9 D4200500    JMP 0048CD08
0043AC34     90             NOP
0043AC35     90             NOP

0048CD08   FF75 F0          PUSH DWORD PTR SS:[EBP-10]
0048CD0B   FF75 F8          PUSH DWORD PTR SS:[EBP-8]
0048CD0E   E8 56FFFFFF      CALL 0048CC69
0048CD13   83C4 08          ADD ESP,8
0048CD16   85C0             TEST EAX,EAX
0048CD18   74 1A            JE SHORT 0048CD34
0048CD1A   8A45 F8          MOV AL,BYTE PTR SS:[EBP-8]
0048CD1D   8B4D F0          MOV ECX,DWORD PTR SS:[EBP-10]
0048CD20   8A51 04          MOV DL,BYTE PTR DS:[ECX+4]
0048CD23   52               PUSH EDX
0048CD24   50               PUSH EAX
0048CD25   B9 F0274900      MOV ECX,004927F0
0048CD2A   E8 C297F7FF      CALL 004064F1
0048CD2F  -E9 10DFFAFF      JMP 0043AC44
0048CD34   8B45 F8          MOV EAX,DWORD PTR SS:[EBP-8]
0048CD37   50               PUSH EAX
0048CD38   8B4D F0          MOV ECX,DWORD PTR SS:[EBP-10]
0048CD3B  -E9 F6DEFAFF      JMP 0043AC36

0043DB3B   .-E9 D9EF0400    JMP 0048CB19
0043DB40     90             NOP

0048CB19   83C4 08          ADD ESP,8
0048CB1C   FF75 F4          PUSH DWORD PTR SS:[EBP-C]
0048CB1F   FF75 F8          PUSH DWORD PTR SS:[EBP-8]
0048CB22   E8 42010000      CALL 0048CC69
0048CB27   83C4 08          ADD ESP,8
0048CB2A   85C0             TEST EAX,EAX
0048CB2C   74 1A            JE SHORT 0048CB48
0048CB2E   8A45 F8          MOV AL,BYTE PTR SS:[EBP-8]
0048CB31   8B4D F4          MOV ECX,DWORD PTR SS:[EBP-C]
0048CB34   8A51 04          MOV DL,BYTE PTR DS:[ECX+4]
0048CB37   52               PUSH EDX
0048CB38   50               PUSH EAX
0048CB39   B9 F0274900      MOV ECX,004927F0
0048CB3E   E8 AE99F7FF      CALL 004064F1
0048CB43  -E9 0B10FBFF      JMP 0043DB53
0048CB48   8B45 F8          MOV EAX,DWORD PTR SS:[EBP-8]
0048CB4B  -E9 F10FFBFF      JMP 0043DB41

0048CC69   55               PUSH EBP
0048CC6A   8BEC             MOV EBP,ESP
0048CC6C   83EC 14          SUB ESP,14
0048CC6F   8B45 0C          MOV EAX,DWORD PTR SS:[EBP+C]
0048CC72   8945 F8          MOV DWORD PTR SS:[EBP-8],EAX
0048CC75   8B45 08          MOV EAX,DWORD PTR SS:[EBP+8]
0048CC78   8945 FC          MOV DWORD PTR SS:[EBP-4],EAX
0048CC7B   25 FF000000      AND EAX,0FF
0048CC80   6BC0 24          IMUL EAX,EAX,24
0048CC83   05 502C4B00      ADD EAX,004B2C50
0048CC88   8945 F4          MOV DWORD PTR SS:[EBP-C],EAX
0048CC8B   8BC8             MOV ECX,EAX
0048CC8D   E8 DEE7FAFF      CALL 0043B470
0048CC92   E9 E2010000      JMP 0048CE79
0048CE79   3C 40            CMP AL,40
0048CE7B   75 05            JNZ SHORT 0048CE82
0048CE7D   E9 81020000      JMP 0048D103
0048CE82   8B4D F4          MOV ECX,DWORD PTR SS:[EBP-C]
0048CE85   E8 E627FDFF      CALL 0045F670
0048CE8A   3D 00040000      CMP EAX,400
0048CE8F   0F85 47020000    JNZ 0048D0DC
0048CE95   E9 69020000      JMP 0048D103
0048D0DC   6A 17            PUSH 17
0048D0DE   8B4D F4          MOV ECX,DWORD PTR SS:[EBP-C]
0048D0E1   E8 8A25FDFF      CALL 0045F670
0048D0E6   8BC8             MOV ECX,EAX
0048D0E8   6BC9 48          IMUL ECX,ECX,48
0048D0EB   81C1 681B4A00    ADD ECX,004A1B68
0048D0F1   E8 13A9F7FF      CALL 00407A09
0048D0F6   85C0             TEST EAX,EAX
0048D0F8  ^0F84 F7FBFFFF    JE 0048CCF5
0048D0FE  ^E9 94FBFFFF      JMP 0048CC97
0048D103   6A 17            PUSH 17
0048D105   8B4D F8          MOV ECX,DWORD PTR SS:[EBP-8]
0048D108   E8 6325FDFF      CALL 0045F670
0048D10D   8BC8             MOV ECX,EAX
0048D10F   6BC9 48          IMUL ECX,ECX,48
0048D112   81C1 681B4A00    ADD ECX,004A1B68
0048D118   E8 ECA8F7FF      CALL 00407A09
0048D11D   85C0             TEST EAX,EAX
0048D11F  ^0F84 72FBFFFF    JE 0048CC97
0048D125  ^E9 CBFBFFFF      JMP 0048CCF5
0048CC97   6A 08            PUSH 8
0048CC99   8B4D F4          MOV ECX,DWORD PTR SS:[EBP-C]
0048CC9C   E8 3F9AF7FF      CALL 004066E0
0048CCA1   85C0             TEST EAX,EAX
0048CCA3   74 02            JE SHORT 0048CCA7
0048CCA5   EB 4E            JMP SHORT 0048CCF5
0048CCA7   8B4D F8          MOV ECX,DWORD PTR SS:[EBP-8]
0048CCAA   E8 C129FDFF      CALL 0045F670
0048CCAF   8945 F0          MOV DWORD PTR SS:[EBP-10],EAX
0048CCB2   8B4D F4          MOV ECX,DWORD PTR SS:[EBP-C]
0048CCB5   E8 B629FDFF      CALL 0045F670
0048CCBA   8945 EC          MOV DWORD PTR SS:[EBP-14],EAX
0048CCBD   6A 00            PUSH 0
0048CCBF   FF75 F0          PUSH DWORD PTR SS:[EBP-10]
0048CCC2   FF75 EC          PUSH DWORD PTR SS:[EBP-14]
0048CCC5   B9 F05D4B00      MOV ECX,004B5DF0
0048CCCA   E8 FBE2FCFF      CALL 0045AFCA
0048CCCF   85C0             TEST EAX,EAX
0048CCD1   74 22            JE SHORT 0048CCF5
0048CCD3   6A 00            PUSH 0
0048CCD5   6A 00            PUSH 0
0048CCD7   6A 00            PUSH 0
0048CCD9   68 FF000000      PUSH 0FF
0048CCDE   FF75 F0          PUSH DWORD PTR SS:[EBP-10]
0048CCE1   FF75 EC          PUSH DWORD PTR SS:[EBP-14]
0048CCE4   B9 F05D4B00      MOV ECX,004B5DF0
0048CCE9   E8 3AA7FCFF      CALL 00457428
0048CCEE   B8 01000000      MOV EAX,1
0048CCF3   EB 02            JMP SHORT 0048CCF7
0048CCF5   33C0             XOR EAX,EAX
0048CCF7   8BE5             MOV ESP,EBP
0048CCF9   5D               POP EBP
0048CCFA   C3               RETN

其中0048CE79   3C 40            CMP AL,40其中的40不知道是否代表"无兵种"??

而且在下按照此改法成功改出了先手攻击 不过其触发条件是相邻触发  不知道如何将其改为攻击范围触发?
star175大大的5.5版新引擎似乎已经解决此问题 可是在下学艺不精看不懂代码... 求高人公布UE或者OB修改法...
顶部
性别:未知-离线 morningboo
(冰冷的山)

Rank: 4
组别 士兵
级别 偏将军
功绩 4
帖子 356
编号 171314
注册 2007-6-5


发表于 2009-9-19 15:20 资料 短消息 只看该作者
回复 #5 ducksuper 的帖子

40就是无兵种,兵种最大是34

具体的做法没有研究过,你可以试着研究毅哥引擎中的攻击范围指定这个特效,将此特效实现后合并先手就可以了
顶部
性别:未知-离线 ducksuper

Rank: 2Rank: 2
组别 百姓
级别 奋威校尉
功绩 1
帖子 129
编号 68614
注册 2006-5-13


发表于 2009-9-19 15:36 资料 短消息 只看该作者
回复 #6 morningboo 的帖子

谢谢 在下去试试
顶部
性别:未知-离线 ducksuper

Rank: 2Rank: 2
组别 百姓
级别 奋威校尉
功绩 1
帖子 129
编号 68614
注册 2006-5-13


发表于 2009-9-19 19:57 资料 短消息 只看该作者
最后还是看了岱瀛大的解读KOEI曹操传代码得出了答案...
将CALL Ekd5.0045AFCA(判断是否相邻)
改为CALL  Ekd.0043F8BE(取解攻击范围)
即可实现由相邻触发改为攻击范围触发
顶部

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




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

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

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