EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑 6 q4 e2 S' V5 l; h

1 J- C9 M: {  l首先,DOSBOX的数据不是静态地址5 g9 X1 o3 D, n" Q/ {3 E

, }" R" U5 m& ]; J我们从最简单的人物兵力开始入手
# I; f4 A, s* Y3 {+ h7 t9 P& l! U8 M' m7 g$ |; I
我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)4 K" j7 r3 Y- x! N

0 o4 w' _2 l- k& `/ p当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址
& M2 P' R( d8 Y2 h% P' S! C启用CE调试刘备的兵力地址1 a# j, X& |8 O

. {/ T# M+ c4 m找到基地址后验证一下
6 R$ a/ I# Z- q, s8 X) q1 S; ?0 \
  e: m3 H7 v; U! v, L1 o2 R现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持
0 r# W) o3 |# a8 a: B  p$ S1 t+ O  ~2 t5 M4 ]
把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
5 Y1 z/ @' Y; c; r2 M. @5 w! Q9 G" ^; f: J# a  |
添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了, j9 ^3 t3 f9 k1 m8 E7 d9 V: w

7 A* ?3 Z. w: U, w然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑& ]% s* B1 Y. t8 a' s" b6 V
  R* B2 }; Q; Y8 E( [9 P0 R- `; k
再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明
8 V/ Z- s; d/ Y% K这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0' @8 o" V: g( ^, `( s+ |/ G: v
其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了
; q( h( S$ J6 m; O& R( ?) n只需要写上
, b9 o' `/ W/ X- J! i$ ?- i& U1-刘备4 ?: z7 C2 T! O9 O4 y
2-关羽
& a( m8 z; y2 E9 f& g" n# v- n3-张飞5 \. A* e5 t) q4 Y
这样的东西
% a6 ^) i& T4 R但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来
; X9 O4 k# h  m+ S; x8 y/ R8 J
添加完保存下,然后运行一下修改器
5 c* O+ p* Z! R) p- e) q; d
% N8 v5 \& [3 _$ J0 ]可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮5 G4 D; _+ c& Y' G/ G* l
按钮有几个功能,读取数据、保存数据是两个最基本的功能
" t& ?" O; p9 `$ \创建窗体也是个实用功能,本次不讲这个
6 }) Q0 {4 t% A# [! |1 [% |- C3 F. X' F2 U
我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下
1 N* E" ^2 @" z( |. n3 m- I! i5 F. D4 j+ u! }8 Q  R7 o
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)+ S3 {) K; X' p# r0 z
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里
( |: {' A5 [1 k# |+ x因为这里没用到特殊插件,故可直接生成即可
2 H+ c" U) Y% s/ K" C4 d6 K; h
8 Z# r! Z) ^6 ]4 P) ^# \% ]
9 n# z  V0 u& d8 F- s1 g最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了
8 e) v0 c1 `6 y! V5 K* pmoney_114 发表于 2011-6-6 23:22
5 k+ ]' U# l! ?0 w

8 I1 A4 l" x, o天枫对DOSBOX的基地址添加有问题: q' [; z+ ~8 U# P4 Q
他想兼容各个版本
# y8 b% s4 j( t- c于是采用了特征码的方式进行定位% M9 }$ s8 _  y, a1 n' N! {
这种不准确,于是出现了做轩辕剑修改器的那种情况
$ Z$ F* d# x( m! y% [$ ^! R! U
1 C8 c# j; _# a+ D' ^# G但是DOSBOX属于每个版本基地址不同、偏移也不同的东西9 E) e3 }! Y0 L4 N- ^  s1 F% k
$ W# G  @: h, }0 V4 ?
不过你遇到的这种数据变址的情况还是比较特别的
4 j2 \* o" I' z* [# P6 f6 ^) A# s游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步 : |& i# \0 f1 E6 }% }

% a4 w# w4 r0 m" y: Bhttp://u.115.com/file/dnszl2u9
0 h& F" ?7 [- d軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步
8 B1 q% L, E% d7 u. h  `" c0 o3 k# d8 x4 l! A
http://u.115.com/file/dnszl2u9
7 u; B6 _  m, k  u軒轅劍還在可接受範圍内, 超時空實在是太怪了
4 F* n* g) L4 ?: q" Lmoney_114 发表于 2011-6-7 12:04

* j. x% M$ q3 |# f5 i4 [( n+ s' |2 t: Z+ I8 n: }
我读了里面各种存档
, z+ a, O5 O0 X/ p3 j3 N, y6 U就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪
+ Q$ \. Z& J$ {0 U' C( }3 d从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑
- W5 J! d3 y; `$ c6 y. b% f* m
我读了里面各种存档* h. B$ V8 A6 u( P+ H4 b" j4 O
就没那个存档可以让我改金钱的....6 X: L" E; V, J* K9 i
银河漫步 发表于 2011-6-7 19:31
% F5 C. p$ g: m9 h" v
你願意研究的話可以試下這個存檔,我已經放棄做修改器了
& H% D$ l8 a9 ?- J4 q
% X" y0 i- f. C3 g+ J發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
6 c3 B: d* |+ o确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 & C/ p6 I# @9 V" U+ f+ f: \

* w( _1 e. h1 Z: C1 P; Ihttp://u.115.com/file/dnszl2u9
; [+ V) J: V# X1 G& f2 L軒轅劍還在可接受範圍内, 超時空實在是太怪了& v! V3 {8 g1 u. x
money_114 发表于 2011-6-7 12:04
" L. r7 D5 O" o& q
2 ?) f! a8 `0 D7 ~5 H# [  N8 C  P/ g* y" u
非进程的指针3 o' w' z8 a; F' v
是模块的指针) @0 w2 ^) Y# P3 ~
难怪无法进行绝对寻址
$ }9 P. r; J3 N; ]7 I暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步 " A- d6 P" q6 |. D; J

* d2 O( ^* j) d& z! M遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 0 [. p& k, k  ^6 L
你那個偏移量401D4
4 X' z- i+ X. r* ?8 _% e2 W. F是怎麼來的??
# V7 n/ t9 I) I
4 _( v3 Q* ^6 n4 I9 h可以的話你可以詳細在教一下 0 Q: G# S: C- B& O- I. B" ?7 @
找基地指的方法嗎?

签到天数: 520 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-9 09:02 , Processed in 1.093750 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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