
- 定位目标数值在内存中的地址: 这是关键步骤,CE 通过扫描游戏运行时内存中的数值来找到存放金钱、生命值、弹药等数据的地址。
- 处理动态地址(可选但推荐): 很多数值(尤其是金钱、资源)在每次游戏操作后地址会变化,这时需要使用“指针扫描”或“代码查找”来找到稳定的基址,从而实现永久修改。
📖 详细步骤
🧩 准备工作
- 安装游戏和CE: 确保你的《蓝色警戒》游戏版本和 Cheat Engine 都已正确安装。
- 启动游戏: 运行《蓝色警戒》。
- 启动CE: 运行 Cheat Engine。
- 附加到进程:
- 在CE主界面的左上角,点击“电脑”图标(或选择“Process List”)。
- 在进程列表中找到并双击《蓝色警戒》的主进程名(通常是
Blue.exe或类似名称,具体取决于你的游戏版本),确保附加成功(CE左下角会显示“已附加”或类似信息)。
🔍 步骤一:扫描初始值(以金钱为例)
- 进入游戏场景: 进入一个你想要修改金钱的关卡或场景(比如战役第一关)。
- 观察当前金钱: 记下屏幕上显示的当前金钱数量(
1000)。 - 在CE中扫描:
- 在CE主界面的“Value”输入框中,输入你观察到的初始值(
1000)。 - 选择数据类型(Data Type),对于金钱、资源、生命值等整数,通常选择:
4 Bytes(最常用,32位整数)2 Bytes(16位整数,如果数值较小)Float(浮点数,有时用于资源或分数)Double(64位浮点数,较少见)
- 点击“First Scan”按钮,CE会扫描整个内存,找出所有包含这个值的地址。
- 在CE主界面的“Value”输入框中,输入你观察到的初始值(
- 执行游戏操作: 在游戏中执行一个会改变金钱的操作。
- 卖掉一个建筑或单位。
- 收取一个资源点。
- 花钱建造一个东西。
- 观察新数值: 记下游戏屏幕上显示的金钱变化后的新值(
1200)。 - 在CE中扫描新值:
- 回到CE界面,在“Value”输入框中输入这个新值(
1200)。 - 不要更改数据类型! 保持和第一次扫描时一致(
4 Bytes)。 - 点击“Next Scan”按钮,CE会在上一次扫描结果的基础上,找出包含这个新值的地址。
- 回到CE界面,在“Value”输入框中输入这个新值(
- 缩小范围: 重复步骤4-6几次(每次操作后记录新值并在CE中扫描新值),地址列表会迅速缩小,你应该会得到一个或几个地址,这些地址很可能就是存放金钱的内存地址。
✏ 步骤二:验证和修改地址
- 查看地址列表: 在CE下方的地址列表中,你会看到找到的地址和它们当前的值。
- 验证:
- 双击列表中的某个地址,它会出现在CE上方的“Address List”中。
- 选中这个地址,在CE下方“Value”框中修改它的值(例如改成
999999),然后按回车或点击“OK”。 - 立即切换回游戏窗口! 观察屏幕上的金钱是否变成了你设置的值,如果变了,恭喜你,找到了正确的地址!如果没变,或者游戏崩溃了,说明这个地址不对,回到步骤1,尝试扫描其他地址或检查数据类型是否正确。
- 锁定(可选): 如果你希望这个值一直保持不变(比如无限金钱),可以勾选地址列表中该地址前面的“Active”复选框(或者点击“Enable”按钮),这样CE会持续将这个地址的值改为你设定的值。
🔄 步骤三:处理动态地址(指针扫描 - 强烈推荐)
很多数值(尤其是金钱、资源、弹药)在每次游戏操作、关卡切换甚至重启后,它们的内存地址都会改变,步骤二找到的地址可能只在当前游戏会话有效。
- 找到基址:
- 在步骤二中找到的有效地址上右键点击。
- 选择“Find out what writes to this address”。
- 游戏会暂停,弹出一个窗口,现在在游戏中执行一个会改变该数值的操作(比如花钱或收钱)。
- 如果游戏代码修改了这个地址,CE会捕获到一条指令(一条汇编代码)。
- 双击这条指令,CE会切换到“Dissect”窗口,并自动添加一个指针到你的地址列表中,这个指针指向的地址(基址)通常是比较稳定的。
- 使用指针:
- 在地址列表中,你会看到类似
[Game.exe+1A2B3C]这样的条目,这就是基址+偏移。 - 你可以修改这个指针的“Value”框里的值(比如改成
999999),或者勾选“Active”来锁定它。 - 优点: 这个指针通常在重启游戏、切换关卡后仍然有效,修改会持续生效。
- 在地址列表中,你会看到类似
- 指针扫描(备用方法):
- 如果你无法通过“Find out what writes to this address”找到指针,或者想找更稳定的基址:
- 在步骤二中找到的有效地址上右键点击。
- 选择“Find out what accesses this address”。
- 在游戏中操作改变数值,CE会列出访问该地址的代码。
- 选择一条看起来最相关的指令(通常是包含
[ebp+xx]或[esp+xx]的指令,或者直接指向游戏模块基址的指令)。 - 双击该指令,CE会切换到“Dissect”窗口,并添加一个指针。
- 或者,在CE主菜单选择“Tools” -> “Pointer Scanner”,输入你找到的地址,让CE尝试在整个内存中寻找指向该地址的稳定指针,这个过程可能很慢,需要耐心。
🎯 其他常见数值修改
- 生命值/护盾值: 方法类似,进入战斗前扫描初始值(
100),受伤后扫描新值(80),注意有些单位可能有多个生命值条(主生命、护盾),需要分别扫描。 - 弹药数量: 扫描当前弹药数(
30),开火后扫描新值(28)。 - 建造时间/研究时间: 扫描剩余时间(
60),等待几秒后扫描新值(58),找到后可以改成1或0实现瞬间完成。 - 单位速度/射速: 这类数值有时

