Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

raidboss/oopsy: Add Byakko Unreal #502

Merged
merged 7 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions ui/oopsyraidsy/data/04-sb/trial/byakko-ex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,24 +11,24 @@ const triggerSet: OopsyTriggerSet<Data> = {
zoneId: ZoneId.TheJadeStoaExtreme,
damageWarn: {
// Popping Unrelenting Anguish bubbles
'ByaEx Aratama': '27F6',
'ByakkoEx Aratama': '27F6',
// Stepping in growing orb
'ByaEx Vacuum Claw': '27E9',
'ByakkoEx Vacuum Claw': '27E9',
// Lightning Puddles
'ByaEx Hunderfold Havoc 1': '27E5',
'ByaEx Hunderfold Havoc 2': '27E6',
'ByakkoEx Hunderfold Havoc 1': '27E5',
'ByakkoEx Hunderfold Havoc 2': '27E6',
},
damageFail: {
'ByaEx Sweep The Leg': '27DB',
'ByaEx Fire and Lightning': '27DE',
'ByaEx Distant Clap': '27DD',
'ByakkoEx Sweep The Leg': '27DB',
'ByakkoEx Fire and Lightning': '27DE',
'ByakkoEx Distant Clap': '27DD',
// Midphase line attack
'ByaEx Imperial Guard': '27F1',
'ByakkoEx Imperial Guard': '27F1',
},
triggers: [
{
// Pink bubble collision
id: 'ByaEx Ominous Wind',
id: 'ByakkoEx Ominous Wind',
type: 'Ability',
netRegex: NetRegexes.ability({ id: '27EC', ...playerDamageFields }),
mistake: (_data, matches) => {
Expand Down
58 changes: 58 additions & 0 deletions ui/oopsyraidsy/data/07-dt/trial/byakko-un.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
// This file was autogenerated from running npm run sync-files.
// DO NOT EDIT THIS FILE DIRECTLY.
// Edit the source file below and then run `npm run sync-files`
// Source: ui/oopsyraidsy/data/04-sb/trial/byakko-ex.ts

import NetRegexes from '../../../../../resources/netregexes';
import ZoneId from '../../../../../resources/zone_id';
import { OopsyData } from '../../../../../types/data';
import { OopsyTriggerSet } from '../../../../../types/oopsy';
import { playerDamageFields } from '../../../oopsy_common';

export type Data = OopsyData;

// Byakko Unreal
const triggerSet: OopsyTriggerSet<Data> = {
zoneId: ZoneId.TheJadeStoaUnreal,
damageWarn: {
// Popping Unrelenting Anguish bubbles
'ByakkoUn Aratama': '9C16',
// Stepping in growing orb
'ByakkoUn Vacuum Claw': '9C0A',
// Lightning Puddles
'ByakkoUn Hunderfold Havoc 1': '9C06',
'ByakkoUn Hunderfold Havoc 2': '9C07',
},
damageFail: {
'ByakkoUn Sweep The Leg': '9BFC',
'ByakkoUn Fire and Lightning': '9BFF',
'ByakkoUn Distant Clap': '9BFE',
// Midphase line attack
'ByakkoUn Imperial Guard': '9C12',
},
triggers: [
{
// Pink bubble collision
id: 'ByakkoUn Ominous Wind',
type: 'Ability',
netRegex: NetRegexes.ability({ id: '9C0D', ...playerDamageFields }),
mistake: (_data, matches) => {
return {
type: 'warn',
blame: matches.target,
reportId: matches.targetId,
text: {
en: 'bubble collision',
de: 'Blasen sind zusammengestoßen',
fr: 'Collision avec une bulle',
ja: '衝突',
cn: '相撞',
ko: '장판 겹쳐서 터짐',
},
};
},
},
],
};

export default triggerSet;
71 changes: 33 additions & 38 deletions ui/raidboss/data/04-sb/trial/byakko-ex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,31 +16,31 @@ const triggerSet: TriggerSet<Data> = {
timelineFile: 'byakko-ex.txt',
triggers: [
{
id: 'ByaEx Heavenly Strike',
id: 'ByakkoEx Heavenly Strike',
type: 'StartsUsing',
netRegex: { id: '27DA', source: 'Byakko' },
response: Responses.tankBuster(),
response: Responses.tankCleave(),
},
{
id: 'ByaEx Flying Donut',
id: 'ByakkoEx Sweep The Leg Intermission', // Donut AoE, no outer safe spots
type: 'StartsUsing',
netRegex: { id: '27F4', source: 'Byakko', capture: false },
response: Responses.getIn(),
},
{
id: 'ByaEx Sweep The Leg',
id: 'ByakkoEx Sweep The Leg Standard', // 270-degree frontal cleave
type: 'StartsUsing',
netRegex: { id: '27DB', source: 'Byakko', capture: false },
response: Responses.getBehind(),
},
{
id: 'ByaEx Storm Pulse',
id: 'ByakkoEx Storm Pulse',
type: 'StartsUsing',
netRegex: { id: '27DC', source: 'Byakko', capture: false },
response: Responses.aoe(),
},
{
id: 'ByaEx Distant Clap',
id: 'ByakkoEx Distant Clap',
type: 'StartsUsing',
netRegex: { id: '27DD', source: 'Byakko', target: 'Byakko', capture: false },
alertText: (_data, _matches, output) => output.text!(),
Expand All @@ -56,7 +56,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx State Of Shock Tank 1',
id: 'ByakkoEx State Of Shock Tank 1',
type: 'StartsUsing',
netRegex: { id: '27E0', source: 'Byakko' },
condition: (data, matches) => data.role === 'tank' && matches.target !== data.me,
Expand All @@ -73,7 +73,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx State Of Shock Tank 2',
id: 'ByakkoEx State Of Shock Tank 2',
type: 'StartsUsing',
netRegex: { id: '27E0', source: 'Byakko' },
condition: (data, matches) => data.role === 'tank' && matches.target === data.me,
Expand All @@ -91,15 +91,15 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx Roar Counter',
id: 'ByakkoEx Roar Counter',
type: 'StartsUsing',
netRegex: { id: '27F9', source: 'Hakutei', capture: false },
run: (data) => {
data.roarCount = (data.roarCount ?? 0) + 1;
},
},
{
id: 'ByaEx Roar of Thunder',
id: 'ByakkoEx Roar Of Thunder',
type: 'StartsUsing',
netRegex: { id: '27F9', source: 'Hakutei', capture: false },
delaySeconds: 14,
Expand All @@ -122,7 +122,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx Bubble',
id: 'ByakkoEx Gale Force', // Role spreads + expanding hemispheres
type: 'HeadMarker',
netRegex: { id: '0065' },
condition: Conditions.targetIsYou(),
Expand All @@ -139,7 +139,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx Ominous Wind',
id: 'ByakkoEx Ominous Wind',
type: 'GainsEffect',
netRegex: { effectId: '5C9' },
condition: Conditions.targetIsYou(),
Expand All @@ -156,7 +156,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx Puddle Marker',
id: 'ByakkoEx Aratama', // Prey marker + 3x puddles
type: 'HeadMarker',
netRegex: { id: '0004' },
condition: Conditions.targetIsYou(),
Expand All @@ -173,7 +173,7 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx G100',
id: 'ByakkoEx White Herald', // Tank flare marker
type: 'HeadMarker',
netRegex: { id: '0057' },
condition: Conditions.targetIsYou(),
Expand All @@ -192,7 +192,7 @@ const triggerSet: TriggerSet<Data> = {
// https://xivapi.com/InstanceContentTextData/18606
// en: Twofold is my wrath, twice-cursed my foes!
{
id: 'ByaEx Tiger Add',
id: 'ByakkoEx Tiger Add',
type: 'BattleTalk2',
netRegex: { instanceContentTextId: '48AE', capture: false },
condition: (data) => data.role === 'tank' || data.job === 'BLU',
Expand All @@ -209,22 +209,22 @@ const triggerSet: TriggerSet<Data> = {
},
},
{
id: 'ByaEx Stake Counter',
id: 'ByakkoEx Stake Counter',
type: 'StartsUsing',
netRegex: { id: '27E2', source: 'Byakko', capture: false },
run: (data) => {
data.stakeCount = (data.stakeCount ?? 0) + 1;
},
},
{
id: 'ByaEx Stake Counter Cleanup',
id: 'ByakkoEx Stake Counter Cleanup',
type: 'StartsUsing',
netRegex: { id: '27E2', source: 'Byakko', capture: false },
delaySeconds: 20,
run: (data) => delete data.stakeCount,
},
{
id: 'ByaEx Highest Stakes',
id: 'ByakkoEx Highest Stakes',
type: 'StartsUsing',
netRegex: { id: '27E2', source: 'Byakko', capture: false },
infoText: (data, _matches, output) => output.text!({ num: data.stakeCount }),
Expand All @@ -250,7 +250,6 @@ const triggerSet: TriggerSet<Data> = {
},
'replaceText': {
'--Hakutei Add--': '--Hakutei Add--',
'--leap north--': '--Sprung nach Norden--',
'--tiger targetable--': '--Tiger anvisierbar--',
'--tiger untargetable--': '--Tiger nicht anvisierbar--',
'Answer On High': 'Himmlische Antwort',
Expand All @@ -259,17 +258,17 @@ const triggerSet: TriggerSet<Data> = {
'Dance Of The Incomplete': 'Tanz der zwei Gesichter',
'Distant Clap': 'Donnergrollen',
'Fell Swoop': 'Auf einen Streich',
'Fire and Lightning': 'Feuer und Blitz',
'Fire And Lightning': 'Feuer und Blitz',
'Gale Force': 'Orkan',
'Heavenly Strike': 'Himmlischer Schlag',
'Highest Stakes': 'Höchstes Risiko',
'Hundredfold Havoc': 'Hundertfache Verwüstung',
'Imperial Guard': 'Herbststurm',
'Ominous Wind': 'Unheilvoller Wind',
'State of Shock': 'Bannblitze',
'State Of Shock': 'Bannblitze',
'Steel Claw': 'Stahlklaue',
'Storm Pulse': 'Gewitterwelle',
'Sweep the Leg': 'Vertikalität',
'Sweep The Leg': 'Vertikalität',
'The Roar Of Thunder': 'Brüllen des Donners',
'The Voice Of Thunder': 'Stimme des Donners',
'Unrelenting Anguish': 'Pandämonium',
Expand All @@ -285,7 +284,6 @@ const triggerSet: TriggerSet<Data> = {
},
'replaceText': {
'--Hakutei Add--': '--Add Hakutei--',
'--leap north--': '--saut au nord--',
'--tiger targetable--': '--tigre ciblable--',
'--tiger untargetable--': '--tigre non ciblable--',
'Answer On High': 'Foudre céleste',
Expand All @@ -294,17 +292,17 @@ const triggerSet: TriggerSet<Data> = {
'Dance Of The Incomplete': 'Danse semi-bestiale',
'Distant Clap': 'Tonnerre lointain',
'Fell Swoop': 'Éléments déchaînés',
'Fire and Lightning': 'Feu et foudre',
'Fire And Lightning': 'Feu et foudre',
'Gale Force': 'Coup de rafale',
'Heavenly Strike': 'Frappe céleste',
'Highest Stakes': 'Tout pour le tout',
'Hundredfold Havoc': 'Ravages centuples',
'Imperial Guard': 'Garde impériale',
'Ominous Wind': 'Vent mauvais',
'State of Shock': 'Foudroiement brutal',
'State Of Shock': 'Foudroiement brutal',
'Steel Claw': 'Griffe d\'acier',
'Storm Pulse': 'Pulsion de tempête',
'Sweep the Leg': 'Verticalité',
'Sweep The Leg': 'Verticalité',
'The Roar Of Thunder': 'Rugissement du tonnerre',
'The Voice Of Thunder': 'Voix du tonnerre',
'Unrelenting Anguish': 'Douleur continuelle',
Expand All @@ -320,25 +318,24 @@ const triggerSet: TriggerSet<Data> = {
'Twofold is my wrath, twice-cursed my foes!': '駆けろ、我が半身ッ!歯向かう者どもに、牙と爪を突き立ててやれ!',
},
'replaceText': {
'--leap north--': '--北に飛ぶ--',
'--tiger untargetable--': '--白帝タゲ不可--',
'Answer On High': '天つ雷',
'Bombogenesis': '爆弾低気圧',
'Clutch': '掌握',
'Dance Of The Incomplete': '半獣舞踏',
'Distant Clap': '遠雷',
'Fell Swoop': '迅雷風烈波',
'Fire and Lightning': '雷火一閃',
'Fire And Lightning': '雷火一閃',
'Gale Force': '暴風',
'Heavenly Strike': '天雷掌',
'Highest Stakes': '乾坤一擲',
'Hundredfold Havoc': '百雷繚乱',
'Imperial Guard': '白帝一陣',
'Ominous Wind': '祟り風',
'State of Shock': '呪縛雷',
'State Of Shock': '呪縛雷',
'Steel Claw': '鉄爪斬',
'Storm Pulse': '風雷波動',
'Sweep the Leg': '旋体脚',
'Sweep The Leg': '旋体脚',
'The Roar Of Thunder': '雷轟',
'The Voice Of Thunder': '雷声',
'Unrelenting Anguish': '無間地獄',
Expand All @@ -354,7 +351,6 @@ const triggerSet: TriggerSet<Data> = {
},
'replaceText': {
'--Hakutei Add--': '--白帝出现--',
'--leap north--': '--跳北--',
'--tiger targetable--': '--白帝可选中--',
'--tiger untargetable--': '--白帝无法选中--',
'Answer On High': '天雷',
Expand All @@ -363,17 +359,17 @@ const triggerSet: TriggerSet<Data> = {
'Dance Of The Incomplete': '半兽舞蹈',
'Distant Clap': '远雷',
'Fell Swoop': '迅雷风烈波',
'Fire and Lightning': '雷火一闪',
'Fire And Lightning': '雷火一闪',
'Gale Force': '暴风',
'Heavenly Strike': '天雷掌',
'Highest Stakes': '乾坤一掷',
'Hundredfold Havoc': '百雷缭乱',
'Imperial Guard': '白帝降临',
'Ominous Wind': '妖风',
'State of Shock': '咒缚雷',
'State Of Shock': '咒缚雷',
'Steel Claw': '铁爪斩',
'Storm Pulse': '风雷波动',
'Sweep the Leg': '旋体脚',
'Sweep The Leg': '旋体脚',
'The Roar Of Thunder': '雷轰',
'The Voice Of Thunder': '雷声',
'Unrelenting Anguish': '无间地狱',
Expand All @@ -389,7 +385,6 @@ const triggerSet: TriggerSet<Data> = {
},
'replaceText': {
'--Hakutei Add--': '--하얀 제왕 등장--',
'--leap north--': '--보스 북쪽으로 이동--',
'--tiger targetable--': '--호랑이 타겟가능--',
'--tiger untargetable--': '--호랑이 타겟불가--',
'Answer On High': '하늘의 번개',
Expand All @@ -398,17 +393,17 @@ const triggerSet: TriggerSet<Data> = {
'Dance Of The Incomplete': '반수의 춤',
'Distant Clap': '원뢰',
'Fell Swoop': '신뢰풍렬파',
'Fire and Lightning': '뇌화일섬',
'Fire And Lightning': '뇌화일섬',
'Gale Force': '폭풍',
'Heavenly Strike': '천뢰장',
'Highest Stakes': '건곤일척',
'Hundredfold Havoc': '백뢰요란',
'Imperial Guard': '제왕의 진격',
'Ominous Wind': '불길한 바람',
'State of Shock': '주박뢰',
'State Of Shock': '주박뢰',
'Steel Claw': '강철 발톱',
'Storm Pulse': '풍뢰파동',
'Sweep the Leg': '돌려차기',
'Sweep The Leg': '돌려차기',
'The Roar Of Thunder': '뇌굉',
'The Voice Of Thunder': '뇌성',
'Unrelenting Anguish': '무간지옥',
Expand Down
Loading
Loading