二进制修改植物大战僵尸
修改植物大战僵尸
1. 准备工作
- 下载植物大战僵尸
- 链接: https://pan.baidu.com/s/12i4GsUkl6oMzFBuCPWOaLA
- 提取码: 5xj9
- 下载Hex Editor Neo
- https://dlc2.pconline.com.cn/filedown_2710536_13724678/fp1rBGgf/pconline1577948094431.zip
2. 动手实践
2.1 修改关卡
2.1.1 修改思路
- 通过增删用户来找到用户文件存储位置
- 找到对应文件,记录更改前数据
- 通过关卡变动判断对应数据
2.1.2 实施操作
1. 通过增删用户来找到用户文件存储位置
打开游戏根目录我们可以发现其中有个文件夹名为userdata(用户数据),故很明显,我们个人的存档都是保存在这个文件中。
我们先启动Hex Editor Neo,打开这个user1.dat文件
好家伙全是00,但这好像不是二进制
我们点击View->Display As->Binary调整到二级制,这时我们可以看到有两个数1100和1,记录了当前数值我们再去改变下关卡看一看数据会发生什么变化
关闭打开的user1文件进入游戏
注意:一定要关闭,打开的时候文件处于修改状态,游戏发生变化也无法更改文档中的参数
我们进入游戏到达1-2后发现存档并没有修改,经过各种查询发现植物大战僵尸存档位置是在C:\ProgramData\PopCap Games\PlantsVsZombies\userdata
只能说很麻,没用的文件设置的有模有样和真的一样
2. 找到对应文件,记录更改前数据
我们在进入这个真实的user2.dat文档一探究竟,刚刚到达了第二关,而1也变成了10,进了1位,其他数据均无变化,我们暂定它为关卡数据
3. 判断数据变化时,关卡发生的变化
那么之前增加的数值会不会就是我们寻找的关卡信息?
修改一下试试,我改成00011110并保存,进入游戏
果然我们来到了3-10,11110转化为10进制是30,这么说5-2就是42,转化为二进制是101010
那么关卡问题解决了,下面再看金钱问题
2.2 修改金钱
2.2.1 思路
- 解锁游戏商店功能
- 通过金币数量发生变化时,存档文件内容的变化
- 通过变化找到修改金币的方法
2.2.2 实行
1. 解锁商店功能
想要解锁商店功能,需要我们将关卡调制到3-6及以上才可以
通过之前修改关卡的方法,我们将关卡调制到5-2解锁商店功能!
2. 记录金币变化,找到匹配数值
我们进入商店界面,发现现在持有的金币为0,如果想看到数值的变换,我们最少要拥有1个金币才行
进入关卡赚钱
当我们拥有了10个金币后,再次进入配置文件我们发现第八行增加了1
分析:那么会不会进1就是10个金币呢,为验证猜想我们将1000转化为2进制数试一试1111101000
但是问题又来了,第八列数字只有8位,而1000转化为二进制有10位,多出的位数添加到哪里,是第七列还是第九列,经过测试8,9,a,b是金币列
3. 通过变化找到修改金币的方法
而金币数究竟是怎么对应的,当我们只修改第九列最右边的数为1后,发现游戏中金币是2560,除以10换算为2进制后是100000000(8个零),那么金币位数我们也可以了解了
每一列从右到左位数逐渐增大,而1000的二进制排序应该是 11101000 00000011
修改进入游戏结论验证成功
3. 知识总结
注意事项:
- 游戏的用户存储并不是在游戏目录而是在c盘(win10)
- 修改关卡的方法1-2对应的是第2关5-2对应的是42关,修改第一行四列的数为42的二进制位就可以到达5-2
- 修改金币控制的是8 9 0a 0b这四列,数值在每一列是右到左变大,而整体看列是左到有变大,金币和数字的换算是10金币数值加一
- 例如 1000 转化为二进制有十位,最高两位要在第九列最右面输入,剩下八位按照顺序填入从左到右填入第八列即可
二进制修改植物大战僵尸相关推荐
- 使用Cheat Enginee(CE)修改“植物大战僵尸”子弹类型
使用Cheat Enginee(CE)修改"植物大战僵尸"子弹类型 单击查看内存 右键转到地址,输入4672a5 点击确定 自动汇编该语句,注入CT表框架代码,代码注入,分配到当前 ...
- 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之植物篇
目录 1.单卡片无CD 1.1 思路一 1.2 思路二 2.全卡片无CD 3.豌豆射手射速修改(修改植物射速) 4.实现豌豆射手发射"玉米加农炮"(思路) 上一期教程中,我们学习了 ...
- 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之其他篇
目录 1.跳关(任意选择关卡) 2.修改金币值 3.实现自动收集阳光 上一期教程中,我们学习了寻找植物大战僵尸僵尸距离基址.实现"秒杀"僵尸的方法.PS:上篇链接:[CE入门教程] ...
- 以休闲游戏“植物大战僵尸”为例,制作无限阳光修改器
制作游戏修改器,应该有很多人对这类内容感兴趣吧. 发现这个游戏纯属巧合,一日我在百度搜索"植物"这个词时,搜索框下方就列出一大堆"植物大战僵尸"的相关内容,于时 ...
- 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之僵尸篇
目录 1.寻找僵尸位置基址 2.实现"秒杀"僵尸(修改僵尸血量) 上一期教程中,我们学习了修改植物大战僵尸的单卡片无CD.全卡片无CD.豌豆射手射速修改以及实现豌豆射手发射&quo ...
- 基于python开发植物大战僵尸
目录 摘要 2 一, 引言 3 1.1中国游戏产业的现状 3 1.2中国游戏产业的未来发展局势 4 1.3植物大战僵尸游戏的发展状况 4 二.系统结构 5 2.1 Python3.8.2 IDLE 简 ...
- 针对“扫雷“和“植物大战僵尸“游戏,分析,扫描,阳光值,植物,金币,僵尸的分析逆向
<软件逆向分析> 2022年9月 目录 {#目录 .TOC-Heading} [一.实验工具介绍 3](#一实验工具介绍) [二.针对"扫雷"游戏 3](#二针对扫雷游 ...
- Python应用之植物大战僵尸2-功夫世界BOSS关卡无限刷金币
植物大战僵尸2-功夫世界BOSS关卡无限刷金币 前提 思路 step 1 游戏重新开始 step 2 选择植物 step 3 放置植物 step 4 收集金币 结果 代码 树莓派开机启动设置 本人已经 ...
- 植物大战僵尸2激怒中国消费者
[导读]"本地化"的<植物大战僵尸2>并非简单汉化,而是通过加大游戏难度,减少免费玩家可获得的游戏体验等方式逼迫中国消费者迅速消费. 转播到腾讯微博 腾讯科技讯(娄池) ...
最新文章
- SpringMVC传递multiple类型select后台Controller的接收方法
- junit测试@注解
- 02-Popover代码实现
- 学术圈炸了!IEEE限制华为相关专家参与审稿:这操作毁尽三观
- std::thread的使用
- 实例篇——springboot自定义拦截器
- 框架详解_Selenium3框架详解
- WAP PUSH 技术
- Ubuntu 18.04 语言学相关软件的安装
- coreldraw橙子怎么画_cdr怎么画一杯橙汁?CorelDRAW简单绘制的一杯满满的橙汁教程...
- Java 面向对象基本特征
- 有图有真相——MD瞬间被移动扣了90多M流量加9元钱
- springboot校园二手书籍交易平台 毕业设计-附源码131558
- 华为OD机试真题 Python 实现【机器人】【100%通过率】【2022.11 Q4 新题】
- Revit建模如何一键“生成场地和基础垫层”
- Dynamo相关下载教程分享!(附软件包和Revit使用插件Revit Lookup下载教程)
- 写给VC++ Windows开发的初学者 一片不错的博文
- 如何写好科研论文 撰写技巧(三)
- 把word文档转换成swf格式
- delta和gamma中性_在期权交易中,Delta、Gamma、Theta、Vega都是什么?