帮助排行榜

口袋妖怪网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2641|回复: 7

[综合] [完坑]第三至五世代孵化步数研究

[复制链接]

56

主题

249

帖子

4722

积分

版主

病秧子一个

威望
20
帅气
27
聪明
1593
强壮
0
美丽
2
可爱
2
星沙
0
金钱
11352
发表于 2013-6-17 10:57:18 | 显示全部楼层 |阅读模式
本帖最后由 Moonツ 于 2014-4-2 18:13 编辑

谢绝转载.



首先要明确一点,ROM中储存的只是PM的孵化圈数(外站上常为译Egg cycles)而非孵化步数,孵化圈数确实影响着孵化步数,但是绝对不是简单的孵化步数=孵化圈数*256或255,在任何世代都是如此.要弄清楚到底是怎么回事必须了解孵化原理.

在这里强烈建议各位先看下Gen2部分在下的阐述,以便帮助理解,因为最重要的主干部分历代都是相同的.
GSC生蛋资料补完


那么先来看看Gen3,Gen3的孵蛋系统同样有个步数计数器,这个计数器不管你队伍中有没有蛋都会走(后作也是如此).从老爷爷那里得到蛋后,计数器的数值会被重设为0x00,并且系统会用本来应该储存亲密度的地方暂时储存蛋的孵化圈数.

玩家可以通过查看蛋的状态得知其大致范围(采用的是2012绿宝石汉化版).

孵化圈数11~40
1_01.png


孵化圈数6~10
1_02.png


孵化圈数≤5
1_03.png



如果想要知道精确数值必须要用MH修改器查看,不过关键是计数器的情况.

                               
登录/注册后可看大图


以日文版绿宝石为例,输入gameshark码8182D513D9CC1064,并切换一次场景,打开模拟器自带的“内存查看器”,输入020287F0,点击“转到”,顺便勾上“自动刷新”.下图中红框内的16进制数就是当前累计的步数.
2.png


计数器数值变化范围为0x00~0xFF,玩家每走一步,数值+1,当数值变为0xFF时,队伍中所有蛋的孵化圈数-1(从绿宝石开始若队伍中有熔岩铠甲/火焰之躯的PM时-2),直到减到小于0蛋就孵化了.
换言之,计数器的实际情况决定了孵化圈数到底乘以多少,这是孵化步数的实质与关键.

另外一定要记住,每次从老爷爷那里拿到蛋之后计数器数值会被重设为0x00,如果将蛋存入个人电脑或从个人电脑取出蛋/其它PM加入队伍中,计数器数值不会改变.

接下来举个例子,解释下什么叫“孵蛋圈数小于0蛋才会孵化”,并且来算一算一个鲤鱼王的蛋需要走多少步才会孵化.(不考虑存入或取出蛋的情况)

有熔岩虫:得到蛋时,计数器数值为0x00,当第一次变为0xFF时(即从0x00→0xFF共走了255步),孵化圈数从5→3;数值第二次变为0xFF时(即从0xFF→0xFF共走了256步),孵化圈数从3→1;再走256步(即数值第三次变为0xFF),孵化圈数从1→0(注意此时蛋没有孵化);再走256步蛋才会孵化,所以共走了255+256*3=1023步.

无熔岩虫:得到蛋时,计数器数值为0x00,当第一次变为0xFF时(即从0x00→0xFF共走了255步),孵化圈数从5→4;数值第二次变为0xFF时(即从0xFF→0xFF共走了256步),孵化圈数从4→3;再走256步(即数值第三次变为0xFF),孵化圈数从3→2;再走256步孵化圈数从2→1;再走256步孵化圈数从1→0(此时蛋没有孵化);再走256步蛋才孵化,所以共走了255+256*5=1535步.

所以在Gen3中:
当孵化圈数为奇数时,孵化步数最少=255+((孵化圈数+1)/2)*256;
当孵化圈数为偶数时,最少=255+((孵化圈数)/2)*256;
一般最多要走的步数=255+孵化圈数*256.


