EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑 2 ^( Q5 ?& m1 ~: E8 z( p2 d  u

  F  C2 }4 d. F首先,DOSBOX的数据不是静态地址  H' P: Z$ V. M# S1 j: ^6 E

6 c& {% q9 K, D我们从最简单的人物兵力开始入手/ Q2 k3 B/ X, y- x& f; I8 o3 r
3 r  W; C- b  k) `! v; Q; d9 t
我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)
9 S$ `  @- ]# q& D( \, P) N; T5 o. v0 P
当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址% u5 e3 ?6 |: J. r
启用CE调试刘备的兵力地址
% G; G) u3 p* A9 s8 O/ n4 V( Z. X$ @
4 b* [8 O- M! t+ J) B3 _找到基地址后验证一下+ K0 X4 \6 e& B/ d, t, ?; ^

6 X; {* Z4 I, {. b, J现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持
2 t7 T+ R) X; A+ J- D7 P
: T* V! R. c, }6 Y% y: j把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
# D- I0 \' Q2 @6 T" f% p& I2 q0 e- f% g1 p% X# E
添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了8 H9 ?8 J# ~5 ^' E7 ^9 b

* L* g8 U. C' s& `) G然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
& l% W! s- Q, G
0 E: X2 W+ f& T  b* _2 F" [再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明+ C6 u& q0 K/ w: O) J0 |
这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0
' F5 J& m" V+ J6 I6 N3 S其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了
& t# C7 u1 \6 o, h- w+ V. H只需要写上) G; z9 q+ \& H  V* U0 d" v
1-刘备; k! W0 @8 x* t% k8 x7 [
2-关羽
* I4 p3 q6 U" m2 \1 a+ i3-张飞+ X  V) M3 h- H1 F
这样的东西* U+ U" J, B5 t' g2 \) x0 i2 ~
但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来
9 v8 K& E$ q+ q8 o+ O
# T3 P2 f! ~7 h/ |; Z3 e. H添加完保存下,然后运行一下修改器
6 l, {  \9 a8 t& V6 b) D+ x; M5 f0 L( L# |) e
可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮
" e& o; t7 ]! c0 K按钮有几个功能,读取数据、保存数据是两个最基本的功能
* m" S4 `  d% D1 A5 m# E8 ]7 H% i创建窗体也是个实用功能,本次不讲这个
0 N# z" Y! s% o& N/ H' @% _* Q+ @' }% ^- z. i7 L
我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下9 [1 g( A& i. ]/ W/ a/ h6 l# O
+ i3 q. N7 V2 _: [+ B6 B  T4 ~" s
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)# K9 |* u; T5 ?' l
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里
0 I  Y3 y' Z0 t( Q" _+ q) o因为这里没用到特殊插件,故可直接生成即可
7 R( I6 U& N4 {3 j% B% i7 y+ }" e5 ^# d$ Z

5 b; X" {5 d6 h& ^- Y! o% C最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了
9 F4 W$ X, O) hmoney_114 发表于 2011-6-6 23:22

( F$ c: U3 x7 c- q  D, B' `+ T) p% h) B; m( c" [
天枫对DOSBOX的基地址添加有问题+ b) g4 j' M8 I  n8 |2 O
他想兼容各个版本& a# q7 ]7 _, g7 |: s2 T; r: i( {! F
于是采用了特征码的方式进行定位
) R" K- |+ F3 x) k. x& F& Q+ ~/ V这种不准确,于是出现了做轩辕剑修改器的那种情况) P) f9 W1 h" X2 M8 U$ T2 n% l  q
% Z0 w1 c+ D# `# p( L# G
但是DOSBOX属于每个版本基地址不同、偏移也不同的东西- q! Q; O4 F7 h8 U8 r$ {. {

5 W$ C/ y+ g) h( A) ^; A  c# b不过你遇到的这种数据变址的情况还是比较特别的
& Y" v0 E# w+ K& P8 v5 c游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步 0 Q5 d6 {: @) Y( G4 K! E5 y# V

* D: l6 t2 Z- L; Jhttp://u.115.com/file/dnszl2u9
& G! V$ X1 b2 y8 o軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步
9 X: G* D' m9 E# l
) K8 w  }4 g& r% h( }8 m  xhttp://u.115.com/file/dnszl2u9
& S! h6 g" a; ^( j# Z3 l$ c軒轅劍還在可接受範圍内, 超時空實在是太怪了' m1 \7 P+ ]' D- Y) M. Y7 X
money_114 发表于 2011-6-7 12:04

5 K) s, f3 u) U2 p3 C
2 ?, ~( |' t$ S% e) r+ ~/ g1 I我读了里面各种存档( R& o6 z1 M. }: S+ X  L. G* c9 d' A. ?
就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪
6 p+ Z, |# l) _从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑
; q4 c, O8 j0 u, s  R0 V" L
我读了里面各种存档. Q6 s4 @$ g+ Q; U# z5 J- P2 d" u
就没那个存档可以让我改金钱的....( r: G1 ^$ J5 E- T
银河漫步 发表于 2011-6-7 19:31
) P9 c( {1 P, D7 w& j' U
你願意研究的話可以試下這個存檔,我已經放棄做修改器了
: s* U& k& d7 h% _* [* y" U: |! e( O# v+ }! ]+ `! `% i+ k+ z
發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
" B) X/ U9 _8 O% Z3 J, j4 o确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 4 W- M  ^0 f+ I1 `2 X; K/ h/ U
; {1 ~3 E! p4 R& D
http://u.115.com/file/dnszl2u9
# e$ S7 {6 t/ M8 U軒轅劍還在可接受範圍内, 超時空實在是太怪了3 ]) r6 v0 r. [8 r% f; T" T% p
money_114 发表于 2011-6-7 12:04

1 j# U: j0 [# Y% p  K( ~9 E: O* E4 ]
$ C- Z7 |2 s, j! O; o: \( t非进程的指针
3 M" F6 }' o+ O- m5 n3 ~: Q是模块的指针0 s/ D' O1 ?0 a" O+ O' _& a
难怪无法进行绝对寻址  A. N! n. H$ n9 j! _
暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步
6 K, \% h# N% f4 q" A+ d2 X* f' p% T7 J+ a/ J7 e
遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 7 \! i8 f. d0 \, P2 x+ y
你那個偏移量401D4, q" g% u" v8 k3 \) h& X
是怎麼來的??
! x& v2 v- Q( [/ F! q  M& l+ \7 [  s2 |4 D
可以的話你可以詳細在教一下 / q- K$ w& ^: U- K
找基地指的方法嗎?

签到天数: 518 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-8 06:40 , Processed in 1.120117 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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