1、首先打开CE,在设置里面尽量使用内核模式调试器

2009-8-5 14:23 上传

下载附件 (65.16 KB)

2、点击左上角的电脑图标

2009-8-5 14:25 上传

下载附件 (30.68 KB)

3、选中游戏进程,按确定

2009-8-5 14:27 上传

下载附件 (29.57 KB)

4、可以看到人物的血量是220,所以输入220,点首次搜索。其他用默认

2009-8-5 14:37 上传

下载附件 (96.37 KB)

5、以下是搜索结果,可以看到结果很多

2009-8-5 14:41 上传

下载附件 (67.21 KB)

6、出门让怪砍,使你掉血,然后CE在扫描内型下拉框里选择减少的数值

2009-8-5 14:44 上传

下载附件 (49.32 KB)

7、搜索完发现结果很多。。。。

2009-8-5 14:50 上传

下载附件 (97.32 KB)

8、没事我们多搜索几次,直到出现比较少的数字为止,看现在就一个地址了

2009-8-5 14:50 上传

下载附件 (66.57 KB)

9、双击找到的地址,把他加入下面的方框内

2009-8-5 14:53 上传

下载附件 (63.44 KB)

10、修改描述为1.内存地址(表示第一次游戏内找到的内存地址),右击地址,选择“查找写入该地址的代码”

2009-8-5 14:57 上传

下载附件 (78.02 KB)

11、以下是结果,并且双击找到的结果

2009-8-5 15:00 上传

下载附件 (26.23 KB)

12、然后出现如下图片,红色内行写着 ecx+000001e0,这里ecx 代表二级基址内放的数值,1e0 代表偏移量2。方框内是CE帮我们计算好的二级基址内的数值,我们就是需要他。把这个数字记下啦。通过它寻找二级基址的位置

2009-8-5 15:13 上传

下载附件 (63.25 KB)

13、点新的搜索,然后输入刚刚找到的二级基址内的数值,并且勾上前面的16进制(因为这个数据是16进制),再点击首次搜索(找找看哪个地址内的数值,满足上面这个数字),得到,如下两个结果,然后双击这两个结果,把他们加入下面的方框内。并且添加注释第A次进游戏得到的可能二级基址。

2009-8-5 15:21 上传

下载附件 (79.22 KB)

14、二级基址只有一个,所以这两个结果只有一个是真的,(一般来说第一个是真的地址,但也不是绝对的。碰RP的话,你也可以直接用第一)所以接下来要判断哪个才是真的二级基址。刚刚说过,退到游戏选择人物画面再进游戏,一级基址不变, 二级基址不变,但是二级基址内放的数字变了,这导致这个时候血的内存地址也变了。所以下面要做的就是退到人物选择画面,再进入游戏,通过刚刚方法(1---13步骤),再找次二级基址,他应该和前一回找到的二级基址一样。

下面图中我描述为(B可能的二级基址)的东东,是我第二次搜索得到的可能二级基址
。比较下两次进游戏得到的二级基址,只有红色的地址是没变的,说明他就是二级基址。

2009-8-5 15:41 上传

下载附件 (94.08 KB)

15、找到二级基址后,通过上图的面板你们也发现
二级基址(10822D20 )   =   一级基址的数值()   +     偏移1()
所以现在我们要找一级基址的数值 和 偏移1.

我们说过二级基址数值只要进入正式游戏都不不会改变了,只有进入人物选择画面的时候才变,下面我们要做的就是跟踪这个二级基址,回到人物选择画面,看看是谁往这个基址内写入东东~

2009-8-5 16:01 上传

下载附件 (73.72 KB)

2009-8-5 16:01 上传

下载附件 (154.2 KB)

16、正式进入游戏后,我们发现检测到几个结果,那到底哪个才是真的呢?
我们选择红色那个,因为他有mov

2009-8-5 16:05 上传

下载附件 (102.91 KB)

17、双击这个红色,然后得到如下图。红色那行写着 eax+ecx*4,这里前面的eax 代表一级基址内放的数值, ecx*4 代表偏移量1。方框内是CE帮我们计算好的一级基址内的数值,我们就是需要他。把这个数字记下啦。通过它寻找一级基址的位置。同时我们发现ecx代表的是4(十六进制),4(十六进制)*4=10(十六进制)。10就是偏移1

2009-8-5 16:14 上传

