标题: 武将专属武器代码
性别:男-离线 godtype
(毅)

刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★

Rank: 24Rank: 24Rank: 24
柱国(正二品) 轩辕春秋年度最佳(轩辕工作室)
组别 经略使
级别 卫将军
好贴 1
功绩 1314
帖子 6207
编号 111321
注册 2007-2-18
来自 我家
家族 轩辕学院


发表于 2011-3-3 10:50 资料 个人空间 短消息 只看该作者
武将专属武器代码

写扩展教程的时候,突然想起漏了研究武将专属武器的代码,所以先随便研究了一下,并帖出相关的参考代码。


00407907  /$ 55             PUSH EBP
00407908  |. 8BEC           MOV EBP,ESP
0040790A  |. 83EC 0C        SUB ESP,0C
0040790D  |. 56             PUSH ESI
0040790E  |. 894D F4        MOV DWORD PTR SS:[EBP-C],ECX
00407911  |. 807D 08 FF     CMP BYTE PTR SS:[EBP+8],0FF
00407915  |. 75 07          JNZ SHORT 0040791E
00407917  |. B0 01          MOV AL,1
00407919  |. E9 83000000    JMP 004079A1
0040791E  |> 807D 08 17     CMP BYTE PTR SS:[EBP+8],17   ——[EBP+8]是物品编号
00407922  |. 75 15          JNZ SHORT 00407939
00407924  |. 8B4D F4        MOV ECX,DWORD PTR SS:[EBP-C]   ——[EBP-C]是武将数据的内存地址
00407927  |. E8 D41B0000    CALL 00409500
0040792C  |. 83F8 00        CMP EAX,0   ——CALL 409500后出来的EAX值就是武将编号
0040792F  |. 75 04          JNZ SHORT 00407935
00407931  |. B0 01          MOV AL,1
00407933  |. EB 6C          JMP SHORT 004079A1
00407935  |> 33C0           XOR EAX,EAX
00407937  |. EB 6B          JMP SHORT 004079A4
00407939  |> 0FB64D 08      MOVZX ECX,BYTE PTR SS:[EBP+8]
0040793D  |. 6BC9 19        IMUL ECX,ECX,19
00407940  |. 81C1 40114A00  ADD ECX,004A1140
00407946  |. 894D F8        MOV DWORD PTR SS:[EBP-8],ECX
00407949  |. E8 9C4D0000    CALL 0040C6EA
0040794E  |. 3C 03          CMP AL,3
00407950  |. 75 04          JNZ SHORT 00407956
00407952  |. 33C0           XOR EAX,EAX
00407954  |. EB 4E          JMP SHORT 004079A4
00407956  |> 3C 02          CMP AL,2
00407958  |. 75 26          JNZ SHORT 00407980
0040795A  |. 8B4D F8        MOV ECX,DWORD PTR SS:[EBP-8]
0040795D  |. E8 8E640100    CALL 0041DDF0
00407962  |. 3C FF          CMP AL,0FF
00407964  |. 74 12          JE SHORT 00407978
00407966  |. 0FB6F0         MOVZX ESI,AL
00407969  |. 8B4D F4        MOV ECX,DWORD PTR SS:[EBP-C]
0040796C  |. E8 5FFEFFFF    CALL 004077D0
00407971  |. 0FB6C0         MOVZX EAX,AL
00407974  |. 3BF0           CMP ESI,EAX
00407976  |. 75 04          JNZ SHORT 0040797C
00407978  |> B0 01          MOV AL,1
0040797A  |. EB 25          JMP SHORT 004079A1
0040797C  |> 33C0           XOR EAX,EAX
0040797E  |. EB 24          JMP SHORT 004079A4
00407980  |> 8B4D F8        MOV ECX,DWORD PTR SS:[EBP-8]
00407983  |. E8 B81B0000    CALL 00409540
00407988  |. 0FB6C0         MOVZX EAX,AL
0040798B  |. 50             PUSH EAX
0040798C  |. 8B45 F4        MOV EAX,DWORD PTR SS:[EBP-C]
0040798F  |. 0FB648 2B      MOVZX ECX,BYTE PTR DS:[EAX+2B]
00407993  |. 6BC9 1B        IMUL ECX,ECX,1B
00407996  |. 81C1 A0BF4A00  ADD ECX,004ABFA0
0040799C  |. E8 1F1C0000    CALL 004095C0
004079A1  |> 0FB6C0         MOVZX EAX,AL
004079A4  |> 5E             POP ESI
004079A5  |. 8BE5           MOV ESP,EBP
004079A7  |. 5D             POP EBP
004079A8  \. C2 0400        RETN 4

以上代码修改后,原版的17倚天剑就只能给0号曹操装备,其他用剑类部队都不可装备。
若要修改成某个武将可以装备某件非本职部队可以装备的物品,同时不影响该物品原来对应的部队装备,改成这样即可:
0040792F  |. 75 08          JNZ SHORT 00407939

以上代码是原版引擎的,其他引擎请参考着来改,同时以上代码只有一个武将对应一件物品,如果需要设置多人对就不同的物品,继续参考着来添加修改就是了。


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

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


发表于 2011-3-3 12:10 资料 文集 短消息 只看该作者
这个好啊!!


顶部
性别:男-离线 希布

武平侯
建武军节度使

Rank: 12Rank: 12Rank: 12
组别 节度使
级别 护军
功绩 30
帖子 453
编号 185728
注册 2007-7-6


发表于 2011-3-3 12:44 资料 文集 短消息 只看该作者
收到,非常有用~
顶部
性别:男-离线 leo003
(老茂)

