前言
有的玩家在玩游戏时,可能并不想⼀关⼀关地慢慢玩,⽽是希望可以直接跳到最后⼀关,或者从⾃⼰指定的关卡开始,⽐如
经典的《植物⼤战僵⼫》;再就是怎么能够「开挂」,得到更多的⾦钱、更⾼的属性、更强的道具,⽐如《三国志》系列。
任何游戏都会保存玩家的进度和数据,不管是单机游戏还是⽹络游戏都是如此。如果玩家能够知道这些存档数据保存在哪
⾥,并且还能随意修改存档信息,那是不是就能达到「开挂」的⽬的呢?
答案当然是肯定的,因为只要知晓计算机对⼆进制数据的处理机制,就能轻松做到这⼀点。
一、说明
众所周知,电信号只有两种基本的状态:开启与闭合,⽤数字来表示的话就是0和1两种状态;使电报得以⼴泛应⽤的摩尔斯码也
只有两种符号,分别是点「dot(.)」和划「dash(-)」,也可以叫滴「Dit」和嗒「Dah」。不管电信号还是摩尔斯码,都只是定义了
符号的表示⽅法,或对符号的编码,⽽并没有继续延展下去定义符号之间的关联关系——也就是「符号运算」。克劳德·⾹农于
1948年10⽉在《⻉尔系统技术学报》上发表了⼀篇名为《通信的数学理论》的论⽂,奠定了现代信息论的基础。他认为对于计算
机来说,⼆进制⽐⼗进制更容易识别,更易于纠错,⽽且更易于传输。
依托于⼆进制,从电⼦电路、信息传输、加密解密,到图像处理、媒体编码、数据压缩,再到中继输出等等,⼀切的数据信号、存
储介质、消息存档都是⼆进制的产物。因此,⼆进制属于计算机科学中的「第⼀性原理」,理解了⼆进制,就能串起计算机科学中
很多看似不相关的领域,如通信、内存、带宽。
二、知识基础
1.了解⼆进制、⼗六进制对于计算机的意义
2.掌握⼆/七/⼋/⼗/⼗⼆/⼗六等多种数据进制间的转换
3.掌握如何在windows及linux中修改并保存⼆进制⽂件
1.准备工作
下载
植物大战僵尸下载地址:https://pan.baidu.com/s/1AnlUpa-qIVdumXQYzqPUMg 提取码:3t67
Hex Editor Neo下载地址:https://dl.pconline.com.cn/download/2710536.html
2.内容
- 修改《植物⼤战僵⼫》的存档⽂件,能跳到指定关卡5-1 修改
- 《植物⼤战僵⼫》的存档⽂件,让你的游戏账户有1W⾦币
- 同时通过修改关卡完成下⾯的任务:
。修改关卡后能解锁「迷你游戏」
。修改关卡后能解锁「⽣存模式」
3.第一步
自己注册个用户名
第一次登陆游戏的图片:
4.寻找用户数据
在我的电脑中寻找用户数据的文件
5.使用Hex Editor Neo
使用Hex Editor Neo打开该文件(进行此操作之前先关闭游戏)
可以先打一关再次打开user1
对比两组数据发现有一个位置的数值不同
猜测04位置的代码代表着关数,每一大关有十个小关,5-1按十六进制转换是29,保存修改并重新进入游戏。
6.修改金钱
在游戏中拾取金币后重新打开user观察哪个位置的数值发生变化。
该位置表示的是游戏里的金币值,我们需要把金币改成10000,应该把08下面的位置改成e8,09下面的位置改成09并保存重新打开游戏。
7.打开其余模式
如果不知道修改哪里可以先调制最后一关打通游戏之后再打开user文件,与原文件对比找出对应的数据位置。在这里我直接上图。
三、总结
1.修改数据的时候千万要把游戏关了,不然游戏很可能无法再次打开或者闪退。
2.失败是成功之母!初次学习一定要敢于尝试,看不懂不要紧可以试着去修改某一处,看看在游戏有什么作用。(本人第一次尝试像个傻子一样啥都不会)
3.敢于问问题,自己实在搞不定了可以向老师或者朋友询问。