FF5のダメージ計算式を読み解いてみた

画像4

一時期、ゲームデザインの勉強(という名の趣味)で いろんなRPGのダメージ計算式がどんな感じなのか? 調べていた事があるのですが
その中でも特に ファイナルファンタジー5のダメージ計算式が とても面白いものだったので、自分なりに どうしてこんな仕様になっているのか?読み解いてみました。

注:全体的に概要の説明です。具体的な仕様の説明をはしょっているので 完璧な情報ではないことにご注意ください。
(例えば ランダムによるダメージのブレとか)


ダメージ計算式の基礎知識

その前に、まずは基礎知識なのですが、一般的に ダメージ計算式を区分けすると 大きく「引き算型」と「割り算型」に分かれます。

・引き算型

ダメージ = 攻撃力 ー 敵の防御力

攻撃力 は、力 + 武器の強さ
防御力 は、身の守り + 防具の強さ

ドラクエのダメージ計算式
ダメージ=攻撃力/2 ー 防御力/4
も、広義では引き算型だと考えます。

・割り算型

ダメージ = 技の威力 × 攻撃力 ÷ 敵の防御力

一番有名なのは、ポケモンですね。

攻撃力と防御力、そのふたつ以外に ダメージの基準となる値を必要とするのが特徴です。
(ポケモンの場合だと、技の威力)

(※ちなみに、他に割り算型を採用しているゲームは
アトラスの一部のRPGや、一部の不思議なダンジョン系とか あります)


じゃあ、FF5のダメージ計算式は?

画像3

(武器の威力 ー 敵の防御力) × ((力 × レベル ÷128)+2)

÷128 と +2 は、それっぽい数字にするための調整。
おまじない みたいな物だと思ってください。

特徴的なのは、「武器の威力」と「力」が別々なところにある点。
(多くのゲームは 攻撃力=力+武器の威力 として扱うことが多い)
そして、「武器の威力」に対して「敵の防御力」を引いてる点 です。

(例)
LV15ナイトのバッツ  (力 51)
ミスリルソードの武器の威力 31

イフリート(防御 10)
に攻撃した場合

ダメージ=(31 - 10) × ((51 × 15 ÷ 128)+2 )
ダメージ= 21 × (5.976 + 2)
ダメージ= 167

私がFF5大好きな事もあり
どうして こんな特徴的なダメージ計算式を採用したのか?
読み解いてみました。


LV1でもクリアできるぞ!

画像3

最初、これか! と思いましたが、多分ちがいます。
ただ、結果論ですが このダメージ計算式のおかげで LV1クリアができる一助になっています。

簡単に紹介します。

・LV1でもダメージが通るぞ
計算式的に、「武器の威力」が「 敵の防御」を上回れば良いので

LV1のシーフのバッツ (力29)
エクスカリバー (武器の威力110)

ツインタニア (防御力30)
に攻撃した場合
 
ダメージ = (110 - 30) × ((29 × 1 ÷ 128 )+ 2 )
ダメージ = 178

この通り、どんな相手でも ダメージが通るんです
(ツインタニアのHPは5万なので、これだけで倒すのは大変なのですが
ダメージが通るのと、通らないのは大きな差です。
相手の攻撃を完封できる手段があれば、いつかはその敵を倒せる というわけなので)

・LV1でも、防具次第で敵の攻撃を防げる
防具の防御力が、敵の攻撃力を上回れば ダメージが0になります。

敵からの攻撃のダメージ計算式も似ていて

ダメージ=(敵の攻撃力 ー こちらの防御力)× 敵固有の倍率

イフリートの場合 攻撃力29、倍率 6
ツインタニアの場合 攻撃力90 、 倍率 14

例えば、ゾンビになってしまうデメリットを覚悟して
「ボーンメイル」「源氏の盾」「源氏の兜」「源氏の小手」という装備をすると 防御力は 66となり
それより攻撃力が低いモンスターからの物理攻撃はLV1でも完封できるです!

(※厳密には、ダメージの乱数によるブレがあるので 完封できるのは攻撃力58以下のモンスターからの攻撃です)


ジョブによる特徴を強調したい!

多分、このダメージ計算式を採用した理由はこっちです。

画像4

FF5の「力」のパラメーターはレベルアップなどでは変化せず
ジョブチェンジによって変化します。

例えば、バッツの場合・・・
ナイト  力 51
シーフ  力 29
忍者   力 43
黒魔導士 力 19

これらが LV50の時、エクスカリバー(武器の威力110)で イフリート(防御10)を殴ってみると・・・

ナイト  2192 ダメージ
シーフ  1332 ダメージ
忍者   1879 ダメージ
黒魔導士 942 ダメージ

おーー、なかなか 目に見えてダメージが変わっていますね。


もし、これが引き算型のダメージ計算式だった場合 どうか?
仮にこんな式 だったとしましょう。
「(力+武器の威力)×LV ÷ 4 ー 敵の防御力×敵のLV 」

ナイト  1912 ダメージ
シーフ  1637 ダメージ
忍者   1787 ダメージ
黒魔導士 1512 ダメージ

あんま ダメージが変わらないですね。
理由としては、「武器の威力」の高さが「力」の差を小さくしてしまってるからです。


FF5はジョブがメインテーマであり、その特徴をより映えるダメージ計算式が あのFF5のダメージ計算式だったんじゃないかな
と 読み解きました。


終わりに

こんな感じで、ゲームデザインについて考える事が大好きなのですが
せっかくなので、大好きなFF5で書きたい記事を書いてみました。

筆者は こんな奴です。

今度、NintendoSwitchでゲームが出ます。 凄い!(宣伝)

他にこんなゲームデザイン記事 書きました。

普段、こんな活動しています。


よろしければサポートお願いします! その分だけ、全力でゲームを作ります!