返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C1任务01之修改游戏存档的方法
  • 806
分享到

C1任务01之修改游戏存档的方法

2024-04-02 19:04:59 806人浏览 八月长安
摘要

目录挑战一、任务实现工具:游戏:植物大战僵尸中文版十六进制编辑器:Hex Editor Neo二、任务实现过程:1、修改关卡2、修改金币3、修改用户名4、修改局内文字信息总结挑战

挑战

有的玩家在玩游戏时,可能并不想⼀关⼀关地慢慢玩,⽽是希望可以直接跳到最后⼀关,或者从⾃⼰指定的关卡开始,⽐如 经典的《植物⼤战僵⼫》;再就是怎么能够「开挂」,得到更多的⾦钱、更⾼的属性、更强的道具,⽐如《三国志》系列。任何游戏都会保存玩家的进度和数据,不管是单机游戏还是⽹络游戏都是如此。如果玩家能够知道这些存档数据保存在哪⾥,并且还能随意修改存档信息,那是不是就能达到「开挂」的⽬的呢? 答案当然是肯定的,因为只要知晓计算机对⼆进制数据的处理机制,就能轻松做到这⼀点。


说明

  • 了解⼆进制、⼗六进制对于计算机的意义
  • 掌握⼆/七/⼋/⼗/⼗⼆/⼗六等多种数据进制间的转换
  • 掌握如何在windowslinux中修改并保存⼆进制⽂件

内容

  • 修改《植物⼤战僵⼫》的存档⽂件,将⼀个新⽤户的进度直接修改到5-2关,⾦钱(能量)直接修改到10000
  • 修改植物大战僵尸内的文字提示信息以及植物的名称

一、任务实现工具:

游戏:植物大战僵尸中文版

下载链接:

链接: https://pan.baidu.com/s/1UJeERv_Qes6KMespuD8yGg

提取码: h259

十六进制编辑器:Hex Editor Neo

下载链接:
链接: Https://pan.baidu.com/s/1EyVB4AlBY14geaTzK45XOw
提取码: e933

二、任务实现过程:

前三个任务会用到十六进制编辑器来实现,在修改的的过程中涉及到的知识点为十进制数据与十六进制之间数据的相互转换。

PS:单机类游戏数据都是存储在本地,因此只要在本地找到存储数据的文件进行修改即可对游戏内的数据进行修改

在所有任务开始前首先在下载好的植物大战僵尸游戏中新注册一个账号
(在这里我起名为SJMDJGS【世纪末的架构师】)

在这里插入图片描述

1、修改关卡

修改关卡前首先要在本地找到存储游戏数据的文件
植物大战僵尸的数据文件一般都是存储在C盘中的ProgramData文件夹中

C:\ProgramData是个公用的被创建文件夹或文件存放的地方,这些文件夹或文件仅由创建者完整控制。打开ProgramData,可以看到很多和应用软件同名的文件夹,里面有一些软件运行,或者修复卸载时候调用的一些文件,生成的一些记录也存放在这里。默认是隐藏的,不可删除的

文件路径: C:\ProgramData\PopCap Games\PlantsVsZombies
来到这里以后会看到有两个文件夹,点击下方存储用户数据的userdata文件夹

在这里插入图片描述

点击进入存储用户数据的文件夹以后会发现有两个.dat格式的文件,其中user1.dat文件中存储着关卡数据和金币道具等信息

在这里插入图片描述

将user1.dat文件拖到Hex Editor Neo中,不难发现第四列存储的数字为1其余为0,所以进行是否第四列中的十六进制数据代表着关卡的信息

在这里插入图片描述

在游戏中通关到第三关以后再将user1.dat文件拖入Hex Editor Neo中会发现之前第四列下的数据已经由最初的01变成了03,因此说明第四列下的十六进制数据是用来描述关卡情况

在这里插入图片描述

在这里插入图片描述

在植物大战僵尸游戏中每10小关为一个大关,所以要将关卡修改到第5-2关对应的十进制数据为42,将其转换为十六进制数据为2a,在Hex Editor Neo中将03改为2a后重新进入游戏会发现关卡跳到了第5-2关。

在这里插入图片描述
在这里插入图片描述

2、修改金币

在修改了关卡以后会发现游戏界面内自动出现了商店等组件,此时我们点击商店以后会发现金币为0,现在开始修改金币

在这里插入图片描述

当通关获得一定数量的金币后会发现第八列下的数据发生了变化,因此猜测第八列下的十六进制数据为记录金币数量的信息,将这里的数据修改为ff,重新进入游戏查看金币的数量是否有发生变化

在这里插入图片描述

重新进入游戏后发现金币数量发生了变化并且为2550,因为ff对应的十进制数据为255,因此证明植物大战僵尸中金币的规则为十六进制对应的十进制数据 * 10

在这里插入图片描述

因为游戏中10000金币对应的十进制数据为1000,1000(10)对应的十六进制数据为3e8,在Hex Editor Neo中将第八列和第九列

中的数据分别改为3e、80后重新进入游戏会发现金币的数量并不是预想的10000,而是328300

在这里插入图片描述

在这里插入图片描述

由此猜测第九列的数据为高位,并不是按照惯性思维从第八列开始依次排列,重新在Hex Editor Neo中把第八列和第九列的数据分别改为e8、03,再次进入游戏后发现商城中金币数量变为了10000

在这里插入图片描述
在这里插入图片描述

