???? 导读
开发环境
版本号 | 描述 | |
---|---|---|
文章日期 | 2023-03- | |
操作系统 | MacOS Big Sur 11.5 | |
Cheat Engine | 7.4.3 | |
1️⃣ 第五关:代码查找器
这一关只要按照描述中的内容一步一步做就可以了。
本关主要提出了一个概念,游戏中找到的地址往往不固定
,每次重启游戏都会变化。
针对这种情况,我们需要换个角度思考问题,目标内存
地址虽然会变,但是程序地址是固定的,所以我们找到程序中将目标内存
修改的代码
,使代码不生效,也就保证了目标内存
不再变化。
翻译
步骤5:代码查找器(PW=888899)
有时候,当您重新启动游戏甚至在游戏过程中,某些东西存储的位置会发生变化。在这种情况下,您可以使用两种方法来创建仍然有效的表格。
在这一步中,我将尝试描述如何使用代码查找器功能。
下面的值每次开始教程时都会位于不同的位置,因此地址列表中的普通条目将不起作用。
首先尝试找到地址(我假设您已经知道如何做到这一点)。
当您找到地址后,在 Cheat Engine 中右键单击地址,然后选择“查找写入到此地址的内容”。窗口将弹出并显示一个空列表。
然后,单击本教程中的更改值按钮,并返回 Cheat Engine。如果一切正常,现在应该有一个带有汇编代码的地址。
单击它并选择替换选项以将其替换为不执行任何操作的代码。这也会将代码地址添加到高级选项窗口中的代码列表中(如果保存表格,则会保存该列表)。
单击停止按钮,使游戏正常运行,并关闭窗口。
现在,单击更改值按钮,如果一切正常,则下一步按钮应该变为可用。
注意:当您使用足够快的速度冻结地址时,可能会出现下一步按钮仍然可见的情况。
操作步骤
- 根据之前的教程方法,找到
目标内存
,如下图:
- 右键
目标内存
,选择菜单《找出是什么改写了这个地址》。
弹出提示框,选择Yes
。
将弹出下列操作写入到 XXXXXXXX
对话框。
- 点击
教程软件
中的《Change value》按钮3次,发现下列操作写入到 XXXXXXXX
对话框中新增了一项内容,Count列为3,表示修改了3次。也就是说,《Change value》就是在这个地址修改了目标内存
。
- 右键
下列操作写入到 XXXXXXXX
对话框中的地址,选择第一项菜单,将替换该地址为Nop,也就是使代码不生效。
- 再次点击
教程软件
中的《Change value》按钮,《Next》按钮就会被激活,可以继续下一关了。
???? 文章小结
本关虽然操作上没有太多需要说明的东西,但是已经从简单的搜索内存,转向了
系统原理
的方向,其中涉及很多底层知识点。
- 《找出是什么改写了这个地址》,涉及到软件调试,CE对目标软件进行调试,当软件被调试后,会通知CE,哪行代码修改了
目标地址
。- 《Replace with code that does nothing (NOP)》,涉及到汇编知识,小编电脑是Intel的CPU,也就是x86-64汇编,
NOP
含义就是啥也不做,用NOP替换原有命令,也就不会再修改目标地址
了。- 修改
NOP
指令,又涉及到内存及其权限等知识。
总的来说,想要深入理解计算机原理,才能明白CE底层逻辑,才能更好的使用CE带来的遍历。
???? 参考资料
- 【CE】Mac下的CE教程Tutorial:基础篇(1-4关)https://blog.csdn.net/kinghzking/article/details/129776334
**ps:**文章中内容仅用于技术交流,请勿用于违规违法行为。