ゲームについて思うこと

誰かに自慢できる!ダメージ計算式の簡単な話

2021年10月13日

ゲームをしていて、思ったよりダメージでないな…と思うことはないだろうか。
当然だが、ゲームごとに様々なダメージ計算式があり、これが分かれば効率的なプレイができること間違いなし。

ここでは代表的なダメージ計算の仕組みを3つ紹介!

これを覚えておけばいつか役に立つかもしれない…

差分方式(アルテリオス計算式)

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

アルテリオス計算式は『アルテリオス』というRPGで用いられていたのが由来である。

引用:https://trend-tracer.com/damage/#

一見わかりやすいが、大きな問題がある。それは能力値がダイレクトにダメージ値になる点だ。何も考えずに使ってしまうと、格下の敵には楽に勝て、格上の敵には全く歯がたたないという苦痛のゲームバランスが生まれる。

例:攻撃力と防御力が釣り合う付近(0以下のダメージは1とする)
攻撃力:120で攻撃した場合
相手の防御力:100 → ダメージ20
相手の防御力:110 → ダメージ10(50%減)
相手の防御力:120 → ダメージ1(95%減)

このように防御力が20%上がるだけで、ダメージが95%減少してしまう。逆もまた然り、適正レベルよりあげてしまえば攻略が余裕になってしまう危険性がある。

この計算式は以下のようなゲームで使われている。

  • 能力値が1~数十程度のゲーム
  • 防御力のないゲーム
  • シンプルで戦術性の高いゲーム

ドラクエやファイアーエムブレムシリーズなどもこの方式であり、実際には細かな補正がかけられている。

割合方式①

ダメージ=攻撃力/防御力

比率で計算するので、インフレしてもダメージが安定するのが特徴的な計算式。


攻撃力:20 vs 防御力:10→ダメージ2
攻撃力:20000 vs 防御力:10000→ダメージ2

しかし、HPが2倍になった場合は倒すまでの時間も2倍になってしまう。

なのでこのダメージ計算式は、LvなどでHPがあまり変動しないゲームに適している。また、防御が分母にあるため、無視の攻撃は使いづらくなっている。

割合方式②

 ダメージ=攻撃力×攻撃力(Lv)/防御力

ポケモンも似たような方式であり、攻撃力ではなくLvを採用している。

Lvが同じ場合にバランスがとりやすいが、Lv差が大きい場合はバランスが悪くなるのが問題。

割合方式①と比べてダメージと体力の比率が安定するが、同様に防御無視の攻撃は使いづらくなっている。

実際のゲームの計算式をざっくり

ポケモン(5世代以降)

ダメージ=((攻撃側のLv×2÷5+2)×技の威力×A(C)÷B(D)÷50+2)×補正値

ポケモンは実際の数値を表現せずに、HPゲージの減少スピードなどで表現している。

A:攻撃、B:防御、C:特攻、 D:特防と表記。

ドラゴンクエスト11

通常ダメージ=(攻撃力÷2ー防御力÷4)±乱数

通常攻撃だけで見るなら、序盤は防具より武器にお金をかけた方が効率よく強化できるかもしれない。

モンスターハンターライズ

物理ダメージ=攻撃力×モーション値×斬れ味補正×会心補正×武器補正×物理肉質

まとめ

この記事で少しはダメージ計算について詳しくなったのではないでしょうか。ゲーム制作をする際にどのような計算をすればよいか、また、作った人はこんなことを考えていたんだなぁ…と思っていただければ嬉しい。

簡単にしか説明できていないが、各ゲームに合ったまだまだ多くの種類の計算法がある。機会があれば詳細に書いていきたいと思う。

以上、最後まで読んで頂きありがとうございました。

-ゲームについて思うこと