イベント

イベントが始まったら書く

スケジュール

今日:
明日:

※日付変更は午前4時

シミュレーターを使って「プラチナ・アズリウスどっちが強い問題」を解決する【アークナイツ】【アークナイツダメージカーブ】

2020年3月1日

アークナイツダメージカーブとは、Python で作られたダメージ曲線を描画するシミュレーションスクリプト。下のような画像を生成できます。

https://bbs.nga.cn/read.php?tid=20505654

長いこと論争が終わらない「プラチナ・アズリウスどっちが強い問題」に終止符を打ってやります!

比較だけ見たいドクターはこちらをクリック。プラチナ・アズリウスの比較

プログラマーなドクターの為、一応使い方も紹介しますよ!

優秀な所、微妙な所

優秀な所。

  • 複雑なシミュレーションに対応
  • 画像で出力されるので視覚的にわかりやすい

複雑なシミュレーションと言えば、次のような物が挙げられます。

  • アズリウス等が持っているDoTダメージ
  • ヴィグナ、メランサ等の確率で発生するバフ
  • エイヤフィヤトラ等のデバフ
  • プラチナ等の攻撃間隔変動
  • etc

微妙な所。

  • マニアックな人でないと必要ない

必要な準備

※ここからプログラマー以外置いてきぼりです。m(_ _)m

必要な素材

起動に必要な素材は3つです。★6オペレーターより大変です。

  • Python 3
    理論上Python 3.6以上で動きます。
  • matplotlib 3.0以上
    Win、Mac、Lenux。どのOSでもpipからインストールできます。
python -m pip install -U pip 
python -m pip install -U matplotlib
  • 思源黑体フォント
    (本体に含まれます)

もし動かない場合公式ドキュメント(中国語)を御覧ください(丸投げ)

思源黑体フォントの設定

デフォルト設定では文字化けしてしまうのでmatplotlibの設定を行う必要があります。手順は3つです。

  • リポジトリ内の SourceHanSansSC-Normal.ttf を matplotlib/mpl-data/fonts/ttf 内へコピー
  • matplotlib/mpl-data 内の matplotlibrc を編集
  • リロード

matplotlibrcは3箇所編集します。

  • font.family : sans-serif
  • font.sans-serif : SimHei(SimHeiを加えるだけで良い)
  • axes.unicode_minus:False(Trueだと-が文字化けする?)

次のコマンドを実行すれば大丈夫だと思います。Pythonを触るのは今回が初めてなのであまり言及しません。

from matplotlib.font_manager import _rebuild
_rebuild()

使い方

通常

使用しているIDEで main.py を実行するだけです。

※実行時にカレントディレクトリが main.py と同じ階層でないと No such file or directory: 'raw/skill_table.json’ って怒られます。

+α 自分で設定

plot.py のパラメータを設定、実行することで自分の好きなオペレーターを比較できます。

自分でパラメータを設定したいドクターは公式ドキュメント(中国語)を御覧ください。

プラチナ・アズリウスの比較

画像を2枚表示します。1枚目は範囲攻撃有り(アズリウスのスキル2)、2枚目は単体攻撃の画像です。

水色の線がアズリウス灰色の線がプラチナ黄色っぽい色がエクシア黒い線が敵のHP(10万未満の場合、10万以上に設定)です。早速比較してみましょう。

vs 物理防御が高い敵

※反対に術耐性は低め

物理防御が高い敵に対してはアズリウスの方がダメージは出ます。

アズリウスは素質で術ダメージを与えられますから。

vs 術耐性が高い敵

※反対に物理防御は低め

範囲攻撃有りならアズリウスの方が上、単体攻撃のみならプラチナの方が上です。

アズリウスのスキル2は複数体に攻撃可能です。

vs 一般男性レユニオン

※物理防御、術耐性共に中レベル

物理防御、術耐性が同じくらいだと、範囲攻撃有りではアズリウスの方が上、単体攻撃ではプラチナが上です。

※このケースでは敵の数が1体なので、実際はアズリウスのスキル2の複数体攻撃の効果は意味がないので、実際はプラチナの方が上です。

結果

汎用性が高いのはアズリウス、刺さるステージで活躍するのがプラチナと言った所です。

アズリウスは複数体攻撃、術ダメージを持っているので使いやすさは優れています。

プラチナは攻撃力が高く、柔らかい敵を倒すのに向いています。スキルで射程が伸びるので、ステージによっては活躍してくれます。

性癖に刺さる方を使って上げるといいと思う…
気になるオペレーターがいましたらコメント等お願いします!

reference:[代码发布][Python] 300秒输出曲线生成器,给你带来直观的干员输出展示, github.com/FallCicada/ArknightsDamageCurve