technic:damage-calculation

Action disabled: source

ダメージ計算式

きちんとFitされ、武装に弾薬を装填された船であれば、装備画面でDPSを確認することができます。
しかし、常にこのDPSが発揮されるわけではありません。様々な要素によって、与えられるダメージは減衰します。

「相手に与えられるダメージ」が算出される流れは、以下のとおりです。

  1. Fitting、スキル等により「その船が出せる最大のダメージ」が決められる。(これが装備画面上でのダメージ量・DPS)
  2. 攻撃時の弾の当たり方によって、「どれだけのダメージが相手に届いたか」が決まる。
  3. 相手に届いたダメージは更に相手のレジスタンスによって軽減され、残りが実際のダメージとして船のHPを減らす。

ここでは、2.の「攻撃の当たり方でどれだけのダメージが相手に届き、どれだけのダメージが減衰するのか」「どうすればより多くのダメージを相手に与えられるか」を詳しく解説します。
1.の「装備画面などでのカタログスペック的なダメージ量やDPS」の算出は、MODやスキルやボーナスの影響を受けたりスタッキングペナルティが適用されたりするだけと比較的単純で、しかも数値がわかりやすく表示されることからここでは触れません。
3.のレジスタンスの算出方法は複雑ですが、レジスタンスによるダメージへの影響自体は計算が単純なので、同様にここでは触れません。

上記の「弾の当たり方によるダメージの軽減」は、タレットとミサイルで算出方法が異なります

簡単に言うならば、

  • タレットに影響するのは「目標に対する角速度とタレットのトラッキング」「目標までの距離とタレットの射程」
  • ミサイルに影響するのは「目標のシグネチャ半径とミサイルの爆発半径」「目標の速度とミサイルの爆発速度」

を基に、ダメージ量が計算されます。

なお、ドローンの場合はタレットのダメージ計算が適用されますが、Fighter(艦載戦闘機)はミサイルの計算式にタレットと同様の射程減衰を組み合わせた特殊な計算になっています。


タレットのダメージ計算

タレットのダメージに大きく関わるのが、命中率です。
弾が命中しなければ敵にダメージは与えられません。そして、命中率が高いほど敵の弱点に弾を当てられるようになり、ダメージも増加します。
ここではその命中率がどのように決まるかを中心に解説していきます。


Agony Unleashedによる解説動画。
Leucy Kerastase氏による字幕がYoutube上で追加されています。


タレットの命中率(AccuracyRate)とそれに関わる要素は、以下のように表されます。

Va Angular Velocity 角速度。詳細は後述。
Te Effective Tracking Speed 実効トラッキング速度。詳細は後述。
Max Maximum 括弧の中身のうち一番大きい物が適用されるという意味。
D Distance 自艦から目標までの距離。
Ro Optimal Range タレットの最適射程距離。
Rf Falloff タレットの精度低下距離。

これの要点だけを簡単に説明すれば、

  • タレットの命中率に影響するのは、大きく分けて「目標に対する角速度とタレットのトラッキング」「目標までの距離とタレットの射程」の2つ。命中率は元々100%だが、これらの要素が原因で低下する
  • 上の2つの要素は相互に独立しており、いくらトラッキング速度が早くても射程が足りない分の命中率低下を補うことはなく、逆に射程がどれだけ長くてもトラッキング速度の遅さによる命中率低下を補うことはない。

ということになります。


全てのタレットには、「トラッキング速度」という数値が設定されています。
トラッキング速度とは「タレットの向きを1秒間にどれだけの角度動かせるか」ということを表す性能値で、スキル・MOD・使用弾薬・船のボーナスなどで変動します。短射程タレットは概ねこれが良好で、逆に長射程タレットはこれが低い傾向にあります。
また、角速度とは「1秒間に対象と自艦との位置関係がどれだけの角度動いたか」ということを表す数値で、オーバービューの列設定で選択することで、オーバービューに表示させることができます。

タレットの向きを変える速さよりも敵の動きのほうが速いのであれば、弾を当てられないのは当たり前のことです。1)
なお、誤解されがちですが、EVEにおいて自艦の艦首の動きは角速度に影響を及ぼしません
対象をオービットしていて対象が常に自艦の艦首の右90度にいたとしても、対象に対する角速度が0になることはありません。

角速度はその性質上、遠くの対象ほど小さくなりやすく、近くの対象ほど大きくなりやすい2)です。そのため、遠い目標には命中率低下が起こりにくく、近い目標には命中率低下が起こりやすいです。