最后还要说下两种特殊的情况.

比如说我拿到一个土狼犬的蛋A后走了250步,此时再从老爷爷那里得到土狼犬的蛋B,由于计数器数值会被重设为0x00,对于蛋A来说,先前的250步就白走了,并且由于拿到蛋的时候孵化圈数都为15,所以理论上两个蛋会同时孵化,于是系统不会让这种事情发生,在走了255+15*256=4095步之后(无熔岩虫),只有蛋A孵化,而想要蛋B孵化需要再走256步.

再比如说得到一个鲤鱼王的蛋A后我走了253步,(即可计数器当前数值为0xFD),再走2步孵化圈数就能从5变为3(有熔岩虫),这时将这个蛋A存入个人电脑,之后我又从老爷爷那里得到一个鲤鱼王的蛋B,走了51步之后再从个人电脑中取出蛋B,那么现在两个单的孵化圈数都为5,接下来走204步,孵化圈数变3(也就是说之前的253步白走了),再走256*3步之后会发现只有蛋B孵化,要蛋A孵化得再走256步数,那么对于蛋A来说实际走了253+204+256*4=1481步.

上述两种情况中,为了防止两枚蛋同时孵化,系统似乎会让较早在队伍中的蛋孵化,在后作中也有此类现象.本文之后的内容一律不考虑上述的情形,只探讨仅有一枚蛋在队伍中到其孵化所需走的步数,有时你实际所走的步数与公式得到的结果不符可能就是因为上述情况.


Gen4的情况与Gen3很相近,从老爷爷那里拿到蛋之后计数器数值同样会被重设为0x00,将蛋存入个人电脑或从个人电脑取出蛋/其它PM加入队伍中也不会改变计数器的数值.唯一不同的是计数器数值变化的范围,为0x00~0xFE,它是这样变化的:0x00(得到蛋后背重置)→0x01→0x02→......→0xFD→0xFE→0x00(此时队伍中所有蛋的孵化圈数-1或-2)→0x00→0x01→......可知每走255步,孵化圈数就会-1或-2.

PM的孵化圈数可用pokesave修改器查看,同样是在亲密度那里.

                               
登录/注册后可看大图


然后简单介绍下如何找到Gen4系统计数器的内存地址,可以更直观地理解本文的内容.
首先你需要一枚蛋,走到它孵化为止,然后用的desmume的金手指搜索功能(模拟器→金手指→搜索),搜索“0(10进制)”,会有很多个结果.
1.png


之后回到游戏,走一步,搜索“1(10进制)”,这次结果就会少很多.回到游戏,再走一步,再搜索“2(10进制)”,结果又会少很多,如此一直搜索下去直到只剩下一个结果,就是计数器的内存地址了
2.png

7.png


然后就可以用desmume模拟器自带的“内存查看器”查看了,下图红框内的数值就是当前计数器的数值.

                               
登录/注册后可看大图


不过每次重新读档后计数器的内存地址可能会变,这可能会带来一点麻烦.

下面是例子:
比方说在有鸭嘴火龙的情况下我得到了一个鲤鱼王的蛋,走255步之后孵化圈数从5变3,再走255步从3变1,再走255步数从1变0(此时蛋没孵化),再走255蛋孵化,共计1020步.
若无鸭嘴火龙,走255步孵化圈数从5变4,再走255步从4变3,再走255步从3变2,再走255步从2变1,再走255步从1变0(此时蛋没孵化),再走255蛋孵化,共计1530步.

所以在Gen4中:
当孵化圈数为奇数时,孵化步数最少=((孵化圈数+1)/2+1)*255;
当孵化圈数为偶数时,最少=(孵化圈数/2+1)*255;
一般最多要走的步数=(孵化圈数+1)*255.


