EMU618社区

 找回密码
 立即注册
搜索
查看: 3122|回复: 16

[原创HACK教程] CheatMaker 实例入门教程 DOSBOX0.74的 三国志英杰传 修改器 + 源文件

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑
( v  T% m, I$ H; ~% g2 S- [+ s
; \3 V+ c: R$ O6 T3 L/ [( P( U首先,DOSBOX的数据不是静态地址6 m5 ?. o9 m/ q
9 G6 O( m4 p* q
我们从最简单的人物兵力开始入手9 P1 s5 b6 o8 q
# Q- S8 B  M% j
我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)0 o' A: h  ~9 |
1 Q8 n1 }1 h0 h+ E* I3 O2 c( q1 f/ s
当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址6 p- k0 Z+ U# W4 u6 ~. P
启用CE调试刘备的兵力地址
' U$ w5 q/ [8 [7 c' J/ ]" m" x' c* V5 e2 G2 _- h0 X
找到基地址后验证一下4 x$ |4 c2 w2 b& F

& D9 S! _( g0 r: P( `# T现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持
2 s# ]- c3 `+ ?8 l, \% P4 r. k# q: S! C- P+ W6 q. z
把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
% f0 b- A. t( Z& \1 U/ o
  F( Z) l( f* u添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了
1 y' A. X; f% C9 Q7 f% M7 L, I' r% M( {
然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
: u- x* K" u0 f6 Z4 h0 S; v& ?9 M/ S3 [
再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明
! N4 {# @* O3 U4 b& ^% p- }1 D- n1 J  [这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是04 A2 O1 M+ Q' k
其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了% v7 @  t( @" b6 I$ L, x6 M
只需要写上
" `) K- `. ^' B! J0 g1-刘备
3 q8 ~6 N9 N, h6 f2 ?# @2-关羽
" B! {! F- V. |& |1 n3-张飞
+ d7 o+ C5 `5 d+ j这样的东西- c8 e" X8 ?5 b- u
但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来% u" h. l* F* `+ C

+ p" _( Q( q+ P) p# D/ b" a5 u添加完保存下,然后运行一下修改器4 L( K; g9 N. ]  I5 E- U* v% }

/ F9 a5 O0 I/ D% e1 S9 |; N4 r( P  x可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮
/ S9 O( s* k, T0 u5 X按钮有几个功能,读取数据、保存数据是两个最基本的功能3 ]; f4 F8 X  t/ Y# M& F& e% r( S
创建窗体也是个实用功能,本次不讲这个
# R" g) U; O; W: J0 D; a5 r5 X" A' h" v
我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下
% i; \' W1 M. R0 |$ w# R+ [/ h* `) w+ T  j/ ~7 ~* \
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)) ?- c( H2 R9 n" u  m
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里" X  i/ L/ t* A; Z7 r
因为这里没用到特殊插件,故可直接生成即可9 x7 e* _+ D0 `3 N
. m. V; ~/ ^$ t
/ W1 y; h2 e3 z& r1 B
最后是该修改器的源文件随意参考下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

该用户从未签到

发表于 2011-6-6 22:13:39 | 显示全部楼层
好好学习·有时间也自己做修改器

签到天数: 1548 天

[LV.Master]伴坛终老

发表于 2011-6-6 22:45:52 | 显示全部楼层
很好的教程 辛苦了

该用户从未签到

发表于 2011-6-6 23:22:08 | 显示全部楼层
本來想做超時空英雄傳説的修改器, 不過發現個問題, 用CE查, 在沒有關閉dosbox的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 07:06:38 | 显示全部楼层
本來想做超時空英雄傳説的修改器, 不過發現個問題, 用CE查, 在沒有關閉dosbox的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了
& K2 p$ H+ {9 t3 s: k0 j/ h2 r  umoney_114 发表于 2011-6-6 23:22

8 J6 s8 I$ G0 j8 T; s6 _8 O/ D! h: T- [* L
天枫对DOSBOX的基地址添加有问题+ L8 p& t, G: h" Q% {$ |/ h
他想兼容各个版本1 j9 G* k- d5 Z2 Z
于是采用了特征码的方式进行定位% l* v$ E0 K4 f9 C, @
这种不准确,于是出现了做轩辕剑修改器的那种情况* O: _* r4 m5 Z& b5 m( C
+ b- B9 G5 Q4 `' t& e
但是DOSBOX属于每个版本基地址不同、偏移也不同的东西
: U& J, I7 B- q. D5 a9 n# E
* @& X" a- P" Y% L& q9 A. \- Y不过你遇到的这种数据变址的情况还是比较特别的
1 j. E" w4 d0 h) d游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步
, Z. C. F& m, _* X
- Q/ b* i% L. f) L" n8 nhttp://u.115.com/file/dnszl2u9
1 U+ X3 W0 E/ a/ [3 @軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

发表于 2011-6-7 18:39:23 | 显示全部楼层
银河,能不能说下基础地址怎么查找,我不懂。

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步 6 }& L" \# E& ^, V% Q: s

; f" l" v  T+ ?) q! i+ `# X  A4 n3 o. nhttp://u.115.com/file/dnszl2u9
% f/ ^* p* s& c6 _軒轅劍還在可接受範圍内, 超時空實在是太怪了
, E, q9 W+ y; A" G1 W8 umoney_114 发表于 2011-6-7 12:04
7 }8 B0 |2 i  \3 H* X5 g1 c  Z+ ]

! `0 n. y4 y6 i( d8 M- v' A+ S我读了里面各种存档# Q# h8 ]3 W7 B: e6 T7 n5 U
就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪0 w8 B0 W  H5 o+ s& l6 X+ v
从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 0 e% l6 x' h# S+ t5 u* r! X
我读了里面各种存档) S; L) x# g; k) q- w# _* z
就没那个存档可以让我改金钱的...." s0 E5 T; R, A3 R/ T5 ?
银河漫步 发表于 2011-6-7 19:31

( B2 _; y  k" }2 G; B2 |/ i你願意研究的話可以試下這個存檔,我已經放棄做修改器了
9 G1 s7 e# d6 ~$ ?9 F+ s% |. W( e, s; t' Q& H$ @
發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
8 s; b8 o! o4 `' @# o+ u! ]确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

发表于 2011-6-9 13:41:31 | 显示全部楼层
银河,你要么去我爱秘籍论坛看看。那里有高手,或者问团长。

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 ' A3 _6 C( p; c# \

: k0 i) c3 B/ T) vhttp://u.115.com/file/dnszl2u99 ]3 a- y6 R% n; {
軒轅劍還在可接受範圍内, 超時空實在是太怪了
7 m2 L6 w6 ~2 p/ Cmoney_114 发表于 2011-6-7 12:04
) v- b& y& q/ F" y- b: X
/ `3 H& ?7 ?) |" G& Y
非进程的指针4 Z+ z& h! J  c3 I8 @
是模块的指针
. i. A$ a. Q4 |( h- [, i难怪无法进行绝对寻址3 \+ Z  V% y  b/ c7 U
暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步
- u# X( [5 ]+ b3 Z
' t: z- H9 d5 [' ?% Q0 `" S* H遊戲通關, 已執行清理操作

该用户从未签到

发表于 2011-7-2 18:54:52 | 显示全部楼层
怎么我下载不了啊

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 3 Z" G4 d" s# c& g
你那個偏移量401D4
  i) V- _* ~# F: d; {" ], w* G是怎麼來的??" b* H8 p4 k7 \
3 }, W1 B) }6 U2 l" |: v, C+ d6 e
可以的話你可以詳細在教一下 6 v0 Z2 j# I0 i
找基地指的方法嗎?

签到天数: 666 天

[LV.9]以坛为家II

发表于 2024-3-24 01:23:10 | 显示全部楼层
谢谢楼主无私的分享
[发帖际遇]: lj_107 乐于助人,奖励 8 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2025-11-18 20:37 , Processed in 1.078125 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表