ドラクエ3の歩数と確率

初期歩数の説明

初期歩数は256の倍数で最小0、最大256*48で、移動の度に減算される。 エンカウント歩数がマイナスになった時にエンカウントする。 初期歩数の算出について。範囲が[0,255]の乱数を、[0,16]の17通りの値に振り分ける。 256通りが17通りになるが、0が16/256の確率、1から16までが15/256の確率で得られる。

( 16*1 + 15*16 = 256 )

この方法で範囲[0,16]の乱数を3回取得して、合計する。 これを256倍して初期歩数とする。

( 16 + 15x + 15x^2 + ... + 15x^16 )^3

を展開した時の各項の係数が順列数になる。その次数は、256倍する前の歩数の初期値となる。 定数項が0が出る場合の数、xの係数は1が出る場合の数である。 これを17^3で割ると確率が出る。

参考サイト: wikipedia サイコロ8.1.7 任意の合計値の順列数

地形と歩数消費(エリア倍率1,忍び足なし)
ダンジョン(1マス) 平地,雪原,橋 砂漠 森,毒沼
減少値 102 160 256 384 460 640

忍び足をしていれば消費は1/2になる。 歩数リセット後海のみを歩く場合を考える。忍び足中は1マスにつき51だけ消費する。 初期歩数が0であれば、1マス(半マス)移動でエンカウントする。 256では6マス移動するとエンカウントする(256-5*51=1) 256*2=512ではさらに5マス進むとエンカウントする。(256+1)-5*51=2 事前に歩数を知ることはできないが、1マス目6マス目、11マス目…と、5マスごとにエンカウントする可能性が出てくる。 そしてその間の4マスではエンカウントしないという特徴がある。 海で闇のランプを使うときにエンカウントの可能性のあるタイルの直前で使うようにすれば多少歩数を稼ぐ事ができる。