diff --git a/ui/raidboss/data/05-shb/alliance/the_tower_at_paradigms_breach.ts b/ui/raidboss/data/05-shb/alliance/the_tower_at_paradigms_breach.ts index bfc87840d4..b9c53c5965 100644 --- a/ui/raidboss/data/05-shb/alliance/the_tower_at_paradigms_breach.ts +++ b/ui/raidboss/data/05-shb/alliance/the_tower_at_paradigms_breach.ts @@ -39,6 +39,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EB5', source: 'Jack', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5EB5', source: 'ジャック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5EB5', source: '杰克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5EB5', source: '잭', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -50,6 +51,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EA4', source: 'Jack', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5EA4', source: 'ジャック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5EA4', source: '杰克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5EA4', source: '잭', capture: false }), durationSeconds: 5, response: Responses.goMiddle(), }, @@ -61,6 +63,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EA4', source: 'Réplique De Jack', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5EA4', source: '複製サレタジャック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5EA4', source: '复制的杰克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5EA4', source: '복제된 잭', capture: false }), // Cast time of 8 seconds, clones start casting 6 seconds into the cast. delaySeconds: 2.1, durationSeconds: 5, @@ -74,6 +77,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EA7', source: 'Jack', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5EA7', source: 'ジャック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5EA7', source: '杰克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5EA7', source: '잭', capture: false }), durationSeconds: 5, alertText: (_data, _matches, output) => output.text!(), tts: (_data, _matches, output) => output.ttsText!(), @@ -104,6 +108,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EA7', source: 'Réplique De Jack', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5EA7', source: '複製サレタジャック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5EA7', source: '复制的杰克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5EA7', source: '복제된 잭', capture: false }), delaySeconds: 2.1, durationSeconds: 5, alertText: (_data, _matches, output) => output.text!(), @@ -189,6 +194,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EB1', source: 'Jack' }), netRegexJa: NetRegexes.startsUsing({ id: '5EB1', source: 'ジャック' }), netRegexCn: NetRegexes.startsUsing({ id: '5EB1', source: '杰克' }), + netRegexKo: NetRegexes.startsUsing({ id: '5EB1', source: '잭' }), delaySeconds: (_data, matches) => parseFloat(matches.castTime) - 6, durationSeconds: 5, infoText: (_data, _matches, output) => output.text!(), @@ -211,6 +217,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5EB1', source: 'Réplique De Jack' }), netRegexJa: NetRegexes.startsUsing({ id: '5EB1', source: '複製サレタジャック' }), netRegexCn: NetRegexes.startsUsing({ id: '5EB1', source: '复制的杰克' }), + netRegexKo: NetRegexes.startsUsing({ id: '5EB1', source: '복제된 잭' }), condition: (data) => !data.cloneLunge, delaySeconds: (_data, matches) => parseFloat(matches.castTime) - 6, durationSeconds: 5, @@ -235,6 +242,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '60C7', source: 'Jack' }), netRegexJa: NetRegexes.startsUsing({ id: '60C7', source: 'ジャック' }), netRegexCn: NetRegexes.startsUsing({ id: '60C7', source: '杰克' }), + netRegexKo: NetRegexes.startsUsing({ id: '60C7', source: '잭' }), // Half a second longer cast time than the Lunge itself delaySeconds: (_data, matches) => parseFloat(matches.castTime) - 6.5, durationSeconds: 5, @@ -258,6 +266,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '60C8', source: 'Jack' }), netRegexJa: NetRegexes.startsUsing({ id: '60C8', source: 'ジャック' }), netRegexCn: NetRegexes.startsUsing({ id: '60C8', source: '杰克' }), + netRegexKo: NetRegexes.startsUsing({ id: '60C8', source: '잭' }), delaySeconds: (_data, matches) => parseFloat(matches.castTime) - 6.5, durationSeconds: 5, alertText: (_data, _matches, output) => output.text!(), @@ -280,6 +289,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C69', source: 'Gretel', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C69', source: 'グレーテル', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C69', source: '格雷特', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C69', source: '그레텔', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -300,6 +310,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C6B', source: 'Hansel', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C6B', source: 'ヘンゼル', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C6B', source: '韩塞尔', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C6B', source: '헨젤', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -320,6 +331,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C7[67]', source: ['Hansel', 'Gretel'], capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C7[67]', source: ['ヘンゼル', 'グレーテル'], capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C7[67]', source: ['韩塞尔', '格雷特'], capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C7[67]', source: ['헨젤', '그레텔'], capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -331,6 +343,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C7[89]', source: ['Hansel', 'Gretel'] }), netRegexJa: NetRegexes.startsUsing({ id: '5C7[89]', source: ['ヘンゼル', 'グレーテル'] }), netRegexCn: NetRegexes.startsUsing({ id: '5C7[89]', source: ['韩塞尔', '格雷特'] }), + netRegexKo: NetRegexes.startsUsing({ id: '5C7[89]', source: ['헨젤', '그레텔'] }), condition: Conditions.targetIsYou(), response: Responses.tankBuster(), }, @@ -380,6 +393,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C7[34]', source: ['Hansel', 'Gretel'], capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C7[34]', source: ['ヘンゼル', 'グレーテル'], capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C7[34]', source: ['韩塞尔', '格雷特'], capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C7[34]', source: ['헨젤', '그레텔'], capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -391,6 +405,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '601[23]', source: 'Fille En Rouge', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '601[23]', source: '赤い少女', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '601[23]', source: '红衣少女', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '601[23]', source: '붉은 소녀', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -402,6 +417,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '618D', source: 'Noyau Orange', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '618D', source: '赤球', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '618D', source: '红球', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '618D', source: '붉은 공', capture: false }), infoText: (data, _matches, output) => { // Skip the first callout, since you're still zoning in if (data.seenSphere) @@ -427,6 +443,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '618E', source: 'Noyau Orange', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '618E', source: '赤球', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '618E', source: '红球', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '618E', source: '붉은 공', capture: false }), infoText: (data, _matches, output) => { if (data.seenSphere) return output.text!(); @@ -451,6 +468,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C06', source: ['Meng-Zi', 'Xun-Zi'], capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C06', source: ['モウシ', 'ジュンシ'], capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C06', source: ['孟子', '荀子'], capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C06', source: ['맹자', '순자'], capture: false }), condition: Conditions.caresAboutAOE(), suppressSeconds: 5, response: Responses.aoe(), @@ -463,6 +481,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BDD', source: 'Déesse Factice', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BDD', source: '偽造サレタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BDD', source: '伪造的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BDD', source: '위조된 신', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -474,6 +493,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BD6', source: 'Déesse Factice', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BD6', source: '偽造サレタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BD6', source: '伪造的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BD6', source: '위조된 신', capture: false }), durationSeconds: 5, response: Responses.goRight(), }, @@ -485,6 +505,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BD7', source: 'Déesse Factice', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BD7', source: '偽造サレタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BD7', source: '伪造的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BD7', source: '위조된 신', capture: false }), durationSeconds: 5, response: Responses.goLeft(), }, @@ -559,6 +580,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BF5', source: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BF5', source: '開花シタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BF5', source: '开花的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BF5', source: '꽃피운 신', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -571,6 +593,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ id: '5BE1', source: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.ability({ id: '5BE1', source: '開花シタ神', capture: false }), netRegexCn: NetRegexes.ability({ id: '5BE1', source: '开花的神明', capture: false }), + netRegexKo: NetRegexes.ability({ id: '5BE1', source: '꽃피운 신', capture: false }), durationSeconds: 5, alertText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -592,6 +615,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BE3', source: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BE3', source: '開花シタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BE3', source: '开花的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BE3', source: '꽃피운 신', capture: false }), run: (data) => data.signalCount = 0, }, { @@ -602,6 +626,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.tether({ id: '0036', target: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.tether({ id: '0036', target: '開花シタ神', capture: false }), netRegexCn: NetRegexes.tether({ id: '0036', target: '开花的神明', capture: false }), + netRegexKo: NetRegexes.tether({ id: '0036', target: '꽃피운 신', capture: false }), preRun: (data) => data.signalCount = (data.signalCount ?? 0) + 1, durationSeconds: 5, alertText: (data, _matches, output) => { @@ -627,6 +652,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BED', source: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BED', source: '開花シタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BED', source: '开花的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BED', source: '꽃피운 신', capture: false }), response: Responses.goSides(), }, { @@ -637,6 +663,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5BEF', source: 'Déesse Éclose', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5BEF', source: '開花シタ神', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5BEF', source: '开花的神明', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5BEF', source: '꽃피운 신', capture: false }), suppressSeconds: 1, response: Responses.goFrontBack(), }, @@ -1073,6 +1100,108 @@ const triggerSet: TriggerSet = { 'Wipe: White': '大爆炸:白', }, }, + { + 'locale': 'ko', + 'missingTranslations': true, + 'replaceSync': { + '2P-Operated Flight Unit': '2P: 비행 유닛 장비', + 'Beyond': '정상', + 'Black Lance': '검은 창', + 'Black Pylon': '검은 기둥', + 'Closed Area A': '봉쇄 구획 A', + 'Copied Knave': '복제된 잭', + 'False Idol': '위조된 신', + 'Her Inflorescence': '꽃피운 신', + 'Knave Of Hearts': '잭', + 'Meng-Zi': '맹자', + 'Red Girl': '붉은 소녀', + 'Red Sphere': '붉은 공', + 'Serial-Jointed Model': '다관절형', + 'Spheroid': '구체', + 'Staging Node B': '요격 구획 B', + 'Staging Node C': '요격 구획 C', + 'Staging Node D': '요격 구획 D', + 'The Ascension Platform': '승강기', + 'White Lance': '하얀 창', + 'Xun-Zi': '순자', + 'Hansel & Gretel': '헨젤과 그레텔', + '(? = { netRegexFr: NetRegexes.startsUsing({ id: '5C4E', source: 'Amhuluk' }), netRegexJa: NetRegexes.startsUsing({ id: '5C4E', source: 'アムルック' }), netRegexCn: NetRegexes.startsUsing({ id: '5C4E', source: '阿姆鲁克' }), + netRegexKo: NetRegexes.startsUsing({ id: '5C4E', source: '아물룩' }), condition: Conditions.caresAboutPhysical(), response: Responses.tankBuster(), }, @@ -43,6 +44,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C4D', source: 'Amhuluk', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C4D', source: 'アムルック', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C4D', source: '阿姆鲁克', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C4D', source: '아물룩', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -78,6 +80,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5C97', source: 'Forteresse Magitek', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5C97', source: '魔導フォートレス', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5C97', source: '魔导要塞', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5C97', source: '마도 요새', capture: false }), response: Responses.knockback(), }, { @@ -100,6 +103,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5B47', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5B47', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5B47', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5B47', source: '루나 바하무트', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -124,6 +128,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ id: '5B4D', source: 'Luna-Bahamut' }), netRegexJa: NetRegexes.ability({ id: '5B4D', source: 'ルナバハムート' }), netRegexCn: NetRegexes.ability({ id: '5B4D', source: '真月巴哈姆特' }), + netRegexKo: NetRegexes.ability({ id: '5B4D', source: '루나 바하무트' }), condition: Conditions.targetIsYou(), alertText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -162,6 +167,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ id: '5B4F', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.ability({ id: '5B4F', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.ability({ id: '5B4F', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.ability({ id: '5B4F', source: '루나 바하무트', capture: false }), alertText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -182,6 +188,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ id: '5B49', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.ability({ id: '5B49', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.ability({ id: '5B49', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.ability({ id: '5B49', source: '루나 바하무트', capture: false }), run: (data) => data.lunarFlares = 0, }, { @@ -192,6 +199,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5B4[AB]', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5B4[AB]', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5B4[AB]', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5B4[AB]', source: '루나 바하무트', capture: false }), run: (data) => data.lunarFlares = (data.lunarFlares ?? 0) + 1, }, { @@ -203,6 +211,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5B4[AB]', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5B4[AB]', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5B4[AB]', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5B4[AB]', source: '루나 바하무트', capture: false }), delaySeconds: 0.5, suppressSeconds: 1, alertText: (data, _matches, output) => { @@ -238,6 +247,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5B58', source: 'Luna-Bahamut' }), netRegexJa: NetRegexes.startsUsing({ id: '5B58', source: 'ルナバハムート' }), netRegexCn: NetRegexes.startsUsing({ id: '5B58', source: '真月巴哈姆特' }), + netRegexKo: NetRegexes.startsUsing({ id: '5B58', source: '루나 바하무트' }), condition: Conditions.caresAboutPhysical(), response: Responses.tankBuster(), }, @@ -249,6 +259,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ id: '5B57', source: 'Luna-Bahamut', capture: false }), netRegexJa: NetRegexes.startsUsing({ id: '5B57', source: 'ルナバハムート', capture: false }), netRegexCn: NetRegexes.startsUsing({ id: '5B57', source: '真月巴哈姆特', capture: false }), + netRegexKo: NetRegexes.startsUsing({ id: '5B57', source: '루나 바하무트', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -384,6 +395,36 @@ const triggerSet: TriggerSet = { 'Wide Blaster': '广域冲击波', }, }, + { + 'locale': 'ko', + 'missingTranslations': true, + 'replaceSync': { + 'Amhuluk': '아물룩', + 'Lunar Bahamut': '루나 바하무트', + 'Magitek Fortress': '마도 요새', + 'Magitek Core': '마도핵', + 'Sunseat': '황혼의 뜰', + 'The Gathering Ring': '졸마크 제단', + }, + 'replaceText': { + 'Akh Morn': '아크 몬', + 'Big Burst': '대폭발', + 'Critical Rip': '찢어가르기', + 'Electric Burst': '전하 폭발', + 'Flatten': '압사', + 'Gigaflare': '기가플레어', + 'Kan Rhai': '칸 라이', + 'Lightning Bolt': '번개 발생', + 'Lunar Flare': '루나 플레어', + 'Megaflare Dive': '메가플레어 다이브', + 'Perigean Breath': '근지점 입김', + 'Spike Flail': '가시 매타작', + 'Thundercall': '초뢰', + 'Twisted Scream': '기괴한 포효', + 'Upburst': '돌출', + 'Wide Blaster': '광범위 블래스터', + }, + }, ], }; diff --git a/ui/raidboss/data/05-shb/trial/diamond_weapon-ex.ts b/ui/raidboss/data/05-shb/trial/diamond_weapon-ex.ts index 5edb9e7afe..392ae26dd6 100644 --- a/ui/raidboss/data/05-shb/trial/diamond_weapon-ex.ts +++ b/ui/raidboss/data/05-shb/trial/diamond_weapon-ex.ts @@ -44,6 +44,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA7', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA7', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA7', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA7', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), run: (data) => data.phase = data.phase ?? 1, @@ -64,6 +65,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5F9B', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5F9B', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5F9B', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5F9B', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -84,6 +86,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5F9A', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5F9A', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5F9A', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5F9A', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -104,6 +107,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA5', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA5', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA5', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA5', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -124,6 +128,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA4', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA4', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA4', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA4', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -144,6 +149,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA3', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA3', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA3', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA3', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -164,6 +170,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA2', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA2', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA2', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA2', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -185,6 +192,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA8', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA8', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA8', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA8', capture: false }), condition: Conditions.caresAboutMagical(), infoText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -207,6 +215,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FAD', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FAD', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FAD', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FAD', capture: false }), run: (data) => data.phase = 2, }, // Phase 2 @@ -218,6 +227,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FBC', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FBC', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FBC', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FBC', capture: false }), condition: Conditions.caresAboutMagical(), response: Responses.aoe(), }, @@ -229,6 +239,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FBD' }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FBD' }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FBD' }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FBD' }), condition: Conditions.caresAboutPhysical(), response: Responses.tankBusterSwap(), }, @@ -241,6 +252,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FAF', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FAF', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FAF', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FAF', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -262,6 +274,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FB2', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FB2', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FB2', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FB2', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -283,6 +296,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FB5', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FB5', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FB5', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FB5', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -304,6 +318,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FB7', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FB7', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FB7', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FB7', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -324,6 +339,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FC1', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FC1', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FC1', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FC1', capture: false }), durationSeconds: 15, infoText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -377,6 +393,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA9', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA9', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA9', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA9', capture: false }), durationSeconds: 20, infoText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -398,6 +415,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FAC', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FAC', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FAC', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FAC', capture: false }), alertText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -418,6 +436,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FAC', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FAC', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FAC', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FAC', capture: false }), delaySeconds: 15, alertText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -547,6 +566,33 @@ const triggerSet: TriggerSet = { 'Vertical Cleave': '纵劈', }, }, + { + 'locale': 'ko', + 'missingTranslations': true, + 'replaceSync': { + 'Articulated Bit': '암 비트', + 'The Diamond Weapon': '다이아몬드 웨폰', + }, + 'replaceText': { + 'Adamant Purge': '장갑 전개', + 'Aetherial Bullet': '에테르 탄환', + 'Articulated Bits': '암 비트', + 'Auri Arts': '아우라의 무예', + 'Auri Cyclone': '아우라의 선풍', + 'Auri Doomstead': '아우라의 파멸', + 'Claw Swipe': '발톱 휘두르기', + 'Code Chi-Xi-Stigma': '코드 666', + 'Diamond Flash': '다이아몬드 섬광', + 'Diamond Rain': '다이아몬드 비', + 'Diamond Shot': '다이아몬드 발사', + 'Diamond Shrapnel': '다이아몬드 유산탄', + 'Flood Ray': '침수광', + 'Homing Laser': '추적 레이저', + 'Outrage': '격노', + 'Photon Burst': '광자 폭발', + 'Vertical Cleave': '수직 쪼개기', + }, + }, ], }; diff --git a/ui/raidboss/data/05-shb/trial/diamond_weapon.ts b/ui/raidboss/data/05-shb/trial/diamond_weapon.ts index 1481d1bfd5..ca28da0873 100644 --- a/ui/raidboss/data/05-shb/trial/diamond_weapon.ts +++ b/ui/raidboss/data/05-shb/trial/diamond_weapon.ts @@ -38,6 +38,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FA7', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FA7', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FA7', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FA7', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -49,6 +50,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5F9A', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5F9A', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5F9A', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5F9A', capture: false }), durationSeconds: 10, alertText: (_data, _matches, output) => output.teleportWest!(), outputStrings: sharedOutputStrings, @@ -61,6 +63,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5F9B', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5F9B', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5F9B', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5F9B', capture: false }), durationSeconds: 10, alertText: (_data, _matches, output) => output.teleportEast!(), outputStrings: sharedOutputStrings, @@ -91,6 +94,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ source: 'Arme Diamant', id: '5779' }), netRegexJa: NetRegexes.ability({ source: 'ダイヤウェポン', id: '5779' }), netRegexCn: NetRegexes.ability({ source: '钻石神兵', id: '5779' }), + netRegexKo: NetRegexes.ability({ source: '다이아몬드 웨폰', id: '5779' }), durationSeconds: 5, response: Responses.stackMarkerOn(), }, @@ -102,6 +106,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FE6', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FE6', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FE6', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FE6', capture: false }), delaySeconds: 0.5, durationSeconds: 6, response: Responses.knockback(), @@ -114,6 +119,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FE8', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FE8', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FE8', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FE8', capture: false }), durationSeconds: 5, alertText: (_data, _matches, output) => output.teleportEast!(), outputStrings: sharedOutputStrings, @@ -126,6 +132,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FD7', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FD7', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FD7', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FD7', capture: false }), condition: Conditions.caresAboutAOE(), response: Responses.aoe(), }, @@ -137,6 +144,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FD8' }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FD8' }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FD8' }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FD8' }), response: Responses.tankBuster(), }, { @@ -147,6 +155,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.startsUsing({ source: 'Arme Diamant', id: '5FE5', capture: false }), netRegexJa: NetRegexes.startsUsing({ source: 'ダイヤウェポン', id: '5FE5', capture: false }), netRegexCn: NetRegexes.startsUsing({ source: '钻石神兵', id: '5FE5', capture: false }), + netRegexKo: NetRegexes.startsUsing({ source: '다이아몬드 웨폰', id: '5FE5', capture: false }), durationSeconds: 5, response: Responses.knockback(), }, @@ -176,6 +185,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ source: 'Arme Diamant', id: '5FA9', capture: false }), netRegexJa: NetRegexes.ability({ source: 'ダイヤウェポン', id: '5FA9', capture: false }), netRegexCn: NetRegexes.ability({ source: '钻石神兵', id: '5FA9', capture: false }), + netRegexKo: NetRegexes.ability({ source: '다이아몬드 웨폰', id: '5FA9', capture: false }), infoText: (_data, _matches, output) => output.text!(), outputStrings: { text: { @@ -196,6 +206,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ source: 'Arme Diamant', id: '6144', capture: false }), netRegexJa: NetRegexes.ability({ source: 'ダイヤウェポン', id: '6144', capture: false }), netRegexCn: NetRegexes.ability({ source: '钻石神兵', id: '6144', capture: false }), + netRegexKo: NetRegexes.ability({ source: '다이아몬드 웨폰', id: '6144', capture: false }), durationSeconds: 8, infoText: (_data, _matches, output) => output.text!(), outputStrings: { @@ -218,6 +229,7 @@ const triggerSet: TriggerSet = { netRegexFr: NetRegexes.ability({ source: 'Arme Diamant', id: '5F9C', capture: false }), netRegexJa: NetRegexes.ability({ source: 'ダイヤウェポン', id: '5F9C', capture: false }), netRegexCn: NetRegexes.ability({ source: '钻石神兵', id: '5F9C', capture: false }), + netRegexKo: NetRegexes.ability({ source: '다이아몬드 웨폰', id: '5F9C', capture: false }), delaySeconds: 3, durationSeconds: 7, response: Responses.spread(), @@ -337,6 +349,33 @@ const triggerSet: TriggerSet = { 'Vertical Cleave': '纵劈', }, }, + { + 'locale': 'ko', + 'missingTranslations': true, + 'replaceSync': { + 'Articulated Bit': '암 비트', + 'The Diamond Weapon': '다이아몬드 웨폰', + }, + 'replaceText': { + 'Adamant Purge': '장갑 전개', + 'Adamant Sphere': '다이아몬드 구체', + 'Aetherial Bullet': '에테르 탄환', + 'Airship\'s Bane': '비공정 격파', + 'Articulated Bits': '암 비트', + 'Auri Arts': '아우라의 무예', + 'Auri Cyclone': '아우라의 선풍', + 'Auri Doomstead': '아우라의 파멸', + 'Claw Swipe': '발톱 휘두르기', + 'Code Chi-Xi-Stigma': '코드 666', + 'Diamond Flash': '다이아몬드 섬광', + 'Diamond Rain': '다이아몬드 비', + 'Diamond Shrapnel': '다이아몬드 유산탄', + 'Homing Laser': '추적 레이저', + 'Outrage': '격노', + 'Photon Burst': '광자 폭발', + 'Vertical Cleave': '수직 쪼개기', + }, + }, ], };