首页 > 编程学习 > C1_任务01_修改游戏存档(植物大战僵尸)

C1_任务01_修改游戏存档(植物大战僵尸)

  • 干什么
    • 需求说明
  • 怎么干
    • 理解需求
    • 准备工作
      • 工具
    • 正式开干
      • 试玩
      • 分析存档
        • 跳关
        • 修改金币
  • 心得

干什么

需求说明

修改游戏存档文件,实现跳关至5-5,10000金币。

怎么干

理解需求

  1. 需要知道游戏的存档文件路径。
  2. 比对存档,寻找发生变化的值。
  3. 修改对应值进行尝试,得出规则,进而修改至想要的值。

准备工作

工具

考虑到版权等因素,以下内容不提供下载链接,大家可以网上搜索一下。

  • 植物大战僵尸游戏。
  • WinHex编辑器(同类软件有很多,我只是随便找了一个,绿色的,方便)

正式开干

试玩

  • 通过试玩游戏1-1关卡,得到存档文件。
  • 存档文件路径:C:\ProgramData\PopCap
    Games\PlantsVsZombies\userdata\user1.dat
  • 备份当前存档,并且再次进入游戏,完成1-2关卡。

分析存档

跳关

使用WinHex打开user1.dat和备份文件,比对后发现偏移量4的位置的值发生改变,盲猜和关卡有关,尝试性修改后确认是关卡的数值。
偏移量4的位置值发生了变化
尝试修改为18,关卡发生变化。
修改为18后,关卡变为3-4。
再次修改值,获得5-5的关卡。
修改为2D
关卡变成5-5关卡变为5-5
跳关需求END

修改金币

进入休闲花园,浇水获得若干金币后退出游戏,打开存档文件进行分析比对,发现在偏移量8的位置有数值变化。
偏移量8的位置疑似金币数值
改成FF后,金币只有2550。
思考:是不是存在另一个偏移量需要同时修改。
盲猜需要同时修改偏移量9,修改后金币值果然发生了变化。
同时修改偏移量9的值
通过多次尝试得到一定规律,修改后得到正确的10000金币。找到规律后修改为对应的值
10000金币来了
修改金币的需求搞定!

心得

游戏修改器大家不陌生,它是修改实时运行的内存地址。我们这一次的修改是基于SAVE/LOAD的存档修改,非实时修改模式。

一开始可能会被满目的十六进制给吓到,其实也不难,对于稍微有些开发基础的同学还是很容易完成的哦!

Copyright © 2010-2022 ngui.cc 版权所有 |关于我们| 联系方式| 豫B2-20100000