Rank: 5Rank: 5
组别 士兵
级别 讨逆将军
功绩 7
帖子 679
编号 49311
注册 2005-9-20
来自 安徽


又研究新方向了,太强了
顶部
性别:男-离线 WHITESHIP

★★
谏议大夫

Rank: 16
组别 翰林学士
级别 征北将军
功绩 380
帖子 4210
编号 170977
注册 2007-6-3
家族 轩辕学院


发表于 2011-3-4 17:36 资料 个人空间 短消息 只看该作者
呐~毅大又有神研究了……于是……

00407927  |. E8 D41B0000    CALL 00409500

这一条如果改成获取武将兵种的话,能不能引申成兵种专用的道具呢?比如某种弓,弓兵不能用,而弓骑兵可以用~~

本人不懂汇编,只是随便发表下看法= =只看到这个地方似乎可以改,其他就不清楚了,所以才问问毅大能否实现这样一个小变动。
顶部
性别:男-离线 godtype
(毅)

刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★

Rank: 24Rank: 24Rank: 24
柱国(正二品) 轩辕春秋年度最佳(轩辕工作室)
组别 经略使
级别 卫将军
好贴 1
功绩 1314
帖子 6207
编号 111321
注册 2007-2-18
来自 我家
家族 轩辕学院


发表于 2011-3-4 17:54 资料 个人空间 短消息 只看该作者
回复 #5 WHITESHIP 的帖子

call 409500改成call 4077d0就可以了,注意是用AL输出。

[ 本帖最后由 godtype 于 2011-3-4 18:56 编辑 ]
顶部
性别:未知-离线 ydldc0810

Rank: 2Rank: 2
组别 百姓
级别 破贼校尉
功绩 1
帖子 87
编号 91535
注册 2006-11-15


发表于 2011-3-9 20:02 资料 短消息 只看该作者
请教毅大,如果改成特效专署该如何改(武器相同的兵种都能装备,但特效只有特定的人物才有效果)。
顶部
性别:男-离线 godtype
(毅)

刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★

Rank: 24Rank: 24Rank: 24
柱国(正二品) 轩辕春秋年度最佳(轩辕工作室)
组别 经略使
级别 卫将军
好贴 1
功绩 1314
帖子 6207
编号 111321
注册 2007-2-18
来自 我家
家族 轩辕学院


发表于 2011-3-10 16:53 资料 个人空间 短消息 只看该作者


QUOTE:
原帖由 ydldc0810 于 2011-3-9 20:02 发表
请教毅大,如果改成特效专署该如何改(武器相同的兵种都能装备,但特效只有特定的人物才有效果)。

指定的特效只有由指定的人物使用,将对应的特效里面的
PUSH **
CALL 407A09
改成武将编号的判断就了。
顶部
性别:未知-离线 李小哥

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 13
编号 489827
注册 2013-8-9


发表于 2013-10-17 18:12 资料 短消息 只看该作者 QQ
……这教程5.9的有效吗?
顶部
性别:未知-离线 李小哥

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 13
编号 489827
注册 2013-8-9


发表于 2013-11-5 18:09 资料 短消息 只看该作者 QQ
请教毅大,请问能不能给我一个Star175版本5.9的引擎的代码呢
顶部
性别:男-离线 godtype
(毅)

刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★

Rank: 24Rank: 24Rank: 24
柱国(正二品) 轩辕春秋年度最佳(轩辕工作室)
组别 经略使
级别 卫将军
好贴 1
功绩 1314
帖子 6207
编号 111321
注册 2007-2-18
来自 我家
家族 轩辕学院


发表于 2013-11-5 18:39 资料 个人空间 短消息 只看该作者


QUOTE:
其他引擎请参考着来改

写得很清楚了。
顶部
性别:未知-离线 李小哥

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 13
编号 489827
注册 2013-8-9


发表于 2013-11-6 13:15 资料 短消息 只看该作者 QQ
请教毅大,这是什么情况……弄不了啊


[ 本帖最后由 李小哥 于 2013-11-6 13:38 编辑 ]
顶部
性别:男-离线 燧火氏

Rank: 3Rank: 3Rank: 3
组别 士兵
级别 仁勇校尉
功绩 2
帖子 195
编号 139342
注册 2007-4-14


发表于 2013-11-6 13:58 资料 短消息 只看该作者
回复 #12 李小哥 的帖子

不是已经写了?将JNZ SHORT 改成 JNZ LONG即可。
顶部
性别:未知-离线 李小哥

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 13
编号 489827
注册 2013-8-9


发表于 2013-11-6 14:28 资料 短消息 只看该作者 QQ
回复 #13 燧火氏 的帖子

……真的吗?没骗我?感觉很不对劲,但是我没试过

[ 本帖最后由 李小哥 于 2013-11-6 14:29 编辑 ]
顶部
性别:未知-离线 李小哥

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 13
编号 489827
注册 2013-8-9


发表于 2013-11-8 16:44 资料 短消息 只看该作者 QQ
回复 #1 godtype 的帖子

请教毅大大,这些代码我真心不会参考着5.9引擎来改
能不能帮我弄求你了
有三个的人物序号1,2,3物品序号21,25,26,如果嫌麻烦可以也可以不弄……拜托了

[ 本帖最后由 李小哥 于 2013-11-8 16:47 编辑 ]


附件: [拜托了] Ekd5.zip (2013-11-8 16:44, 292.25 K)
该附件被下载次数 117
顶部

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




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

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

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