FLサンダーループ

FR・LGにおいてサンダーを厳選する際のループを使った方法。
最近はそれなりに広まっているようですが、PtやEmと比べて複雑な乱数初期シードの決定法が用いられている為、PtEmほどは広まってない模様なので書いておきます。

①基本原理
FLサンダーが他と比べて難しくなっている最大の要因は初期シードの決定法が複雑である事です。 具体的にFLでは以下のようにして初期シードが決定されルト考えられています。
(まだ研究段階のようなので憶測です。 また自分が間違って理解している恐れも大いにあるため鵜呑みにはしないでください。)

A.FLの起動→フシギバナの画面でAボタンを押して、続きからの画面に映るまで(もしくはAボタンを押した瞬間)のF数

B.(A)までにボタンを押した場合、ボタンを押すごとに処理が追加され、また、そのボタンを押していた長さなども処理に追加される?(ここが一番複雑なので自分もはっきりしません)

C.ゲームの設定(ステレオモノラルや片手ヘルプなど)による処理の追加

の3点により初期シードがずらされていると考えられます。

また、初期シード決定後は恐らく続きからの画面に移行後Fカウントが始まり、Emなどと同じくそれ以後の経過F数に従って乱数が進んでいきます。

この時に、任意の個体が出るような初期シードを求める式は未だ見つかっていないので、何度か経験でデータを繰り返し出してそこから狙う個体を決めるという方法が現在の主流です。また、既に狙う個体の候補もいくつか挙がっています。色々調べてみれば出てくると思います。 私が載せてもいいのですが、私も他人のデータを利用させてもらった身なので、あえて伏せて起きます。

②初期シード

この時、FLの場合、初期シードは必ず、0x0000WXYZになります。この性質を利用して、捕獲個体から自動で初期シードやその初期シードからでるめぼしい個体を算出するツールが既に開発されていますが、此方も上記同様使わせてもらっている身なので伏せておきます。 まぁ私のブログを見ているなら私よりずっと有名な方が作られているためすぐ此方も見つかるでしょう。

また、注意したいのが、FRとLGで初期シード決定式が異なる点です。上記のツールで自分で狙う個体を探す場合は関係ありませんが、そうでなく既知データで厳選をする場合は必ず設定とバージョンが同じであるかたしかめてください。ちなみに、現在でてるデータの多くはLGのものが多いと思います。

③具体的方法(1) 準備

・ストップウォッチ×2 (一時的に画面を停止して、測定し続けられるような機能がついているものは1個でもできます。)
・上記で挙げたツール(これはあったほうが確実です。すぐ見つかりますが、Visual C++ がないと多分動きません。)また、このツールでなくても、個体値から初期シードを逆算できる環境があれば一応可能ですが、能率は落ちると思います。
・DSLite (GBASPや通常DS、ミクロ等でも可能だとは思いますが、既知データではライトを使用するものが多いので、ライトでやりましょう)

準備はこんなところだとおもいます。
もちろん、ゲーム内でサンダー前の固定環境は当然です。

④具体的方法(2) 実践

(1)まずはDSLを起動選択する画面まで行きます。
(2)GBAの起動選択と同時にストップウォッチで測定開始。2つの場合は難しいですが起動選択と2つのストップウォッチ測定をすべて同時に行います。
(3)フシギバナ(リザードン)が画面に完全に出てくるまで一切のボタン操作をせずに待ちます。

ここからは、既知データがある場合とない場合で分けます。
ある場合はある場合まで飛びます。

A.ない場合
前置き:狙いたい個体を探すという作業をする。上で紹介したツールは使うものとする。
(4)とりあえずデータを取るため、(3)より後の秒数で自分で任意に決めたところとその周辺で起動開始します。おおよそ35秒〜40秒でデータをとることが多いです。 
また、ここが重要で、起動をする際にAボタンを続きからの画面がしっかり出るのを確認するまで押しっぱなしにして起動するようにしてください。そうでないと「原理のB」で説明した原因で初期シードがぶれてしまいます。

(5)Aボタンを1回押し、続きからはじめます。

(6)あらすじをBで飛ばし、サンダー前から開始。

(7)マスターボールで捕獲

(8)ツールを起動し、ツールの説明に従ってサンダーの実数値や性格などを入れて初期シードを逆算。 そうすると、候補のサンダーが出るので、(1)〜(8)を繰り返し、狙いたい個体の情報(フシギバナの所を何秒でA押して、何Fの個体なのかなど)

(9)狙う個体が決まったら、Bに進む。

B.ある場合
(4)〜(7)をデータに従って進める。

(10)データに従って起動して、データに従い狙う個体の分のFだけ待ちます。どのくらいに2個目のストップウォッチの秒数を設定するかですが、まず狙うF数+フシギバナまでの秒数を足して、一度ためしに捕獲して逆算してみて、おおよそ何Fの個体が出たかを確認してみます。 そこでずれたなら、その分だけ補正して今後狙います。

(11)後は初期シードと経過フレームが同時に一致するまで(1)〜(11)を繰り返します。

ですかね・・・説明が下手で申し訳ないです。
また、既知データでも幾つかのデータでは初期シードが一致しないものもあります。 疑問なら質問してもらってもいいですが、私は詳しくはわからないので、細かい点はお答えできないと思います。