攻撃力アップ上限の謎・8
さて、もうみなさん完全にお忘れのことと思いますが、時間ができたので書いていきます、攻撃力アップバフについて。
まず、通常攻撃ダメージの計算式は
通常攻撃ダメージ=(A★D+H)×i
A=攻撃力
D=守備力
H=兵力×0.01
i=相性
★…割り算的な何か(マイナス0.771乗)
でしたね。
そして、守備側の守備力、相性を固定して、兵力をゼロと仮定した場合の、攻撃力アップバフとダメージの関係を、攻撃力を3通りに変化させてみると
(グラフ1)
https://gyazo.com/69bfd68ad6e5f4633e733e51195d04c8
こんなふうになるんでしたね。
次に、攻撃力・守備力を同じにして、相性を3通りに変化させて見ると、攻撃力アップバフとダメージの関係は
(グラフ2)
https://gyazo.com/a1f87e201da7cfc37b263a3fc74344f3
こんな感じでした。
次は、ちょっとひねって、ノーバフ時の通常攻撃ダメージを同じにして、相性を2通りに変化させると
(グラフ3)
https://gyazo.com/4bdbf7f2a9fc8559eadd6e9ea3410dda
(グラフ4)
https://gyazo.com/a5952437ae19278da2f607cb7767d73a
※注・・・前回掲載したグラフにはタイトルに誤りがありました。↑のグラフは訂正後のものです。
こんな感じに、二股になりました。
さらに、これまでは横軸に攻撃力アップバフ、縦軸にダメージでしたが、これを、横軸に攻撃力、縦軸にダメージに変えます。
そしてバフなしの場合と攻撃力アップバフ6倍の場合のグラフを描くと
(グラフ5)
https://gyazo.com/8db8e6ed5923b1b325182e74bbe20d4f
こうなります。
「バフ6倍」と「バフ1倍」を比較してるのに、まったく「6倍」は出てきません。
一番攻撃力が低いところで、4.5倍くらい、高いところで2.2倍くらいです。
というより、平行なので、単純に、バフが6倍になるとプラス700ダメージって感じです。
まあ、素の攻撃力が上がるほどバフをかけた後のダメージも上がるので、心配せず素の攻撃力を上げればよいということがわかります(ただ、バフの効き(何倍か)は下がっていきます)。
どうしてこんなことになるんでしょうか。
最初に示したグラフと同じパターンで、よりサンプルを増やしてみます。
(グラフ6)
https://gyazo.com/ea44a71ddb6176701ce40316b6b9f966
(グラフ7)
https://gyazo.com/07c5d8aaf363fa81a64162b621607ebc
ダメージが、ある値に達したところでグラフが折れるように見えます。
歩兵の方ではダメージ700強くらい、騎兵の方ではダメージ800強くらいです。
なぜ微妙に違うところで折れるんだろう?
前のグラフを思い出してください。
(グラフ4)
https://gyazo.com/a5952437ae19278da2f607cb7767d73a
このグラフは、攻撃側が歩兵と騎兵で、揃っていませんが、相性0.5と相性1.0を比較することになっています。
相性0.5の、歩兵から個人城への攻撃においては、グラフが、ダメージ700強のところで折れています。
一方、相性1.0の、騎兵から騎兵への攻撃においては、グラフが、ダメージ1300強のところで折れています。
最初の計算式に戻って
通常攻撃ダメージ=(A★D+H)×i
A=攻撃力
D=守備力
H=兵力×0.01
i=相性
で、グラフは兵力を0として描いています。
攻撃力アップバフは当然、Aを何倍かにするわけです。
そして、相性によってグラフの傾きが変わるポイントが違うことから、攻撃力アップバフをBとすると
B×A★Dが一定値以上か未満かによって計算式が変わる
のではないかという仮説が立てられます。
相性が0.5とか0.55になる、プレイヤー都市へのダメージのグラフでは、ダメージ750~825のあたりでグラフの傾きが変わるので、騎兵同士の、相性1のダメージのグラフでは、ダメージ1500のあたりでグラフの傾きが変わる、のではないかと。
グラフ4は、1300あたりで傾きが変わっているように見えますが、線の入れ方でそう見えているだけで、線は私が勝手に引いたものですから、1500くらいで折れてても不思議はないと思います。
m×A★D = Xとします。バフm倍のときの基準値です。
そして、バフがn倍のときに基準値が1500になるとします。
比を使って、
1500:n=X:m
となりますので、
Xn=1500m
となり
n=1500m/X
です。
これで、基準値が1500になるバフ倍率が計算できます。
たとえば、バフ2倍で基準値が1500になるときは、バフ2倍までは通常の傾きで計算し、それ以降の傾きは、もっと低い傾きで計算します。
もはや自分でも、いったい何をやっているのかわからなくなってきました。
これがわかったところで何の役に立つの? と言われるかもしれません。
基本的には単なる趣味で調べているんですが、意味がないわけでもありません。
今調べてることが解明できると、ダメージが計算できるんです、実際にゲーム内で試さなくても。
さて、これまでの調査結果をもとに、基準値1500以降の傾きを、もとの傾きの0.2倍として計算します。
そして、これまで私が実験で集めたデータと照合して、計算が合うか、確かめます。
グラフを使います。
(グラフ8)
https://gyazo.com/5346d9bef0bd9faef8fa1225c03ebac1
こんなグラフになりました。というか、きれいなグラフになるまで頑張りました笑
まとめます(細かい数字は調査結果をもとに調整しています)。
【攻撃力アップバフなしの場合】
通常攻撃ダメージ=(A★D+H)×i
A=攻撃力
D=守備力
H=兵力×0.01
i=相性
★…割り算的な何か(マイナス0.75乗をかける)
【攻撃力アップバフありの場合】
攻撃力アップバフをBとすると
B × A★D < 1500 のとき (B×A★D)×i
B × A★D > 1500 のとき
n × A★D =1500 とし、実際の攻撃力アップバフをmとすると
(1500 + 0.2(m-n)A★D + H)×i
ただし、攻撃力アップバフ6倍以上のときは、6倍で計算したダメージ
以上です!
たぶんどっか間違えてるだろうけど、とりあえず納得いくまでできた! ばんざい!
#ダメージ計算
#攻撃力アップ
#上限
#実験