了解这样的原理后就不难解释口袋8水之波动管理员和太阳超版在这贴中提出的一些初步想法.此贴中提出的公式基本没有问题,但对于孵化圈数的理解不太正确,有兴趣的朋友可以看下.
http://www.koudai8.com/newbbs/fo ... 5302&extra=page%3D2



而Gen5的情况更像Gen2,从老爷爷那里拿到蛋之后不会改变计数器的数值,将蛋存入个人电脑或从个人电脑取出蛋/其它PM加入队伍中也不会改变计数器的数值.不幸的是Gen5的计数器情况非常奇葩,虽然其范围为0x00~0xFF,但它是这样变化的,比如说拿蛋的时候计数器数值为0x01,则0x01→0x02→0x03→......→0xFE→0xFF→0x00→0x00(此时蛋的孵化圈数-1或-2)→0x01→0x02→......也就是说每走257步,孵化圈数就会-1或-2.还有就是与Gen3、Gen4不同,Gen5中当孵化圈数到达0或以下时,蛋就孵化了.

还是来举几个例子:
比如说拿到一个鲤鱼王的蛋时计数器数值为0xFF,并且队伍中有火神虫,那么走2步孵化圈数变3,再走257步变1,再走257步数蛋就孵化了,所以共计516步.
如果拿到蛋时计数器数值为0x01,那么走256步孵化圈数变3,再走257步变1,再走257步数蛋就孵化了,所以共计770步.

再比如说拿到一个孵化圈数为2的PM的蛋(只是假设)时计数器数值为0xFF(无火神虫),走2步孵化圈数变1,再走257步蛋就孵化了,共计259步.

所以在Gen5中,当队伍中有熔岩铠甲/火焰之躯的PM时:
孵化圈数为奇数,则最多走的步数=((孵化圈数+1)/2)*257,最少=最多-256;
孵化圈数为偶数,则最多走的步数=((孵化圈数)/2)*257,最少=最多-256;

若无熔岩铠甲/火焰之躯的PM,最多走的步数=孵化圈数*257,最少=最多-256.


以下是黑汉化版对于孵化圈数范围的判定,精确数值同样需要用修改器查看,计数器内存地址查找方法同Gen4.
孵化圈数11~40
14.png


孵化圈数6~10
7.png


孵化圈数≤5
3.png



然后是"孵蛋之力"对于孵蛋效率的提高,使用"孵蛋之力"之后不会改变计数器当前的数值和蛋的当前孵化圈数.
比如说计数器当前数值为0xD1,使用"孵蛋之力+"后每走一步,计数器数值如下变化:
0xD1→0xD2→0xD3→0xD4→0xD6
        →0xD7→0xD8→0xD9→0xDB
        →0xDC→0xDD→0xDE→0xE0......

使用"孵蛋之力++"后情况如下:
0xD1→0xD2→0xD4
        →0xD5→0xD7
        →0xD8→0xDA......

使用"孵蛋之力+++"后情况如下(S、MAX级的效果与+++级相同):
0xD1→0xD3→0xD5→0xD7→0xD9......

这就是所谓的对孵蛋效率提高25%、50%、100%的真实情况.而保育所(ほいくしょ)减少的只是蛋的当前孵化圈数,不会改变计数器的情况.




最后来看下百科中对于孵化机理的解释.
孵化机理

1.在获得一个蛋时,蛋的亲密度被设置为与该蛋的孵化圈数相同。
2.玩家每走512步,蛋的亲密度-1。
3.当蛋的亲密度降低至0时,蛋孵化,同时亲密度被设定为精灵初始亲密度。
4.故蛋的孵化步数不会低于孵化圈数×512步。

额其实全错了-,-

You are (not) alone.

56

主题

249

帖子

4722

积分

版主

病秧子一个

威望
20
帅气
27
聪明
1593
强壮
0
美丽
2
可爱
2
星沙
0
金钱
11352
 楼主| 发表于 2013-7-7 20:58:09 | 显示全部楼层
这么大一个坑居然被我填完了-,-
You are (not) alone.
回复 支持 反对

