【杂项】 Cheat Engine抓游戏基址


一、说明

CE(Cheat Engine)是一个强大的游戏修改器,可以读取和写入游戏数据。在修改数据之前我们得先找到数据存放的地址,然而游戏的运行机制使得游戏每一次重新加载之后数据的内存地址都会改变,我们每一次打开游戏都花费大量时间去找数据地址显然太过麻烦了,所以想要舒心地玩游戏,就要学会利用偏移,抓游戏基址,这样下一次就不必从海量数据中筛选地址,直接改偏移地址就好,厉害的甚至可以编写脚本,解放双手,愉快地游戏。


二、操作

1)首先手动抓数据

  • 这里我改阳光数量的地址

在这里插入图片描述

  • 首次扫描十进制数50,结果太多,需要使数据发生变动后再次扫描
    在这里插入图片描述
  • 阳光数量变为75,再次扫描
    在这里插入图片描述
  • 直到剩下一个数据即可

在这里插入图片描述

  • 改这数据,阳光数是对应改变的,说明数据是抓对了
    在这里插入图片描述

2)接下来建立指针

  • 双击数据地址添加到工作区
    在这里插入图片描述
  • 右键生成指针映射集
    在这里插入图片描述
  • 文件名随便,记得就行
    在这里插入图片描述

3)然后建立第二个指针

  • 退出游戏,然后再次抓阳光的地址,保存指针到同一个目录下
    在这里插入图片描述
  • 找出是什么改写了这个地址
    在这里插入图片描述
  • 然后到游戏中捡一个阳光,出现数据后双击,调出详细信息面板。这里根据汇编代码显示,刚刚我捡阳光的动作使得数值增加了(add),然后在这里偏移量是5578(不同游戏不同数据的偏移量不一定相同),记住这个数字。
    在这里插入图片描述
  • 回到主页面,对这个地址进行指针扫描
    在这里插入图片描述
  • 下一步按照如图配置,1、2、勾选使用当前映射集,3、4、勾选使用之前保存的映射集,5、地址为第一次抓到的地址,6、勾选使用偏移,7、填入刚刚抓到的偏移量,确定。
    在这里插入图片描述
  • 接下来的页面双击任意一个地址保存到工作区
    在这里插入图片描述
  • 可以看到地址变成指针形式了,改动数值游戏中数据也随之改变,这就是我们的目标了,下次重新打开游戏改这个就能有效修改游戏数据。
    在这里插入图片描述

3)保存与使用脚本

  • 去掉多余数据,保存指针地址,改好数值,点保存生成一个后缀为CT的文件就是CE的脚本了
    在这里插入图片描述
    在这里插入图片描述
  • 下次打开游戏只需加载保存的CT文件即可修改游戏数据,并恢复工作区的列表,这样就可以直接开始愉快地游戏了!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

### 回答1: VB是一种编程语言,通常用于开发Windows应用程序。在VB中,要获取类似CE(Cheat Engine)的基址,可以通过以下步骤实现: 第一步,将CE的进程名称和进程ID与VB应用程序进行关联。可以使用VB的Process类来实现这一点。首先,使用Process.GetProcessesByName方法获取CE进程的进程对象数组。然后,通过遍历进程对象数组,到CE进程的进程ID(ProcessID)。 第二步,使用VB的Process类中的OpenProcess函数打开CE进程。这个函数需要指定进程ID和访问权限。通常,可以使用PROCESS_ALL_ACCESS权限来打开进程。这将返回一个用于标识CE进程的句柄。 第三步,使用VB的ReadProcessMemory函数读取CE进程的内存。这个函数需要指定进程句柄、基址(Address)和读取的字节数。首先,需要确定要读取的基址。可以使用CE中的扫描功能到所需的基址。然后,使用VB的IntPtr类型存储基址,并将其传递给ReadProcessMemory函数。 第四步,使用VB的WriteProcessMemory函数向CE进程写入内存。这个函数需要指定进程句柄、基址和要写入的数据。类似地,首先需要到要写入的基址,然后使用VB的IntPtr类型存储基址,并将其传递给WriteProcessMemory函数。 通过以上步骤,可以在VB中获取类似CE的基址。这将允许在VB应用程序中读取和写入CE进程的内存,实现类似于CE的功能。需要注意的是,这些操作可能需要管理员权限,并且在使用任何内存读取或写入函数之前,请确保仔细了解相关的法律和规定。 ### 回答2: 获取类似于CE(Cheat Engine)的基址,在VB语言中可以通过以下步骤进行: 1. 首先,需要打开目标进程。可以使用VB的Shell函数来执行打开进程的命令。例如,可以使用Shell函数执行命令"taskkill /F /IM target.exe"来关闭目标进程,然后再使用Shell函数执行命令"start target.exe"来重新打开目标进程。 2. 接下来,通过VB的GetModuleHandle函数获取目标进程的模块句柄。该句柄可以用于后续的操作。 3. 使用VB的ReadProcessMemory函数来读取目标进程的内存,获取指定地址处的数据。可以通过循环和递增地址的方式来扫描目标进程的内存,以到指定数据的地址。 4. 如果到了指定数据的地址,那么可以使用该地址作为基址。可以在基址的基础上进行偏移操作,以获取其他相关数据的地址。 需要注意的是,这只是一种获取类似CE的基址的方法之一,并且涉及到的步骤比较复杂。在实际应用中,还需要根据具体情况进行适当的调整和改进。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值