diff --git a/timelines/src/main/resources/timeline/delubrum_reginae_savage.txt b/timelines/src/main/resources/timeline/delubrum_reginae_savage.txt index 7b478dcfda71..4205b1d1eab2 100644 --- a/timelines/src/main/resources/timeline/delubrum_reginae_savage.txt +++ b/timelines/src/main/resources/timeline/delubrum_reginae_savage.txt @@ -412,6 +412,11 @@ hideall "--sync--" # This is the zone, but can't use this sync as it can be seen by Dahu. Sync to autos instead. # Pride of the Lioness will be sealed off #8000.0 "--sync--" SystemLogMessage { id: "7DC", param1: "E1C" } window 20000,0 + +# https://xivapi.com/PublicContentTextData/2477 +# en: Why...won't...you... +# TODO: Update to ActorControlExtra (category: 0x0834, param1: 0x9AD) when available. +# See OverlayPlugin/cactbot#99 and OverlayPlugin/OverlayPlugin#329 for further info 8000.0 "--Reset--" GameLog { code: "0044", name: "Stygimoloch Warrior", line: "Why\.\.\.won't\.\.\.you\.\.\..*?" } window 0,2000 jump 0 # TODO: is there a reset dialog line for losing? # Alternatively, we could always insert " 19:${data.me} was defeated by" from script. diff --git a/timelines/src/main/resources/timeline/fractal_continuum_hard.txt b/timelines/src/main/resources/timeline/fractal_continuum_hard.txt index 0313687d444f..607e1858ff3b 100644 --- a/timelines/src/main/resources/timeline/fractal_continuum_hard.txt +++ b/timelines/src/main/resources/timeline/fractal_continuum_hard.txt @@ -37,7 +37,7 @@ hideall "--sync--" # -ii 2798 -# Unfortunately, we have no choice but to use game log lines here. +# Unfortunately, we have no choice but to use BattleTalk2 lines here. # The statues the boss tethers to are useless for timeline syncs, # and the boss gains no buffs for each form. @@ -50,6 +50,14 @@ hideall "--sync--" # That is, for Form X into whatever, the dead time is determined solely by X, # regardless of whether X is followed by Y or by Z. +# Because the BattleTalk2 syncs are repeated below, the links and 'en' text are listed once: +# https://xivapi.com/InstanceContentTextData/18509 (0x484D) +# en: This humanoid prototype can perfectly replicate eikon abilities. In fact, it's already loading our data on Sephirot. +# https://xivapi.com/InstanceContentTextData/18510 (0x484E) +# en: Utilizing our data on Sophia, we can at last tip the scales in our favor. +# https://xivapi.com/InstanceContentTextData/18511 (0x484F) +# en: Successfully mimicking the Demon Zurvan earned our researchers a patent under article 42? + # Exhibit Level VIII will be sealed off 1000.0 "Start" SystemLogMessage { id: "7DC", param1: "95D" } window 1000,5 1008.5 "Aetheroplasm" Ability { id: "2793", source: "The Ultima Warrior" } window 8.5,5 @@ -57,9 +65,9 @@ hideall "--sync--" 1029.8 "Ceruleum Vent" Ability { id: "2794", source: "The Ultima Warrior" } 1042.0 "Aetheroplasm" Ability { id: "2793", source: "The Ultima Warrior" } # skipped if boss is at or below 95% HP -1053.4 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "This humanoid prototype can perfectly replicate.*?" } window 53.4,10 jump 1100.0 -1053.4 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Utilizing our data on Sophia.*?" } window 53.4,10 jump 1200.0 -1053.4 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Successfully mimicking the Demon Zurvan.*?" } window 53.4,10 jump 1300.0 +1053.4 "--sync--" BattleTalk2 { instanceContentTextId: "484D" } window 53.4,10 jump 1100.0 +1053.4 "--sync--" BattleTalk2 { instanceContentTextId: "484E" } window 53.4,10 jump 1200.0 +1053.4 "--sync--" BattleTalk2 { instanceContentTextId: "484F" } window 53.4,10 jump 1300.0 1060.9 "Primordial Aether" 1062.0 "Ceruleum Vent?" 1063.5 "Infinite Fire/Infinite Ice?" @@ -71,7 +79,7 @@ hideall "--sync--" # Sephirot's block -1100.0 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "This humanoid prototype can perfectly replicate.*?" } +1100.0 "--sync--" BattleTalk2 { instanceContentTextId: "484D" } 1107.5 "Primordial Aether" Ability { id: "2796", source: "The Ultima Warrior" } window 10,10 1119.1 "Citadel Buster" Ability { id: "2792", source: "The Ultima Warrior" } 1120.1 "Ratzon" Ability { id: "2797", source: "The Ultima Warrior" } @@ -79,9 +87,9 @@ hideall "--sync--" 1139.2 "Mass Aetheroplasm" Ability { id: "2795", source: "The Ultima Warrior" } 1149.7 "Aetheroplasm" Ability { id: "2793", source: "The Ultima Warrior" } -1154.8 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "This humanoid prototype can perfectly replicate.*?" } window 50,10 jump 1100.0 -1154.8 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Utilizing our data on Sophia.*?" } window 50,10 jump 1200.0 -1154.8 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Successfully mimicking the Demon Zurvan.*?" } window 50,10 jump 1300.0 +1154.8 "--sync--" BattleTalk2 { instanceContentTextId: "484D" } window 50,10 jump 1100.0 +1154.8 "--sync--" BattleTalk2 { instanceContentTextId: "484E" } window 50,10 jump 1200.0 +1154.8 "--sync--" BattleTalk2 { instanceContentTextId: "484F" } window 50,10 jump 1300.0 1162.3 "Primordial Aether" 1163.4 "Ceruleum Vent?" 1164.9 "Infinite Fire/Infinite Ice?" @@ -93,7 +101,7 @@ hideall "--sync--" # Sophia's Block -1200.0 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Utilizing our data on Sophia.*?" } +1200.0 "--sync--" BattleTalk2 { instanceContentTextId: "484E" } 1207.5 "Primordial Aether" Ability { id: "2796", source: "The Ultima Warrior" } window 10,10 1218.1 "Ceruleum Vent" Ability { id: "2794", source: "The Ultima Warrior" } 1225.3 "Citadel Buster" Ability { id: "2792", source: "The Ultima Warrior" } @@ -102,9 +110,9 @@ hideall "--sync--" 1232.3 "Dischordant Cleansing" Ability { id: "279A", source: "The Ultima Warrior" } 1242.3 "Aetheroplasm" Ability { id: "2793", source: "The Ultima Warrior" } -1248.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "This humanoid prototype can perfectly replicate.*?" } window 50,10 jump 1100.0 -1248.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Utilizing our data on Sophia.*?" } window 50,10 jump 1200.0 -1248.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Successfully mimicking the Demon Zurvan.*?" } window 50,10 jump 1300.0 +1248.5 "--sync--" BattleTalk2 { instanceContentTextId: "484D" } window 50,10 jump 1100.0 +1248.5 "--sync--" BattleTalk2 { instanceContentTextId: "484E" } window 50,10 jump 1200.0 +1248.5 "--sync--" BattleTalk2 { instanceContentTextId: "484F" } window 50,10 jump 1300.0 1256.0 "Primordial Aether" 1257.1 "Ceruleum Vent?" 1258.6 "Infinite Fire/Infinite Ice?" @@ -116,7 +124,7 @@ hideall "--sync--" # Zurvan's Block -1300.0 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Successfully mimicking the Demon Zurvan.*?" } +1300.0 "--sync--" BattleTalk2 { instanceContentTextId: "484F" } 1308.5 "Primordial Aether" Ability { id: "2796", source: "The Ultima Warrior" } window 10,10 1311.1 "Infinite Fire/Infinite Ice" Ability { id: "279[DE]", source: "The Ultima Warrior" } 1319.1 "Ceruleum Vent" Ability { id: "2794", source: "The Ultima Warrior" } @@ -125,9 +133,9 @@ hideall "--sync--" 1343.0 "Citadel Buster" Ability { id: "2792", source: "The Ultima Warrior" } 1354.0 "Aetheroplasm" Ability { id: "2793", source: "The Ultima Warrior" } -1365.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "This humanoid prototype can perfectly replicate.*?" } window 50,10 jump 1100.0 -1365.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Utilizing our data on Sophia.*?" } window 50,10 jump 1200.0 -1365.5 "--sync--" GameLog { code: "0044", name: "Vocal Guidance System", line: "Successfully mimicking the Demon Zurvan.*?" } window 50,10 jump 1300.0 +1365.5 "--sync--" BattleTalk2 { instanceContentTextId: "484D" } window 50,10 jump 1100.0 +1365.5 "--sync--" BattleTalk2 { instanceContentTextId: "484E" } window 50,10 jump 1200.0 +1365.5 "--sync--" BattleTalk2 { instanceContentTextId: "484F" } window 50,10 jump 1300.0 1373.0 "Primordial Aether" 1374.1 "Ceruleum Vent?" 1375.6 "Infinite Fire/Infinite Ice?" diff --git a/timelines/src/main/resources/timeline/hades-ex.txt b/timelines/src/main/resources/timeline/hades-ex.txt index 8280965e4798..6c1706db3886 100644 --- a/timelines/src/main/resources/timeline/hades-ex.txt +++ b/timelines/src/main/resources/timeline/hades-ex.txt @@ -70,7 +70,9 @@ hideall "--sync--" ### Phase 3 -493.0 "--sync--" GameLog { code: "0044", name: "Hades", line: "Our plea transcends.*?" } window 500,0 +# https://xivapi.com/InstanceContentTextData/23311 +# en: Our plea transcends the very boundaries of the soul! +493.0 "--sync--" BattleTalk2 { instanceContentTextId: "5B0F" } window 500,0 # 00:0044:Hades:At last, you are one! 499.9 "--targetable--" 500.0 "--sync--" StartsUsing { id: "47C8", source: "Ascian Prime's Shade" } window 500,0 diff --git a/timelines/src/main/resources/timeline/o11n.txt b/timelines/src/main/resources/timeline/o11n.txt index 60a377aba7a9..ac49ef54567a 100644 --- a/timelines/src/main/resources/timeline/o11n.txt +++ b/timelines/src/main/resources/timeline/o11n.txt @@ -53,7 +53,11 @@ hideall "--sync--" 611.6 "Force Quit" Ability { id: "327A", source: "Level Checker" } ## Delta Attack -1000.0 "--sync--" GameLog { code: "0044", name: "Omega", line: "Program failure detected.*?" } window 1500,100 +# https://xivapi.com/InstanceContentTextData/20109 +# en: Program failure detected. Engaging Delta Attack protocol. +# Note: This BattleTalk2 log line arrives in sequence with another, both with a 4000ms display time. +# As a result, this line shows up 4000ms before the message is displayed (and the GameLog line is emitted). +996.0 "--sync--" BattleTalk2 { instanceContentTextId: "4E8D" } window 996,100 1007.0 "--sync--" StartsUsing { id: "327B", source: "Omega" } window 1500,100 1037.0 "Delta Attack" Ability { id: "327B", source: "Omega" } window 1500,100 1048.4 "--targetable--" diff --git a/timelines/src/main/resources/timeline/o12n.txt b/timelines/src/main/resources/timeline/o12n.txt index 283f504f55bb..c61ddb6bb477 100644 --- a/timelines/src/main/resources/timeline/o12n.txt +++ b/timelines/src/main/resources/timeline/o12n.txt @@ -51,7 +51,9 @@ hideall "--sync--" ### Phase 2: Passage of Arms -500.0 "--sync--" GameLog { code: "0044", name: "Omega-M", line: "\ Limits of single combatant.*?" } window 500,0 +# https://xivapi.com/InstanceContentTextData/20620 +# en: Limits of single combatant capability reached. Progress to party combat analysis. +500.0 "--sync--" BattleTalk2 { instanceContentTextId: "508C" } window 500,0 514.0 "Ground Zero" Ability { id: "3313", source: "Omega-M" } # drift 0.045001 514.0 "Electric Slide" Ability { id: "3314", source: "Omega" } 522.0 "Efficient Bladework" Ability { id: "32F3", source: "Omega-M" } # drift -0.045 @@ -181,8 +183,11 @@ hideall "--sync--" ### Phase 4: Laser Show Forever -1800.0 "Enrage" GameLog { code: "0044", line: "\ Warning\. Calculations indicate.*?" } window 1800,0 - +# https://xivapi.com/InstanceContentTextData/20623 +# https://xivapi.com/InstanceContentTextData/20624 +# en: Warning. Calculations indicate increased probability of defeat.\n\n Error. Further data analysis required. +# May be either id depending on which is alive. +1800.0 "Enrage" BattleTalk2 { instanceContentTextId: "(508F|5090)" } window 1800,0 1806.0 "Laser Shower Enrage" Ability { id: "3311", source: "Omega-M" } window 20,20 1806.0 "Laser Shower Enrage" Ability { id: "3312", source: "Omega" } window 20,20 1812.0 "Laser Shower Enrage" diff --git a/timelines/src/main/resources/timeline/o12s.txt b/timelines/src/main/resources/timeline/o12s.txt index a1482eab60c7..9d5e26d4403e 100644 --- a/timelines/src/main/resources/timeline/o12s.txt +++ b/timelines/src/main/resources/timeline/o12s.txt @@ -6,10 +6,12 @@ hideall "--Reset--" hideall "--sync--" -# Use autos/chatlog instead of InCombat lines to start timelines for door & final boss +# Use autos/BattleTalk2 instead of InCombat lines to start timelines for door & final boss # as timeline resets out of combat. -0.0 "Start" GameLog { code: "0044", line: "I am the Omega.*?" } window 1,0 +# https://xivapi.com/InstanceContentTextData/20600 +# en: I am the Omega and the Alpha. I will mimic your weakness to comprehend your strength. +0.0 "Start" BattleTalk2 { instanceContentTextId: "5078" } window 1,1 2.4 "--sync--" Ability { id: "337D", source: "Omega-M" } window 2.4,0.5 # first auto 11.7 "Synthetic Shield" Ability { id: "32FD", source: "Omega-M" } window 12,5 19.7 "Suppression" Ability { id: "3345", source: "Omega-M" } diff --git a/timelines/src/main/resources/timeline/o9n.txt b/timelines/src/main/resources/timeline/o9n.txt index d79f2d2d9974..4365e67328d3 100644 --- a/timelines/src/main/resources/timeline/o9n.txt +++ b/timelines/src/main/resources/timeline/o9n.txt @@ -43,7 +43,10 @@ hideall "--sync--" 1211.6 "--sync--" Ability { id: "3215", source: "Chaos" } 1218.3 "Stray Flames" Ability { id: "316B", source: "Chaos" } 1224.2 "Stray Spray" Ability { id: "316C", source: "Chaos" } -1500.0 "--sync--" GameLog { code: "0044", name: "Chaos", line: "The crystal\.\.\.destroyed\!\?.*?" } window 500,10 + +# https://xivapi.com/InstanceContentTextData/20006 +# en: The crystal...destroyed!? YOU DARE! +1500.0 "--sync--" BattleTalk2 { instanceContentTextId: "4E26" } window 500,10 1503.0 "Soul of Chaos" Ability { id: "316A", source: "Chaos" } window 500,10 1513.1 "--targetable--" # fake window into Water->Earth loop @@ -77,7 +80,10 @@ hideall "--sync--" 2212.8 "--sync--" Ability { id: "3215", source: "Chaos" } 2219.5 "Stray Flames" Ability { id: "316B", source: "Chaos" } 2225.4 "Stray Spray" Ability { id: "316C", source: "Chaos" } -2500.0 "--sync--" GameLog { code: "0044", name: "Chaos", line: "The crystal\.\.\.destroyed\!\?.*?" } window 500,10 + +# https://xivapi.com/InstanceContentTextData/20006 +# en: The crystal...destroyed!? YOU DARE! +2500.0 "--sync--" BattleTalk2 { instanceContentTextId: "4E26" } window 500,10 2503.0 "Soul of Chaos" Ability { id: "316A", source: "Chaos" } window 500,10 # fake window into Fire->Air loop 2529.5 "Chaotic Dispersion" Ability { id: "314F", source: "Chaos" } window 50,50 jump 3212.6 diff --git a/timelines/src/main/resources/timeline/orbonne_monastery.txt b/timelines/src/main/resources/timeline/orbonne_monastery.txt index dd5fc8f81e86..fcab091e08b2 100644 --- a/timelines/src/main/resources/timeline/orbonne_monastery.txt +++ b/timelines/src/main/resources/timeline/orbonne_monastery.txt @@ -352,7 +352,9 @@ hideall "--sync--" 6371.3 "Flare IV" ### Phase 3: 15% off Demi-Virgo Combo Platter -6500.0 "--sync--" GameLog { code: "0044", line: "I see it now.*?" } window 500,0 +# https://xivapi.com/InstanceContentTextData/20933 +# en: I see it now. In you...his blood, my vanquisher in times...long past. But not so soon...shall I accept defeat... +6500.0 "--sync--" BattleTalk2 { instanceContentTextId: "51C5" } window 500,0 6503.0 "Demi-Virgo Line/Tether" Ability { id: "38C2", source: "Ultima, the High Seraph" } window 8,8 6509.1 "Redemption" Ability { id: "38AA", source: "Ultima, the High Seraph" } diff --git a/timelines/src/main/resources/timeline/royal_city_of_rabanastre.txt b/timelines/src/main/resources/timeline/royal_city_of_rabanastre.txt index 1b976cc816bf..fc6e4740a37c 100644 --- a/timelines/src/main/resources/timeline/royal_city_of_rabanastre.txt +++ b/timelines/src/main/resources/timeline/royal_city_of_rabanastre.txt @@ -196,8 +196,9 @@ hideall "--start--" 2201.3 "Archaeodemon Adds" AddedCombatant { name: "Archaeodemon" } window 300,300 2208.3 "--lock out--" # ??? from video -# TODO: could trigger instead off of Rofocale losing Sprint which happens ~here -2400.0 "--sync--" GameLog { code: "0044", line: "The heavens tremble in my wake.*?" } window 500,0 +# https://xivapi.com/InstanceContentTextData/18031 +# en: The heavens tremble in my wake! +2400.0 "--sync--" BattleTalk2 { instanceContentTextId: "466F" } window 500,0 2417.6 "--sync--" StartsUsing { id: "268A", source: "Rofocale" } window 500,10 2421.1 "Heavenly Subjugation" 2433.5 "Embrace" Ability { id: "2685", source: "Rofocale" } diff --git a/timelines/src/main/resources/timeline/translations/eureka_hydatos.txt.json b/timelines/src/main/resources/timeline/translations/eureka_hydatos.txt.json index f03ec1dfa3f9..5646d35aebc2 100644 --- a/timelines/src/main/resources/timeline/translations/eureka_hydatos.txt.json +++ b/timelines/src/main/resources/timeline/translations/eureka_hydatos.txt.json @@ -1 +1 @@ -{"langs":{"cn":{"replaceSync":{"(?