W PE 封包教程(新手级) 游戏数据格式和存储: 在进行我们的工作之前,我们需要掌握一些关于计算机中储存数据方式的知识和游戏中储存数据的特点
本章节是提供给菜鸟级的玩家看的,如果你是高手就可以跳过了,如果,你想成为无坚不摧的剑客,那么,这些东西就会花掉你一些时间;如果,你只想作个江湖的游客的话,那么这些东西,了解与否无关紧要
是作剑客,还是作游客,你选择吧
现在我们开始
首先,你要知道游戏中储存数据的几种格式,这几种格式是:字节(BYTE)、字(WORD)和双字(DOUBLEWORD),或者说是8 位、16 位和32 位储存方式
字节也就是8 位方式能储存0~255 的数字;字或说是16 位储存方式能储存0~65535 的数;双字即 32 位方式能储存0~4294967295 的数
为何要了解这些知识呢
在游戏中各种参数的最大值是不同的,有些可能 100 左右就够了,比如,金庸群侠传中的角 色的等级、随机遇敌个数等等
而有些却需要大于255 甚至大于65535,象金庸群侠传中角色的金钱值可达到数百万
所以,在游戏中各种不同的数据的类型是不一样的
在我们修改游戏时需要寻找准备修改的数据的封包,在这种时候,正确判断数据的类型是迅速找到正确地址的重要条件
在计算机中数据以字节为基本的储存单位,每个字节被赋予一个编号,以确定各自的位置
这个编号我们就称为地址
在需要用到字或双字时,计算机用连续的两个字节来组成一个字,连续的两个字组成一个双字
而一个字或双字的地 址就是它们的低位字节的地址
现在我们常用的Windows9x 操作系统中,地址是用一个32 位的二进制数表示的
而在平时我们用到内存地址时,总是用一个8 位的16 进制数来表示它
二进制和十六进制又是怎样一回事呢
简单说来,二进制数就是一种只有 0 和1 两个数码,每满 2 则进一位的计数进位法
同样,16 进