使用道具 举报

0

主题

91

帖子

83

积分

新人训练师

威望
0
帅气
0
聪明
15
强壮
1
美丽
1
可爱
3
星沙
0
金钱
478
发表于 2013-7-7 22:23:57 | 显示全部楼层
言射言射

评分

参与人数 1金钱 +100 收起 理由
Moonツ + 100 谢回复

查看全部评分

回复 支持 反对

使用道具 举报

17

主题

2116

帖子

3296

积分

暴走族

威望
0
帅气
39
聪明
550
强壮
154
美丽
45
可爱
13
星沙
1
金钱
658

十周年纪念

发表于 2013-7-7 22:28:30 来自手机用户 | 显示全部楼层
酣畅淋漓,多谢楼主研究。

评分

参与人数 1金钱 +100 收起 理由
Moonツ + 100 谢回复.

查看全部评分

回复 支持 反对

使用道具 举报

56

主题

249

帖子

4722

积分

版主

病秧子一个

威望
20
帅气
27
聪明
1593
强壮
0
美丽
2
可爱
2
星沙
0
金钱
11352
 楼主| 发表于 2013-7-7 22:36:38 | 显示全部楼层
本帖最后由 Moonツ 于 2013-7-7 22:42 编辑

其实Gen5部分计数器的内存地址并不是很有把握,感觉和smogon上老外测试的一些PM实际走的步数有些出入-,-

PS.现在游戏区感觉人手不够楼上2位不知是否愿意去申版.
You are (not) alone.
回复 支持 反对

使用道具 举报

56

主题

249

帖子

4722

积分

版主

病秧子一个

威望
20
帅气
27
聪明
1593
强壮
0
美丽
2
可爱
2
星沙
0
金钱
11352
 楼主| 发表于 2013-7-10 22:33:54 | 显示全部楼层
最近在测试一个东西.

smogon上貌似有资料说Gen4中在特定的日期会用*230代替原本的*255.这个设定好奇葩啊.不过在下用模拟器测结果不会改变.有条件的朋友能否帮忙测试下鲤鱼王的蛋在以下日期的孵化步数.

DPT孵化步数减少日
毎年2月14日、5月5日、6月11日、7月7日、8月21日、12月25日

HGSS孵化步数减少日
1/12 2/14 3/3 4/1 5/1 6/11 7/7 8/21 9/7 9/28 10/31 11/21 12/14 12/24 12/25
You are (not) alone.
回复 支持 反对

使用道具 举报

10

主题

810

帖子

1229

积分

山洞探险者

うさみ はじめ

威望
0
帅气
0
聪明
128
强壮
147
美丽
11
可爱
12
星沙
0
金钱
149
发表于 2013-7-11 14:27:39 | 显示全部楼层
Moonツ 发表于 2013-7-7 22:36
其实Gen5部分计数器的内存地址并不是很有把握,感觉和smogon上老外测试的一些PM实际走的步数有些出入-,-

P ...

你觉得想申版的人敢这么横地去惹管理层吗?
http://www.pokemon.name/forum.ph ... tid=452132#lastpost

其实你完全可以去申请个兼任BW区的,现任版主,已经取得管理员的认可,能研究这个问题寻常游戏体验肯定过关

说明书也该考虑去申一个
就一路过测试头签的
* {{PotD/G5|408433|雷电斑马}}
回复 支持 反对

使用道具 举报

56

主题

249

帖子

4722

积分

版主

病秧子一个

威望
20
帅气
27
聪明
1593
强壮
0
美丽
2
可爱
2
星沙
0
金钱
11352
 楼主| 发表于 2014-3-26 17:21:41 | 显示全部楼层
2014.3.26更新对于“孵蛋之力”和保育所的讨论.
You are (not) alone.
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|PMGBA ( 闽ICP备06006686号  

GMT+8, 2016-12-6 18:16 , Processed in 0.565086 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表