ブログ移転?しました エックスサーバを契約してみたので、 いろいろカスタマイズできそうなWordPressを使って ブログを作ってみました。 https://gametech.vatchlog.com/ 多分こちらでも同じような記事を書いていくと思います。 忍者ブログ

ばちブロ

プログラミングとか徒然を書いていた(過去形)

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【ポケモンXY】タマゴの個体値が決定されるフラグはいつ起こるのか


昨日の記事と深く関連している今回の記事。

前作までのポケモンは、タマゴを貰う瞬間にタマゴの個体値が決定されており、
また、その個体値はタイムテーブルにより擬似乱数的に管理されていました。
よって、その乱数を調整して欲しい個体値を簡単に入手することができたのです。



しかし、今作では、タマゴの個体値を決定するのに全く違う手法が取られていることが予想されます。

本体時間により乱数を発生させ、それに応じて個体値を決定する仕組みであれば、昨日記事にした個体値遺伝箇所を固定する方法はできませんしね。

なので、どこでタマゴの個体値が決定されるのか、少し検証してみました。



まず仮定を3つ用意しました。

野生ポケモンとの戦闘終了後にタマゴ個体値決定フラグがたつ
・建物に出入りしたり、空を飛ぶ等で暗転した時にフラグがたつ
殿堂入りしたときにタマゴ個体値決定フラグがたつ

これに準じて、検証を行ってみました。



1.親2匹を育て屋に預ける前に野生ポケモンと戦闘し、その後育て屋に預けてタマゴを産ませてみる
2.親2匹を育て屋に預けたあと、タマゴを貰う前に野生ポケモンと戦闘し、その後タマゴをもらって孵化させる

まずは野生ポケモンとの戦闘が関係しているかどうか調べるため、上記作業を行い検証してみました。
結果的には、戦闘を行った場合と行わなかった場合では、生まれるポケモンの個体値に変化はありませんでした。
よって、野生ポケモンとの戦闘とタマゴの個体値との関係性は非常に薄いことが分かりました。


3.親2匹を育て屋に預ける前に空を飛ぶをし、その後育て屋に預けてタマゴを産ませてみる
4.親2匹を育て屋に預けたあと、タマゴを貰う前に空を飛ぶをし、その後タマゴをもらって孵化させる

暗転時とタマゴの個体値が関係しているかどうか調べるためにこのような検証をしてみました。
これも結果的には個体値の変更はありませんでした。
よって、暗転時やフィールド移動時と個体値フラグの関係性は薄いと分かりました。


5.親2匹を育て屋に預け、殿堂入りして、その後タマゴを産ませてみる

これは、自分で検証したわけではなく、有志の方の検証を参考にさせていただきました。
その方曰く、殿堂入り後も個体値の変更はなかったとのこと。
殿堂入りも条件としては不十分でありそうです。



さて、ここまで検証して、上記仮定1,2,3のどれにも当てはまりませんでした。
では、どこでタマゴの個体値を決定しているのでしょうか?



ここで、新仮説を提唱してみます。

・タマゴの個体値決定は、セーブ作成時にテーブルが作成され、タマゴを産ませる事に次のリストに推移される。

どういうことかというと、初めから始めたときに、もうすでにタマゴの個体値テーブルが固定されて、タマゴを産ませる(貰う)ごとに1つずつ次の個体値パターンに変更される、ということ。

例を挙げると、

セーブデータを作成した

タマゴ個体値テーブルに、
(10♂赤糸遺伝-♂遺伝-20-♀遺伝-30♂赤糸遺伝-♀遺伝)
(20♀赤糸遺伝-♂遺伝-♀遺伝-30-10♂赤糸遺伝-♀遺伝)
・・・
のように、遺伝パターンがテーブルとして生成される

タマゴを貰うと、1つ目の遺伝パターンが消化され、2つ目の遺伝パターンに推移する

これをテーブル最終行まで繰り返し、最終行処理を終えたらテーブルの一番最初まで戻る



この仮定が本当なのであれば、遺伝テーブルさえ分かれば、自分の欲しい個体値があと何匹産めば出てくるのかを把握できるようになるんではないか、と思ったりします。

まぁ、まだまだ検証しないといけないと思いますが。

拍手[1回]

PR