読者です 読者をやめる 読者になる 読者になる

dev-hsimyu

おれが作ったものとかについて紹介したりするブログ

チェインバーストダメージ計算の実装

お久しぶりです。

職が欲しいです。絶賛活動中です。

 

ちょっと時間が出来たのでチェインバーストダメージを考慮できるようにしました。

f:id:hsimyu:20170517194147p:plain

ここで「チェインバースト」という項目をクリックすると

f:id:hsimyu:20170517194244p:plain

こんな感じで表示されます。

チェインバーストダメージも「ターン毎ダメージ(のパーティ平均)」に加味されるようになっています。

 

チェイン数は「より細かい設定」中のチェイン数という項目を変更することで指定可能です。

チェイン数の指定は

  1. チェインバーストなし -> チェイン係数 0 == これまで通りの計算
  2. 2チェイン -> チェイン係数 0.25
  3. 3チェイン -> チェイン係数 0.333..
  4. フルチェイン(またはオーバーチェイン) -> チェイン係数 0.5

となります。

デフォルト値は1 = チェインなしとしているので、これまで通りの使い方をしたい方は弄らないで大丈夫です。

 

ターン毎ダメージへの反映方法について

チェインバーストのダメージはパーティ全体の奥義ダメージに依存するダメージとして発生しますので、キャラ1人あたりの寄与を考える場合にはキャラ数で割る必要があります。

元カレ計算機では設定した「チェイン数」をチェインバーストに参加するキャラクター数として、発生したチェインバーストダメージをチェイン数で割ることで各キャラ毎の寄与を算出しています。 

つまり、

チェインバーストなしの場合:

[ターン毎ダメージ] = (奥義ダメージ + 通常ダメージ * 期待攻撃回数 * 期待ターン数) / (1 + 期待ターン数)

 

チェインバーストありの場合:

[ターン毎ダメージ] = ( (チェインバーストダメージ/チェイン数) + 奥義ダメージ + 通常ダメージ *期待攻撃回数 * 期待ターン数) / (1 + 期待ターン数)

 

となります。

 

またグラフ生成時に必要な内部処理の関係上、計算はキャラ単位で完結するようにしたいので

[あるキャラのチェインバーストを計算するための合計の奥義ダメージ] = [チェイン数] * [各キャラの奥義ダメージ]

として、チェインバーストを計算し、

最終的にチェインバーストダメージの平均値を取ることで、擬似的に全員の奥義ダメージからチェインバーストを計算したのと同じ状態にしています。

減衰補正関数の特性から基本的にはこれで問題ないのですが、

PT中の一部キャラのみ属性の有利/非有利が異なると現実の値と異なる可能性があります。

 


チェインバーストによるターン毎ダメージの変化

あくまで僕の水編成(リヴァ4凸は1本しかないし、オールドオベロンは無凸1本)をベースに考えている、というのを前置きした上で、

チェインバーストダメージを実装してみたらどのような変化が見えたのかについて書いておきます。

 

四天刃バフを乗せた水編成(DA 30%, TA 30T)で

チェイン数1の時

f:id:hsimyu:20170517194244p:plain

 

チェイン数2の時

f:id:hsimyu:20170517210951p:plain

 

チェイン数3の時

f:id:hsimyu:20170517211011p:plain

 

フルチェインの時

f:id:hsimyu:20170517211032p:plain

 

ここで注目したいのは、序列1位の編成の「ターン毎ダメージのパーティ平均」です。

チェイン数が変化するごとに

  1. 299303
  2. 338476
  3. 351327
  4. 353918

と変化しています。

 

一番変化幅が大きいのは1->2の時で、13%くらい増加しています。

チェインバーストダメージが41.5万程度に対して、この時だいたい1サイクルが5.5Tと計算されているので、

41.5/(チェイン数2 * 5.5T) ≒ 3.8万程度です。

 

2 -> 3の時は(チェイン数2の値に対して)4%程度の上昇です。

ダメージが82万程度なので、

82/(3 * 5.5T) = 5.0程度なので5.0万 - 3.8万 = 1.4万くらいということですね。

 

それに対して3 -> 4の時は、チェイン数3の値に対して0.7%程度しか増加していません。

これは、100万ダメージ以上でチェインバーストの減衰が始まってしまうためで、

ターン当たりの寄与は116/(4 * 5.5T) = 5.3となってターンあたりの寄与は3000程度しか上昇しないということですね。

