EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑   c& U5 D0 m+ O4 B5 {( a

/ l' q0 X  b* h# k; K  z首先,DOSBOX的数据不是静态地址9 J* \8 e2 g5 m7 K* y

. l1 [5 B" ?+ _我们从最简单的人物兵力开始入手
: ~3 Y8 H1 e; Y
. p9 c) s: m& \2 W  R( x我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)! F5 _5 i/ z3 _8 \- h: |

$ N: J0 K; g5 K/ H# H当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址
# G' }6 s1 u4 L/ f' _  G8 r! B3 `启用CE调试刘备的兵力地址$ W: d. Z5 ?6 ~2 w6 K

1 m' N5 h  ?. g' t1 m) C5 H找到基地址后验证一下  p( D6 A, [) t  m, r8 C

% c) I; T9 N; x4 W% H' \现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持' J/ |2 A7 B% A7 S, k9 T

5 v! f( o4 K1 b- T; y, p1 [. Y把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
0 T2 e4 a: F" D9 @+ v
! ~# G: z& ^" _; A0 z添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了
" Y. f, W6 e( I* i
+ K- S2 O3 N* T1 c1 I1 p2 o2 R然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
" I: m2 @& @, I, u9 ~+ u8 i+ k4 y7 k$ @1 Z# q0 h% W
再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明7 Z0 z+ l; n  s, ]( t& K* }; p
这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0
8 V, m2 G& @5 R4 m其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了+ S" j6 u! |* [7 U: M7 h# I& W& }
只需要写上4 T9 k7 g4 b7 U) Q/ B9 \# d( d2 D
1-刘备0 E8 h. U* ^/ H; g/ m3 [
2-关羽. V- W. d& d! A3 E$ Z6 \% a0 u
3-张飞
# F- G" a- }8 N这样的东西* z+ O7 k  [1 I2 l9 y' y
但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来* m/ }1 ?- \) M6 Z& \/ G
- J7 E7 W1 j5 V, v
添加完保存下,然后运行一下修改器
% A( ~" r! l( w2 T- B7 ?2 ]7 l8 G$ y
. Z7 m7 S. l$ V6 B! q( ]可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮
  {7 s. A$ m+ n5 H按钮有几个功能,读取数据、保存数据是两个最基本的功能% _3 _8 w8 g  z4 Y
创建窗体也是个实用功能,本次不讲这个
0 c4 b& `% p& r
7 ?- d+ F- ]. H- C4 P我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下) U# [9 S/ a) h( ~+ Z

; Q5 `0 Q+ w- U; L: F最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)3 [1 t  V) Z9 e$ o8 y& [) m1 L
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里
) [$ y4 H+ ^5 L- O因为这里没用到特殊插件,故可直接生成即可/ G2 t. J1 Z6 j* K2 a
2 X3 h5 @' k* B, I( ^4 O- o1 H/ u
" Z5 I3 O& H* p( 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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了; _2 N) h7 U1 p6 o  H
money_114 发表于 2011-6-6 23:22

- b/ [8 S; R$ j( N: [5 Y  Q2 t9 x; R' A' O7 j- }
天枫对DOSBOX的基地址添加有问题
$ d4 v) A  q/ q; O, c他想兼容各个版本0 S" i6 L$ I& F  k
于是采用了特征码的方式进行定位0 [6 x* w) j) T% t4 u
这种不准确,于是出现了做轩辕剑修改器的那种情况
) W. N( i" w. y, d+ G/ w0 s: B
0 E/ a4 D  u* E4 d但是DOSBOX属于每个版本基地址不同、偏移也不同的东西
9 w) G' {, f- ?) v
5 p$ I4 J+ d" [: I不过你遇到的这种数据变址的情况还是比较特别的
1 M1 [2 `% J+ Z7 D: ^+ H游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步 " b& [% Y6 P, q1 G. Z
2 |' _  t% L* k( u
http://u.115.com/file/dnszl2u9, u6 F  |2 L) r" [% {" L& s. R
軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步 # E- x6 g7 u/ K/ g) R: \4 Z2 }- t2 U) f

0 b; ?7 i$ s8 c2 b- ^http://u.115.com/file/dnszl2u9
5 M9 w9 O& `7 m7 k# z4 ?軒轅劍還在可接受範圍内, 超時空實在是太怪了
" {0 J! d* l- \4 [0 S( O1 o$ r; Bmoney_114 发表于 2011-6-7 12:04

0 F/ r. L; Z2 _' B  n9 x6 |! p) p8 L3 F
我读了里面各种存档% W* H# Z- T7 z# j  E  n
就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪& V  j, ]1 ~. O
从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 ( _2 N+ V* }' R, r5 a$ x3 S/ L
我读了里面各种存档- q7 I0 N" p4 f4 G
就没那个存档可以让我改金钱的....: W+ ?; m5 V: N0 J/ V6 E4 ]$ _
银河漫步 发表于 2011-6-7 19:31

7 s: ~1 S! ^' {  g" `+ x! i! Q1 Q4 Z你願意研究的話可以試下這個存檔,我已經放棄做修改器了
; \  H8 n: \3 r+ z' R" N2 e' [0 @7 l& b  X
發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了3 A% s; y; U  Q/ Y# B# q
确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 " p" M2 m: f& Y9 Y$ h
. h! j, b5 n+ J( @5 y. f
http://u.115.com/file/dnszl2u9
! v( V; T) m; |9 ~5 R軒轅劍還在可接受範圍内, 超時空實在是太怪了
3 b' H2 g( D& r# `) E3 kmoney_114 发表于 2011-6-7 12:04
4 H: y) o. s' l, i
1 k' {7 Q3 [; K$ m; l
非进程的指针& F& n* w% ^5 H8 ?
是模块的指针
, {. ?; l( |$ V6 G: |) ~难怪无法进行绝对寻址
; K  @8 P3 E$ l9 }暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步 / n4 f) f6 z& y# y
0 x) ^7 ?7 \* _1 ~
遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 1 v% T2 Y# x5 v; R: S6 p8 V2 N) K
你那個偏移量401D4( y4 T9 l/ c" _9 D  @( T
是怎麼來的??
) j5 G. ?# V# o- \2 @2 D. u( T4 G+ N
可以的話你可以詳細在教一下
. B' ?2 i2 B3 p9 c找基地指的方法嗎?

签到天数: 605 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-17 05:25 , Processed in 1.191407 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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