プラチナの乱数調整

この呼び方は「現在のseedから初期seedを調べて、そのseedの後にある目標個体(妥協が必要)になるよう乱数を進ませる(調整する)方法」と「目標から初期seedを決め、その初期seedを狙って(調整して)出す方法」の二種類を指す。
ここで紹介しているのは後者で前者に比べ狙える個体の自由度が大きい。詳しくはアーマーさんの所を参照
また後者の方法には「進ませるseedは少なく、xはいくら大きくても良い派」と「xは連打で出る物に限り、進ませるseedは多くても良い派」がある。
ここの出したクレセリアの場合、前者だと「冒険ノート5Pめくり13分待ち」後者だと「待ち時間0で冒険ノート5000Pほどめくる」となる。後者の方法はスレのツールを利用すると良い。


・目標とするポケモンのseedを調べる
DSのポケは皆Method 1で行われている。

Frame seed 備考
0(基準 0xe212b412 初期seed候補(11以前で初めてCDが0x17以下
1 0xccc0881d
2 0x7ae12acc
3 0xd2b1c14f
4 0x70afc116
5 0x74ae4ad1
6 0xb7a7e970
7 0x583ee523
8 0xd8aa9a5a
9 0x774784c5
10 0x4945ee54
11 0x2a5c7237 このseedで話しかけると+5Frameされ16になる
12 0x81b3c3de
13 0xdaec69f9
14 0x6e895d78
15 0xadc7bc8b
16 0xf80001a2 目的のずぶ30-23-27-29-29-31になるseed

クレセリアは話しかけると5進むので調べた初期seedの5つ前のseedを使う。
他に関しては下の補正を応用すれば調べられるはず。固定伝説は特殊な処理が入るので無理。
(例:起動から連打で18時に開始すると初期seedは0x??1202??となる。このまま徘徊系ポケモンに話しかけて捕獲して、そのポケのseedを出す。ポケのseedの1~20個前のseedを逆算し、0x??1202??を探す、その場所との差が「話しかけると進むFrame」とわかる)


・時刻を決める
seedをABCDEFGHの8桁の16進数とすると
AB:月*日+分+秒の下2桁(0x00〜0xFF)
CD:時(0x00〜0x17)
EFGH:年-2000+x(0x0000〜0xFFFF)
年月日時秒は「つづきから」でAを押した時のもの。
xは「Pt起動」から「つづきから」を押すまでの経過フレーム。
"時(CD)"が満たせない場合、前のseedから満たせるものを探してゲーム開始後にその分だけ乱数を進ませる。
乱数の進ませ方はなつき度の上昇判定(128歩毎に手持ちの数だけ進む)を利用するのが一般的。
もし"EFGH"が0xFFFFだとxは最短で65436F(18分10秒60)となる。よって数が大きいほど難しくなる。
Q.2099年が良いのは何故?(DSで設定できる最高年)
A."EFGH"の式の通り。今年に設定するより1.5秒xを減らせるのとあとで補正しやすいから。


・1/100秒のずれの補正
エメループのずれ補正と同様に"x"のずれを調べる。
まず、初期seedの"ABCD"が目標と同じものを捕獲する。"秒"が合っていないといけないが1/100秒を問われないので合わせるのはそれほど難しくは無いだろう。
目標のEFGH(目標の年-2000+目標のx)と捕獲したもののEFGH(目標年-2000+"ずれ"込みのx)を比べれば"(経過フレームの)ずれ"が分かる。
目標のAB(目標の月*日+分+秒)と捕獲したもののAB(目標月*日+分+"ずれ"込みの秒)を比べれば"(開始時刻の)ずれ"が分かる。
秒単位のずれは開始時間を変更、1秒未満は年を変更する。進数の計算は関数電卓


これらの計算はえいさんの所のツールが便利。
昨日の「ずぶとい」をクレセリアで出す場合、5個前では"時"を満たせないので"時"を満たせる16個前のseedにして、

初期seedを0xe212b412にするには
ゲーム起動時刻:2099年8月24日17時51分44秒
経過フレーム:45999(12分46秒65)
プレイ開始時刻:2099年8月24日18時4分30秒
とすればよい
*通常、多くの他の時刻設定でも可能です

に加え手持ち1匹で1408歩歩けば(11個乱数を進める。冒険ノート5P+128歩でも良い。)出る。きついけど光るなら・・・


結論:エメループに毎回の時計設定・乱数調整が入っただけでそこまで難しくは無かった。
にしても相変わらず自分の理解が遅すぎる。やっとかよっていう。

ktkr クレセリア☆ ずぶ30-23-27-29-29-31龍39