昨儿晚上搓手游,发现《滑雪大冒险》玩到后半程金币根本不够用,商店里那些高级装备看得我心痒痒。一咬牙决定研究下金币修改,反正自己玩单机不祸害别人。
折腾安装包
先拿安卓机开刀。直接用MT管理器把游戏安装包抓出来扔电脑上,想着改完再装回去。解压完对着那一堆文件和文件夹发懵——根本不知道金币数据藏在哪个犄角旮旯。试了几个所谓的存档修改器,不是闪退就是提示版本不兼容,白忙活一小时。
抓内存改数值
想起以前改单机游戏用过的Cheat Engine,立马在电脑上开安卓模拟器重装游戏。流程倒是熟门熟路:
- 先开游戏刷两把攒到300金币
- 切到CE输入300点首次扫描
- 回游戏故意撞石头掉到270金币
- 切回CE搜270点再次扫描
结果列表里跳出来四十多个地址!挨个改数值测试,不是游戏卡死就是金币数纹丝不动。
急眼了又试GG修改器直连手机。这回学聪明了,开着游戏让金币在商店里买最便宜的50金币道具。买之前搜一次当前金币数,买完立刻搜变化后的数。反复三次总算锁定了唯一的内存地址,把数值改成99999瞬间生效!结果结算时弹出个"数据异常"直接把金币清零了——这游戏居然有本地校验!
拆包找配置文件
火气上来了直接解包APK文件。在assets文件夹里翻到个文本件,里面密密麻麻的参数看得眼晕。试着把"coin=100"改成"coin=999999",重新签名打包安装。进游戏金币显示999999还没来及乐,刚点滑雪人物直接遁地消失——得,参数改崩了。
最终解决方案
死马当活马医,用虚拟机双开法:
- 手机A正常玩到攒够100金币
- 备份整个安卓data游戏文件夹
- 传到Root过的手机B覆盖粘贴
- 在手机B花光100金币马上删存档
- 把备份文件重新覆盖回去
结果玄学成功!手机A覆盖回来的存档金币还在100块,但在手机B的花销被回档了!等于白嫖商店道具!赶紧拿电脑开五个安卓模拟器轮番操作,三小时刷出二十万金币。看着商店里全套黄金装备直接梭哈,爽是爽了就是眼已瞎手已废。
现在琢磨着,为了个破金币折腾到凌晨三点到底值不值...这玩意儿比上班还累喂!