以前紹介した以下の記事の知識はあるものとして、書きます。

 

今回は、特定のトリガの条件を満たした場合、即座に判定させることを例を用いて紹介したいと思います

例としては、煉獄編零式4層後半の、支配者の一撃のD2D3調整をとりあげたいと思います。

以下の記事では、自分がD3であり、またパーティのDPSメンバーが近接2名、レンジ1名、キャスター1名であると仮定して話を進めていきます

 

■基本

支配者の一撃の対象(最初に地盤大隆起の対象者となる/地属性耐性低下のデバフがつく)となるトリガは以下になります

<mex>は自己をあらわす代名詞です。タイムラインのsyncの中では、括弧は[]を使います。

つまり、自分に地盤大隆起が着弾した(支配者の一撃の対象者になる)場合、このトリガの条件を満たすわけです

 

■他メンバー

自分がレンジですので、他メンバーが支配者の一撃の対象者に選ばれたトリガは以下になります

<TANK>はタンク、<HEALER>はヒーラー、<MELEE>は近接DPS、<MAGIC>は魔法遠隔DPSをあらわす代名詞です。

支配者の一撃はタンヒラから2名、DPSから2名に着弾するので、これらと自己についた地盤大隆起のうちどれか4個がトリガーとして引っ掛かるはずです

 

■自分に地盤大隆起が着弾したのか、そうでないのかを判定する

自分に地盤大隆起が着弾したときは、トリガ:

で判定できるわけですが、そうでなかった場合はどう判定したらいいのでしょうか?

ここで、変数を用います。まず、以下のように変数を用意しておきます

ボスが「支配者の一撃」を詠唱開始したときに、変数:meJibanにブール値falseをセットします。

(※地盤大隆起が着弾する前には、必ず「支配者の一撃」を詠唱開始することを利用しています。)

そして、地盤大隆起が着弾したときのトリガを、以下のように書き換えます

地盤大隆起が着弾したときは、変数:meJibanにブール値trueをセットします。

また、これによって、自分に地盤大隆起が着弾しなかった場合は、変数:meJibanはfalse値のままであるはずです

 

■キャスターに地盤大隆起が着弾したのか、そうでないのかを判定する

自分はD3ですので、支配者の一撃ギミックのD2D3調整でみるべきパーティメンバーのデバフは、キャスターのデバフになります。そこで、以下のように用意する変数を追加しておきます

考え方としては、自分に地盤大隆起が着弾したか否かを判定する方法と同じで、キャスターに地盤大隆起が着弾したか否かを判定するための変数:magJibanを用意しておくわけです。

そして、キャスターに地盤大隆起が着弾したときのトリガも同様に、

としておきます。自己へのと同様に、キャスターに地盤大隆起が着弾したとき、変数:magJibanにtrueが代入されるわけです。

これで、自分とキャスターに地盤大隆起が着弾したか否かを調べるための準備は出来ました

 

■カウンタと判定

自分はレンジですから、パーティメンバーの誰か4人に地盤大隆起が着弾した直後に、自己に地盤大隆起が着弾したのか、キャスターの地盤大隆起が着弾したのかを判断しなければなりません。ですからトリガと上記で用意した変数を用いて、4人に地盤大隆起が着弾した直後に通知をしてもらいたいわけです

 

まず、4人に地盤大隆起が着弾したのを判定するために、まずは以下のように変数を用意しておきます

変数:countJibanは整数だけを値に持つ変数で、カウンタとして用います。カウンタとして用いる変数は既定値がnullであるため、使う前に0を設定しておく必要があります。0であるということは、地盤大隆起が誰にも着弾していない状態であるということです。そして、地盤大隆起着弾のトリガを以下のように書き換えます

変数:countJibanの中の「count="+1"」とは、トリガに引っ掛かったとき変数:countJibanの値を+1するということです。

変数:countJibanは0に設定しておきましたから、地盤大隆起がパーティメンバーに着弾するたびに変数:countJibanの値が+1され、4人に着弾したあとには、値が4になっているはずです

 

カウンタの値が4になった直後、自己とキャスターに地盤大隆起が着弾したか否かを判定してもらいたいわけですが、そのためのトリガは何を用いればよいのでしょうか?地盤大隆起が着弾した直後に通知してもらいたいため、時間がありません。

上図の緑色でハイライトさせた25、26で始まるログが常に流れているのがわかります。筆者もよくわかっていませんが、パーティメンバーの座標、AAなどを表すログかと思われます。とにかく常に流れています

この常に流れているログをトリガーとして引っ掛けて、地盤大隆起が4人に着弾したあとの判定に用いることにします。具体的には以下のように書きます

変数:countJibanの値が4になったとき、自己の変数:meJibanとキャスターの変数:magJibanを比較して右ふたつの塔の左右どちらを踏むべきかを通知しています。常にながれているログをトリガとして用いているため、通知の重複を防ぐために一度トリガに引っ掛けたら、変数:countJibanの値は0にしておきます

 

■自分が近接DPSで、D2だった場合の考えかた

自分が近接D2だった場合も、上記と同様に出来ます。例えば、自分のジョブが忍者だと仮定します。

野良パーティでは、D1近接にどのジョブが来るかわかりませんから、

としておきます。変数:anotherJibanは、支配者の一撃の詠唱が開始されるときにfalseにセットしておく必要があります。

上で解説したように、自分の変数:meJibanと近接D1の変数:anotherJibanを比較して、通知を作成します。

仮に、自分がD1になったとしても、支配者の一撃ではD1は常に右側の塔を踏むわけですから、通知を無視して右側の塔を踏めばいいわけです

 

■注意点

上記で紹介したような方法は、常に流れるログをトリガとして用いているため、タイムラインの処理が重くならないよう特定のサブルーチン内で使用するほうが安全かもしれません