下载附件 (128.72 KB)

18、搜索一级基址内的数值10822D10,看看哪个地址内装的是他。结果就一个

2009-8-5 16:18 上传

下载附件 (59.14 KB)

19、好了现在我们知道所有的东西了,红色部分是无论哪次进游戏都不变的。找到他们,现在就能进行找血的内存位置了。

一级基址(012BAB94 )
二级基址(10822D20 )  =  一级基址的数值(10822D10)   +    偏移1(10)
血内存地址(055FCE18) =  二级基址的数值(055FCC38)   +     偏移2(1e0)

下面我们要来检验下我们得到的是否正确,思路是:

以下红色部分代表:无论哪次进入游戏都不会变的量

基址1内放的数字=读取数据(基址1)
基址2=基址1内放的数字+偏移量1               基址2内放的数字=读取数据(基址2)
血内存地址=基址2内放的数字+偏移量2         HP值=读取数据(血内存地址)

根据以上思路,写成按键精灵的代码如下:

  1. //下一行的目的是获取游戏窗口句柄。。因为下面要用到这个参数
  2. Plugin jzs=Window.MousePoint()
  3. //定义变量
  4. VBS Dim hp base py1 py2 hpjz1 hpjz2
  5. Rem 程序开始
  6. //base,py1,py2 分别表示一级基址的门牌号,偏移1,偏移2
  7. //自己修改,下面的三个参数为你自己的,你就能直接得到你自己游戏的血量多少,请注意所有十六进制的数字前都要加上&H,这样电脑才知道你输入的数字是十六进制的,不然像第二行的py2不加&H就变成十进制的10,实际上十六进制的10代表的是十进制的16
  8. base=&H012BAB94
  9. py1=&H10
  10. py2=&H1e0
  11. //hpjz1代表 一级基址内放的数字,下一句话意思是从一级基址内的数据存入hpjz1中.顺带补充句以下所有Memory.Read32Bit得到的数据都是十六进制
  12. Plugin hpjz1=Memory.Read32Bit(jzs,base)
  13. //hpjz2代表二级基址内放的数字,hpjz1+py1意思是把基址1内装的数字+偏移1,得到基址2的门牌号,下一句话意思是,计算出基址2的门牌号,然后从二级基址内读入数据存入hpjz2中
  14. Plugin hpjz2=Memory.Read32Bit(jzs,hpjz1+py1)
  15. //hp代表。。。地球人都知道什么意思。。。hpjz2+py2意思是把基址2内装的数字+偏移2,得到HP内存位置的门牌号,下一句话意思是,计算出HP内存位置的门牌号,就从HP内存地址中读入数据存入hp中
  16. Plugin hp=Memory.Read32Bit(jzs,hpjz2+py2)
  17. //防止HP数值不是十进制表示,所以通通给我转成十进制
  18. hp=int(hp)
  19. //弹出HP是多少的信息框
  20. MessageBox hp

复制代码

接着完全关闭游戏,重新登陆,运行脚本看看读取到的血量是多少:

2009-8-5 16:42 上传

下载附件 (131.47 KB)

OK,说明我们找到的是正确的

转自:http://bbs.vrbrothers.com/viewthread.php?tid=94544

