すするのブログ

ゲーム攻略(RTA関連)が多いです。。。あと雑記

DQ5(SFC)リセットからの初エンカ再現確認結果(だいたい既出)

2018/8/31追記
2019/8/17追記 連射機を使わずタイミングでそれなりの精度に出来る方法追記

注1 大体自分の仮説です。都市伝説的なものと思っていただければ^^

注2 普段ニコ生でやってる駅伝ルールのRTAではルール違反だと思う。
   (乱数が制御するものは、時の運として楽しみましょう。)

●まずは結論
 1.リセット後の初エンカ再現までは、3パターンくらいのばらつきに抑えることが可能。
  *環境:SFC実機+連射機(PS-SFCコンバータ+PS2用HORIパッド3ターボ20連射)
   青年期前半のサラボナセーブから確認
  *ちなみにエミュ(snes9x+エミュ連射)ではほぼ100%再現可能。
   青年期後半のサラボナネッドの宿屋セーブから確認。
  ★連射機無しでも少し練習すれば、3パターンほどのブレに抑えることが可能でした。
 2.上記の3パターンもNPCの動きなどである程度実エンカウント発生前に把握できる。
 3.エンカウントから先の戦闘結果再現については別途まとめる。


●目的
 1.DQ5(SFC)の状況再現がどの程度可能なのか単純に知りたい。
 2.リセット後の初エンカのみ再現可能だとしても、
  ひとしこのみ/状況再現/はぐれ無限狩り使用RTAとかでワンチャン使えるかも!?
  *リセット後の1エンカ目に無限狩りが可能なエンカウントを確実に引ければ、
   魔人バグの確定先制+ひとしこのみの確定会心から無限狩りが簡単に可能(?)


●確認前から知ってたこと
 1.DQ5でもある程度状況再現が可能なのは既出。
  (昔ファミさんがはぐれ出現再現をやってた。自分も併走しながら見てた。)
  *モンスターじいさん系バグ以外なんでもありみたいな企画でした。
 2.理論上は電源オンからENDまで再現可能。
  (当たり前だけど・・・・要はTASさんなら可能。)


●ggってわかったこと(先人の方が調査された内容です。)
 1.エンカウントを制御する乱数は、0x7E0993~0x7E0996に格納されているらしい。
  *らしい
 2.このうち0x7E0996以外の数字は、1フレーム(1/60秒)毎に変化する。
 ⇒普通の操作では、1/60秒単位でずれる事の無い操作が必要!無理!!
 ※おそらく乱数ではなく乱数の計算元となる値でした。

●確認してわかったこと
 1.乱数初期化のタイミング
  ①ソフトリセット時に初期化される。
  ②他の初期化ポイントは不明。大して調べてないけど。
 2.乱数の動き
  ①リセット直後から1/60フレーム単位で動き続けている。
  ②暗転処理中には一瞬止まる?意味無いけど。
  ③メニュー表示中とか、ステータス表示中とか、地図表示中とか試したけど、
   止まる場面は見つからなかった。
 3.実際のエンカウント再現までの壁
  ①OP表示を1/60秒もずれることなく操作しなければならない。
  ②"ぼうけんをする"を1/60秒もずれることなく選択しなければならない。
  ③"ロードする冒険の書"を1/60秒もずれることなく選択しなければならない。
  ④"神父の再開メッセージ1ページ目"を1/60秒もずれることなく送らなければならない。
  ⑤"神父の再開メッセージ2ページ目"を1/60秒もずれることなく閉じなければならない。
  ⑥セーブした町から、1/60秒もずれることなく出なければならない。
  ⑦町から出てエンカウントするまで、1/60秒もずれることなく歩かなければならない。


●具体的な再現方法
 1.特定の条件でセーブする。
  ①当然セーブ場所は固定しないと無理です。
  ②冒険の書1~3にいくつデータがあるかで影響を受ける(固定させる必要あり)
  ③セーブ時の先頭キャラの名前の文字数、セーブ時の馬車外人数も固定させる。
  ④表示速度設定はいくつでも大丈夫
   *表示速度8でしか確認していません
  ⑤パーティーのレベル、装備品・道具欄等は関係ない

 2.B(orY)に連射を設定し、R(orL)ボタンを押しっぱなしにしながら、リセットをする。

 3.冒険の書が選択され、暗転して神父の1ページのセリフを送る(ピッって音がする)
  までRを押しっぱなしにする。
  ★この時点で同時に後述の十字キー押しっぱなしにしていても良い
  *通常より長いOPを見ないといけませんw
  *ここまではおそらく実機でもフレームがずれることは無いはず、
   連射でやると結構ずれそう。。。

 4.神父の2ページ目セリフが表示され始めたら、方向キー+B連射を押しっぱなしにする。
  *ここでB連射によりウィンドウ閉じる際、操作フレームのズレが起こると思う。
  *連射速度は速いほうがいいはず。。。
  ★[連射機無しの場合]Rと方向キーを押しっぱにして、
   メッセージ最後が表示されるタイミングで、タイミングよくRを話すだけでもOK

 5.ウィンドウが閉じたら、立ち止まることなく一定の動きで街を出る。
  *おそらく歩数だけ合っていればルートは関係ないはず
   但し画面内に入るNPCの人数が多いとラグが発生してずれる??←適当な予測
  *B連射はいれっぱなしでも離しても大丈夫っぽい。
   SFCのDQ3とかDQ6とかはB連射しながら歩くと遅いよね・・・。
  ☆ここでNPCの動きを確認し、分岐した再現パターンを組めれば理想。

 6.エンカウント域に出たら、立ち止まることなく一定の動きでエンカウントまで再現する。
  *同じエンカ域かつ、平地や森といったエンカウントの計算式が異なる領域の経過状況も
   同じに統一できれば、歩数さえ統一すれば同じエンカウント再現が可能だと思います。
  *日本語難しい、要は同じずっと平地とかならどんな歩き方しても同じになります。

 7.理想的なエンカウントを狙う方法
  ※セーブ地点から町に出るまでの歩き方を変えるとエンカウント内容が変わる

●簡単な状況再現体験。
 1.ネッドの宿屋で3人でセーブ。
 2.Rボタン押しっぱなしでリセット、神父の1ページ目めくりまで。
 3.2ページ目が出始めたら、下キー+B連射。
 4.そのままずっと下へ。
 ⇒大体同じ場所で同じパターンのエンカが出るはず。

●実例(自分の環境だけなのかどうかが不明!)
 ①青年期前半開始時、主人公(名前3文字)>ヘンリーの順番で昼間のオラクルベリーでセーブ
 ②再現技を使い、右手にいる金髪のNPCキャラが右に動くパターンを引く
 ③オラクルベリー脱出時、カジノ前から宿屋の外周を回って、門は右から出る。
 ④最短距離でスライムナイトエンカ域に出る(下図)
 ⇒とまどい状態のイエティ2&スライムナイト2が出てくる。




以上