フルチェインは……


ということで、ざっと比較してみましたが、

フルチェインを待たなくてもターン毎ダメージはほとんど変わらないというのが数値で見えたので、ちょっとおもしろいですね。

お手持ちの編成でも色々比較してみてください。

5/1までのアップデートまとめ

少しお久しぶりです。

忙しいのも少し落ち着いたので、5/1に溜まっていた更新を行いました。

また、4月中旬頃に行ったキャラ/武器テンプレートの英語対応についてもお知らせします。

 

  • 減衰補正の微調整
    suitonさんが行った検証に従い、ダメージ減衰補正のラインを微調整しました。
    これまでのものは暫定的に30万, 42.5万, 55万, 61.25万に設定していたのですが、
    下記画像の通り、40万〜44万に上がっていくラインが結構きつめに計算されていたようです。
    f:id:hsimyu:20170501165445p:plain
  • 新武器と新スキル追加
    最近実装されたものに加えて、4凸が実装されたものを追加しました。
    通常攻刃IIIについては日比野さんの検証値

    を参考に、とりあえずSLv13とLv14も順当に20%, 21%となっているとしています。
    通常三手(小)については暫定的に二手(小)と全く同じ値を用いています。(なので[未検証]とついています)
    f:id:hsimyu:20170501210005p:plain
  • 武器テンプレート画面にスキル名も表示するように変更
  • (4/15頃) 武器テンプレート、キャラテンプレートの英語表示に一部対応しました。

    f:id:hsimyu:20170404151506p:plain

    f:id:hsimyu:20170501210417p:plainこれは、GBF International Discordサーバの方々に
    共有スプレッドシートに入力して頂いてそれをjson出力して反映という形にしています。

 

今後の予定

  • ターンダメージの計算にチェインバースト分のダメージを反映
    奥義ターンにフルチェインしたとしてダメージを加算するように変更しようと考えています。チェインバーストが入っていないことで、二手や技巧を重視した編成が相対的に評価されやすくなっているような気がしています。
  • ダメージ上限アップ補正の計算

さらにその後の予定

  • 代表的なキャラLBをチェックボックス形式でON/OFF可能に
  • シミュレータのさらなる改善(アビポチや奥義硬直まで含めたDPS計算?)

 

某職活某の方が一段落するまではなかなか時間が取れないと思いますが、ちまちまやっていきます。

元カレ計算機: 4/9-4/11アップデート

4/9と4/11に行ったアップデートで、以下の点を追加しました。

  • 四象武器追加時にスキル選択が可能に。(王タイプのみ)
  • スキルに通常暴君IIを追加。暫定的に通常特大の効果量(SLv1で9%、10で18%)を使用しています。噂によると通常暴君IIはSLv1で8%らしいので少々ズレるかと思います。
  • 麒麟武器、黄龍武器追加
  • (4/13) 麒麟弦の第一スキルが奈落の暴君IIになっていたので奈落の攻刃に修正
  • その他、要望の出ていた武器を追加

 

ダンデライオンの第一スキル「愛の信託」については、現在キャラ情報とテンプレートデータに性別欄を持っていないため計算できない状況です。もし計算したい場合、任意でスキルを追加するなどして対応してください。

 

また、邪スキルなどの「ダメージ上限アップ」については現在考慮できておりません。

これについて、正確なダメージ減衰ラインと上限アップの正確な付与のされ方について情報をお持ちの方がおりましたらご連絡いただけると助かります。

 

一応現在もダメージ減衰は計算しているのですが、あくまで44万(奥義116万)という目安ラインから内部の境界を推定したものなので、間違っている可能性が高いです。

※ 現在はこの通りです

f:id:hsimyu:20170413192854p:plain

 そのあたりがしっかりできましたら、ダメージ上限の計算もできるようにしていきますので気長にお待ちください。

 

元カレ計算機: ダメージシミュレータの改善

こんにちは、ほしみです。

忙しい状況はあまり変わっていないのですが、イメージが湧いたので土日でダメージシミュレータをがりがりと改善しました。

 

ダメージシミュレータとは

グラフ用に保存した編成セットを用いて、

バフ・奥義を撃つかどうか・残りHPはいくつかを各ターンごとに設定し、

編成ごとにどのように変化していくのかを比較するためのツールです。

 

特徴としては、通常編成比較に用いている「ターン毎ダメージ」ではなく、

単純な予想ダメージを用いていることです。

