FF14 黒魔道士スキル回し計算シート 令和最新版
FF14で黒魔道士を始めたので、スキル回しの合計威力や時間を確認するためのスプレッドシートを作ってみました。全員に閲覧権限を付与して公開しているので、コピーすることで誰でも利用できます。尚、この記事はパッチ6.38の時点で記載されています。
FF14 黒魔道士スキル回し計算シート - Google スプレッドシート
使い方
「ファイガ」「サンダガ」「ファイジャ」「三連魔」「ファイジャ」……のように使うアクションの名前を順番に埋めていくと、威力や時間等が自動的に計算されます。手入力するのは緑色の部分だけ。他は自動的に計算されます。
コンテンツごとの理想的なスキル回しの設計や、通常回しやWトランス回しなど、スキル回しの威力比較の検討に利用したりできればと考えています。
極性の計算、迅速魔や三連魔による無詠唱化、黒魔紋による時間短縮、ルーシッドドリームによるMP回復、サンダガの継続ダメージ、長い詠唱後の硬直、アビリティの食い込み等に対応しています。単純な形に留めておこうと考え、他のパーティーメンバーが利用するシナジーの設定や、各種ステータスの設定、実ダメージでの想定期待値等には対応していません。
このスプレッドシートは、以下のような複数のシートで構成されています。
- テンプレート
- 開幕サンプル回し
- 通常回し
- アクションマスター
- 極性マスター
- 仕様マスター
- 変更履歴
基本的には、”テンプレート” シートをコピーして使うことを想定しています。しかし空っぽの状態では使い方が分からないのではないかと思い、利用例として幾つか同梱しているのが “○○回し” 系のシート達です。”○○マスター” は、内部実装に利用されているデータ群です。
使い方の説明は以上です。
ここから先は、細かい仕様や内部実装に関する話を記載する予定ですので、シートを利用する上ではあまり読む必要の無い話です。将来、仕組みを忘れた頃に保守することになった自分や、似たものを実装したい方の参考になればと思い記載します。
極性
黒魔道士にはAF1状態やUB3状態といった極性があります。アクション実行時の極性を手入力させるのは避けたいため、実行されるアクション名を元に自動的に極性が遷移していくように実装しました。ファイガを撃つとAF3状態になり、ブリザガを撃つとUB3状態になり、またAF1状態のときにファイアを撃つとAF2状態になり……といった話ですね。ファイガとデスペアのように同じ挙動になるアクションが幾つかあるので、整理すると合計8パターンの遷移があり得ます。
内部実装としては、ファイアやブリザガなどの各アクションごとに、どの遷移パターンをするかの対応表を用意し、現在の状態と実行するアクション名とを照らし合わせることで、次の遷移先を計算させています。また、AF3時の炎属性魔法は威力1.8倍であったり、AF3時の氷属性魔法は詠唱時間0.5倍であったりと、極性や魔法属性ごとに詠唱時間や威力に補正が掛かる場合があるので、この対応も記載しています。これらが記載されているのが、“アクションマスター” と “極性マスター” のシートです。
このような事情があり、利用者には正確なアクション名を記載してもらう必要があるため、アクション名の入力欄にはプルダウンメニューを採用しました。このメニューの選択候補には、アクションマスターに羅列されたアクション名が表示されるようになっています。プルダウンメニューは一見マウスで操作しないといけないような見た目をしていますが、普通にキーボードでアクション名を入力することもできるため、これにより入力がしづらくなることはそこまで無いだろうと考えています。
サンダガ
サンダガの威力については、次回サンダガが更新されるまで、あるいはスキル回しが終了するまでに掛かった時間を見て、着弾威力とDoT威力の合計値を表示するようにしています。例えばProcしていないサンダガであれば、最低50、最高400の値を取ることになります。
黒魔紋
黒魔紋が利用されると、30秒間、魔法のキャストタイムとリキャストタイムが15%短縮されます。これは「黒魔紋を考慮した現在のGCD」を各アクションごとにまず計算し、この値を元に詠唱時間等を計算することで対応しています。
次回のGCDリキャスト時刻を魔法詠唱時に予め計算しておく実装になっているのですが、無詠唱魔法実行直後に黒魔紋を発動した場合、次回のGCDリキャストまでの間隔が幾らか短縮されるため、その分の調整も加えたりしています。その他、詠唱途中で黒魔紋が切れた場合などを考慮するため、幾つか特殊な処理も加えられています。
無詠唱化
迅速魔や三連魔など、後の詠唱魔法が無詠唱化されるアビリティについては、「現在の無詠唱化スタック数」を状態として管理していくことで対応しています。”アクションマスター” シートにおいて、三連魔はスタック数に+3する、迅速魔はスタック数に+1する、ファイアはスタック数に-1する、Procファイガはスタック数に+0する、といった対応が記載されており、アクションが実行されるたびに「現在の無詠唱化スタック数」の値を増減させていっています。この仕組みにより、アクション名を入力するだけで、俗に言うキャスター税等を含めた各アクションの正確な実行時間が計算できるようになっています。
他に考慮すべき点として、極性がUBでパラドックスシンボルがあるときは、パラドックスが無詠唱になります。勿論これはそれまでのアクション実行履歴から計算可能なので、そのように対処しています。
開幕前のアビリティ
激成魔や黒魔紋など、戦闘開始前にアビリティを実行しておくケースがよくありますが、これは事前に実行するので合計時間に含めておいてほしくありません。そこで特殊な処理として、先頭のアビリティ群の実行時間は無視するようになっています。
MP
今のところ、MP自然回復は時刻が3n秒のとき、ルーシッドドリームによる回復は時刻3n + 1.5秒のときに発生するようにしています。例えば時刻3秒で自然回復が、時刻4.5秒でルーシッドドリームによる回復が発生する、といった感じです。このスプレッドシートでは各アクションが最速で実行されるようになっているので、例えばUB中に2GCDしか挟まないWトランス回し等では、MP回復が間に合っていないような表示になる場合があります。
トランスを1アビリティか2アビリティ分程度遅らせることをスキル回しに組み込むために、「-」という名前の何もしないアクションを用意してあります。トランスを遅らせる前提であれば、これを挟んでおくとより分かりやすいと思います。
非表示の列
保守性を上げるために内部実装も分かりやすくしておこうということで、利用者に見せる必要の無い計算結果についても、ある程度の単位で非表示の列内に残してあります。例えば、サンダガの継続ダメージの計算についての内部情報や、現在の無詠唱化スタック数、パラドックスシンボルの状態等が挙げられます。これらの値は、列名の三角形のマークをクリックすることで再表示できます。また、複数列を選択した上で右クリックすることで、再度非表示にできます。