タマゴの性格値:今後の方針
- 性格値が内蔵時計によらずにループするか調べる。
- パッチールを預けて、あと一歩でタマゴができるところでセーブ。
- 方向キーを押しっぱなしにして、リセットから「つづきからはじめる」までの時間を計る
- タマゴを受け取って孵し、模様から性格値を求める。
- 時間ができるだけ同じになるように別の時刻にも繰り返す。
- ループが確認できたら↓
- 性格値が親によらずにループするか調べる。
- 別の親を使ったり、預ける順番を入れ替えたりして、上と同じように調査する。
- 性格値の生成方法を予想する
- 初期seed=0の乱数列と、出てきた性格値を比べる。
- 親の性格値などの定数を足し引きしてみる
タマゴの性格値:途中経過
パッチールのタマゴを孵化して、模様から性格値を求めることは一応できた。
が、出てきた性格値は同一の乱数列上に存在するものじゃなかった。
もちろん、模様から性格値を求める段階で間違えた可能性はあるが、
別の性格値の生成方法の可能性を検証していく必要がありそうだ。
タマゴの性格値:仮説・検証方法
- 仮説1:個体値を決めるのと共通の乱数列の、連続する(または一つおきの)乱数2つを単に並べたもの
- 仮説2:個体値を決める乱数列とは別の、常に一定の初期seedから生成される乱数列の、連続する(または一つおきの)乱数2つを単に並べたもの
- 仮説3:個体値を決める乱数列とは別の、内蔵時計を利用した初期seedから生成される乱数列の、連続する(または一つおきの)乱数2つを単に並べたもの
- 仮説4:個体値を決めるのと共通の乱数を使用し、何らかの変換を行っている
- 仮説5:個体値を決めるのと別の乱数を使用し、何らかの変換を行っている
仮説1〜3であるかどうかの検証方法:
- パッチールを育て屋に預け、リセットせずにタマゴをいくつか受け取る。
- 某ツールを使い、パッチールの模様から性格値を読み取る。
- 初期seed=0から生成した乱数列に、並べるとその性格値になる連続した乱数があるか調べる(仮説1かどうか判明。違うなら↓)
- 性格値が連続する乱数から生成されたという仮定の下、性格値からseedを逆算する
- 求めたseedから、それ以降の乱数を生成し、他の個体の性格値もその乱数列に存在するか調べる(仮説2or3かどうか判明。存在するなら↓)
- 求めたseedから、それ以前の乱数を生成し、初期seedの目星をつける
- 別の時間にリセットして実験を繰り返し、同一の初期seed候補があるか調べる(仮説2かどうか判明。同一のものがないなら↓)
- 逆算した初期seed候補の中に"近い"ものがあるか調べ、内蔵時計の時刻との関係を調べる
とりあえずここまで
calc
入力:種族値、親2体の個体値、開始seed、No.
出力:卵から生まれた直後の能力値リスト×150個ぶん
公開はもうちょっと待ってね
アップロードしました