ターン毎ダメージは「奥義までの1サイクルを考えた平均値」であるため、

バフ情報を設定した場合、1サイクル全てにバフ効果が影響してしまうのに対し、

予想ダメージはそのターンでのバフ等から計算される通常攻撃ダメージ(または奥義ダメージ)であるため、適切にバフを設定することでより現実的な評価を行うことが可能です。

(※ 本当は編成ごとに動き方も変わるので、それを設定できるとベストなのですが…)

 

これまでもBeta版として入力はサポートしていたのですが、

入力欄と表示欄が分かれていたため非常に使いづらかったので、

内部的に大工事を行い、入力と表示を同時に行えるようになりました。

 

f:id:hsimyu:20170409203438p:plain

基本的にはパーティ全体へのバフを設定すればOKですが、

個別に設定することも可能です。

その場合、個別バフと全体バフは加算されます。

(残りHPは低い方を適用します) 

 

使い方の概要をキャプチャしたのが以下の動画です。

youtu.be

 

基本的な使い方としては

  1. 編成をグラフに追加
  2. ダメージシミュレータを開く
  3. ターン数を設定
  4. バフテンプレートを使ってバフを配置していく
  5. (グラフが見づらかったら編成の名前を変更する)
  6. 予想ダメージの平均値を比較したり、積分値を比較したりする
  7. 満足する

という流れになります。

バフテンプレートについてはご要望頂ければ種類を追加しますので、これがあると便利!というものがありましたら教えてください。

 

また本アップデートに伴い、以下の点が変更されました。

  • 背水グラフでも編成名を編集することが可能になりました。合わせて、見た目の調整も行いました。
  • "初期攻撃力推移グラフ"はほぼ用途がない上、メンテナンスが面倒なので削除しました。ダメージシミュレータを用いても同様の比較を行えるようなテンプレートの追加を予定しています。
  • バフ効果量に負の値を追加しました。

通常の編成計算とダメージシミュレータで計算値が一致することは確認していますが、

主に表示関連の挙動はまだまだテスト中ですので、

バグや改善案などありましたらお気軽にご報告頂ければと思います。

シミュレータ自体、最適化不足で少し動作が遅いのですが、今後改善する予定です。

 

では。

元カレ計算機: 4/3アップデート

昨日少しだけ更新しまして、

  • 味方HPリミットボーナスに1300, 1600, 2000を追加
  • 土レフィーエ以降のキャラの追加(英語対応済み)
  • テンプレートの検索入力欄が検索入力欄であることを分かりやすく

f:id:hsimyu:20170404151506p:plain

を行いました。

スマホ版の検索バーの幅を間違えてズレてるのですが、今日中に直します。

キャラ名と武器名の英語対応、個人でやるのはかなり面倒なのですが、スクリプト処理用の対応表用意するのも結局手間なのでどうにもならない状況です。

どうしようかな。

 

ダメージシミュレータの改善も実装法を考えているところですが、

あいにくリアル事情(論文と就活)により時間的なアレがアレなので、

空きを見つけつつ……という感じです。

気長にお待ち下さい。

元カレ計算機: 技巧(中)の効果量の改訂とその他修正

こんにちは。

 

本日のアップデートで、通常技巧(中)、方陣技巧(中)共に、効果量を以下のように変更しました。

 

従来:

f:id:hsimyu:20170331191010p:plain

f:id:hsimyu:20170331191014p:plain

 

修正後:

f:id:hsimyu:20170331191109p:plain

f:id:hsimyu:20170331191112p:plain

 

以下、経緯を説明致します。

これまで、技巧(中)の効果量については、

すんどめ侍氏によって過去に得られた値であるSLv10で5.7%というのが共通認識であり、

本計算機でもこの値に基いて効果量を設定していました。

この検証が出た当時はエッケザックスすら実装されていなかったということで、

なかなか大変だったかと思われます。

 

技巧(中)について、最近の検証により

  • 方陣技巧(発生率加算)でクリティカルが確定するのはマグナ100xマグナ100の時でSLv10が7本必要 => 6本では確定しないため5.55%以下である可能性が高い
  • 検証当時は通常技巧と方陣技巧の違いも認知されていなかった(そもそも方陣技巧(中)は存在しなかった?)
  • 以下のとおり、複数人による検証において効果量がほぼ5%となり、試行回数も十分

 

 

 

 

という事情から、SLv1で3%、SLv10で5%ということで効果量を全面的に改訂しました。