Effective Tracking Speed(実効トラッキング速度)とは、タレットのトラッキング速度に「(撃つ対象のシグネチャ半径)/(タレットのシグネチャ解像度)」を乗じたものです。
実際に角速度と比較され命中率計算に関わるのは、情報画面などで確認できるタレットのトラッキング速度ではなく、実効トラッキング速度になります。

シグネチャ解像度とは各タレットに固有の性能値で、船が大きいほどシグネチャ半径が大きくなるのと同様、大きいサイズのタレットほどシグネチャ解像度は大きくなります。
このため、同一の距離で同一の動きをする目標であっても、大型のタレットで小型の目標を撃つと実効トラッキング速度が悪化するため命中率は低下し、逆に小型のタレットで大型の船を撃つと、実効トラッキング速度が改善され命中率が向上します

現在ではタレットの大きさに関係なく全てのタレットのシグネチャ解像度が40000mに統一されています。
そのため実効トラッキング速度は「(タレットのトラッキング速度)×(撃つ対象のシグネチャ半径)/40000」で求めることができます。


タレットの射程距離には、「Optimal Range(最適射程距離)」と「Falloff(精度低下距離)」という2つの要素があります。
Optimal Rangeとは「距離による命中率低下が起こらない距離」で、Falloffは「距離による命中率の低下のしにくさ」を表す数値です。

目標との距離がタレットのOptimalRangeより短い場合は、射程距離が要因となる命中率低下は起こりません。
この範囲内で、かつトラッキングによる命中率低下が起こらない場合3)に、タレットの命中率は100%になります。

目標との距離がOptimalRangeより長い場合、距離要因での命中率の低下が始まります。
詳細は後述しますが、目標との距離が「OptimalRange+Falloff」のときに命中率は50%まで低下し、距離が「Optimalrange+3*Falloff」まで離れれば命中率はほぼ0%になります。

つまりトラッキングとは逆で、近い目標だと命中率が低下せず、遠い目標には命中率が低下します。


前述の計算式に従うと、「目標との角速度と実効トラッキング速度の比(=速度比)」と「『距離-OptimalRange』とFalloffの比(=Falloff比)」は、同じように命中率を低下させます。
それをグラフ化したものが以下の画像です。

例えば、目標との角速度が実効トラッキング速度と同じ(=速度比1)のときはトラッキング要因での命中率は50%となり、角速度が0(=速度比0)であればトラッキング要因での命中率低下は起こりません。
逆に、角速度が実効トラッキング速度の2倍(=速度比2)出ていれば、命中率は6%まで低下します。角速度が実効トラッキング速度の3倍(=速度比3)になる頃には、命中率はほぼ0%になります。

距離要因での命中率変化も、トラッキングによるものとあまり変わりません。
一つ大きくの違うのは、距離がOptimalRangeより短い範囲では命中率が低下せず、OptimalRangeを超えてから初めて命中率が低下するという点です。
この「OptimalRangeを超えてからの距離」とFalloffの長さが同じ(=Falloff比1)、つまり距離が「OptimalRange+Falloff」と同じ時に、命中率は50%になります。
「超えてからの距離」がFalloffの2倍(=Falloff比2)になれば命中率は6%になり、3倍以上で命中率はほぼ0%になります。

最終的な命中率は、「(トラッキング要因での命中率)*(距離要因での命中率)」となります。
例えば、「角速度と実効トラッキング速度が同じで、距離がOptimalRange+Falloffに等しい」ときの命中率は、50%*50%=25%になります。

タレットから弾が発射されるたびに、0から1の範囲で乱数が生成されます。
この乱数は「弾が命中するかどうか」と「どれだけのダメージが相手に伝わるか」の両方に影響します。

この時生成された乱数が上述の命中率を下回っていた時に、弾が命中したことになります。
命中していた場合、その乱数に0.5を加え、タレットの元々のダメージに乗じます。これが、実際に敵に与えられるダメージ量になります。

具体的な例を挙げると、命中率が100%のときの1回あたりの攻撃は、元々のダメージ量の50%~150%の範囲で変動します。平均すれば、DPSは元々のDPSと一致します。
命中率が50%の場合、ダメージ量の変動幅は50%から100%の範囲になります。外れる分を含めたDPSは、元々のDPSの37.5%となります。

また、1%以下の確率でクリティカルヒットが発生します。
クリティカルヒットの弾が命中した場合、与えられるダメージは乱数に関係なく元々のダメージの3倍になります。

なお、この時に実際に適用されたダメージの倍率により、ログでは以下のように表示されます。

表示 倍率
擦過(Grazes) 0.500~0.625
軽微(Glances off) 0.625~0.750
直撃(Hits) 0.750~1.000
小破(Penetrates) 1.000~1.250
中破(Smashes) 1.250~1.500
大破(Wrecks) 3.000(クリティカル)

