基礎知識
戦闘関係
※この話は向きによる命中・ダメージ量補正の検証(その2・「キャンセラレイ」について)から派生しているので、そちらもご一読いただきたい。
前ページまでは味方キャラが敵を攻撃する場合についての話だが、ここでは敵が味方キャラを攻撃する時のダメージ量について記す。
前ページにも、敵の攻撃・防御の値はおそらく0であろうと述べたが、味方キャラの場合は防具を装備すれば防御の値が上がるため、敵が味方キャラを攻撃する時は防御の値を考慮することになる。
本作では味方キャラと戦闘になる場面があるが(最終編でポゴやおぼろ丸を仲間にする時など)、ここではとりあえずそれらの戦闘は省く。
データ解析サイト(世界の合言葉は森部様)によれば、SFC版におけるダメージ量計算は以下のように定義されている。
・単発ダメージ:
(((min(max((8+技LV+自LV-敵LV),1),24)*LV差係数/8 +(自能力値*係数)) *((255-敵能力値)/2)/256) *2+攻撃力) *乱数(1~1.25)
(乱数幅は厳密には単発ダメージ*(0~63)/256)
・総ダメージ:
単発ダメージ*ヒット数-防御力
SFC版では、リメイク版のように、多段ヒット技のダメージ量が1ヒット毎に表示されることはなく、合計値だけが表示されるようになっていたので、単純に単発ダメージ量にヒット数を掛け算する方法で多段ヒット技のダメージ量を計算していた。
リメイク版では1ヒット毎にダメージ量が変動しているのが確認できるので、多段ヒット技で上の計算方法は使われていないということになる。
そして重要なのが、「防御の値は乱数に関係しない」という点である。
攻撃の値は乱数のブレに含まれるのだが、防御の値は乱数ブレを起こさず、防御の値をそのまま引き算しているということになる。
リメイク版でもSFC版と同じように、防御の値は乱数でのブレに関係しないのか、それとも関係するのかは、実際にダメージを計測してみないとわからない。
つまり、
1. がSFC版での計算方法になるが、2. だと防御の値も乱数計算する必要がある、ということになる。
1. と2. では計算結果が全く変わってくるので、実際にダメージ量を記録してみれば、どちらになるか(またはどちらにもならないか)、はっきりするだろう。
ここでは「キャンセラレイ」の検証のデータを使って、ダメージ量を検証する。
「キャンセラレイ」の検証で、レベル19のアキラの防御が0の状態での「キャンセラレイ」ダメージ量を記録したのだが、正面から「キャンセラレイ」をくらった時、ダメージ量最大187、ダメージ量最小126であった。
この状態で防御のみ上げた場合を計算してみる。
乱数最大値を1.2、乱数最小値を0.8として、
| 計算方法 | ダメージ量 | 防御20 | 防御50 |
|---|---|---|---|
| 1. 防御0での計算値×乱数-防御 | 最大値 | 167 | 137 |
| 最小値 | 106 | 76 | |
| 2. (防御0での計算値-防御)×乱数 | 最大値 | 163 | 127 |
| 最小値 | 110 | 86 |
計算上はこのようになる。
防御のみ上げる装備としては「源氏の鎧」「源氏の兜」「源氏の小手」「エリアルメイル」「エリアルブーツ」を使用した。
これらを装備すると石化耐性や耐性属性もつくのだが、「キャンセラレイ」は無属性攻撃であり、ダメージ量計算には関係しない、という前提とする。
アキラのデータは以下の通り。
装備は検証結果を参照。
| アキラのステータス | |
|---|---|
| レベル | 19 |
| HP | 389 |
| 物攻 | 30 |
| 物防 | 58 |
| 特攻 | 99 |
| 特防 | 83 |
| 素早さ | 41 |
| 命中 | 29 |
| 回避 | 29 |
| 武器 | グラブ(+4) |
| アクセサリ | (なし) |
防御20は「源氏の鎧」のみ装備で計測。
防御50は「源氏の兜」「源氏の小手」「エリアルメイル」「エリアルブーツ」装備、合計防御50で計測。
各100回ずつダメージ量を記録した。
全データはlal_canselray - Googleスプレッドシートを。
| ダメージ量 | 防御20 | 防御50 |
|---|---|---|
| 最大値 | 168 | 137 |
| 最小値 | 106 | 76 |
「1. ダメージ量 = 防御0での計算値×乱数-防御」とほぼ一致した。
防御20の最大値が計算値と1ずれているが、100回の計測で最大値が取れていなかったか他の要因かはわからない。
何にしても数値からして「2. ダメージ量 = (防御0での計算値-防御)×乱数」ではないのは間違いない。
よって、ダメージ計算の際、防御の値は乱数によって影響を受けることはない。
SFC版と同じ仕様ということになる。
また、防御の値だけ乱数ブレを起こさないため、これまでのように「ダメージ量最大値÷最小値」が一定値(ほぼ1.5)にならない。
今回であれば、168÷106は約1.58だし、137÷76は約1.8である。
敵からのダメージ量を調査する際、最大値と最小値が出たかどうかの判定をする時に注意しなければならない点である。
ここまでをまとめると、ダメージ量の計算方法は以下のようになる。
{(「スキル固有の基礎ダメージ量」+「攻撃するキャラのステータスから計算された値」−「攻撃されるキャラのステータスから計算された値」)×「耐性属性または弱点属性があるならその倍率」+「武器の攻撃の値」}×「0.8~1.2の乱数」−「防具の防御の値の合計」
※ただし敵の「攻撃」「防御」の値は0と思われる