EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑
  R0 x+ _2 h# {" Z4 x1 n- f2 N4 D0 D+ s7 n# `7 E) a) |; ?' z6 p! i$ n9 F
首先,DOSBOX的数据不是静态地址1 U. `+ h. ?% C
& }! i9 o' k( L4 S+ |
我们从最简单的人物兵力开始入手
  T6 G: F& l5 X7 T9 ?) k. C- |" e/ W/ J
我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)8 e  c, N+ Q( A7 m

  X2 k/ ^( a! l/ Z当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址
! @, v* f# C4 M0 N5 O8 ?启用CE调试刘备的兵力地址
  G) Z, u( _# q5 x0 Q6 S- e# M: u1 [. A7 w) b& Z* ]
找到基地址后验证一下4 O$ T- q8 w) z/ N
. r3 b! u0 @' Z0 J
现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持  ^7 @  z+ J9 v0 r5 H

0 ?4 @3 C  s2 k3 V3 c把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
/ l& v) f5 \- ^" |
" f1 k# ]2 v3 S2 e0 y( p; e' K添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了
2 r, z" x, {7 C) F: C0 R% I( [! D. K/ V, U" j3 `# I* E
然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑' F% B2 n) M, G

& t0 I1 D2 p* J0 X! U再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明7 s0 Q  W' o' C% x& g3 J" o
这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0
: Y! w# z- u$ J4 |1 }  A' F其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了# h" l7 b6 Q6 E2 t2 N, A$ u
只需要写上  }' W4 a5 j( O# z/ n
1-刘备; |, F$ t8 x, T2 `" `8 O
2-关羽
* O" p* ?5 M1 w" L# R- \3-张飞
" e; H0 e2 Y: E+ K. ]  I) A$ x这样的东西
1 T0 R" O4 c# u5 ]但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来. W% n8 ?/ |( O9 f7 X
) M; G5 ^* Q" K3 D1 h) F
添加完保存下,然后运行一下修改器
1 s" ?' E1 q; g* O1 a" ]; u) H+ e9 @' ], d2 b" v
可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮' h3 T/ `) z% C  |9 e! K
按钮有几个功能,读取数据、保存数据是两个最基本的功能
! T  H$ t/ `7 U! X1 ?/ p5 a创建窗体也是个实用功能,本次不讲这个
8 _  l$ L- X6 M3 v3 u
, \% D/ ^! Q# ^, L7 J我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下
# s) P" z% ]6 F9 Q/ b3 k) [/ ?) s: s. b
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)6 T% F2 Z2 e8 A) N1 `
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里. g. U& D0 \  {+ q
因为这里没用到特殊插件,故可直接生成即可$ d$ V$ X% \+ U3 e. P8 ]4 W: Q
3 m  \! ^, @7 _0 T# t

3 S5 i# [; D0 a最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了3 u/ ?0 ]( \/ P0 ]/ e* W/ y
money_114 发表于 2011-6-6 23:22
* u2 H( B8 ~7 Q, ~/ ]3 F
8 N* n0 n) M9 S1 _2 T- E. C" ^
天枫对DOSBOX的基地址添加有问题. c$ ?' n1 Y1 Q0 _) Z
他想兼容各个版本
7 J& S/ M6 o& i于是采用了特征码的方式进行定位) _1 \  f; H, S0 C# E
这种不准确,于是出现了做轩辕剑修改器的那种情况* B- O) t  b; {9 O! ]

* p) i0 h* h6 s1 j0 T* O& Q但是DOSBOX属于每个版本基地址不同、偏移也不同的东西
) `2 H% D3 t5 O; L' ]. e
$ X! K  i* R8 t5 |( D0 w不过你遇到的这种数据变址的情况还是比较特别的& B9 x! ]1 {) d( m
游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步 6 J6 S  Q- q1 J8 `& A# u9 A+ J; |

& [. D0 j+ j8 s8 T; r6 Q- L) zhttp://u.115.com/file/dnszl2u9
2 t& @  L0 |& e: l軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步
- Z) Q5 h+ j9 i% X; _$ {# W
' ^  m. D( K8 B' ?# T1 m" hhttp://u.115.com/file/dnszl2u9
- S5 R0 O0 S! ^. f% u; S( S6 S# t軒轅劍還在可接受範圍内, 超時空實在是太怪了+ f- C: O" h* s; m% ^; w
money_114 发表于 2011-6-7 12:04
- S; h- }* Q' T+ }3 c4 R4 D* R

: B. f7 D& v  P4 L/ M我读了里面各种存档
! |# `  r) E2 @0 |4 _2 k: G就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪4 y$ a$ w0 i" \' g; P( W
从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 3 b4 K! r  k/ B# a' i/ E7 e
我读了里面各种存档
$ m( F8 @! A6 x4 I' T) b就没那个存档可以让我改金钱的....: e  j- {) C7 z1 p: k
银河漫步 发表于 2011-6-7 19:31
$ s3 }8 A; ?& j# ]$ E8 W7 o
你願意研究的話可以試下這個存檔,我已經放棄做修改器了  B- X2 p; {: m9 X( g. C
9 g: z: T$ T. ]+ \1 |% [. ~& S
發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
" u  z! m" Y  C: E3 x! ?8 y! h确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 # y' X: z3 u5 f8 M6 E
  v' S* L! }( z$ q) Y0 g
http://u.115.com/file/dnszl2u9' j) s; J# L/ T9 ?  m
軒轅劍還在可接受範圍内, 超時空實在是太怪了
; V$ Z. {# }" |6 `money_114 发表于 2011-6-7 12:04
& |# R: f4 Y, O3 z, ]/ m+ Q

" B6 c: j0 z3 \) s. s3 B, w非进程的指针
3 K1 H4 k5 P. @$ n# _% ~3 c3 M是模块的指针) K0 U( B# n) k" i. O' G+ P
难怪无法进行绝对寻址
: [8 ?+ r% U( \7 \, U& x+ f# H* ~$ K& I- Z暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步 5 u4 N8 |9 M. f2 {

" i/ w3 ?. @$ m5 @5 r  w2 B遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂
% ^. H' r& |2 D$ E6 U你那個偏移量401D4  c: i, S% S; p5 l* T
是怎麼來的??( E' K3 Y: z6 f
8 X7 _" J# `) ]
可以的話你可以詳細在教一下 4 A- {2 k4 U' g2 A. t
找基地指的方法嗎?

签到天数: 556 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-26 19:31 , Processed in 1.110351 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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