ミサイルのダメージ計算

ミサイルはタレットに比べて命中の条件が緩く、安定して命中しやすいです。
また、ミサイルのダメージは自艦や目標の動く向きにほとんど影響されません。
そのためタレットに比べて戦闘中にダメージが変動することが少なく、ほとんど一定したダメージを与えられます。
この「実際に与えられるダメージ」を指して、カタログスペック上でのダメージ量と対比し「実効ダメージ(Effective Damage)」という言葉がよく使われます。

ミサイルには「Velocity(速度=飛行速度)」「FlightTime(飛行時間)」というパラメータがあり、スペック上の射程距離は「(Velocity)*(FlightTime)」で算出されます。
このうち、飛行時間の整数部分の距離内では命中率100%、端数部分の長さに比例した確率で、+1秒分の距離まで命中します。
これはどういうことかと言うと、

  • ミサイルの性能
    • 飛行速度:10,000m/s
    • 飛行時間:3.7秒
    • 表示される射程距離:37km
  • このときのミサイル命中率
    • 100%確実に命中する距離:30kmまで
    • 30kmまでしか到達しない確率:30%
    • 最長で40km先まで到達
    • 40kmまで到達する確率:70%
      • これは「30km~40kmの間での命中率:70%」と同義

ということになります。
つまり、スペック上の射程距離内でもミサイルが外れることがあり、逆に射程距離より遠い目標にも当たることがある、ということです。

これに加えて、発射艦と目標の動きによって、ミサイルの実際の飛行距離が変化します。

具体的には、目標が自艦に近づくようにに動いていた場合、ミサイルが発射されてから着弾するまでに距離が詰まるため、飛行距離が短く済むのでミサイルは当たりやすくなります。
逆に目標が自艦から逃げるように動いていた場合、ミサイルが発射されてから到達するまでに目標は元々いたところより遠ざかっているため、飛行距離が長くなります。特に、目標がミサイルの飛行速度より速く動いていた場合には、ミサイルが追いつけないためほとんど命中しなくなります。

また、ミサイルにはHPが設定されており、攻撃を受ければ破壊されることがあります。ボムやスマートボムと言った範囲型兵装を受け破壊されれば、ミサイルは目標に命中することはありません。

ミサイルのダメージ倍率(DamageMultiplier)の計算式、そしてそれに影響する要素は以下のようになっています。

DamageMultiplier

Min Minimum 括弧の中身のうち一番小さいものが適用されるという意味。
Rs SignatureRadius シグネチャ半径。この場合は命中時の目標のシグネチャ半径を指す。
Re ExplosionRadius ミサイルの爆発半径のこと。
Ve ExplosionVelocity ミサイルの爆発速度のこと。
Vt TargetVelocity 目標速度。命中時に目標の出していた速度を指す。
drf DamageReductionFactor 詳細は後述。

これで算出されるダメージ倍率をミサイルの元々のダメージ量に乗じることで、実際に与えられるダメージ量が算出できます。


と、単に数式だけを見せられてもなんのこっちゃという人もいると思うので、簡単に解説すると

  • 爆発半径がシグネチャ半径より小さく、かつ爆発速度が目標速度より速いのであれば、ダメージは減衰せず100%相手に与えられます。ただし、ミサイルの元々のダメージ量を上回ることはありません。
  • 爆発半径がシグネチャ半径よりも大きい場合、与えるダメージは減衰し、半径比4)がダメージ倍率となります。
  • 爆発速度が目標速度より遅い場合もダメージが減衰しますが、爆発半径が大きい場合に比べ減衰の仕方は緩やかです。
    また、爆発速度が遅くても爆発半径が十分に小さい場合、ダメージが減衰せず100%相手に与えられることがあります。
  • 爆発半径が大きく爆発速度も遅い場合は、ダメージ倍率が半径比よりも小さくなり、与えるダメージはより減衰します。

このように、ミサイルのダメージ計算に大きく影響するのは、「爆発半径とシグネチャ半径の比率」と「爆発速度と目標の速度の比率」の2つ、ということになります。
そしてその2つの要素は、タレットの命中率に関わる2つの要素とは異なり、相互に独立していません

このダメージ計算式を視覚的にわかりやすくしたものが、以下のグラフになります。

T1Rocket
(※T1Rocketの場合)

中央から左へ伸びる軸が速度比5)で、中央から右へ伸びる軸が半径比、縦の軸がダメージ倍率となります
爆発速度が目標速度より遅い場合(=速度比が1以下)でも、ダメージが100%になる部分があることが見て取れると思います。


