かけらの記録ノート

主にポケモンの乱数について語るブログ

第六世代のID調整と孵化乱数について

海外で公開されてたのを個人的にまとめただけ。

 結論から言うと、ID調整は実機では(おそらく)不可能、孵化乱数は固定と同程度の難易度で可能。(展開がないから少しは難しいかも)
※実際に検証したわけではないので間違っている可能性があります。

仕組みについて

ID調整

第七世代でおなじみのTinyMTが使われている。
mat値などは七世代同様にsampleのものと一緒の模様。statusの値をtemperした32bitの値がIDとして使われる。
どうやってもstatusの値をゲーム内から予測できないと思うので無理だと思われる。MTの初期seedと同じ値でstatusが初期化されているならワンチャンあるかもしれない。

孵化乱数

連続した2つのMTの乱数値から孵化seedを取り、その上下32bitをkeyとしてinit_by_array()で初期化されたもう一つのMTを生成し、その乱数列から個体値や性格値が決定される。乱数値の商を使う点を除き、スキームは第七世代と同じ。
単純に固定乱数と同じように1/60秒を合わせればうまくいくはず。

孵化はいけそうなので誰かやってみてはどうでしょう??