ハイリンク乱数
昨日の続き。
性格の調査について少し進歩した。
ハイリンクに行くと個体値乱数はリセットされるが、性格値乱数はソフト開始時の初期シードのまま継続される。(もちろん消費はする。)
そのため性格のパターンを調査するためには、ゲーム開始時の1秒単位のタイミングを合わせるだけでいい。ハイリンクに飛ぶタイミングがずれても影響は個体値にしか出ない。
で、実際に調査してみた例。
アルセウスを見ていると動きのパターンが2種類あったが、これはTimer0ずれによるもの。今回はホワイトなので、0xC68か0xC69のどちらかになる。
それぞれの動きのパターンに対して、ソフト起動から戦闘に入るまでの秒数をずらして調べていくとこうなった。
秒数 | パターン1 | パターン2 |
---|---|---|
95 | ようき | ひかえめ |
96 | ようき | ゆうかん |
97 | さみしがり | ゆうかん |
98 | わんぱく | おとなしい |
99 | わんぱく | おとなしい |
100 | てれや | おとなしい |
101 | まじめ | おっとり |
これを(Cギアオフの場合と同様に出力した)固定リストの性格と見比べてみると、それぞれのTimer0のリストに該当するパターンが見つかった。
(0xC68の場合)
129,ようき ,○,2C379B82,
130,ようき ,×,06786008,
131,さみしがり,○,8E90A22B,
132,しんちょう,○,0FA4AF14,
133,わんぱく ,×,EE0DECDB,
134,てれや ,○,56265A78,←100秒
135,ずぶとい ,×,B988B3BF,
136,まじめ ,○,37F5EE3A,←101秒
…
175,がんばりや,○,23596CB8,←150秒
176,すなお ,○,0126AEF8,
177,ずぶとい ,×,45FCDE98,
178,おくびょう,×,34BFD11A,←153秒
(0xC69の場合)
121,ひかえめ ,○,18F16122,
122,ゆうかん ,○,23549136,
123,おっとり ,○,9AF60BE5,
124,おとなしい,×,297B114C,
125,おっとり ,○,5B346986,
このうち0xC68の方では、該当箇所の先で最初に出る「おくびょう」が178個目だった。100秒の所から44個進めるので、だいたい150秒ぐらいと予想し、実際に試すと「がんばりや」。さらに少し進めて153秒で「おくびょう」が出せた。
あとはこのタイミングを維持しながら、ハイリンクに入るまでのフレーム数が合うまで頑張るだけ。今回は必要なかったが、Timer0が合いにくければ、もう片方のパターンも「おくびょう」が出せる秒数を調べておけばいい。
BW2に比べると1フレーム単位の調整に試行回数がいるけど、方法が分かってしまえば何とかなる。これでクリスマスカップの準備も完了。あとはメダル集めと隠しアイテムマップか…。