设为首页收藏本站

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

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

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2011-6-6 20:58:15 | 显示全部楼层 |阅读模式
本帖最后由 银河漫步 于 2011-6-6 21:25 编辑 / p7 [5 @8 J9 S# A% o& j

, j6 W, `. V  |& _0 w首先,DOSBOX的数据不是静态地址
6 l, W1 A+ X4 i, h
2 d2 w8 c1 {  A; M! K' n我们从最简单的人物兵力开始入手  Y3 W8 q3 V+ h5 o% f' H  w# D

5 a# N, |4 i+ C4 b! O我用FPE找了一下人物兵力(为什么用FPE...个人喜好...因为FPE的编辑框看着舒服)& i5 p8 {# u$ }, |$ A: v- z
$ O: x0 \) |7 d+ p. [7 ^! @& |, R$ G
当然这个兵力地址下次启动游戏的时候说不定就变了,所以下一步要找基地址
# Q* E- p+ Z2 q启用CE调试刘备的兵力地址
3 L+ P1 F8 |/ b6 p6 U8 m- E+ p: A# Y3 f+ e* U! q
找到基地址后验证一下6 E9 X1 P, J- `4 C( Q
3 s1 k& t* b8 U+ ?4 e- s
现在启用CheatMaker,因为CM1.62版本并没有添加对dosbox0.74的支持,所以添加一个程序支持' n/ g, H; O/ `- b8 x9 M
; `' q) V: t' I8 C8 W% n; m: W
把刚才搜索到的基地址添加进去,另外如果这里是2级指针,则在基地址后边加上“,地址”,并把附加数据填上“1”, Q) Q9 d+ c* Q9 {3 x$ y

: T3 b2 J4 g( _$ l- W  l添加完毕后选择对应的进程,启动内存编辑,看一下刚才的地址偏移,现在可以确认程序支持没有问题了9 w5 m: v" q0 P1 f* P! |& n9 K# c7 i
5 l  d2 `8 B0 t' g
然后启用CM的“运行设计器”,添加一个lable控件和一个TextBox控件,并对TextBox控件做如图红色框的编辑
1 q5 d0 i/ g8 y, {9 S+ A& J& x( I# ^
再添加一个ListBox控件,点击“数据列表”,然后写上个列表,为什么图上这么写,因为根据图一中的那些文字说明
+ U) x3 w. n5 T0 R7 \这里每行之间是写上一个相对第一行的偏移地址,第一行则认为是0! b2 K' G. F9 s" k% e+ Y  C, Z. a% q- j
其实ListBox附加数据可以简化这个流程,附加数据写上“1(2C)“,则认为每行的间隔地址为2C,不需要去计算了
- P2 ^& O+ l3 u只需要写上$ N# }9 t$ Y* i- _& e1 r7 ]
1-刘备6 ]4 b" v4 C5 s! w. T; C8 q
2-关羽
+ w+ B& l" f  a9 |3 f/ F$ g3-张飞
6 c3 ~# U4 ]& \( K: }这样的东西4 N  s. ?0 Q; D: o. k; M
但是这么添加不好对列表排序,所以暂时还是按图片中的添加方法来9 m1 t+ u- V7 o" {3 m0 q* e
8 v& p" M/ ?7 W$ ?
添加完保存下,然后运行一下修改器
6 o; F& }. D9 q2 o3 c( ~0 Q- Q! c; {
可以看到如图的效果,然后再多添加一些地址进去吧,别忘了添加一个按钮
2 B) [  Q0 M3 N$ b# X/ _9 o按钮有几个功能,读取数据、保存数据是两个最基本的功能
) i6 O$ |8 U, o+ a$ L( L创建窗体也是个实用功能,本次不讲这个+ c4 }% g$ z# [7 D, Z

* h0 j, G6 Z! x3 Y5 v: D$ M% G我最后设计完毕的效果如下图所示,最后会提供这个CMF源文件,大家可以随意打开看下. u6 r) Q6 T1 W2 |/ r
% d+ p8 ^5 ?  [" R7 Y# U7 N  }
最后是生成EXE的独立修改器,如下图所示,选好对应的支持程序后,对应的类名和标识也会自动填上(因为程序之前已经添加到了支持程序列表里); ~8 u5 i! t. @2 T4 S! K
这里的插件,如果独立修改器有用到插件的话,则CM目录里的Plugins文件夹的对应插件需要和独立的EXE保留在同同一目录下(具体清参考我做的太阁4修改器,里面用到了一个插件),插件是可自行开发的,会编程的朋友可以任意添加新插件到CM里
# e3 ]- \; e' o9 c9 n因为这里没用到特殊插件,故可直接生成即可2 R8 l% J6 W1 a2 C0 `% w4 o
! g. E! y( X% j( b# G& K" C, k
: ~% ~+ L2 `( y: w  C% t
最后是该修改器的源文件随意参考下

本帖子中包含更多资源

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

×

评分

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的情況下, 每次查到的金錢地址都不一樣, 所以只有放棄了( O. s. K/ A* J" y- k- |
money_114 发表于 2011-6-6 23:22
" \( u9 \+ l: e& _6 [2 t2 q

$ u! |  |( t7 d2 L天枫对DOSBOX的基地址添加有问题
0 O" M, V* d" h" j; h& K他想兼容各个版本
; t$ H' D. e5 f) C6 d' i于是采用了特征码的方式进行定位: K' c& E( b7 n4 a* |8 F
这种不准确,于是出现了做轩辕剑修改器的那种情况% c, d1 ^: u0 n
1 X6 v+ I5 T& D  g. `* ^- t9 |8 T; x! x" d# O
但是DOSBOX属于每个版本基地址不同、偏移也不同的东西! Y% k0 a1 w$ T( f- D
: O9 A5 l* a  z6 w$ W6 D
不过你遇到的这种数据变址的情况还是比较特别的
9 l) i' S% H* g游戏拿来我有空研究下
回复

使用道具 举报

该用户从未签到

发表于 2011-6-7 12:04:03 | 显示全部楼层
5# 银河漫步 - |9 E; M4 f# M! J
- I8 c7 u8 `0 S2 x7 |7 i) v
http://u.115.com/file/dnszl2u9
; K- a! u2 F/ D1 t* V4 H  M軒轅劍還在可接受範圍内, 超時空實在是太怪了
回复

使用道具 举报

签到天数: 82 天

[LV.6]常住居民II

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

使用道具 举报

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:31:18 | 显示全部楼层
5# 银河漫步 ) v- d" \, Z! a  Q  T$ [1 t
9 H% ]$ O  }+ R, [, p
http://u.115.com/file/dnszl2u9
3 i7 f& h2 a5 {/ `; ^軒轅劍還在可接受範圍内, 超時空實在是太怪了, `3 ?4 I3 G$ e
money_114 发表于 2011-6-7 12:04
/ v3 ]5 G! i* L# G" V% ^& I: i
! ~( a6 Q9 o3 k
我读了里面各种存档
" N# _0 ?1 F) u就没那个存档可以让我改金钱的....
回复

使用道具 举报

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 19:56:39 | 显示全部楼层
这游戏的内存调用确实不是一般的怪9 J, g& E: Z" O7 w/ l" ?5 O  o
从指针到偏移地址都是动态分配的
回复

使用道具 举报

该用户从未签到

发表于 2011-6-7 20:58:20 | 显示全部楼层
本帖最后由 money_114 于 2011-6-7 21:01 编辑 , S" Y9 w3 v! g0 j
我读了里面各种存档3 w) U% V/ O) [- L. S1 l8 J! [  f1 b
就没那个存档可以让我改金钱的..... y" L" e$ K; L' V
银河漫步 发表于 2011-6-7 19:31
, [) I1 J- y( T7 z8 T9 X& l  G. P
你願意研究的話可以試下這個存檔,我已經放棄做修改器了' Q2 |  B8 |0 p. A6 e4 d( R3 k

5 b) @6 V' g0 R6 S9 i( g3 b" W發現買入和賣出的金錢地址也不一樣,連每次的戰場人物地址也不一樣

本帖子中包含更多资源

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

×
回复

使用道具 举报

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-7 21:51:31 | 显示全部楼层
刚才重新开始游戏试过了
9 ~; u' D+ ]' ^9 `% ?) Q9 E# [确实是奇怪的内存分配方式
回复

使用道具 举报

签到天数: 82 天

[LV.6]常住居民II

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

使用道具 举报

签到天数: 6 天

[LV.2]偶尔看看I

 楼主| 发表于 2011-6-10 15:10:27 | 显示全部楼层
5# 银河漫步
5 d4 C/ c# d, A4 {& p! t
& |& B9 c  v$ E/ \: u9 t3 phttp://u.115.com/file/dnszl2u93 i: i/ t$ D1 j3 ?/ n" G
軒轅劍還在可接受範圍内, 超時空實在是太怪了6 i% `6 ]) ]+ {
money_114 发表于 2011-6-7 12:04

7 s! l4 w& Y4 J. R  N" B9 h- a
2 H. ]' X- A& J- @# T1 I非进程的指针
: T& y( g  r  S: t是模块的指针
9 n/ g/ q- T6 I' @难怪无法进行绝对寻址
. `, B6 X) f# y9 N8 h/ L9 z暂时想不出办法
回复

使用道具 举报

该用户从未签到

发表于 2011-6-11 13:12:04 | 显示全部楼层
13# 银河漫步
. {0 T; s$ y4 ]& K" Z9 A8 y& ~% T' Y% }
遊戲通關, 已執行清理操作
回复

使用道具 举报

该用户从未签到

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

使用道具 举报

该用户从未签到

发表于 2011-11-2 17:10:04 | 显示全部楼层
我看不太懂 # T' U! O2 M5 e: C2 v
你那個偏移量401D4# T* D4 H/ i9 D* R  I0 g2 K
是怎麼來的??
5 m, m/ k$ x/ m  Z( g. q% B+ d3 |0 V/ C& m. l
可以的話你可以詳細在教一下 * a; T' i' J$ F. T- X) H
找基地指的方法嗎?
回复

使用道具 举报

签到天数: 574 天

[LV.9]以坛为家II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-5 03:57

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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