C1任务01-信息编码

任务一

  • ⾸先,修改《植物⼤战僵⼫》的存档⽂件,能跳到指定关卡,例如「5-1」
  • 其次,修改《植物⼤战僵⼫》的存档⽂件,让游戏账户有指定数量的⾦币
  • 然后,修改《植物⼤战僵⼫》的存档⽂件,能解锁「迷你游戏」选项
  • 最后,修改《植物⼤战僵⼫》的存档⽂件,能解锁「⽣存模式」选项

软件:WinHex20.1,植物大战僵尸小游戏
附:游戏下载链接
https://pan.baidu.com/s/1EhFOjcDtU45IyIGZbJzuAA
提取码:mw2h

修改关卡
植物大战僵尸是一款单机游戏,也就是说游戏中的数据都存放在本地,存放在自己的计算机上,而应用程序的相关数据一般存放在C盘下的ProgramData中,有些也会存放在注册表中,但植物大战僵尸这款游戏以及题目的要求只需考虑ProgramData就可以了,当然ProgramData文件夹属于隐藏文件夹找到他之前得先显示隐藏文件,根据游戏厂家以及游戏的名字等信息就可以找到相关的数据文件了

查看此路径下的文件:C:\ProgramData\PopCap Games\PlantsVsZombies\userdata

C1任务01-信息编码_第1张图片

用WinHex打开user1.dat以及users.dat

users.dat:
C1任务01-信息编码_第2张图片
user1.dat
C1任务01-信息编码_第3张图片

发现users.dat中存储的正是注册的用户名,那么题目中所要修改的主要内容可能就在user1.dat这个文件中了,过上一两关看看数据会有什么变化

C1任务01-信息编码_第4张图片
C1任务01-信息编码_第5张图片

发现00000004这个地址上的数据发生了改变,01为1-1,03为第1-3关,5-1对应的是第41关,十六进制表示为0x29

C1任务01-信息编码_第6张图片
C1任务01-信息编码_第7张图片

修改金钱数以及解锁新模式

通过我们的不断的闯关会有金钱以及新模式的加入,咱们再来看看user1.dat的变化,发现改变00000008/00000009这两个地址的数据对应的可以改变金钱数,而0000000C这个地址上的数据对应的是开通新模式的flag位,flag为1表示开通下面的三种模式。

C1任务01-信息编码_第8张图片
C1任务01-信息编码_第9张图片
C1任务01-信息编码_第10张图片

任务二

  • 先通过⼆进制的0和1「画」出图形
  • 再试着「画」出⾃⼰的名字或昵称
  • 理解⼆进制存储图⽚⽂件的底层原理
    C1任务01-信息编码_第11张图片

根据这个游戏可知前两个字节代表图片的长和宽,后面是(长×宽)bit长度的数据,1表示为白色,0代表黑色,如果颜色是8位灰度图像,每个像素用一个8位二进制表示,8位灰度图像,它可以用256种颜色。24位真彩色一般屏幕采用三基色即红绿蓝rgb色,每个像素用一个24位的二进制数表示,每个像素占用24位的空间,即在不压缩的情况下,每个像素存储需3个字节,24位真彩色,可以有16777216种颜色。

你可能感兴趣的:(CSDN认证,游戏)