从0开始学模拟挂(一)--找内存基址,包含原理相关推荐

  1. c语言如何找到进程基址,从0开始学模拟挂(一)--找内存基址,包含原理 _ 脚本

    PS:12楼的兄弟,不能回到选择人物画面,那你就换个地图试试,也可以请看下篇,找内存基址方法(二), 有人问怎么自动加血,我板凳帖子里不是有了,读取血内存地址的代码了吗? 把那份代码,你用两次,第一次 ...

  2. 从0开始学模拟挂(一)--找内存基址,包含原理 _ 脚本..._按键精灵论坛

    PS:12楼的兄弟,不能回到选择人物画面,那你就换个地图试试,也可以请看下篇,找内存基址方法(二),页面 有人问怎么自动加血,我板凳帖子里不是有了,读取血内存地址的代码了吗? 把那份代码,你用两次,第 ...

  3. 线上学python哪家好-0基础学python,打算找培训机构,是线上好还是线下好?

    谢邀,先不谈讨论线上还是线下更好,这个待会说. 我们先看一下题主的问题,0基础学Python,打算找培训机构,划重点了,这是0基础已经做好决定去培训了,我们就不要一直强调建议自学.自学,答不对题.就我 ...

  4. 从0开始学c语言 - 34 - 通讯录 -静态、动态、存到文件(三种版本)

    上一篇:从0开始学c语言-33-动态内存管理_阿秋的阿秋不是阿秋的博客-CSDN博客 我发现,理论的学习文章没几个人看,如果是这种实践类型的文章,看的人很多,偏偏我之前都是扔完代码就走了,也没认真写这 ...

  5. 0基础学python做什么工作好-零基础自学多久Python可以找什么工作

    虽说很多都想自己学Python,然后找相关的工作,那么自学Python可以找什么工作呢?另外,学多久Python可以找工作.对Python,要掌握哪些知识才能找到好工作呢?今天跟智连代理一起去了解一下 ...

  6. codova添加android慢_从 0 开始学 Linux 内核之 android 内核栈溢出 ROP 利用

    作者:Hcamael@知道创宇404实验室 最近在研究一个最简单的android内核的栈溢出利用方法,网上的资料很少,就算有也是旧版内核的,新版的内核有了很大的不同,如果放在x86上本应该是很简单的东 ...

  7. 计算机临床医学自动化哪个好,这五个专业待遇高,就业好,但是很难学,挂科风险大,选择要慎重...

    原标题:这五个专业待遇高,就业好,但是很难学,挂科风险大,选择要慎重 ​每年高考后都有无数学生纠结报志愿选择哪个专业,专业一般划分为红牌专业和绿牌专业.所谓的红牌专业就是那些失业量较大,就业率.薪资和 ...

  8. 从0开始学架构(三)

    此系列文章为极客时间上从0开始学架构学习后感悟总结,虽然隔了一段时间了,那么就再看一遍并且进行感悟升华,排版格式上有问题,后期再复习时也会进行更新   一.CAP理论 CAP 定理(CAP theor ...

  9. 从0开始学c语言-终篇41-练习、学习分享

    CSDN话题挑战赛第2期 参赛话题:学习笔记 终于,来到了终篇,我坚持做到了!每天一篇博客记录自己的学习(虽然中间有两天去干农活而断更了)!啊呜呜呜呜~激动! 但是,这不会是我的终点,这是新的起点.之 ...

最新文章

  1. JavaScript作用域原理——预编译
  2. 2021-09-23对图像深入研究
  3. TCP/IP状态详解
  4. 28 多进程之数据交换Pipe
  5. 经典C语言程序100例之八七
  6. 我这几年呆的这几个公司
  7. android——GestureDetector.OnGestureListener 手势详解
  8. Appscan计划扫描与扩展程序
  9. 本草纲目pdf彩图版下载_本草纲目彩色图谱下载|本草纲目彩色图集(精编珍藏版) PDF电子版 - 天天游戏吧...
  10. 有关圣诞节表白的c语言程序,关于圣诞节表白唯美的句子
  11. Base64编解码及其C++实现
  12. Linux 根目录结构,英文全称、文件夹作用
  13. OpenCV参考手册之Mat类详解(三)
  14. Python爬虫的多线程使用方法
  15. 2021江苏省南通市高考成绩查询时间,2021南通市安全教育平台登录入口网址【最新】...
  16. 批量 m3u8文件转成MP4的方法--Python实现和 cmd 实现(推荐cmd)--仅粉丝可见
  17. 微信小程序+.NET(十一) 小程序之小说阅读器实现
  18. 《On Java 8》中不理解的段落
  19. 浙江杭州烟花爆炸事故中受伤最重者属二级烧伤-杭州-烟花爆炸-烧伤
  20. Lunatic状态(疯狂之力)

热门文章

  1. Java线程池的核心线程数和最大线程数
  2. 为什么使用v-for需要加key,key最好不是index
  3. 分离立体声音的软件叫什么?这篇文章告诉你
  4. 如何在EXCEL中运行ChatGPT,从此不再需要记函数
  5. 垃圾微软服务器,与垃圾邮件斗争 微软详解EOP服务细节
  6. springboot跳转html_畅游Spring Boot系列 — 自定义配置
  7. FFmpeg应用知识介绍
  8. 生态循环水稻种养模式 国稻种芯重庆乡里巴巴功能性育种基地
  9. Scala学习笔记(六) Scala的偏函数和偏应用函数
  10. 渲染引擎对Web的支持方案