EMU618社区

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑 0 C+ p# M3 `- {6 T# k5 E
+ Y; \4 }9 ]* L
首先,DOSBOX的数据不是静态地址
4 O/ Q; K; \6 R( c9 P3 t
2 j; d+ Y& R+ q# w8 H$ r我们从最简单的人物兵力开始入手) _5 C' Y& g2 i5 V9 m9 \

# O( I0 j. ?9 }% q, v我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)
0 E( G2 Q6 ~$ k" f: y- }) Q' W8 |& [  J+ V- x! @- I. h
当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址+ v& `$ `& P/ t
启用CE调试刘备的兵力地址
4 M( ]* ]& [; y  E  Q- B( T+ f1 }( C- y* _$ }
找到基地址后验证一下/ j. j! q6 `" M7 r/ m
% }) ?7 _& ^: q
现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持3 A+ T/ J* N# |9 b

, d5 c  Y( p3 j  d1 I! ?* I4 G, ]把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”
. x; C. X9 E4 p4 r$ |- u
7 n4 U' Q. w1 ~6 ^3 i* V6 B2 u添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了
: l: ^9 N+ r0 n! z
5 @+ J- @# W8 {2 n. E0 O然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
' h9 g) r, b8 \. U/ [8 J0 q6 Z8 \0 _  j/ r1 h$ F
再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明- J+ P9 o9 i, u8 Y' J2 W( N6 n
这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0
; F  Q4 \; a; d- v: ^其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了) `1 j" P: E2 C" m2 w
只需要写上
8 l( O) l0 \8 j: |$ K! O1-刘备
! _5 x; q6 C- x3 M. U2-关羽
6 h7 B! l3 `7 `6 h3-张飞7 _$ R# e. O" z+ ~
这样的东西
# E9 I& H' z: E7 V但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来- s) w& F4 m& g! p

5 \7 Y+ j# s* \. _$ g添加完保存下,然后运行一下修改器
& q2 _" D4 v# q* b. }0 L
6 X7 ?5 U, b5 Q可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮1 V* _- \6 B' K9 I) j8 ~2 K
按钮有几个功能,读取数据、保存数据是两个最基本的功能4 ~, E0 O& o$ F" P4 s( [" p  Z
创建窗体也是个实用功能,本次不讲这个
, t* K' u! f- M: [, [7 k! U" X$ g( P4 Z& R/ p
我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下
: x% F3 E; k  U2 W  Y) {8 L* M$ i) _5 {* A# \
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里)
$ k& a  C- V+ H这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里! i6 W4 Q! Y% ~8 f' [( r# a; `& d( \
因为这里没用到特殊插件,故可直接生成即可
( |  r6 S; N0 _4 a& |3 i+ I/ V* E1 A6 O4 }

9 T# z9 o, B5 G+ f最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了
: Y  q) o  ?$ i# x2 `* ~money_114 发表于 2011-6-6 23:22
$ L. g) @8 z, y- j4 h
/ X$ E- e8 L) |% H
天枫对DOSBOX的基地址添加有问题  h; a% d, J: H: |! v0 ?9 c2 \
他想兼容各个版本: J5 ~3 U, d' p: z2 {& C0 i" Y
于是采用了特征码的方式进行定位" \' m  {/ t9 G
这种不准确,于是出现了做轩辕剑修改器的那种情况
+ c" _9 e6 X' A6 x6 w5 C. p  C! }* W" {5 K3 j1 [, g' \+ P* P- w
但是DOSBOX属于每个版本基地址不同、偏移也不同的东西0 R6 t4 D2 ^* j3 p) a9 l

) n3 e4 y  I/ r. W! Q+ N% c$ u不过你遇到的这种数据变址的情况还是比较特别的2 J! f0 }* W1 a
游戏拿来我有空研究下

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步
; g2 c: M+ d" z5 o* A
( H* ~9 k, y, Y1 G  u1 thttp://u.115.com/file/dnszl2u9
5 f# [/ @* X# C( ]7 e$ x+ G軒轅劍還在可接受範圍内, 超時空實在是太怪了

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步
6 `9 R0 o; \+ o! x' ~% S
/ m  z# B& ]5 \http://u.115.com/file/dnszl2u9+ O0 C. H! q; D- v/ S7 W# j. Z
軒轅劍還在可接受範圍内, 超時空實在是太怪了
  g. s) z- Q% U+ w6 V( e) V& zmoney_114 发表于 2011-6-7 12:04
; V+ [" }3 F/ Y  g8 m% z' c8 v* l

. [0 t7 L* O1 {5 J  g, G. T我读了里面各种存档
! x) R* ~( I: h! _* @# ~, x就没那个存档可以让我改金钱的....

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪
+ b4 K* e( d# k3 O7 m从指针到偏移地址都是动态分配的

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 1 [9 A6 X! w) v3 s- s
我读了里面各种存档/ c  k8 ]2 w, x% G8 }* E+ G
就没那个存档可以让我改金钱的....
2 z3 \% [. b' L+ @5 t  G3 N% @3 c  b银河漫步 发表于 2011-6-7 19:31

' ^1 b7 R4 A: }" E. Q你願意研究的話可以試下這個存檔,我已經放棄做修改器了# O7 C& z5 f, [; m- p

! N( i. ]5 j% J發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

x

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
2 B4 V+ N: h' _3 u# z2 \确实是奇怪的内存分配方式

签到天数: 80 天

[LV.6]常住居民II

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

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步 ( q2 z: E3 j% S6 ]/ s) _* p
1 H/ s$ }2 q" C  ]& o: C$ Q0 d0 n
http://u.115.com/file/dnszl2u9
, T9 K$ Z6 R! b, j* \6 ^/ N軒轅劍還在可接受範圍内, 超時空實在是太怪了/ s& T, F- K' \
money_114 发表于 2011-6-7 12:04

' g# g. x, g8 Y8 S
% d& J1 G. r4 M. k1 c. Z非进程的指针4 \( ^! b+ N' a: k8 p
是模块的指针
8 M, C* t9 N7 f& N9 a难怪无法进行绝对寻址
" k5 j+ b1 \0 ?) X+ N# `. L暂时想不出办法

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步
+ y- G9 |9 ?2 q, Z- K% @& ]8 m& k% j
遊戲通關, 已執行清理操作

该用户从未签到

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

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 $ _7 k/ k, e) ?" X2 j) w
你那個偏移量401D4/ p9 g# y. }2 U, m: S
是怎麼來的??7 i' B, H" x9 t8 ?( s) r

$ W1 Q8 o5 j  A0 J) {& y0 W& O  j可以的話你可以詳細在教一下 : H! @' n( v: _' o" T
找基地指的方法嗎?

签到天数: 442 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-24 18:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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