【CheatEngine基础教程】二、Cheat Engine的使用

您所在的位置:网站首页 怎么暂停app下载 【CheatEngine基础教程】二、Cheat Engine的使用

【CheatEngine基础教程】二、Cheat Engine的使用

2024-01-21 07:15| 来源: 网络整理| 查看: 265

各位读者大家好,我又要开始注水了。

好吧其实不是,虽然CE的界面和功能看上去比较简单,不过根据我收到的一些反馈看,很多读者并不了解CE的某些细节。

本章主要是对于CE的一些细枝末节的QA,并不包括关于CE界面和功能的系统描述,而是以应用场景的形式介绍CE的部分功能。阅读本章可以让你了解它们,以便在遇到相应场景时正确应对。

本章内容很少,短小无力,无论你是否熟悉CE,本章内容都可以跳过,遇到问题的时候再反过头来看。

1 获取CE

我推荐从官方网站上获取CE的最新版本:

不过因为作者要恰饭,默认的安装版本含有广告,所以我进一步推荐它的免安装版本:

当然从官方下载的CE是英文版的,且没有合适的语言包。我想说的是,CE的文字够简单了,习惯习惯吧。

相应的,解决CE使用中遇到的问题最好的方式是搜索官方的论坛:

2 遇到XX问题怎么办?

2.1 数据变动太快怎么办?

可以尝试启用变速功能(Speed hack)后再进行搜索:

变速功能

又或者可以是用暂停功能,点击右下角的Advanced Options按钮,在弹出的窗口里点击暂停图标:

游戏暂停

也可以设置并使用快捷键进行暂停,依次点击菜单栏的Edit——Settings,在界面中选择相应的项目进行设置:

暂停快捷键设置

在某些时候,启用搜索时暂停游戏选项也很方便:

搜索时暂停

2.2 数据搜索不到怎么办

数据搜索不到的情况很多,请依次排查。

首先可能是游戏数据并未对齐,所以要关闭FastScan,或者对齐长度设为1:

快速搜索默认启用

也有可能是数据类型不正确,多尝试几种数据类型,或者使用All(全部类型):

搜索类型

另外也有可能是内存保护设置不正确,例如目标所在地址可能不可写:

内存页保护权限

上图中,应该让Writable也变成“方框”,即无论目标内存页是否可写都进行搜索。至于CopyOnWrite,这个基本没用。

2.3 数据太多怎么办

没办法,慢慢找呗……

如果搜索有效果(就是地址逐渐减少),但进度比较慢,在完成一次搜索后,确保目标数值不变的情况下,在Scan Type 中选中Unchanged Value,并勾选Repeat,然后泡个面吃个饭,然后再看进度如何:

Unchanged Value+Repeat

2.4 搜索数组但有不确定的值怎么办

CE的数组搜索(Array of byte)和分组搜索(Grouped)支持“?”或者“*”作为通配符。

2.5 想要一次搜索多个值怎么办

还记得上一章猜数字的例子吗?里面有一个结构,其成员依次是1个字节的轮数变量,4个字节的谜底变量,4个字节的猜测结果统计变量*2。

所以如果我们想要改这个猜数字游戏,可以尝试搜索Grouped类型的数据:

冒号“:”前面的数字是这个数据的长度,后面的数字表示这个数据的值。当前是第四回合,所以第一个字节的值是4。星号“*”就是上一节提到的通配符,表示未知数据。搜到的结果会类似下图:

Grouped 搜索结果示例

2.6 字符串搜索不到怎么办

CE的字符串搜索有个缺点,只支持Unicode或者系统默认的代码页。如果游戏的代码页不是这两个,则需要我们把要搜索的文本转化为字节数组,然后进行数组搜索。

你可以用相关工具完成这个工作,也可以像我一样自己写一个:

2.7 找到一个地址后,想要观察附近的地址怎么办

CE可以结构化的查看内存区域。点击主界面的Memory Viwer按钮会弹出查看汇编代码和内存区域的窗口,依次点击Tools——Dissect data/structures,或者使用快捷键Ctrl+D,会弹出Structure Struct窗口,将地址填入,然后选择Define new structure,可以结构化的浏览内存区域。内存区域默认以4字节对齐进行显示,可以手动调整,并添加备注,如下图所示:

结构化查看内存

2.8 查找指针时游戏崩溃怎办 

首先保证CE以管理员权限运行,其次在CE的设置里尝试更换调试器:

调试器设置

2.9 CE找到的指针是错的怎么办

肉眼分析汇编代码,下断点做调试。

2.10 担心找到的汇编指令不止用于访问目标地址怎么办

右键目标指令,选中如下选项:

监视指令是否还访问其他地址

然后你可以看到一个列表,显示了这条指令访问的内存地址们:

指令访问的地址列表

这个功能可以监视的地址数量有限,通常只用来判断该指令是否可以无风险的修改,而不用做其他处理。

2.11 CE说断点用完了怎么办?

点击Memory Viewer窗口的View菜单——BreakpointList按钮,删除不想要的断点。

3 总结

这里只列出了初学者经常遇到的一些问题,CE还有很多功能和细节,请自己发掘,或参考CE官方的资料。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3