植物大战僵尸 - 修改器
修改器,单机人的护肝片
核心原理
运行单机游戏时,相关数据会被调入内存。借助Cheat Engine工具找到要修改的数据在内存中的位置,然后对其进行修改
Cheat Engine官网
一、如何找?
按数值找!
例如:当前金币数为100,那么在内存中的某个位置(或者是多个位置)会存储着100这个数值——此处意思指:存储金币数的位置只有一个,但是存储100这个数值的位置可能有多个。花费一次金币,如将其降为75,此时再找一次75这个数值所在位置
对比前后两次位置是否相同,即可找到金币数在内存中位置。一般花费1次到2次即可找到位置,若担心出错,可继续花费金币,前后进行多次对比
二、如何修改?
找到了直接改就行了!
三、CE使用
官网下载解压后,点击Cheat Engine.exe打开CE
示例:修改金币数
(1)打开植物大战僵尸,进入商店;打开CE,选择植物大战僵尸进程
(2)将金币数除以10后填写到CE的数值填写框,并点击“首次扫描”
除以10——游戏的金币数采用了除以10的加密方式,如金币数为100,则内存中实际存储的数值为10
此处写者的金币数为10,000,所以填入1,000。查找结果表示:有许多地址都存储着1,000这个数值
(3)变动金币数值(这里写者选择购买肥料),将变动后的金币数值再次填写到CE的数值填写框,并点击“再次扫描”
购买后金币数由10,000变为9,250,所以再次填写的数值为925
一般扫描两次就可以找到对应地址,如果再次扫描后还有多个地址,可继续变动数值进行扫描
(4)双击扫描结果中的地址将其添加进地址列表
(5)在地址列表中选中地址,双击数值列中对应的数值,在弹出的“改变数值”框中填入想要的数值,最后点击确定
注意前文所述的“除以10”的加密方式!!!若想要10,000的金币数,则填入的数值应为1,000;若想要55,500的金币数,则填入的数值应为5,550
这里写者选择填入100,000,即一百万金币
至此,修改完成!同理,还可以按照此流程修改玩关卡时收集的阳光数量(不过需要注意下是否会有和金币数类似的“除以10”的加密方式,写者未测试,懒~)
同理,还可以借助CE按照此流程修改其他单机游戏的游戏内数值