EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑
9 v% @2 D! x$ t5 L; c- A" A. u8 ^7 @( _! q+ W
首先,DOSBOX的数据不是静态地址0 }3 `$ p; y( z
) U, P3 B$ {0 P' P' q
我们从最简单的人物兵力开始入手4 P+ [& K9 |2 [" ]0 ?9 ^! O& J
+ L5 E2 ^, A& ^! }
我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)
5 q7 \  a) r! i( |2 I; {/ V; P/ C6 ~4 M3 i
当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址
, W6 m4 {6 W! q6 p" t启用CE调试刘备的兵力地址
4 X8 Z( O' h( j' w& O
2 b$ y) P8 X: [' J" p找到基地址后验证一下4 g4 y/ X- O; D+ e. c# c, m
1 {! S/ T0 L% ~0 b4 S& o6 G
现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持
  E. y2 b0 t  s* R; P3 G: T! [/ c2 q9 X, |, H3 i
把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
# X7 U4 r) \0 d1 g( ?* q% w8 [, h2 `8 {. t- v5 ?, t
添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了
$ p& i: U, T) U( D8 b& u" @* b3 i# z0 H0 L- y4 F& R
然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
# N$ t9 z; q! {9 S. F' [1 r
% j# f: [9 a: \6 C8 w再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明  B6 a; }, K' v- Y5 ~# j
这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是05 e  X0 h5 J0 U
其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了
' v& i* O" U- y" B5 E! d' Z9 b9 N7 l只需要写上+ d0 ?$ _  F9 b! m
1-刘备7 C% z; c) b" J! J& I
2-关羽7 q+ t/ @1 Y+ \" K$ r
3-张飞% V) t& [- D* Q
这样的东西/ f  H. G$ e* V; C! [/ K
但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来/ k$ p1 e7 h6 N/ g. W/ |7 w
: T6 @. ]: x3 v9 b7 c
添加完保存下,然后运行一下修改器
: ]' P& _# P7 V  k% B5 K
* O& ?: R+ g- L  X; I+ ]可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮- \2 W1 V7 L7 e+ R; T+ p
按钮有几个功能,读取数据、保存数据是两个最基本的功能
3 A' |- W, E( s4 b. v1 R创建窗体也是个实用功能,本次不讲这个8 c/ ?2 z# m. U7 w* {& i

3 U: F5 O/ j/ B  ~! Y, s# q9 Z/ t我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下
  {6 `2 O8 x- @8 L2 ]/ }$ W
- s) M  G& Y- E7 x& ]: T8 Y; e1 v最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)$ e" X) E6 E3 p" R- R
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里
5 D7 t* ]$ j5 V6 }) @* n因为这里没用到特殊插件,故可直接生成即可
9 |1 H0 M2 G) {  G! H& [8 N
' R" O+ B2 H, u4 I8 @% m
. u- F4 D+ }  F, }# n最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了; G  D: L7 m) {- D4 b
money_114 发表于 2011-6-6 23:22

* D+ ?; [3 `0 J- \% z' R7 n$ q6 {
0 |' B* Q3 O* @1 H. m' l( @天枫对DOSBOX的基地址添加有问题
+ p1 }" `4 s/ z+ s0 Z" ]0 \他想兼容各个版本! {1 ~! ^6 l! }- X
于是采用了特征码的方式进行定位
4 [$ @3 w: ]) ?8 z' k. a这种不准确,于是出现了做轩辕剑修改器的那种情况9 S: w* `$ ~7 {$ Y- |- N0 ?" H
/ G1 f+ p% B" U, [" a8 v
但是DOSBOX属于每个版本基地址不同、偏移也不同的东西8 X3 f& M" @; c; _& L9 e  d. s

; X% W" f$ u5 z6 l不过你遇到的这种数据变址的情况还是比较特别的
# i6 x  l& y) a9 f$ E0 w游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步
" R4 M$ L- l( q
( q6 L& H7 A: I0 ~) Mhttp://u.115.com/file/dnszl2u9( Y$ G1 u: P6 z. Z
軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步
4 i! \4 o, H: ?9 r3 }# H0 c( j: l8 n; P* V# N
http://u.115.com/file/dnszl2u95 t" u% v' K( G! C
軒轅劍還在可接受範圍内, 超時空實在是太怪了
. q0 w/ g, ^6 @+ lmoney_114 发表于 2011-6-7 12:04
1 ]% A! E8 ?% B: e9 x

* W% O; u  T# x- d0 v我读了里面各种存档
9 o1 m5 J! o9 C2 N1 Z' E就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪2 @3 m  X+ }* k/ @# v# X# L9 S8 U
从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 5 C: H4 _$ |2 \* ^; I( O) S3 I
我读了里面各种存档
2 i3 P( E; _- x6 D  R就没那个存档可以让我改金钱的....
' r8 @- x* S+ B) W" K2 b- g# |银河漫步 发表于 2011-6-7 19:31
  d) \9 _/ j3 K
你願意研究的話可以試下這個存檔,我已經放棄做修改器了
( f# h$ Z  M+ W  y: o' f" D
1 W7 P, k4 A. A" i( p/ {發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
8 l- i8 T' O  e确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 9 s) a- {) V; b% ~4 |

& g6 a" i- F5 D0 m  [- ~  Whttp://u.115.com/file/dnszl2u9
1 M1 n* E1 r9 r, m' B( v; ^軒轅劍還在可接受範圍内, 超時空實在是太怪了
# a9 C# O6 ~* t+ Qmoney_114 发表于 2011-6-7 12:04

6 x; C. q- M* i# p# n+ ~6 z. t' |+ ^% B
非进程的指针6 B2 J3 d& w4 o+ V" E$ w3 W
是模块的指针
3 Z2 N0 q, I) ^+ |( x难怪无法进行绝对寻址
+ T1 @/ K2 w0 C8 b) a4 v& `暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步
# u: [3 t2 u" b8 Y+ z8 \. r
) R# D+ Q6 W# F( Q1 B4 L遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂   z/ `) @" a9 ]9 ^- Z4 m; U
你那個偏移量401D4
% d4 A1 p1 P1 P是怎麼來的??
- J, H/ k& Z( ?$ s2 s9 P0 r6 `+ j) a( q* D9 B- u, j' {+ [) b' f6 z
可以的話你可以詳細在教一下   \% @7 V2 i6 Y+ R4 q
找基地指的方法嗎?

签到天数: 605 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-17 08:07 , Processed in 1.113282 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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