游客:
注册
|
登录
会员
|
搜索
|
统计
|
帮助
轩辕春秋文化论坛
»
曹操传MOD制作交流
» 在武将资料对话框中增加显示项
兴唐传·瓦岗山异闻录(20150519版)发布
(2015-5-19)
论坛营运现状公告
(2014-8-10)
三国志12pk版下载
(2013-4-20)
《精忠报国岳飞传》制作组对外开放
(2013-1-16)
岳飞传解密剧本发布
(2011-4-12)
招募各版斑竹和网站管理技术人员
(2006-4-19)
<< 上一主题
|
下一主题 >>
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
|
开通个人空间
|
加入资讯
标题: 在武将资料对话框中增加显示项
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#1
发表于 2010-10-14 10:11
资料
个人空间
短消息
看全部作者
在武将资料对话框中增加显示项
本文使用的参考引擎为我的最终版,方法相对较简单,复杂的请自行学习或参考其他引擎修改。
注:在解释部分非代码的带有“H”在后面的数字,则表示该数字为16进制,否则为10进制。地址类全部在前面加上“00”。
首先用Resource Hacker在武将情报对话框(编号166)中如下图添加红色的两行:
可以通过复制其他相同类型的到最下面再修改,注意不要搞错。
其中“特效”字样是会在游戏中显示出来的,而“AAA”字样在游戏会显示出对应武将的特技名称,当然需要改代码。
AAA后面的ID:1100是随意选择的,只要跟本对话框中其他的ID不同就可以了。
其他的长宽高位置等自行调整到合适的,然后编译脚本,保存,退出。
接着修改代码。
原代码:
00478837 |> 8B4D 90 MOV ECX,DWORD PTR SS:[EBP-70]
0047883A |. 33D2 XOR EDX,EDX
新代码:
00478837 >^E9 EC09F9FF JMP 00409228
00409228 > FF75 90 PUSH DWORD PTR SS:[EBP-70]
0040922B . E8 4D2C0000 CALL 0040BE7D
00409230 . 83C4 04 ADD ESP,4
00409233 . D1E0 SHL EAX,1
00409235 . 33D2 XOR EDX,EDX
00409237 . 8A90 00E05000 MOV DL,BYTE PTR DS:[EAX+50E000]
0040923D . 8B0C95 00504E00 MOV ECX,DWORD PTR DS:[EDX*4+4E5000]
00409244 . 51 PUSH ECX
00409245 . 68 4C040000 PUSH 44C
0040924A . FF75 08 PUSH DWORD PTR SS:[EBP+8]
0040924D . FF15 DC624800 CALL DWORD PTR DS:[<&USER32.GetDlgItem>]
== call dword ptr ds:[4862dc]
00409253 . 50 PUSH EAX
00409254 . FF15 60634800 CALL DWORD PTR DS:[<&USER32.SetWindowTextA>]
== call dword ptr ds:[486360]
0040925A . 8B4D 90 MOV ECX,DWORD PTR SS:[EBP-70]
0040925D . 33D2 XOR EDX,EDX
0040925F . E9 D8F50600 JMP 0047883C
1、00409228开始的位置要自选空白位置。
2、[EBP-70]是武将的DATA内存地址,CALL 0040BE7D是从武将的DATA内存地址中输出武将编号到EAX中,而
PUSH DWORD PTR SS:[EBP-70]
CALL 0040BE7D
ADD ESP,4
这3行可以直接用
MOV ECX, DWORD PTR SS:[EBP-70]
CALL 00409500
来代替,同样输出武将编号到EAX中。
3、0050E000是全武将的特技按编号顺序存放的内存起点,因为每个武将的特技占用两个字节,所以在前面加上SHL EAX,1来乘以2。
4、写特技名称。004E5000是全特技名称的指向开始,在这个地方开始要自行加上每一个特技的名称的跳转,每个占用4字节,然后根据每个跳转,在对应的位置添加名称,例如004E5000开始的代码是 00 54 4E 00 / 10 54 4E 00 / 20 54 4E 00 / 30 54 4E 00,那第0个特技名称就在004E5400的位置写,第1个特技名称就在004E5410的位置写……注意004E5000到004E5400之间的大小要由你的全部名称的多少来决定,当然我这里是预留多一点的,我的特技上限为255。
5、PUSH 44C就是前面所说的“AAA”的ID号。
6、注意CALL DWORD PTR DS:[***]不能照复制,要用后面红色部分。
举例:
11号武将的特技编号是16,那么系统的计算步骤为:
1、计算0BH*2+50E000H=50E016H
2、从0050E016这个地址中读出单字节数值10H
3、计算10H*4+4E5000H=4E5040H
4、从004E5040这个地址中读出四字节数值00 4E 55 00
5、跳到004E5500这个地址,将这里所显示的文字显示出来
以上内容仅供参考,不同的引擎请自行研究。
[
本帖最后由 godtype 于 2011-4-17 09:43 编辑
]
[广告]
《精忠报国岳飞传完整版》火热发布
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#2
发表于 2010-10-14 12:39
资料
个人空间
短消息
看全部作者
是指显示出来的名称长度?我在引擎的设置是16个字节,即最多七个半汉字。
[广告]
《精忠报国岳飞传完整版》火热发布
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#3
发表于 2010-10-15 07:40
资料
个人空间
短消息
看全部作者
回复 #9 狂煞∑小星 的帖子
你还是好好去看一下UE地址和OB地址的转换再来改吧。
[广告]
真诚支持说岳,携手共创辉煌
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#4
发表于 2010-10-15 11:11
资料
个人空间
短消息
看全部作者
回复 #11 513633522 的帖子
自己查找一下在哪些地方调用过就知道了。
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#5
发表于 2010-10-15 18:52
资料
个人空间
短消息
看全部作者
回复 #14 狂煞∑小星 的帖子
会看代码会看注解的都会知道。
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#6
发表于 2010-10-15 22:38
资料
个人空间
短消息
看全部作者
所有的名称都要手动打上去或者用粘贴并覆盖,直接粘贴会增大EXE而出错,而且S引擎要自己找位置改,不能照搬我的。
[广告]
《精忠报国岳飞传完整版》火热发布
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#7
发表于 2010-10-16 08:56
资料
个人空间
短消息
看全部作者
回复 #22 狂煞∑小星 的帖子
用了CALL 409500,下面的ADD ESP,4就不需要了。而且S引擎有很多地方是不能够乱用的,所以你要么自己研究,要么找STAR帮你改。
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#8
发表于 2010-10-27 21:24
资料
个人空间
短消息
看全部作者
00409293 > \C1E0 02 SHL EAX,2
你的这行删去,直接接后面的代码,然后
004092B8 > D1E0 SHL EAX,1
这行的前面添上
CALL 409500
还有下面写完文字之后的4093DC要改为"00"
[广告]
真诚支持说岳,携手共创辉煌
godtype
(毅)
刘国公
广南东路经略使
枢密直学士
★★★★★★★★★★★★
★★★
组别
经略使
级别
卫将军
好贴
1
功绩
1314
帖子
6207
编号
111321
注册
2007-2-18
来自
我家
家族
轩辕学院
#9
发表于 2011-4-17 09:44
资料
个人空间
短消息
看全部作者
回复 #31 513633522 的帖子
是,要去掉。
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
投票
交易
悬赏
活动
正在浏览此帖的会员 - 共
1
人在线
轩辕春秋文化论坛
轩辕史话
> 炎黄春秋
> 我思我在
> 法律探讨
> 三国史话
春秋文艺
> 古典小说
> 诗词歌赋
> 现代文艺
> 韦编三绝
> 对联雅座
> 滴翠亭
> 藏经阁
> 双七钟社
> 笑书神侠
> 辕门射虎
> 虎帐点兵
游戏人生
> 同人战棋手游
> 三国戏英杰传
> 三国鼎立
> 轩辕公会
> 三国志12
> 英雄史诗
> 运筹帷幄
> 人间五十年
> 步步为营
> 游行天下
> 游戏贴图
轩辕工作室
> 兴唐传·瓦岗山异闻录
> 豪华曹操传
> 精忠报国岳飞传
> 《精忠报国岳飞传》制作组
> 大一统演义
> 曹操传MOD作品交流
> 东吴霸王传
> 封神英杰传
> 杨家将
> 吕布传
> 三国无双战略版
> 北宋志·赵匡胤传
> 战旗春秋
> 曹操传MOD制作交流
> 金庸群侠传MOD交流
> 风华录
> 设计与修改
怡情岁月
> 影音经典
> 动漫先锋
> 绘画摄影
> 情感轩辕
> 衣食住行
> 体坛动力
> 谈股论金
参政议政
> 迎宾阁
> 鸿胪寺
> 登闻鼓
> 监造府
当前时区 GMT+8, 现在时间是 2025-4-16 21:30
京ICP备2023018092号
轩辕春秋
2003-2023 www.xycq.org.cn
Powered by
Discuz!
5.0.0
2001-2006
Comsenz Inc.
Processed in 0.009777 second(s), 9 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
轩辕春秋
-
Archiver
-
WAP
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
基本概况
论坛排行
主题排行
发帖排行
积分排行
管理团队
管理统计