本关我们将学习共享代码,在C语言中角色属性都是以结构体的方式进行存储的,而结构体所存储的信息都是连续性的,这一关我们将会解释如何处理游戏中的共用代码,这种代码是通用在除了自己以外的其他同类型对像上的

常常你在修改游戏的时候, 你找到了一个单位的健康值 或是你自己角色的生命值, 你会发现一种情况: 如果你把生命值相关代码移除的话,其结果是你的角色无敌, 但你的敌人也无敌了,这就是共享代码搞的鬼。

步骤 9: 注入++: (密码=31337157)

本关模拟一种游戏,其中左边为我方,而右边为敌人,当我们点击重新启动并自动执行的时候我方血量不足会死亡。

你的任务是找到改写健康的代码, 并且修改以至于你可以获得胜利,但"绝不能"使用锁定HP的方法。

提示:在遍历血量的时候应该使用单浮点数进行搜索。

1.首先你需要根据第一关中的搜索方法,分别将下面四个人物的血量搜索到,下面我已经搜索好并做好了备注。

2.你可以分别在每个动态地址上面,右键选择【找出是什么改写了这个地址】,会发现这四个地址都指向了同一条汇编代码,这也就说明了其使用了共享代码。

3.我们直接在每一个地址上面右键选择【浏览相关内存区域】,然后对比四个地址会发现一些规律。

我方队友的结构

敌人的结构

上方的四个图片可看出我方队友编号为1而敌人的编号为2,我们可以通过编号来判断是否为敌人,来决定要不要让其掉血。

当然也可以判断名字的开头字母来决定,如果是D或E开头,则说明是队友不能让其掉血,否则的话则直接执行扣血代码。

4.接下来我们要注入代码了,CE切换到内存浏览窗口,然后选择【工具 -> 自动汇编】,【模板 -> 代码注入】点击确定。

上方原始代码是 mov [ebx+04],eax,意思就是,血量处于 ebx+04 的位置。

5.为了能够遍历到状态位,我们需要计算出队伍编号和血量的偏移值,

观察下图发现 Dave 血量地址是 019E0794 和队伍编号地址 019E07A0,两者十六进制相减(019E07A0 - 019E0794 = 0C)得到0C,如果血量是 ebx+04,那么队伍编号就应该是 ebx+04+0C 就是 ebx+10。

6.直接写以下汇编代码,然后执行,注入完成后回到练习程序中然后点击【重新启动游戏并自动执行】,本关会顺利通过。

CE修改器入门:查找共享代码的更多相关文章

  1. CE修改器使用教程 [入门篇]

    Cheat Engine 一般简称CE,是一个开放源代码的作弊软件,其功能包括:内存扫描.十六进制编辑器.调试工具,Cheat Engine 自身附带了外挂制作工具,可以用它直接生成外挂工具,CE可以 ...

  2. CE修改器修改DNF 测试视频 阿修罗提升智力增加攻击力

    使用CE修改器来修改网络游戏,如DNF 测试视频: CE修改器:指的是Cheat Engine,字面上的意思指的是作弊引擎的意思,是一款内存修改编辑工具.通过修改游戏的内存数据来得到一些原本无法实现的 ...

  3. CE修改器使用教程 [基础篇]

    Cheat Engine  是一款内存修改编辑工具 ,它允许你修改你的游戏或软件内存数据,以得到一些其他功能.它包括16进制编辑,反汇编程序,内存查找工具.与同类修改工具相比,它具有强大的反汇编功能, ...

  4. ce游戏内存修改器(Cheat Engine)

    ce修改器(Cheat Engine)一款专门修改内存修改编辑的游戏工具它包括16进制编辑,反汇编程序,内存查找工具新版6.1 版的CE与6.0 最大的区别就是添加了修改器制作工具,比之前 5.6.1 ...

  5. Steam游戏《Zengeon(神明在上)》修改器制作-[先使用CE写,之后有时间的话改用C#](2020年寒假小目标06)

    日期:2020.01.30 博客期:138 星期四 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想拿CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页面下 ...

  6. 利用内存锁定技术防止CE修改

    利用内存锁定技术防止CE修改 通过这种在R3环利用的技术,我们可以来达到保护内存的目的,像VirtualProtect等函数来修改页属性根本无法修改. 而CE修改器推测应该使用VirtualProte ...

  7. Eloquent: 修改器

    感觉好长时间没写东西了,一方面主要是自己的角色发生了变化,每天要面对各种各样的事情和突发事件,不能再有一个完整的长时间让自己静下来写代码,或者写文章. 另一方面现在公司技术栈不再停留在只有 Larav ...

  8. WPF 像素着色器入门:使用 Shazzam Shader Editor 编写 HLSL 像素着色器代码

    原文:WPF 像素着色器入门:使用 Shazzam Shader Editor 编写 HLSL 像素着色器代码 HLSL,High Level Shader Language,高级着色器语言,是 Di ...

  9. Blender 之修改器代码分析

                           Blender的修改器(modifier)模块,默认界面右下块(Property)面板的扳手,分类(修改.生成.形变.模拟)列出所有的修改器.也可以空格键 ...

  10. Steam游戏《Nine Parchments(九张羊皮纸)》修改器制作-[先使用CE写,之后有时间的话改用C#](2020年寒假小目标02)

    日期:2020.01.09 博客期:122 星期四 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想要部分CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页 ...

随机推荐

  1. vivo 悟空活动中台-基于行为预设的动态布局方案

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/CwLAV2j7Uxam01m1p7cXxg作者:悟空中台研发团队 [悟空活动中台]系列往期精彩 ...

  2. 《3D编程模式》写书-第5次记录

    大家好,这段时间我完成了对初稿的第一轮修改,即将开始第二轮的修改 这里是所有的的写书记录: <3D编程模式>写书记录 本轮修改主要进行了下面的修改: 修改错误 修改了UML错误.文字错误. ...

  3. 《3D编程模式》写书-第2次记录

    大家好,目前我已经完成了"拼接模式"."撤销重做模式"."ECS模式"的初稿 下面会给出它们的使用场景,如果您正好能用到,请联系我提前阅读模 ...

  4. uni-app app定位当前地理位置

    https://blog.csdn.net/HXH_csdn/article/details/112258398?utm_medium=distribute.pc_relevant.none-task ...

  5. echarts 饼图 点击事件

    https://www.cnblogs.com/wcnwcn/p/11170279.html

  6. C:\Keil_v5\ARM\ARMCC\include\stdint.h contains an incorrect path.

    1.问题 在使用Keil uvison5打开例程代码进行学习时,发现部分.h文件无法读取 2.解决方法 1.找到如图的设置按钮(小锤子) 2.根据自己所用的是C/C++还是ARM选择(我这里是C/C+ ...

  7. JS - console多个值

     Promise.all([p1, p2]).then(         (res) => {           let [p1, p2] = res;           console.l ...

  8. python环境 anaconda安装

    官网: https://www.anaconda.com/distribution/#macos 国内镜像: https://mirrors.tuna.tsinghua.edu.cn/anaconda ...

  9. [转帖]windows10彻底关闭Windows Defender的4种方法

    https://zhuanlan.zhihu.com/p/495107049 Windows Defender是windows10系统自带的杀毒软件.默认情况下它处于打开的状态.大多数第三方的杀毒软件 ...

  10. [转帖]linux将大目录等分切割成多个小目录

    https://www.jianshu.com/p/6f9e6743a1dc 需求:有一个目录存放了数十万个文件,现在需要将这个目录上传,如果整个目录上传,中间因为某些故障断开连接了,可能又要从头开始 ...