これらにより、以下のことがわかります。

  • ミサイルの実効ダメージを大きくしたいのであれば、爆発速度を上げたり敵の速度を下げたりするよりも、爆発半径を小さくしたりターゲットペインターを使ったりするほうが効率的。
  • ミサイル攻撃を受けている時にMWDを使うと、その加速によってミサイルを振り切れるか、あるいはMWDのシグネチャ半径ペナルティを軽減するボーナスを持っているか、あるいは元から減衰なしでダメージを受けていた場合などでない限り、受けるダメージは増加する。

Damage Reduction Factorとは、各種ミサイル弾薬が固有で持っているステータスの一つです。
ただしゲーム内ではマスクデータとなっており、情報画面などで確認することができません。
しかし、CCPが公式で配布している開発支援キットに付属するデータベースには記載されており、そのためEFTのCharge InfoやEVEMonのItem Browserなどで閲覧することができます。

DRFとは、簡単に言うと「爆発速度と目標速度の関係がどれだけダメージ倍率へ影響しやすいかを表す数値」で、これが大きいほど速度比の影響を受けやすくなります。

T1Rocket
T1Torpedo

上はDRFが0.644のT1Rocket、下はDRFが0.944のT1Torpedoのダメージ倍率グラフです。
少しわかりにくいですが、同じ速度比・同じ半径比であっても微妙に倍率が異なり、drfが大きいT1Torpedoの方が、速度比1以下の範囲で全体的にダメージ倍率がより低くなっていることが確認できます。

以下がDRFの一覧です。

Missile Type DRF
Light Fighter(Space Superiority) 0.407
Precision Light Missile 0.561
Precision Heavy Missile 0.583
Auto-Targeting Light Missile 0.604
Light Missile 0.604
Rocket 0.644
Heavy Missile 0.682
Auto-Targeting Heavy Missile 0.682
Javelin Rocket 0.682
Fury Light Missile 0.652
Precision Cruise Missile 0.735
Cruise Missile 0.882
Auto-Targeting Cruise Missile 0.882
Rage Rocket 0.882
XL Cruise Missile 0.882
Fury Heavy Missile 0.882
Heavy Assault Missile 0.882
Javelin Heavy Assault Missile 0.895
Fury Cruise Missile 0.908
Rage Heavy Assault Missile 0.920
Torpedo 0.944
Light Fighter(Attack) 0.944
Heavy Fighter(Long Range Attack) 0.944
Heavy Fighter(Shadow) 0.944
Javelin Torpedo 0.967
Rage Torpedo 0.967
XL Torpedo 1.0
Heavy Fighter(Heavy Attack) 1.0

艦載戦闘機の特殊補正

冒頭で述べたとおり、Fighter(艦載戦闘機)のダメージ計算は少々特殊で、

  • タレットと同様の「最適射程距離」「精度低下範囲」による減衰
  • ミサイルと同様の「シグネチャ半径と爆発半径の比」「目標速度と爆発速度の比」による減衰

の両方が適用されます。
射程による減衰は艦載機が目標を最適射程内に捉えている限り発生しないので、火力の向上を図るのならばミサイル由来の爆発半径/速度を向上させることが有効です。Omnidirectional Tracking Link/Enhancerによってこれらを向上できます。Tracking LinkでTracking Scriptを使うとより効果的です。

なお、これらの通常のダメージ計算とは別に、

  • Space Superiority(制空戦闘機)でドローン・艦載機以外を攻撃すると、与えるダメージが1/5に減衰する
  • Heavy Attacker(重攻撃機)で主力艦建造物以外を攻撃すると、与えるダメージが1/10に減衰する

という特別な補正が存在します。


1)
WoTで言うところのNDKと原理は一緒です。
2)
「Transversal Speed(相対横断速度)/距離」により角速度は求まります。分母が小さければ数値は大きくなり、分母が大きければ数値は小さくなる。当たり前のことですね。
相対横断速度とは、対象の速度の、自分と対象を結んだ直線に対して垂直な成分の速度のことです。対象がまっすぐ自艦に向かってきているなら相対横断速度は0になり、同時に角速度も0になります。逆に、自艦が静止し相手が自艦をオービットしているなら、相対横断速度は相手の出している速度と一致します。
3)
目標と自分の両方が完全に静止しているか、目標と自分が全く同じ方向に全く同じ速度で動いているか、目標と自分が同一の直線上を移動している場合
4)
シグネチャ半径を爆発半径で割ったもの
5)
爆発速度を目標速度で割ったもの
  • technic/damage-calculation.txt
  • 最終更新: 2022/03/04 10:53
  • by Osat Bartlett