填89楼的坟,一个精灵的信息有26个字节,具体信息如下:
/* 0x00 */ HP;
/* 0x01 */ 攻击;
/* 0x02 */ 防御;
/* 0x03 */ 速度;
/* 0x04 */ 特攻;
/* 0x05 */ 特防;
/* 0x06 */ 属性1;
/* 0x07 */ 属性2;
/* 0x08 */ 捕获度;
/* 0x09 */ 基础经验值;
/* 0x0A */ 努力值_HP(2个二进制位);
/* 0x0A */ 努力值_Attack(2个二进制位);
/* 0x0A */ 努力值_Defense(2个二进制位);
/* 0x0A */ 努力值_Speed(2个二进制位);
/* 0x0B */ 努力值_SpAttack(2个二进制位);
/* 0x0B */ 努力值_SpDefense(2个二进制位);
/* 0x0C */ 携带道具1;
/* 0x0E */ 携带道具2;
/* 0x10 */ 性别比率;
/* 0x11 */ 孵蛋时间;
/* 0x12 */ 初始亲密度;
/* 0x13 */ 经验值类型;
/* 0x14 */ 生蛋组1;
/* 0x15 */ 生蛋组2;
/* 0x16 */ 特性1;
/* 0x17 */ 特性2;
/* 0x18 */ 逃亡度;
/* 0x19 */ 体色 : (7个二进制位);
noFlip : 1;
所以第11 12字节是努力值;14 16字节是要和前面的13 15字节共同组成占两个字节的道具代码。剩下的自己看吧。
关于这个noFlip是个什么玩意,绝大部分的精灵这个都是0,我把代码里前350只这个地方值是1的精灵都贴在下面,你们看看能不能找到共同点:
蚊香蝌蚪;蚊香君;蚊香泳士;巨钳蟹;电击兽;蓝鳄;宝宝丁;蚊香蛙皇;未知图腾;狃拉;熊宝宝;电击怪;晃晃斑
当然,上面的表并不是我制作的,关于我是怎么找到它的,还得谢谢77楼的那个大神,在他给的链接里的第二篇文章就提到了这个表(
https://www.bilibili.com/read/cv18151778/),我只不过把那张表翻译了一下罢了,他的第一篇文章给的资源里,名字是:species_info.h的文件,就含有这张表。包括第90楼的内容,在大神提供的资源里都能找到。这种直接扒源代码的文章让我收益匪浅。顺带一提,蒜头王八的表长这个样子:
[SPECIES_BULBASAUR] =
{
.baseHP = 45,
.baseAttack = 49,
.baseDefense = 49,
.baseSpeed = 45,
.baseSpAttack = 65,
.baseSpDefense = 65,
.type1 = TYPE_GRASS,
.type2 = TYPE_POISON,
.catchRate = 45,
.expYield = 64,
.evYield_HP = 0,
.evYield_Attack = 0,
.evYield_Defense = 0,
.evYield_Speed = 0,
.evYield_SpAttack = 1,
.evYield_SpDefense = 0,
.itemCommon = ITEM_NONE,
.itemRare = ITEM_NONE,
.genderRatio = PERCENT_FEMALE(12.5),
.eggCycles = 20,
.friendship = 70,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroup1 = EGG_GROUP_MONSTER,
.eggGroup2 = EGG_GROUP_GRASS,
.abilities = {ABILITY_OVERGROW, ABILITY_NONE},
.safariZoneFleeRate = 0,
.bodyColor = BODY_COLOR_GREEN,
.noFlip = FALSE,
},