修改植物大战僵尸

1. 准备工作

  1. 下载植物大战僵尸
  • 链接: https://pan.baidu.com/s/12i4GsUkl6oMzFBuCPWOaLA
  • 提取码: 5xj9
  1. 下载Hex Editor Neo
  • https://dlc2.pconline.com.cn/filedown_2710536_13724678/fp1rBGgf/pconline1577948094431.zip

2. 动手实践

2.1 修改关卡

2.1.1 修改思路
  1. 通过增删用户来找到用户文件存储位置
  2. 找到对应文件,记录更改前数据
  3. 通过关卡变动判断对应数据
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 思路
  1. 解锁游戏商店功能
  2. 通过金币数量发生变化时,存档文件内容的变化
  3. 通过变化找到修改金币的方法
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. 知识总结

注意事项

  1. 游戏的用户存储并不是在游戏目录而是在c盘(win10)
  2. 修改关卡的方法1-2对应的是第2关5-2对应的是42关,修改第一行四列的数为42的二进制位就可以到达5-2
  3. 修改金币控制的是8 9 0a 0b这四列,数值在每一列是右到左变大,而整体看列是左到有变大,金币和数字的换算是10金币数值加一
    • 例如 1000 转化为二进制有十位,最高两位要在第九列最右面输入,剩下八位按照顺序填入从左到右填入第八列即可

二进制修改植物大战僵尸相关推荐

  1. 使用Cheat Enginee(CE)修改“植物大战僵尸”子弹类型

    使用Cheat Enginee(CE)修改"植物大战僵尸"子弹类型 单击查看内存 右键转到地址,输入4672a5 点击确定 自动汇编该语句,注入CT表框架代码,代码注入,分配到当前 ...

  2. 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之植物篇

    目录 1.单卡片无CD 1.1 思路一 1.2 思路二 2.全卡片无CD 3.豌豆射手射速修改(修改植物射速) 4.实现豌豆射手发射"玉米加农炮"(思路) 上一期教程中,我们学习了 ...

  3. 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之其他篇

    目录 1.跳关(任意选择关卡) 2.修改金币值 3.实现自动收集阳光 上一期教程中,我们学习了寻找植物大战僵尸僵尸距离基址.实现"秒杀"僵尸的方法.PS:上篇链接:[CE入门教程] ...

  4. 以休闲游戏“植物大战僵尸”为例,制作无限阳光修改器

    制作游戏修改器,应该有很多人对这类内容感兴趣吧. 发现这个游戏纯属巧合,一日我在百度搜索"植物"这个词时,搜索框下方就列出一大堆"植物大战僵尸"的相关内容,于时 ...

  5. 【CE入门教程】使用Cheat Engine(CE)修改游戏“植物大战僵尸”之僵尸篇

    目录 1.寻找僵尸位置基址 2.实现"秒杀"僵尸(修改僵尸血量) 上一期教程中,我们学习了修改植物大战僵尸的单卡片无CD.全卡片无CD.豌豆射手射速修改以及实现豌豆射手发射&quo ...

  6. 基于python开发植物大战僵尸

    目录 摘要 2 一, 引言 3 1.1中国游戏产业的现状 3 1.2中国游戏产业的未来发展局势 4 1.3植物大战僵尸游戏的发展状况 4 二.系统结构 5 2.1 Python3.8.2 IDLE 简 ...

  7. 针对“扫雷“和“植物大战僵尸“游戏,分析,扫描,阳光值,植物,金币,僵尸的分析逆向

    <软件逆向分析> 2022年9月 目录 {#目录 .TOC-Heading} [一.实验工具介绍 3](#一实验工具介绍) [二.针对"扫雷"游戏 3](#二针对扫雷游 ...

  8. Python应用之植物大战僵尸2-功夫世界BOSS关卡无限刷金币

    植物大战僵尸2-功夫世界BOSS关卡无限刷金币 前提 思路 step 1 游戏重新开始 step 2 选择植物 step 3 放置植物 step 4 收集金币 结果 代码 树莓派开机启动设置 本人已经 ...

  9. 植物大战僵尸2激怒中国消费者

    [导读]"本地化"的<植物大战僵尸2>并非简单汉化,而是通过加大游戏难度,减少免费玩家可获得的游戏体验等方式逼迫中国消费者迅速消费. 转播到腾讯微博 腾讯科技讯(娄池) ...

最新文章

  1. SpringMVC传递multiple类型select后台Controller的接收方法
  2. junit测试@注解
  3. 02-Popover代码实现
  4. 学术圈炸了!IEEE限制华为相关专家参与审稿:这操作毁尽三观
  5. std::thread的使用
  6. 实例篇——springboot自定义拦截器
  7. 框架详解_Selenium3框架详解
  8. WAP PUSH 技术
  9. Ubuntu 18.04 语言学相关软件的安装
  10. coreldraw橙子怎么画_cdr怎么画一杯橙汁?CorelDRAW简单绘制的一杯满满的橙汁教程...
  11. Java 面向对象基本特征
  12. 有图有真相——MD瞬间被移动扣了90多M流量加9元钱
  13. springboot校园二手书籍交易平台 毕业设计-附源码131558
  14. 华为OD机试真题 Python 实现【机器人】【100%通过率】【2022.11 Q4 新题】
  15. Revit建模如何一键“生成场地和基础垫层”
  16. Dynamo相关下载教程分享!(附软件包和Revit使用插件Revit Lookup下载教程)
  17. 写给VC++ Windows开发的初学者 一片不错的博文
  18. 如何写好科研论文 撰写技巧(三)
  19. 把word文档转换成swf格式
  20. delta和gamma中性_在期权交易中,Delta、Gamma、Theta、Vega都是什么?

热门文章

  1. Forest Http使用分享
  2. linux 删除u盘痕迹,删除U盘使用痕迹的小方法
  3. 制造企业如何开展客户满意度调查?上书房信息咨询为你解答
  4. android 怎么代码把图片切成两半,android – 将RelativeLayout分成两半
  5. 基于LabVIEW的汽车仪表步进电机测试系统ETest
  6. 如何计算主力持仓成本?主力持仓成本的核算方法!
  7. 安装PyQt5和相应的pycharm设置和在pycharm验证PyQt安装是否成功
  8. pyecharts+Vue在显示图表
  9. Python学习笔记(3):Python操作数据库
  10. AI怎么批改数学作业