あざら氏(@NshiAzarashi)さん、るくます(@metalgaldra)さん、検証して頂き有難うございました!(僕は何もやってません)

※ちなみに、あざら氏さんご提案の効果量からSLv1から9で0.02%だけ効果量を増やしているのですが、これはSLv10で5%というのが非常に分かりやすい値のため、そこに合わせています。

 

技巧(中)は、刹那や克己スキルでも同じ値を使用していますので、

特に(オールド・)エッケザックスや(オールド・)オベロンを含めた編成に影響が出ます。

 

どのくらい変わるのか、水編成をサンプルに更新前更新後で少し比べてみます。

1: 連撃バフなし マグナx属性

修正前

f:id:hsimyu:20170331193157p:plain

修正後f:id:hsimyu:20170331193257p:plain

序列がオールドオベロン4→5→3→5→4本だったのが、4→3→5→2→5本に変わり、

同じ編成でも技巧期待値の値が1.2280→1.2000に変わったため、

ターン毎ダメージが138731→135568と減少しています。

 

次に、連撃バフを乗せた時(四天刃って30% 30%でいいんでしたっけ?)

2: 連撃バフDA30% TA30% マグナx属性

修正前

f:id:hsimyu:20170331193750p:plain

修正後

f:id:hsimyu:20170331193820p:plain

順位1位にオールドオベロンが1本入ってきていたのが、0本になってしまいました。

オベ〜

記事の趣旨から外れるのですが、

このようにオールドオベロンは連撃バフによって大きく本数が変化しますのでご注意下さい。

もちろん火力微減でもHP2000アップと、個人的には1〜2本入れたいですが。

人によって好みが分かれるところですね。

 

また、ヴァルナxヴァルナでオベロンの編成についてはそこまで大きく変わりません。

 

3: 連撃バフなし ヴァルナヴァルナ

修正前

f:id:hsimyu:20170331193201p:plain

修正後

f:id:hsimyu:20170331193301p:plain

ターン毎ダメージが8000程度減少していますが、本数はさほど変わっていません。

 

4: 連撃バフ30% 30% ヴァルナヴァルナ

修正前

f:id:hsimyu:20170331194417p:plain

修正後

f:id:hsimyu:20170331194503p:plain

1位の編成のダメージ平均が1万程度(PT全体で4万程度ですね)減少しましたが、

本数はさほど減少しません。

えげつないですね、オベロン。

オールド・オベロンにはもう少し頑張ってほしいです。(オールドしか持っていないので)

 


 

ということで、今回の変更について、

水編成については序列1位が入れ替わるくらいで、思ったより影響は小さいです。

もちろん今回使った編成(http://hsimyu.net/motocal/?id=19003)はサンプルなので、

気になる方はぜひご自分の編成について再度計算して頂ければと思います。

(再計算する場合は最新版であることを確認の上でお願いします!3/31の更新ログが出てれば最新です)

 

以下、その他の細かい修正:

  • バフ入力欄を利便性向上(300%まで可能に、全体バフを入力でなく選択に)
  • TAが100%(以上)になった場合に、奥義上昇ターンの下限が計算されるようになった。(TAした時が最大37%なので3.00Tが下限に. 奥義ゲージ上昇バフがあるともう少し下がる) [ぺ(@pepepe00001)さんのご指摘]

     

  • エリュシオン追加
  • UIの調整
  • 結果欄のバフ情報に連撃バフも表示されるようにした

 

今後ともよろしくお願い致します。

元カレ計算機: まとめて不具合修正

先程のアップデートで、以下の記事中に挙げていた不具合を全て修正しました。

www.hsimyu.net

 

玄武拳の追加ダメージ: 神石の効果が乗るようになりました。

f:id:hsimyu:20170329011424p:plain

f:id:hsimyu:20170329011433p:plain

 

天司武器: 非有利の場合に「与ダメージアップ」の効果が発揮されていた不具合を修正しました。

動作系: ブラウザロード時に正しく読み込まれないことがある不具合を直しました。また、内部構造をだいぶ弄ったついでに、召喚石と武器の順番入れ替えを実装しました。

タブの切り替えしかしてないのに挙動が重くなる(内部的に結果が再計算されてしまう)のも直しました。

 

技巧(中)の確率については有志の方に協力していただき、情報を集めているところです。

多分Slv10で5.7%ではなく5%となるかなと思います。

そのあたりは更新時に別の記事でまとめます。