3、修改用户名

之前修改关卡和金币数量时都是在user1.dat中修改,修改用户名则是在另一个users.dat文件中进行修改,将users.dat拖入到Hex Editor Neo中会发现从第08列到第0e列中的对应的十六进制数据转换为十进制数据以后的值恰好对应ASCII码中的SJMDJGS(世纪末的架构师),与游戏中的用户名对应,因此假设第08列到第0e列的数据对应为用户名,将第08列到第0e列的数据分别修改为46(16)(对应十进制数据为70)、58(16)(对应十进制数据为88)、44(16)(对应十进制数据为68)、48(16)(对应十进制数据为72)、4c(16)(对应十进制数据为77)、52(16)(对应十进制数据为82)、第0e列改为00,如果假设正确重新进入游戏后用户的名称则修改为FXDHLR(飞翔的荷兰人)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、修改局内文字信息

修改局内文字信息不需要用到十六进制编辑器,只需要找到游戏的安装路径,找到其中的properties文件夹,修改该文件夹中的LawnStrings.txt文件即可

在这里插入图片描述
在这里插入图片描述

在这里我使用的是notepad++来修改文本文件,只用记事本也可以完成编辑。以修改豌豆射手的数据为例,在游戏内的图鉴中检查信息是否修改成功

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

总结

任务到这里就全部结束了,修改游戏数据在曾经是想都不敢想的,在刚开始看到任务时一度怀疑自己能否完成这样的任务,便心一狠牙一咬踏上了完成任务的旅程,在完成任务的过程中自己才意识到之前自己被自己想象的困难打败了,真正接触到之后并没有想象中的困难。在完成任务的过程中熟悉了数据进制之间的转换,也明白了在计算机中如何保存二进制文件,更重要的是信心上和动手实践能力的提高。
还记着那句,人的一生中最辉煌的一天,并不是功成名就的那一天,而是在悲叹和绝望中产生向上的力量,并勇敢去直面和接受挑战的这一天。这是最大的转折点,当你选择去直面挑战时,就已经注定了成功!

到此这篇关于C1任务01之修改游戏存档的文章就介绍到这了,更多相关修改游戏存档内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C1任务01之修改游戏存档的方法

本文链接: https://lsjlt.com/news/155749.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C1任务01之修改游戏存档的方法
    目录挑战一、任务实现工具:游戏:植物大战僵尸中文版十六进制编辑器:Hex Editor Neo二、任务实现过程:1、修改关卡2、修改金币3、修改用户名4、修改局内文字信息总结挑战 ...
    99+
    2024-04-02
  • Python修改游戏内存的方法
    目录前言游戏的安装思路一句话总结大概的思路实战确定修改哪一款游戏的数据代码地址的寻找视频教程修改数据代码效果完整的源码所有的软件下载包前言 大家好,我叫善念。上篇文章我许了一个愿,就...
    99+
    2024-04-02
  • 通过Java修改游戏存档的实现思路
    目录前言一、实现思路二、项目准备1. 创建maven工程2. 导入依赖三、核心代码1. 使用的对象2. 修改关卡信息3. 修改金币信息四、代码测试1. 读取数据文件2. 修改关卡位置...
    99+
    2024-04-02
  • Win8任务栏颜色怎么改?Win8系统修改任务栏颜色的方法
      Win8任务栏颜色怎么改?在使用电脑的时候,我们会先对任务栏的颜色进行改变,因为这样有利于我们的眼睛,可是很多人不知道任务栏颜色怎么改?其实方法很简单,如果你不懂任务栏颜色怎么改的话,那就赶紧来看看小编...
    99+
    2022-06-04
    任务栏 颜色 怎么改
  • win7修改任务栏颜色的方法是什么
    win7修改任务栏颜色的方法是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。win7修改任务栏颜色的步骤:首先使用鼠标右键点击桌面上空白处,打开个性化。在个性化中点击窗口颜...
    99+
    2023-06-28
  • Win10修改任务栏颜色的方法是什么
    本篇内容介绍了“Win10修改任务栏颜色的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!修改方法:在键盘上按下【win+i】组合键...
    99+
    2023-06-27
  • 任务栏里面win7任务管理器的启动路径修改方法
      在任务管理器里面的很多文件我们都是通过点击就能打开的,但是有的时候想修改文件的路径要如何修改了。这个路径有的时候也会被改掉导致你没办法打开该文件。今天就说下更改任务栏里面的资源管理器作为参考吧!   1、在Win7下...
    99+
    2023-06-01
    任务栏 任务管理器 启动路径 管理器 启动 路径 任务 修改
  • 升级到Win8.1之后在游戏中经历了鼠标滞后问题的修复方法
      之前我们便报道过,一些用户升级到Win8.1之后在游戏中经历了鼠标滞后情况。当时并没有相关的解决方法,不过可以通过改变游戏的可执行文件解决所有的问题。   正如gHacks.net报道,鼠标滞后是由...
    99+
    2022-06-04
    鼠标 升级到 经历了
  • 安装为 window 服务的tomcat修改jvm内存的两种方法
    目录第一种方法第二种方法第一种方法 1.快捷键按win+r弹出运行窗口输入regedit进入注册表编辑器 2、在服务注册里,找到对应tomcat服务 3、在服务注册表中有Jvm...
    99+
    2023-03-22
    tomcat修改jvm内存 window tomcat修改jvm内存
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作