游客:
注册
|
登录
会员
|
搜索
|
统计
|
帮助
轩辕春秋文化论坛
»
曹操传MOD制作交流
» 关于先手攻击代码的问题
兴唐传·瓦岗山异闻录(20150519版)发布
(2015-5-19)
论坛营运现状公告
(2014-8-10)
三国志12pk版下载
(2013-4-20)
《精忠报国岳飞传》制作组对外开放
(2013-1-16)
岳飞传解密剧本发布
(2011-4-12)
招募各版斑竹和网站管理技术人员
(2006-4-19)
<< 上一主题
|
下一主题 >>
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
|
开通个人空间
|
加入资讯
标题: 关于先手攻击代码的问题
武骧金星
组别
校尉
级别
前将军
功绩
29
帖子
1763
编号
56399
注册
2005-12-31
来自
上海
#1
发表于 2010-2-11 14:53
资料
个人空间
短消息
只看该作者
关于先手攻击代码的问题
我将
http://www.xycq.net/forum/viewthread.php?tid=194501
中所讲到的先手攻击代码抄袭到EKD5.EXE上,结果发现指定人物确实是可以先手攻击,但是指定兵种和指定宝物特性都无效……
已经经过反复确认代码绝对没有错误……
能否请前辈诊断一下可能出现了什么错误呢?谢谢。
[广告]
真诚支持说岳,携手共创辉煌
武骧金星
组别
校尉
级别
前将军
功绩
29
帖子
1763
编号
56399
注册
2005-12-31
来自
上海
#2
发表于 2010-2-12 11:48
资料
个人空间
短消息
只看该作者
关于先手攻击代码的问题2
教程代码源于
http://www.xycq.net/forum/viewth ... p;page=1#pid2717736
有一段代码是这样的:
0048CC8D E8 DEE7FAFF CALL 0043B470 // 获取武将职业
0048CC92 E9 E2010000 JMP 0048CE79 // 跳转
0048CE79 3C 40 CMP AL,40 // 比较武将职业是否满足预设值
0048CE7B 75 05 JNZ SHORT 0048CE82 // 如果不满足,跳转判断武将ID
0048CE7D E9 81020000 JMP 0048D103 // 如果满足,跳转到0048D103
0048CE82 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-C] // 在武将职业不满足要求的前提下
0048CE85 E8 E627FDFF CALL 0045F670 // 获取武将ID
0048CE8A 3D 00040000 CMP EAX,400 // 比较武将ID是否满足预设值
0048CE8F 0F85 47020000 JNZ 0048D0DC // 如果不满足,跳转判断宝物特效
0048CE95 E9 69020000 JMP 0048D103 // 如果满足,跳转到0048D103
问题就在于0048D103处的代码是这样写的:
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 // 这里判断了武将是否携带特效为17的道具,完全不能理解啊
0048D11D 85C0 TEST EAX,EAX
0048D11F ^0F84 72FBFFFF JE 0048CC97
0048D125 ^E9 CBFBFFFF JMP 0048CCF5
既然在0048CE79和0048CE8A处已经判断过武将的职业和ID,并且满足了触发先手攻击的要求,那么就不需要再判断武将携带的道具了呀?因此我不明白0048D103处的代码的真实含义。
能否请方家指教一下?谢谢。
[广告]
《精忠报国岳飞传完整版》火热发布
武骧金星
组别
校尉
级别
前将军
功绩
29
帖子
1763
编号
56399
注册
2005-12-31
来自
上海
#3
发表于 2010-2-12 12:24
资料
个人空间
短消息
只看该作者
关于宝物的判断
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
能不能解释一下这里把ECX的值乘上48H,然后又加上004A1B68到底有什么意义?谢谢。
[
本帖最后由 武骧金星 于 2010-2-12 13:25 编辑
]
[广告]
《精忠报国岳飞传完整版》火热发布
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#4
发表于 2010-2-13 09:01
资料
个人空间
短消息
只看该作者
两帖合并一起。
先回答最后面的问题,4A1B68是人物资料的内存地址,人物的五围、装备、等级经验等都存放在这里,详细请去看我写的教程以及里面的资料帖。
前面的问题,那段代码已经年代久远,有些问题也不出奇,现在都已经改掉换其他了,建议先参考一下我改的旧引擎3.0或4.0以及STAR的新引擎。我要过段时间再慢慢看回去。
[广告]
真诚支持说岳,携手共创辉煌
投票
交易
悬赏
活动
正在浏览此帖的会员 - 共
1
人在线
轩辕春秋文化论坛
轩辕史话
> 炎黄春秋
> 我思我在
> 法律探讨
> 三国史话
春秋文艺
> 古典小说
> 诗词歌赋
> 现代文艺
> 韦编三绝
> 对联雅座
> 滴翠亭
> 藏经阁
> 双七钟社
> 笑书神侠
> 辕门射虎
> 虎帐点兵
游戏人生
> 同人战棋手游
> 三国戏英杰传
> 三国鼎立
> 轩辕公会
> 三国志12
> 英雄史诗
> 运筹帷幄
> 人间五十年
> 步步为营
> 游行天下
> 游戏贴图
轩辕工作室
> 兴唐传·瓦岗山异闻录
> 豪华曹操传
> 精忠报国岳飞传
> 《精忠报国岳飞传》制作组
> 大一统演义
> 曹操传MOD作品交流
> 东吴霸王传
> 封神英杰传
> 杨家将
> 吕布传
> 三国无双战略版
> 北宋志·赵匡胤传
> 战旗春秋
> 曹操传MOD制作交流
> 金庸群侠传MOD交流
> 风华录
> 设计与修改
怡情岁月
> 影音经典
> 动漫先锋
> 绘画摄影
> 情感轩辕
> 衣食住行
> 体坛动力
> 谈股论金
参政议政
> 迎宾阁
> 鸿胪寺
> 登闻鼓
> 监造府
当前时区 GMT+8, 现在时间是 2025-8-11 11:06
京ICP备2023018092号
轩辕春秋
2003-2023 www.xycq.org.cn
Powered by
Discuz!
5.0.0
2001-2006
Comsenz Inc.
Processed in 0.009290 second(s), 9 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
轩辕春秋
-
Archiver
-
WAP
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
基本概况
论坛排行
主题排行
发帖排行
积分排行
管理团队
管理统计