妄想

全ては妄想なので本気にしてはいけない。


物理攻撃は、発生判定(オートアタック、DA、TA、複数回攻撃、蹴撃、etc.)→命中判定→実ダメージ計算、という手順で行われる。
このうち判定に関する部分は256分率ないし1024分率で行われているのではないか。具体的にはエリアごと(サーバがエリアごとなので)にサイズ256ないし1024の乱数テーブルがあり、判定時にはインデックスを進めてからそのインデックスの値を取得する。
モンテカルロ法で物理量を計算するような場合とは異なり、乱数の質が要求されるわけでもないので、馬鹿正直にメルセンヌツイスタとか使って乱数生成してるわけもなく、テーブルを使っている可能性は高いはず。ゲームの判定としては256分率で十分な気がするが……
具体的には、例えば命中率上限は243/256くらいだろうか、とか。この場合、テーブルから取得した0〜255の数値が243未満なら命中とする。
命中率は、武器スキルとDEXで決まる命中値と、回避スキルとAGIで決まる回避値から算出されるだろう。それぞれに装備・支援による補正がかかる。


魔法攻撃はどうか。魔法の命中判定の結果は、1/1、1/2、1/4、1/8の4種類。4種類を分ける3種の境界値を定めてもいいが、調整が非常に面倒になるだろうから、1種の判定の繰り返しで求めるのがいいだろう。つまり、3回命中判定し、3回成功でフル、2回成功でハーフ、1回成功でクォーター、0回成功でフルレジスト、となる。
魔法命中にはスキルとステータス(精霊魔法ならINT、神聖魔法ならMND等)が関与している。魔法回避はどうか。魔法回避スキルは無いので、恐らくレベルとステータス(同様に魔法によってINT,MND,CHR)で決定され、実際の命中率は(装備・支援による補正を含んだ)魔法命中値と魔法回避値から決定される。
命中率上限は252/256程度にしておくと、フルヒット率が95%程度になる。そのときの分布は、1/1:1/2:1/4:1/8=16,003,008:762,048:12,096:64≒95.4%:4.5%:0.072%:0.00038%となる。二項分布といえど、ここまで確率が高いと非常に安定する。これが体感に合うのかどうかは知らない。


というようなことをFF4の動画を見ながら(計算は別として)妄想していた。
全ては妄想なので本気にしてはいけない。
大事なことなので二回言いました。


乱数はmobの動きにも関与していると考えられるので、もし256分率テーブル説を検証したいなら、他に誰もBFエリアに入っていない状態でBFに突入し、乱数が回りそうな行為を繰り返してループを見つける、というような方法が考えられるが、30分では終わらなそうだし何らかの外的要因によるシグナル(時計など)によって定期的にリセットされるだろうから報われないだろう。