バルキリとツリー

物理職において、Lv100バルキリとLv100ツリーのどちらが強くなるかを比較してみる。

考えるもの考えないもの

ツリーには攻撃速度上昇の効果があるけれど、これは考えないことにする。

また、同行スキルが発動していないときの状況は考えない。
考えるとしたら、発動していないときでも攻撃力5%と筋力+1がある分バルキリの方が有利。けれど今回はその辺は考えず、同行スキル発動中の比較をしてみる。

スキル攻撃力は、大まかには次のように表せる。

(スキル攻撃力) = (スキル倍率)*( (攻撃力) + (スキル攻撃力上昇) ) + (スキル加算値)

このうち、「スキル攻撃力上昇」分は考えるけれど、「スキル加算値」分は考えない。

比較

計算には、次の5つのデータを使う。

K: 筋力
AT: 攻撃力((バフなし時の表示値)
SAT: スキル攻撃力上昇
SUP: スキル攻撃力上昇(%)
UP0: バフなし時、攻撃力増

K, AT, SAT, SUPは「キャラの詳細画面」の数値をそのまま使えるけれど、UP0は自分の装備を見て合計を計算しないといけない。
例えば、うちのモンクさんの場合、こんな感じ

K = 11
AT = 317
SAT = 60
SUP = 0
UP0 = 10+15

UP0は頭(+10%)と肩(+15%)。それ以外は、キャラの詳細画面の値をそのまま使った。

上のデータから

S = 0.7*(1+0.06*K) : 基礎倍率
Sk= SAT*(1+SUP/100) : スキ攻上昇値
A0= AT/S/(1+UP0/100) : 基礎攻撃力(職業加算値分も含む)

となる。バフを付けたときの攻撃力倍率をuとすれば

ツリーによる増分: 35*u*S
バルキリーによる増分: (A0*u+Sk)*0.042 + A0*0.21*(S+0.042)

となる。これをもとに、どちらが強くなるか計算するプログラム(ruby)を作ってみるとこんな感じになる。

K   = 11    # 筋力
AT  = 317   # 攻撃力(バフなし)
SAT = 60    # スキル攻撃力上昇
SUP = 0     # スキル攻撃力上昇(%)
UP0 = 10+15 # バフなし時、攻撃力増

# ---
S= 0.7*(1+0.06*K)
A0=AT/S/(1+UP0/100.0)
Sk=SAT*(1+SUP/100.0)
# ---

def compare
  x = 35*S-A0*0.042
  return "バルキリ" if x <=0
  y= Sk*0.042+A0*0.21*(S+0.042)
  u= 100*y/x-100-UP0
  return "ツリー" if u<=0
  "攻撃力バフが%.1f%%以上ならツリー、以下ならバルキリ" % u
end

print compare

最初の5行は、うちのモンクさんのデータ。

プログラムを実行してみると「攻撃力バフが58.2%以上ならツリー、以下ならバルキリ」という結果になった。

バフ込みの考察

実際に狩りをする時のことを考えてみる。
プリレイズ(25%)とバトソン(30%)は付いているはずなので、これだけで攻撃力バフは55%ある。このままの状況だと、ほんの僅かにバルキリの方が強いことになる。

けれど、ここからさらに祝福(10%)や用兵の本(15%)、リベ(25%)等が付けばツリーの方が強いことになる。

この結論が実際に正しいかどうか、モンク計算機で試してみる。本当はゲーム内で実際に試したいところだけれどバルキリを持っていないので比べられない><

スイフトキックで比較してみる

バフなし

ツリ 2552 - 2631
バル 2647 - 2742

バルキリが強い

プリレイズ+バトソン

攻撃力バフは合計55%

ツリ 3492 - 3604
バル 3481 - 3612

ほぼ同等

プリレイズ+バトソン+用兵の本

攻撃力バフは合計70%

ツリ 3748 - 3870
バル 3708 - 3849

ツリーが強い。

という訳で上で計算したとおりになっていることが確かめられた。

比較プログラムのjavascript版は後日作る予定。