PS2版DQ5 エンカウント判定周りメモ
ついにPS2にまで手を出してしまった...
取り急ぎ、メモみたいな形で。
歩数が増えるごとに以下の式が評価され、結果が真であればエンカウントが発生する (乱数 mod A) < 閾値 ※ A = 256 - (歩数 - エンカウント最低歩数) * [1,4] エンカウント最低歩数 = 10 - 閾値
-
- 途中計算及び計算結果はIEEE754単精度浮動小数点演算に基づく
- 歩数は戦闘終了時や一部のフロア切り替え時(詳細は後述)に0にリセットされる
- 乱数の詳細な分布は未調査
- 備考
とあるが、PS2版DQ5のエンカウント判定は後者の確率エンカウント方式に該当する。
確率エンカウント方式では、直前のエンカ位置によって歩く場所を変えるなどの工夫が必要になるため、最適化が若干難しい。
とりあえずできることとしてはエンカリセ地点の把握と、エンカリセ入れの最適化か。
またフィールド内でのエンカ係数が異なる地域が確認されているので、境界付近では最適な歩き方が発見される可能性有り。
下みたいな表が完成して、乱数の分布が分かったらまた体系化してブロマガにまとめる予定。