【第4世代】孵化歩数が標準より255歩少なくなる現象の原因が判明しました
(大嘘)Pokémon Past Generation Advent Calendar 2021の26日目の記事です。
記事作成の経緯
事の始まりはリツイートで回ってきたこちらの投稿でした。
wikiは連続でチェックを受け続けた場合サイクル数が減っていって0になった後に孵化にはさらに255歩歩く必要があるって書いてあるけど、
— しーくん@ShinyHunting (@shikun_PM) 2021年12月24日
正しくは連続でチェックを受けなくてもサイクル数が減って0になった手持ちの初めの位置にあるタマゴから次のチェックで生まれ、他は処理されないんだと思うな。
タマゴのサイクル数については昔検証をしたことがあり、その情報をシタビラメのダニエルさんにポケモンWikiへ反映していただいた過去があります。しっかりと確認したはずですが、第3〜4世代には存在しない「前回のチェックの時点でも手持ちにあったタマゴ」という条件がサイクル数減少についてかかるという記述がありました。この誤りの指摘となります。*1
他の世代についてはよく知らないため何故このような記述が生まれたのかは分かりませんが、「前回のチェックの時点」という発想は私にとっては目から鱗でした。先に述べた通り「前回のチェックの時点でも」だと第3〜4世代では誤りになりますが、「前回のチェックの時点で手持ち」&「今回のチェックの時点で手持ち」と考えるとどうでしょうか。PCに預けたタマゴも対象になりますが、孵化の処理だけ行われないと考えれば実現し得るものです。もっともPC内のタマゴに対して処理が走るというのは不自然です。この発想のおかしいものだと切り捨てることはできます。でも簡単にチェックできますから、考えるよりも先に動いてみました。
ということでパール用に準備した手順が次のものです。
- 手持ちのタマゴ2個を残サイクル数2まで減らす(他はムクホークのみ)
- 両方をPCに預け入れる
- 次の孵化判定(サイクル数を減少させ、条件を満たしたら孵化する処理)までに少し歩いた後に片方のタマゴAを引き出す
- しばらく歩き孵化判定が行われた後、もう片方のタマゴBを引き出す
- パーティをムクホーク/タマゴB/タマゴAの順に並び替える
- 孵化するまで歩く
これまで正しいとされる処理であれば、最初に残サイクル数が2まで減ったタイミングから765歩でタマゴAが先に孵化するはずです。しかし、実際は765歩でタマゴBが孵化しました。その後細々と確認を進めた結果、さすがに「前回のチェックの時点で手持ち」だからといってサイクル数が減る様子ではありませんでした。とはいえ、これはどうしたことでしょうか。
「孵化する条件」と「孵化の処理を開始する条件」
タマゴが孵化するには残サイクル数が0である必要があります。その上で、孵化判定をもう一度受ける必要があります。この孵化判定はパーティの先頭から末尾に向かって1体ずつ行っていきます。そのことを振り返るとタマゴAが孵化に入るはずのタイミングで、一寸先にタマゴBの残サイクル数が減らされて0になっていることに気づきました。
ここで次の仮定を行いました。「残サイクル数が0のときに孵化判定を受ける」ことはあくまで孵化の処理に入る条件にすぎず、改めてパーティの先頭から順に孵化対象を探す処理があるのではないかと。つまり孵化する条件 ≠ 孵化の処理を開始する条件であるため、タマゴBが孵化するという考えです。
検証
この仮説を検証するため、次のケースでどのタマゴが孵化するか確認しました。詳細なデータはhttp://2style.jp/bowline/ds/research/egg_count.htmlの追補4として書いたので、そちらをご覧ください。*2
ケース1
手持ち | ムクホーク or トロピウス タマゴA(2) タマゴB(1) タマゴC(1) タマゴD(1) タマゴE(0) ※括弧内は残サイクル数 |
第4世代 | 最初の孵化判定のときにタマゴBが孵化 残サイクル数はA:1, C:0, D:0, E:0 |
第3世代 | 最初の孵化判定のときにタマゴEが孵化 |
ケース2
手持ち | ムクホーク or トロピウス マグマッグ(ほのおのからだ) タマゴA(2) タマゴB(2) タマゴC(1) タマゴD(0) ※括弧内は残サイクル数 |
第4世代 | 最初の孵化判定のときにタマゴAが孵化 残サイクル数はB:0, C:0, D:0 |
第3世代 | 最初の孵化判定のときにタマゴDが孵化 |
まとめ
第3世代ではこれまで考えられていた通り、孵化の処理に入るとその要因となったタマゴが孵化します。第4世代では今回の仮説の通り、孵化の処理に入った後、パーティ先頭から順番に孵化対象を探す処理があると考えられます。
終わりに
今回の検証結果により、残サイクル数が1*3のタマゴが次回チェック時に孵化対象となる可能性があることが分かりました。残サイクル数が不明なタマゴの孵化防止が目的ならば、先置きするデコイとして残サイクル数が1のものを用意した方が歩数に余裕が生まれることとなります。*4
そして今回の結果は、標題の通り以下の情報に対する答えとなるものです。
ayuzak.hatenadiary.org
あのアユザックさんのことですから間違いは無いとは思ってましたが、どうしても手が届かなかったデータに今回たどり着いたことになります。15年経過した今こんなことが起きるとは…望外の喜びです。