Skip to content

Instantly share code, notes, and snippets.

@griefnote
Last active March 12, 2022 15:41
Show Gist options
  • Save griefnote/1e50b00c525870fdbe4cbcaf469813c0 to your computer and use it in GitHub Desktop.
Save griefnote/1e50b00c525870fdbe4cbcaf469813c0 to your computer and use it in GitHub Desktop.
万魔殿パンデモニウム零式:辺獄編4層のスペスペたいむ用タイムライン定義です。
<?xml version="1.0" encoding="utf-8"?>
<timeline>
<name>パンデモニウム零式:辺獄編4層</name>
<rev>rev2.1</rev>
<description>
万魔殿パンデモニウム零式:辺獄編4層のタイムラインです。
https://blog.sheeva.me/
</description>
<author>sheeva</author>
<license>CC BY-SA</license>
<zone>Asphodelos: The Fourth Circle (Savage)</zone>
<locale>JA</locale>
<entry>ENTRY</entry>
<start>0039::戦闘開始!</start>
<default target-element="Activity" target-attr="notice-o" value="-9" />
<!-- 前半/後半の識別用エントリフェーズ -->
<s name="ENTRY">
<!-- 前半/後半識別 -->
<t sync="ヘスペロス:ク、カカカカカ……待っていたぞ……。 半神「ヘーミテオス」の力、その身で味わえ!!" sync-count="1" >
<load target="前半" truncate="true" />
</t>
<t sync="ヘスペロスは「シアリングストリーム」の構え。" sync-count="1" >
<load target="PHASE1 後半開幕" truncate="true" />
</t>
<a time="20" text="前半後半の判別" icon="Branch.png" />
</s>
<s name="前半">
<!-- ブレッドレイク対象者による後続ギミック処理担当の判定 begin -->
@{
var CALL_BLOODRAKE_1_TH = Model.Player.InRole("DPS") ? "次は、線を取る。" : "次は、線を渡す。";
var CALL_BLOODRAKE_1_DPS = Model.Player.InRole("DPS") ? "次は、線を渡す。" : "次は、線を取る。";
}
<t name="1回目ブラッドレイク対象判定TH" sync="^23:[id8]:([HEALER]|[TANK]):" notice="@CALL_BLOODRAKE_1_TH" >
<expressions>
<pre name="is_first_bloodrake" value="true" />
<set name="is_first_bloodrake" value="false" />
</expressions>
<v-notice
order="-2"
text="線取り:DPS"
icon="Attention.png"
duration="40" />
</t>
<t name="1回目ブラッドレイク対象判定DPS" sync="^23:[id8]:[DPS]:" notice="@CALL_BLOODRAKE_1_DPS" >
<expressions>
<pre name="is_first_bloodrake" value="true" />
<set name="is_first_bloodrake" value="false" />
</expressions>
<v-notice
order="-2"
text="線取り:TH"
icon="Attention.png"
duration="40" />
</t>
@{
var CALL_BLOODRAKE_2_TH = Model.Player.InRole("DPS") ? "次は、毒を取る、離れておく。" : "次は、毒を渡す、集まる。";
var CALL_BLOODRAKE_2_DPS = Model.Player.InRole("DPS") ? "次は、毒を渡す、集まる。" : "次は、毒を取る、離れておく。";
}
<t name="2回目ブラッドレイク対象判定TH" sync="^23:[id8]:([HEALER]|[TANK]):" notice="@CALL_BLOODRAKE_2_TH" >
<expressions>
<pre name="is_second_bloodrake" value="true" />
<set name="is_second_bloodrake" value="false" />
</expressions>
<v-notice
order="-2"
text="デバフ受け:DPS"
icon="Attention.png"
duration="41" />
</t>
<t name="2回目ブラッドレイク対象判定DPS" sync="^23:[id8]:[DPS]:" notice="@CALL_BLOODRAKE_2_DPS" >
<expressions>
<pre name="is_second_bloodrake" value="true" />
<set name="is_second_bloodrake" value="false" />
</expressions>
<v-notice
order="-2"
text="デバフ受け:TH"
icon="Attention.png"
duration="41" />
</t>
<!-- ブレッドレイク対象者による後続ギミック処理担当の判定 end -->
<!-- ピナクス判定トリガー begin -->
<t sync="^14:69D4:ヘスペロス starts using ピナクスポイズン" notice="そのあと、散開" >
<v-notice
order="-1"
text="毒:散開\n➜毒マス踏まない"
icon="Leave.png"
duration="9" />
</t>
<t sync="^14:69D5:ヘスペロス starts using ピナクスラーヴァ" notice="そのあと、頭割り。" >
<v-notice
order="-1"
text="炎:頭割り\n➜炎マス踏まない"
icon="DamageShare.png"
duration="9" />
</t>
<t sync="^14:69D6:ヘスペロス starts using ピナクススプラッシュ" notice="次は、ノックバック" >
<v-notice
order="-1"
text="水:ノックバック\n➜水マス踏まない"
icon="KnockBack.png"
duration="9" />
</t>
<t sync="^14:69D7:ヘスペロス starts using ピナクスサンダー" notice="次は、離れる" >
<v-notice
order="-1"
text="雷:中央から離れる\n➜雷マス踏まない"
icon="Distance.png"
duration="9" />
</t>
<!-- ピナクス判定トリガー end -->
<!-- シフティングストライク判定トリガー begin -->
<!-- それぞれ 北:A、東:B、南:C、西:D のマーカー配置をしている前提 -->
@{
var ANTI_KNOCKBACK = Model.Player.InRole("HEALER","MagicDPS") ? "堅実魔" : "アムレン";
}
<t sync="^14:69FD:ヘスペロス starts using シフティングストライクN" notice="あるふぁーに移動して、@ANTI_KNOCKBACK。" >
<v-notice
order="-2"
text="Aから吹き飛ばし"
icon="A.png"
duration="9" />
</t>
<t sync="^14:69FE:ヘスペロス starts using シフティングストライクS" notice="ちゃーりーに移動して、@ANTI_KNOCKBACK。" >
<v-notice
order="-2"
text="Cから吹き飛ばし"
icon="C.png"
duration="9" />
</t>
<t sync="^14:69FF:ヘスペロス starts using シフティングストライクE" notice="ぶらぼーに移動して、@ANTI_KNOCKBACK。" >
<v-notice
order="-2"
text="Bから吹き飛ばし"
icon="B.png"
duration="9" />
</t>
<t sync="^14:6A00:ヘスペロス starts using シフティングストライクW" notice="でるたーに移動して、@ANTI_KNOCKBACK。" >
<v-notice
order="-2"
text="Dから吹き飛ばし"
icon="D.png"
duration="9" />
</t>
<t sync="^14:6A02:ヘスペロス starts using シフティングストライクN" notice="あるふぁー横へ移動。" >
<v-notice
order="-2"
text="Aから扇範囲"
icon="A.png"
duration="9" />
</t>
<t sync="^14:6A03:ヘスペロス starts using シフティングストライクS" notice="ちゃーりー横へ移動。" >
<v-notice
order="-2"
text="Cから扇範囲"
icon="C.png"
duration="9" />
</t>
<t sync="^14:6A04:ヘスペロス starts using シフティングストライクE" notice="ぶらぼー横に移動。" >
<v-notice
order="-2"
text="Bから扇範囲"
icon="B.png"
duration="9" />
</t>
<t sync="^14:6A05:ヘスペロス starts using シフティングストライクW" notice="でるたー横に移動。" >
<v-notice
order="-2"
text="Dから扇範囲"
icon="D.png"
duration="9" />
</t>
<!-- シフティングストライク判定トリガー end -->
<!-- ペリアクトイ安全地帯判定トリガー begin -->
<t sync="^14:69F5:ヘスペロス starts using ピナクスポイズン" notice="緑に移動" >
<v-notice
text="毒(緑)が安全"
duration="8" />
</t>
<t sync="^14:69F6:ヘスペロス starts using ピナクスラーヴァ" notice="赤に移動" >
<v-notice
text="炎(赤)が安全"
duration="8" />
</t>
<t sync="^14:69F7:ヘスペロス starts using ピナクススプラッシュ" notice="白に移動" >
<v-notice
text="水(白)が安全"
duration="8" />
</t>
<t sync="^14:69F8:ヘスペロス starts using ピナクスサンダー" notice="青に移動" >
<v-notice
text="雷(青)が安全"
duration="8" />
</t>
<!-- ペリアクトイ安全地帯判定トリガー end -->
<!-- エンチャンテッドペロネー・ラウンド 判定トリガー begin -->
@{
var NOTICE_DPS_TOWER_1 = Model.Player.InRole("DPS") ? "次は、床を踏む。" : "次は、線を取る。";
var NOTICE_TH_TOWER_1 = Model.Player.InRole("DPS") ? "次は、線を取る。" : "次は、床を踏む。";
}
<!-- ラウンド1回目:DPSが床踏み -->
<t sync="14:69DE:ヘスペロス starts using 爆発 on ヘスペロス" sync-count="4" notice="@NOTICE_DPS_TOWER_1" >
<expressions>
<pre name="is_first_round" value="true" />
</expressions>
<v-notice
order="-2"
text="DPS塔/TH線取り"
icon="FallingObject.png"
duration="10" />
<v-notice
order="-1"
text="THが線を取る"
icon="Attention.png"
duration="64" />
</t>
<!-- ラウンド1回目:THが床踏み -->
<t sync="14:69DF:ヘスペロス starts using 爆発 on ヘスペロス" sync-count="4" notice="@NOTICE_TH_TOWER_1" >
<expressions>
<pre name="is_first_round" value="true" />
</expressions>
<v-notice
order="-2"
text="TH塔/DPS線取り"
icon="FallingObject.png"
duration="10" />
<v-notice
order="-1"
text="DPSが線を取る"
icon="Attention.png"
duration="64" />
</t>
@{
var NOTICE_DPS_TOWER_2 = Model.Player.InRole("DPS") ? "次は、床を踏む。" : "";
var NOTICE_TH_TOWER_2 = Model.Player.InRole("DPS") ? "" : "次は、床を踏む。";
}
<!-- 2回目:DPSが床踏み担当 -->
<t sync="^14:69DE:ヘスペロス starts using 爆発 on ヘスペロス" sync-count="4,8" notice="@NOTICE_DPS_TOWER_2" >
<expressions>
<pre name="is_first_round" value="false" />
</expressions>
<v-notice
order="-1"
text="DPS塔/THデバフ受け"
icon="Virus.png"
duration="30" />
</t>
<!-- 2回目:THが床踏み担当 -->
<t sync="^14:69DF:ヘスペロス starts using 爆発 on ヘスペロス" sync-count="4,8" notice="@NOTICE_TH_TOWER_2" >
<expressions>
<pre name="is_first_round" value="false" />
</expressions>
<v-notice
order="-1"
text="TH塔/DPSデバフ受け"
icon="Virus.png"
duration="30" />
</t>
<!-- エンチャンテッドペロネー・ラウンド 判定トリガー end -->
<!-- 前半メインルーチン -->
<a time="000.0" sync="ヘスペロス:ク、カカカカカ……待っていたぞ……。 半神「ヘーミテオス」の力、その身で味わえ!!" >
<expressions>
<set name="is_first_bloodrake" value="true" ttl="30" />
</expressions>
</a>
<a time="015.0" text="デコレーション" sync="ヘスペロスの「デコレーション」" />
<a time="023.0" text="ブラッドレイク1" sync="ヘスペロスの「ブラッドレイク」" />
<a time="026.0" sync="ヘスペロス:ゆらめけ、クラミュス!" />
<a time="031.0" text="エーテルクラミュス" sync="ヘスペロスの「エーテルクラミュス」" >
<expressions>
<set name="is_second_bloodrake" value="true" ttl="30" />
</expressions>
</a>
<a time="039.0" text="ブラッドレイク2" sync="ヘスペロスの「ブラッドレイク」" />
<a time="048.0" text="ペルソナ(呪詛デバフ付与)" sync="ヘスペロスの「エンチャンテッドペロネー:ペルソナ」" />
<a time="064.0" text="線AoE+呪詛発動" sync="ヘスペロスの「インヴァースクラミュス」" />
<a time="073.0" text="デコレーション" sync="ヘスペロスの「デコレーション」" />
<a time="083.0" text="タンク強攻撃1" sync="ヘスペロスの「エレガントイヴィセレーション」" notice="次は、タンク強攻撃2回。" />
<a time="086.0" text="タンク強攻撃2" />
<a time="093.0" sync="ヘスペロス:獄卒長たる我が権限を以てすれば、監獄すら蠢く……。" />
<a time="101.0" text="劇場創造" sync="ヘスペロスの「劇場創造」" />
<a time="108.0" sync="ヘスペロス:地形改変も、このとおりよ……! 喰らえッ……!" />
<a time="114.0" text="ピナクス" sync="ヘスペロスの「ピナクス」" notice="次は、床を確認。"/>
<a time="124.5" text="ピナクス発動1" />
<a time="127.5" text="ピナクス発動2" />
<a time="129.0" sync="ヘスペロス:逃さぬ…!" />
<a time="137.5" text="ピナクス発動3" />
<a time="140.0" text="シフティングストライク" sync="ヘスペロスの「シフティングストライク" />
<a time="148.5" text="ピナクス発動4" />
<a time="157.0" text="タンク強攻撃1" sync="ヘスペロスの「エレガントイヴィセレーション」" notice="次は、タンク強攻撃2回。" />
<a time="160.0" text="タンク強攻撃2" />
<a time="169.0" text="ブラッドレイク(全体)" sync="ヘスペロスの「ブラッドレイク」" />
<a time="180.0" text="劇場創造" sync="ヘスペロスの「劇場創造」" />
<a time="187.0" sync="ヘスペロス:我が腐呪を、浴びよ" />
<a time="192.0" text="リベンジ(デバフ付与)" sync="ヘスペロスの「エンチャンテッドペロネー:リベンジ」" />
<a time="200.0" text="エレメンタル(デバフ付与)" sync="ヘスペロスの「エンチャンテッドペロネー:エレメンタル」" />
<a time="208.0" text="ブラッドレイク(全体)" sync="ヘスペロスの「ブラッドレイク」" />
<a time="211.0" sync="ヘスペロス:己がエーテルに食い殺されよ!" />
<a time="217.0" text="エクスプロージョン(玉取り)" sync="ヘスペロスの「エンチャンテッドペロネー:エクスプロージョン」" />
<a time="231.0" text="ペリアクトイ" sync="ヘスペロスの「ペリアクトイ」" />
<a time="243.0" text="ブラッドレイク(全体)" sync="ヘスペロスの「ブラッドレイク」" >
<expressions>
<set name="is_first_round" value="true" ttl="15" />
</expressions>
</a>
<a time="250.0" text="ラウンド(塔)" sync="ヘスペロスの「エンチャンテッドペロネー:ラウンド」" />
<a time="261.0" text="線AoE" sync="ヘスペロスの「インヴァースクラミュス」" />
<a time="263.0" sync="ヘスペロス:ゆらめけ、クラミュス!" />
<a time="268.0" text="エーテルクラミュス" sync="ヘスペロスの「エーテルクラミュス」" />
<a time="276.0" text="ブラッドレイク" sync="ヘスペロスの「ブラッドレイク」" />
<a time="284.0" text="ラウンド(塔)" sync="ヘスペロスの「エンチャンテッドペロネー:ラウンド」" />
<a time="298.0" text="ペルソナ(呪詛デバフ付与)" sync="ヘスペロスの「エンチャンテッドペロネー:ペルソナ」" />
<a time="314.0" text="線AoE+呪詛発動" sync="ヘスペロスの「インヴァースクラミュス」" />
<a time="324.0" text="デコレーション" sync="ヘスペロスの「デコレーション」" />
<a time="333.0" text="タンク強攻撃1" sync="ヘスペロスの「エレガントイヴィセレーション」" notice="次は、タンク強攻撃2回。" />
<a time="336.0" text="タンク強攻撃2" />
<a time="351.0" text="劇場創造" sync="ヘスペロスの「劇場創造」" />
<a time="359.0" sync="ヘスペロス:改変した地形を 利用させてもらうッ!" />
<a time="364.0" text="ピナクス" sync="ヘスペロスの「ピナクス」" />
<a time="374.0" text="ピナクス発動1" />
<a time="377.0" text="ピナクス発動2" />
<a time="379.0" sync="ヘスペロス:逃さぬ…!" />
<a time="387.0" text="ピナクス発動3" />
<a time="390.0" text="シフティングストライク" sync="ヘスペロスの「シフティングストライク" />
<a time="398.0" text="ピナクス発動4" />
<a time="403.0" text="デコレーション" sync="ヘスペロスの「デコレーション」" />
<a time="413.0" text="デコレーション" />
<a time="422.0" text="デコレーション" />
<a time="432.0" text="時間切れ" />
</s>
<!-- 後半用グローバルトリガー begin -->
<!--近思の魔撃 / 遠見の魔撃 判定トリガー begin -->
@{
var TANK_NEAR_CALL = Model.Player.InRole("TANK") ? "足元えー。" : "離れるー。";
var TANK_FAR_CALL = Model.Player.InRole("TANK") ? "離れるー。" : "足元えー。";
}
<t sync="^14:6A26:" notice="@TANK_NEAR_CALL" >
<v-notice
text="近思:タンク近づく"
duration="6" />
</t>
<t sync="^14:6A27:" notice="@TANK_FAR_CALL" >
<v-notice
text="遠見:タンク離れる"
duration="6" />
</t>
<!--近思の魔撃 / 遠見の魔撃 判定トリガー end -->
<!-- 後半戦で最初に受けたシアリングストリームからボスのCombatant IDをキャプチャする -->
<t name="ボスIDキャプチャ" sync="^16:(?&lt;boss_id&gt;[0-9a-fA-F]{8}):ヘスペロス:6A2D:シアリングストリーム:" sync-count="1" >
<expressions>
<set name="boss_id" value="0x${boss_id}" />
</expressions>
</t>
<t name="フラグ変数セット" sync="14:[id4]:ヘスペロス starts using 茨の悲劇:" >
<expressions>
<set name="is_first_tether" value="true" />
</expressions>
</t>
<!-- 後半用グローバルトリガー end -->
<!-- 茨の悲劇:序幕から第ニ幕まで -->
<s name="PHASE1 後半開幕">
<!-- 後半戦で最初に出現したTetherログからIDをキャプチャ(まだ使ってない) -->
<t no="1" name="線IDキャプチャ" sync="^23:[id8]:ヘスペロス:EVAL(VAR['boss_id'],X8):ヘスペロス:(?&lt;tether_code&gt;[0-9a-fA-F]{4}):" sync-count="1" >
<expressions>
<set name="tether_code" value="0x${tether_code}" scope="CurrentZone" />
</expressions>
</t>
<!-- 茨の悲劇:序幕 最初に南北か東西のどちらが安全かを判定するトリガー begin -->
<!-- Combatant IDがboss_id+36なら東西どちらかの茨が線で繋がれている -->
<t no="2" name="Act1-南北スタート" sync="^23:EVAL(VAR['boss_id']+36, X8):" sync-count="1" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
</expressions>
<v-notice
order="-2"
text="南北➜塔➜東西"
duration="18"
duration-visible="false" />
</t>
<!-- Combatant IDがboss_id+38なら南北どちらかの茨が線で繋がれている -->
<t no="2" name="Act1-東西スタート" sync="^23:EVAL(VAR['boss_id']+38, X8):" sync-count="1" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
</expressions>
<v-notice
order="-2"
text="東西➜塔➜南北"
duration="18"
duration-visible="false" />
</t>
<!-- 茨の悲劇:序幕 最初に南北か東西のどちらが安全かを判定するトリガー end -->
<!-- 茨の悲劇:第二幕 最初に南北付近か東西付近のどちらが安全かを判定するトリガー begin -->
<!-- Combatant IDが boss_id+35~38 の範囲なら南北どちらかのAoEと繋がった茨が線で繋がれている -->
<t name="Act2-東西スタート" sync="^23:EVAL(VAR['boss_id']+38, X8):" sync-count="2" notice="東西スタート。" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
<set name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-1"
text="最初は東西が安全"
duration="18"
duration-visible="false" />
</t>
<!-- Combatant IDが boss_id+31~34 の範囲なら東西どちらかのAoEと繋がった茨が線で繋がれている -->
<t name="Act2-南北スタート" sync="^23:EVAL(VAR['boss_id']+34, X8):ヘスペロス:" sync-count="2" notice="南北スタート。" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
<set name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-1"
text="最初は南北が安全"
duration="18"
duration-visible="false" />
</t>
<!-- 茨の悲劇:第二幕 最初に南北付近か東西付近のどちらが安全かを判定するトリガー end -->
<!-- 茨の悲劇:第二幕 頭上マーカー判定トリガー begin -->
<!-- 後半戦で最初に出現する頭上マーカー(赤)を marker_origin とする -->
<t no="1" sync="^1B:[id8]:[pc]:0000:[id4]:(?&lt;marker&gt;[0-9a-fA-F]{4}):" sync-count="1" notice="" >
<expressions>
<set name="marker_origin" value="0x${marker}" scope="CurrentZone" />
</expressions>
</t>
@if (Model.Player.InRole("DPS")) {
<t no="2" name="Act2-赤(D)_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-2"
text="中央➜Cで頭割り"
icon="C.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜DかBで線切り"
icon="Branch.png"
duration="21"
duration-visible="false" />
</t>
<t no="2" name="Act2-赤(D)_EW" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-2"
text="中央➜Bで頭割り"
icon="B.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜AかCで線切り"
icon="Branch.png"
duration="21"
duration-visible="false" />
</t>
} else if (Model.Player.InRole("Healer")) {
<t no="2" name="Act2-赤(H)_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-2"
text="中央➜Cで線切り"
icon="C.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Dで頭割り"
icon="D.png"
duration="21"
duration-visible="false" />
</t>
<t no="2" name="Act2-赤(H)_EW" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-2"
text="中央➜Bで線切り"
icon="B.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Cで頭割り参加"
icon="C.png"
duration="21"
duration-visible="false" />
</t>
} else if (Model.Player.InRole("TANK")) {
<t no="2" name="Act2-赤(T)_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-2"
text="中央➜Aで線切り"
icon="A.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Dで頭割り参加"
icon="D.png"
duration="21"
duration-visible="false" />
</t>
<t no="2" name="Act2-赤(T)_EW" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'], X4):" notice="ファイガ。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-2"
text="中央➜Dで線切り"
icon="D.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Aで頭割り参加"
icon="A.png"
duration="21"
duration-visible="false" />
</t>
}
<t no="2" name="Act2-緑_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 1, X4):" notice="エアロガ。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-2"
text="中央➜Aで頭割り"
icon="A.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Bで頭割り参加"
icon="B.png"
duration="21"
duration-visible="false" />
</t>
<t no="2" name="Act2-緑_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 1, X4):" notice="エアロガ。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-2"
text="中央➜Dで頭割り"
icon="D.png"
duration="10"
duration-visible="false" />
<v-notice
order="-1"
text="➜Aで頭割り参加"
icon="A.png"
duration="21"
duration-visible="false" />
</t>
@if (Model.Player.InRole("TANK")) {
<t no="3" name="Act2-マーカーなし(T)_NS" sync="^1B:[id8]:[nex]:" sync-count="7" notice="次は、線を切る。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-3"
text="北西で線切り➜1で塔踏み"
icon="Arrow8.png"
duration="12"
duration-visible="false" />
<v-notice
order="-1"
text="➜2の塔踏み"
icon="2.png"
duration="21"
duration-visible="false" />
</t>
<t no="3" name="Act2-マーカーなし(T)_EW" sync="^1B:[id8]:[nex]:" sync-count="7" notice="次は、線を切る。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-3"
text="北西で線切り➜4で塔踏み"
icon="Arrow8.png"
duration="12"
duration-visible="false" />
<v-notice
order="-1"
text="➜1の塔踏み"
icon="1.png"
duration="21"
duration-visible="false" />
</t>
} else {
<t no="2" name="Act2-紫(H)_NS" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 2, X4):" notice="次は、線を切る。" >
<expressions>
<pre name="act2_safespot1" value="NS" />
</expressions>
<v-notice
order="-3"
text="南東で線切り➜3の塔踏み"
icon="Arrow4.png"
duration="12"
duration-visible="false" />
<v-notice
order="-1"
text="➜4の塔踏み"
icon="Thunder.png"
duration="21"
duration-visible="false" />
</t>
<t no="2" name="Act2-紫(H)_EW" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 2, X4):" notice="次は、線を切る。" >
<expressions>
<pre name="act2_safespot1" value="EW" />
</expressions>
<v-notice
order="-3"
text="南東で線切り➜2の塔踏み"
icon="Arrow4.png"
duration="12"
duration-visible="false" />
<v-notice
order="-1"
text="➜3の塔踏み"
icon="Thunder.png"
duration="21"
duration-visible="false" />
</t>
}
<!-- 茨の悲劇:第二幕 頭上マーカー判定トリガー end -->
@* このフェーズの基点となる秒数 11 *@
@{ var origin = 11; }
<a time="@(016.0 - origin)" text="シアリングストリーム" sync="ヘスペロスの「シアリングストリーム」" sync-s="-16" />
<a time="@(026.0 - origin)" sync="ヘスペロス:エーテルソーン展開! 茨の悲劇が幕を開ける……喜べ、主演はお前たちだッ!!" />
<a time="@(031.0 - origin)" text="茨の悲劇:序幕" sync="ヘスペロスの「茨の悲劇:序幕」" />
<a time="@(041.0 - origin)" text="シアリングストリーム" sync="ヘスペロスの「シアリングストリーム」" />
<a time="@(055.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(058.0 - origin)" text="大AoE" sync="ヘスペロスの「ヘーミテオス・ファイジャ」" />
<a time="@(060.0 - origin)" text="塔踏み" sync="ヘスペロスの「ヘーミテオス・サンダガ」" />
<a time="@(064.0 - origin)" text="大AoE" />
<a time="@(070.0 - origin)" text="近思or遠見" sync="ヘスペロスの「(近思|遠見)の魔撃」" />
<a time="@(083.0 - origin)" text="茨の悲劇:第ニ幕" sync="ヘスペロスの「茨の悲劇:第ニ幕」" />
<a time="@(092.0 - origin)" text="半神の双撃" sync="ヘスペロスの「半神の双撃」" notice="次は、タンク強攻撃。" />
<a time="@(103.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(110.0 - origin)" text="紫TH:線切り" />
<a time="@(111.0 - origin)" text="ダークデザイン(エラプ)" sync="ヘスペロスの「ダークデザイン」" />
<a time="@(115.0 - origin)" text="大AoE+塔踏み+頭割り1" />
<a time="@(122.0 - origin)" text="大AoE+塔踏み+頭割り2" />
<a time="@(122.0 - origin)" sync="ヘスペロス:我が最大の一撃だ…!" />
<a time="@(124.0 - origin)" text="(エアロガ終)" sync="ヘスペロスの「ヘーミテオス・エアロガ」" />
<a time="@(130.0 - origin)" text="アルティメットインパルス" sync="ヘスペロスの「アルティメットインパルス」" notice="次は、全体攻撃。" goto="PHASE2 後半中盤" />
</s>
<!-- 茨の悲劇:第三幕から第四幕まで -->
<s name="PHASE2 後半中盤">
<!-- 茨の悲劇:第三幕 判定トリガー begin -->
<!-- 先に西側の茨に線が繋がれた -->
<t name="Act3-東から誘導" sync="^23:EVAL(VAR['boss_id'] + 38, X8):ヘスペロス:[id8]:ヘスペロス:" sync-count="1" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
</expressions>
<v-notice
order="-2"
text="1回目 塔踏み:西\nボス誘導:東"
duration="18"
duration-visible="false" />
</t>
<!-- 先に東側の茨に線が繋がれた -->
<t name="Act3-西から誘導" sync="^23:EVAL(VAR['boss_id'] + 34, X8):ヘスペロス:[id8]:ヘスペロス:" sync-count="1" >
<expressions>
<pre name="is_first_tether" value="true" />
<set name="is_first_tether" value="false" />
</expressions>
<v-notice
order="-2"
text="1回目 塔踏み:東\nボス誘導:西"
duration="18"
duration-visible="false" />
</t>
<!-- 茨の悲劇:第三幕 判定トリガー end -->
<!-- 茨の悲劇:第四幕 判定トリガー begin -->
<t name="Act4-紫" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 2, X4):" notice="" >
<!-- FIXME 第四幕 紫マーカー用の通知内容 -->
<v-notice
order="-5"
text="自分は紫"
duration="9" />
</t>
<t name="Act4-青" sync="^1B:[id8]:[me]:0000:[id4]:EVAL(VAR['marker_origin'] - 3, X4):" notice="" >
<!-- FIXME 第四幕 青マーカー用の通知内容 -->
<v-notice
order="-5"
text="自分は青"
duration="21" />
</t>
<t name="Act4-紫(北or北東)" sync="^23:EVAL(VAR['boss_id'] + 38, X8):ヘスペロス:[id8]:[me]:" sync-count="1" >
<v-notice
order="-4"
text="➜1南西で線を切る"
duration="21" />
</t>
<t name="Act4-紫(東or南東)" sync="^23:EVAL(VAR['boss_id'] + 37, X8):ヘスペロス:[id8]:[me]:" sync-count="1" >
<v-notice
order="-3"
text="➜2北西で線を切る"
duration="26" />
</t>
<t name="Act4-紫(南or南西)" sync="^23:EVAL(VAR['boss_id'] + 36, X8):ヘスペロス:[id8]:[me]:" sync-count="1" >
<v-notice
order="-2"
text="➜3北東で線を切る"
duration="31" />
</t>
<t name="Act4-紫(西or北西)" sync="^23:EVAL(VAR['boss_id'] + 35, X8):ヘスペロス:[id8]:[me]:" sync-count="1" >
<v-notice
order="-1"
text="➜4南東で線を切る"
duration="36" />
</t>
<!-- 茨の悲劇:第四幕 判定トリガー end -->
@* このフェーズの基点となる秒数 130 *@
@{ origin = 130; }
<a time="@(143.0 - origin)" text="茨の悲劇:第三幕" sync="ヘスペロスの「茨の悲劇:第三幕」" notice="" />
<a time="@(155.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(158.0 - origin)" sync="ヘスペロス:吹き飛べッ!" />
<a time="@(164.0 - origin)" text="キック1" sync="ヘスペロスの「コトルヌスキック」" />
<a time="@(168.0 - origin)" text="扇範囲誘導1" sync="ヘスペロスの「コトルヌスクエイク」" />
<a time="@(168.0 - origin)" text="塔踏み1" />
<a time="@(170.0 - origin)" text="ノックバック" notice="次は、ノックバック。@ANTI_KNOCKBACK。" />
<a time="@(174.0 - origin)" text="キック2" />
<a time="@(174.0 - origin)" text="塔踏み2" />
<a time="@(178.0 - origin)" text="扇範囲誘導2" />
<a time="@(181.0 - origin)" sync="ヘスペロス:食らうがよいッ!" />
<a time="@(187.0 - origin)" text="近思or遠見" sync="ヘスペロスの「(近思|遠見)の魔撃」" />
<a time="@(202.0 - origin)" text="ハートステイク(DoT)" sync="ヘスペロスの「ハートステイク」" notice="次は、タンク強攻撃。" />
<a time="@(205.0 - origin)" text="ハートステイク(DoT)" />
<a time="@(214.0 - origin)" text="茨の悲劇:第四幕" sync="ヘスペロスの「茨の悲劇:第四幕」" />
<a time="@(223.0 - origin)" text="シアリングストリーム" sync="ヘスペロスの「シアリングストリーム」" />
<a time="@(233.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(241.0 - origin)" text="シアリングストリーム" notice="次は、ヒールを受けたら移動。" />
<a time="@(246.0 - origin)" text="塔+ウォタガ目安" />
<a time="@(253.0 - origin)" text="大AoE+ダージャ1目安" />
<a time="@(258.0 - origin)" text="大AoE+ダージャ2目安" />
<a time="@(263.0 - origin)" text="大AoE+ダージャ3目安" />
<a time="@(268.0 - origin)" text="大AoE+ダージャ4目安" />
<a time="@(268.0 - origin)" sync="ヘスペロス:我が最大の一撃だ…!" />
<a time="@(276.0 - origin)" text="アルティメットインパルス" sync="ヘスペロスの「アルティメットインパルス」" notice="次は、全体攻撃。" goto="PHASE3 後半終盤" />
</s>
<s name="PHASE3 後半終盤">
<t no="1" name="インパルス対象カウント" sync="^15:[id8]:ヘスペロス:6A1C:フリーティングインパルス:" sync-count="-8" sync-interval="0.5" >
<expressions>
<set name="impulse_target_count" value="EVAL(VAR['impulse_target_count']+1,N0)" />
</expressions>
</t>
<t no="2" name="何番目にインパルス対象になったかの判定" sync="^15:[id8]:ヘスペロス:6A1C:フリーティングインパルス:[id8]:[me]:" sync-count="1" >
<v-notice
text="VAR['impulse_target_count']個目の塔に入る"
duration="23" />
</t>
<!-- 茨の悲劇:カーテンコール デバフによる処理タイミング通知トリガー begin -->
@if (Model.Player.InRole("DPS")) {
<t name="カーテンコール12秒(先)" sync="^1A:[id8]:[me] gains the effect.*12.00 Seconds. BuffID: 0AF4-00" notice="線を切るー。" >
<v-notice
text="デバフ12秒:1番目\n➜残り11秒で線切り"
duration="12" />
</t>
<t name="カーテンコール22秒(先)" sync="^1A:[id8]:[me] gains the effect.*22.00 Seconds. BuffID: 0AF4-00" notice="/wait 9, 次、線を切るー。" >
<v-notice
text="デバフ22秒:2番目\n➜残り11秒で線切り"
duration="22" />
</t>
<t name="カーテンコール32秒(先)" sync="^1A:[id8]:[me] gains the effect.*32.00 Seconds. BuffID: 0AF4-00" notice="/wait 19, 次、線を切るー。" >
<v-notice
text="デバフ32秒:3番目\n➜残り11秒で線切り"
duration="32" />
</t>
<t name="カーテンコール42秒(先)" sync="^1A:[id8]:[me] gains the effect.*42.00 Seconds. BuffID: 0AF4-00" notice="/wait 29, 次、線を切るー。" >
<v-notice
text="デバフ42秒:4番目\n➜残り11秒で線切り"
duration="42" />
</t>
} else {
<t name="カーテンコール12秒(後)" sync="^1A:[id8]:[me] gains the effect.*12.00 Seconds. BuffID: 0AF4-00" notice="/wait 4, 次、線を切るー。" >
<v-notice
text="デバフ12秒:1番目\n➜残り6秒で線切り"
duration="12" />
</t>
<t name="カーテンコール22秒(後)" sync="^1A:[id8]:[me] gains the effect.*22.00 Seconds. BuffID: 0AF4-00" notice="/wait 13, 次、線を切るー。" >
<v-notice
text="デバフ22秒:2番目\n➜残り6秒で線切り"
duration="22" />
</t>
<t name="カーテンコール32秒(後)" sync="^1A:[id8]:[me] gains the effect.*32.00 Seconds. BuffID: 0AF4-00" notice="/wait 23, 次、線を切るー。" >
<v-notice
text="デバフ32秒:3番目\n➜残り6秒で線切り"
duration="32" />
</t>
<t name="カーテンコール42秒(後)" sync="^1A:[id8]:[me] gains the effect.*42.00 Seconds. BuffID: 0AF4-00" notice="/wait 33, 次、線を切るー。" >
<v-notice
text="デバフ42秒:4番目\n➜残り6秒で線切り"
duration="42" />
</t>
}
<!-- 茨の悲劇:カーテンコール デバフによる処理タイミング通知トリガー end -->
@* このフェーズの基点となる秒数 276 *@
@{ origin = 276; }
<a time="@(279.0 - origin)" sync="ヘスペロス:茨の悲劇も終幕だ……! さあ、足掻け! 最後まで演じ切ってみせろ!" />
<a time="@(290.0 - origin)" text="シアリングストリーム" sync="ヘスペロスの「シアリングストリーム」" />
<a time="@(299.0 - origin)" text="茨の悲劇:終幕" sync="ヘスペロスの「茨の悲劇:終幕」" >
<expressions> <!-- 変数の初期化 -->
<set name="impulse_target_count" value="0" />
</expressions>
</a>
<a time="@(309.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(311.0 - origin)" sync="ヘスペロス:迸れ、魔力よ!" />
<a time="@(317.0 - origin)" text="円範囲x8" />
<a time="@(327.0 - origin)" text="(エアロガ終)" />
<a time="@(336.0 - origin)" text="ソーンヘッジ" sync="ヘスペロスの「ソーンヘッジ」" />
<a time="@(339.0 - origin)" text="塔踏みx8" />
<a time="@(353.0 - origin)" text="近思or遠見" sync="ヘスペロスの「(近思|遠見)の魔撃」" />
<a time="@(366.0 - origin)" text="シアリングストリーム" sync="ヘスペロスの「シアリングストリーム」" />
<a time="@(375.0 - origin)" text="半神の双撃" sync="ヘスペロスの「半神の双撃」" notice="次は、タンク頭割り。" />
<a time="@(382.0 - origin)" sync="ヘスペロス:最低最悪の悲劇を乗り越えた者たちよ……。 残すは……カーテンコールだァッ!!" />
<a time="@(388.0 - origin)" text="茨の悲劇:カーテンコール" sync="ヘスペロスの「茨の悲劇:カーテンコール」" />
<a time="@(401.0 - origin)" text="ヘルスティング" />
<a time="@(404.0 - origin)" text="(不可視:追撃)" />
<a time="@(421.0 - origin)" text="ヘルスティング" />
<a time="@(424.0 - origin)" text="(不可視:追撃)" />
<a time="@(441.0 - origin)" text="アルティメットインパルス" sync="ヘスペロスの「アルティメットインパルス」" notice="次は、全体攻撃。" />
<a time="@(450.0 - origin)" text="ヘルスティング" />
<a time="@(453.0 - origin)" text="(不可視:追撃)" />
<a time="@(471.0 - origin)" text="ヘルスティング" />
<a time="@(474.0 - origin)" text="(不可視:追撃)" />
<a time="@(490.0 - origin)" text="アルティメットインパルス" sync="ヘスペロスの「アルティメットインパルス」" notice="次は、全体攻撃。" />
<a time="@(494.0 - origin)" text="時間切れ詠唱開始" sync="ヘスペロスは「アルティメットインパルス」の構え。" />
</s>
</timeline>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment