Cheat Engine 入门操作
Cheat Engine(简称CE,中文名-作弊引擎),用于查找、修改内存数据,是游戏逆向的基础工具。
本文仅介绍基础操作。
1.打开进程
运行游戏程序,并将CE附加到进程


2.寻找数据地址,并修改数据
限定条件进行搜索,直至找到数据。扫描数据时可先暂停游戏
举例:已知血量初始值
a.游戏开始时,暂停,搜索初始值。
b.开始游戏,让血量减少,暂停,检索减少的值。
c.重复a和b的操作,直到左边出现符合条件的数值


3.指针数据
如果上面的步骤并没有效果,说明找到的是可变地址(当然也可能是找错了),该地址的数据是由一个指针改变的,我们必须找到是谁在改变数据,即最初的指针(具体有多少级指针不确定)
a.禁止指针修改数据


b.一级指针找基指针
目的:找到最开始的指针 ,加上偏移, 就指向了找到的数据


c.多级指针
与找一级指针类似,多找几层就行了,直到地址是绿色的(找到了基指针)。注意指针偏移,最后手动添加地址时,点击Add Offset添加偏移。
例:三级指针
[[[基指针 + 偏移1]+偏移2]+偏移3],Add Offset填入偏移1、2、3。
4.inline hook
在原代码(地址Y)添加自己的代码或修改原代码。
原理:
1.在目标进程申请内存空间(代号A),在A中写自己的汇编代码。(A中最后要返回到修改指令的下一条(jmp Y + 5))
2.将Y的指令改为 jmp A,跳到自己申请的内存中执行代码
3.跳回到Y+5
自动汇编→模板→代码注入→(自动填入了地址)点OK,得到右图

5.内存查看
有些数据难以扫描得到,可以通过内存查看(点击 内存查看 按钮),内存查看器的汇编代码下面的窗口。
内存地址难以获取,但是由于开发程序时,数据多是结构体形式,比如人物属性(血量,蓝,。。。等)在一个结构体内。
可以通过容易找的内存地址来判断同一个结构体内其他内存地址的大致范围。(上下多看看)
当游戏运行时,根据情况的不同,内存数据会变化。找到变化的地址(数据会变色),在主窗口手动添加地址就能改了。
Cheat Engine 入门操作的更多相关文章
- 使用 Cheat Engine 修改 Kingdom Rush 中的金钱、生命、星
最新博客链接 最近想学习一下 CE,刚好看见游戏库里装了 Kingdom Rush 就拿它来研究吧.这里写的东西,需要一些 Cheat Engine 的基础,可以看看教程. 这里主要是看写的注释,来理 ...
- Mysql的二进制安装和基础入门操作
前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...
- Mysql数据库的二进制安装和基础入门操作
前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...
- MySQL数据库的二进制安装、源码编译和基础入门操作
一.MySQL安装 (1)安装方式: 1 .程序包yum安装 优点:安装快,简单 缺点:定死了各个文件的地方,需要修改里边的相关配置文件,很麻烦 2 .二进制格式的程序包:展开至特定路径,并经过简单配 ...
- ce游戏内存修改器(Cheat Engine)
ce修改器(Cheat Engine)一款专门修改内存修改编辑的游戏工具它包括16进制编辑,反汇编程序,内存查找工具新版6.1 版的CE与6.0 最大的区别就是添加了修改器制作工具,比之前 5.6.1 ...
- cheat engine lua
function CEButton1Click(sender) local x = getProperty(CETrainer.CEEdit1,"Text")--这句很重要,获取文 ...
- spring boot 入门操作(二)
spring boot入门操作 使用FastJson解析json数据 pom dependencies里添加fastjson依赖 <dependency> <groupId>c ...
- spring boot 入门操作(三)
spring boot入门操作 devtools热部署 pom dependencies里添加依赖 <dependency> <groupId>org.springframew ...
- java之servlet入门操作教程一续
本节主要是在java之servlet入门操作教程一 的基础上使用myeclipse实现自动部署的功能 准备: java之servlet入门操作教程一 中完成myFirstServlet项目的创建: ...
随机推荐
- 十八、oracle查看、扩展表空间及linux服务器硬盘容量大小查看
/*备注:表空间是数据库的逻辑组成部分从物理上将:数据库数据存放在数据文件中从逻辑上将:数据库则是存放在表空间中表空间由一个或是多个数据文件组成*/ --1.查看用户下面的所有的表SELECT * F ...
- 如何对接网建SMS短信通短信验证码接口
1首先注册登录网建SMS网站 http://www.smschinese.cn/ 2.下载Java代码 3.JAVA调用 import java.io.UnsupportedEncodingExce ...
- Data Cleaning_Chicago Air-quality Case_TBC!!!
- JSONObject.fromObject() 转string时,实体里面的时间错乱的问题
在把要入库的数据实体转成JSON字符串发给kafka的时候,出现了问题,转换完以后,就变成这样子的了,真的是第一次见到这种,真的是长见识了 然后百度了一下:https://www.cnblogs.co ...
- 洛谷P2296 寻找道路
\(\Large\textbf{Description:} \large {在有向图 G 中,每条边的长度均为 1,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件:}\) \ ...
- SpringIOC初始化过程源码跟踪及学习
Spring版本 4.3.2,ssm框架 代码过宽,可以shift + 鼠标滚轮 左右滑动查看 web.xml <!--配置获取项目的根路径,java类中使用System.getProperty ...
- C# log4net相关配置说明
添加相关文件到工程 链接: https://pan.baidu.com/s/1o83Juo6 密码: inkg 下载附件, 把里的log4net.dll 和 log4net.config 复制到工程目 ...
- Flutter Web环境搭建
接上篇Flutter Windows下AndroidStudio环境搭建 1.https://github.com/flutter/flutter_web 下载放到本地路径下 2.系统Path增加(根 ...
- 015、MySQL取今天是第几季度,往后几个月是第几季度
#取今天是第几季度 SELECT QUARTER( curdate( ) ); #取往后几个月是第几季度 , INTERVAL MONTH ) ); , INTERVAL MONTH ) ); , I ...
- 编译安装常用包+阿里镜像源-常用资源-系统-下载-科莱软件下载-docker仓库包-安全圈-杏雨梨云-图形界面安装-docker私有双仓库-阿里源报错处理-centos7目录大小
yum install apr-util apr-util-devel apr apr-devel pcre pcre-devel zlib zlib-devel openssl openssl-de ...