From ded56c9dc9ba33bc4b6707d6d5870683d0a4877a Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Wed, 27 May 2026 18:59:29 +0200 Subject: [PATCH 1/9] fix(Pyromancer): register Cauterize (Magic/Poison), bump 1.1.7 Cauterize (560749) clears Magic + Poison via a dummy script effect and removes 1 bleed via Dispel Mechanic. Decursive has no bleed type so only the magic/poison part is wired; bleed dispel is silently dropped. --- Decursive/DCR_init.lua | 2 ++ Decursive/Decursive.toc | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index 902b6d1..d825ffb 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -515,6 +515,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_SOOTHING_TOUCH_MOA"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist MoA DC.SpellsToUse[DS["COA_CLEANSING_IDOL"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Witch Doctor — Cleansing Idol (AoE, can't direct-target via click) DC.SpellsToUse[DS["COA_NANOBOT_CLEANSER"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Tinker — Nanobot Cleanser (single-target, direct-castable) + DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (upgraded Burn Impurities; bleed dispel not exposed to Decursive) end -- }}} @@ -1187,6 +1188,7 @@ function D:GetSpellsTranslations(FromDIAG) ["COA_SOOTHING_TOUCH_MOA"] = { 520841, }, -- Primalist MoA (Poison, Disease — same Soothing-Touch variant pattern as Venomancer's Antivenom/Blight pair) ["COA_CLEANSING_IDOL"] = { 504840, }, -- Witch Doctor (Disease, Poison — AoE idol, 30yd, ticks every 3s) ["COA_NANOBOT_CLEANSER"] = { 502537, }, -- Tinker / Invention (Disease, Poison — single-target, 40yd, ticks every 3s for 15s) + ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; also removes 1 bleed via Dispel Mechanic — bleed not modelled by Decursive) } for k,v in pairs(customSpells) do Spells[k] = v end end diff --git a/Decursive/Decursive.toc b/Decursive/Decursive.toc index 5093101..96c0a27 100644 --- a/Decursive/Decursive.toc +++ b/Decursive/Decursive.toc @@ -18,7 +18,7 @@ ## SavedVariables: DecursiveDB -## Version: Asc-1.1.6-coa (orig 2.5.1-6-gd3885c5) +## Version: Asc-1.1.7-coa (orig 2.5.1-6-gd3885c5) ## Author: Archarodim ## X-License: All Rights Reserved From d3baa861859a28a337fa9f857d5bacec3c9b78f9 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Wed, 27 May 2026 19:08:09 +0200 Subject: [PATCH 2/9] feat(bleed): add DC.BLEED synthetic dispel type, wire Cauterize, bump 1.1.8 UnitAura returns "" for the dispel type on bleeds (mechanic 15 is not a Blizzard dispel category). New Dcr_BleedIDs.lua ships 1491 bleed-aura spell IDs auto-generated from coa-db Postgres (effect=APPLY_AURA, aura=PERIODIC_DAMAGE, mechanic=BLEED). GetUnitDebuff now pulls spellId and re-tags untyped debuffs as "Bleed" when the ID is in that set. DC.BLEED = 128, registered in TypeNames / TypeColors (dark red AA1111 to read distinct from CHARMED's bright red), CureOrder default 7, AuthorizedKeys/Values, options-UI checkbox, and all eight locales. Cauterize (560749) now lists DC.BLEED alongside MAGIC + POISON so the Pyromancer cleanse covers what the spell actually does in-game. Regenerate Dcr_BleedIDs.lua with the SQL header inside the file. --- Decursive/DCR_init.lua | 5 +- Decursive/Dcr_BleedIDs.lua | 1506 +++++++++++++++++++++++++++++++ Decursive/Dcr_opt.lua | 16 + Decursive/Decursive.lua | 10 +- Decursive/Decursive.toc | 3 +- Decursive/Localization/deDE.lua | 2 + Decursive/Localization/enUS.lua | 2 + Decursive/Localization/esES.lua | 1 + Decursive/Localization/frFR.lua | 2 + Decursive/Localization/koKR.lua | 2 + Decursive/Localization/ruRU.lua | 2 + Decursive/Localization/zhCN.lua | 2 + Decursive/Localization/zhTW.lua | 2 + 13 files changed, 1551 insertions(+), 4 deletions(-) create mode 100644 Decursive/Dcr_BleedIDs.lua diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index d825ffb..55f72a9 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -142,6 +142,7 @@ DC.POISON = 8; DC.DISEASE = 16; DC.CHARMED = 32; DC.NOTYPE = 64; +DC.BLEED = 128; -- CoA: synthetic dispel type (UnitAura returns "" for bleeds; we re-tag by spellId via DC.BleedSpellIDs) DC.NORMAL = 8; @@ -314,6 +315,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ [DC.POISON] = "Poison"; [DC.DISEASE] = "Disease"; [DC.CHARMED] = "Charm"; + [DC.BLEED] = "Bleed"; } DC.NameToTypes = D:tReverse(DC.TypeNames); @@ -326,6 +328,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ [DC.POISON] = "22DD22"; [DC.DISEASE] = "995533"; [DC.CHARMED] = "FF0000"; + [DC.BLEED] = "AA1111"; -- darker red so it reads distinct from CHARMED [DC.NOTYPE] = "AAAAAA"; } @@ -515,7 +518,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_SOOTHING_TOUCH_MOA"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist MoA DC.SpellsToUse[DS["COA_CLEANSING_IDOL"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Witch Doctor — Cleansing Idol (AoE, can't direct-target via click) DC.SpellsToUse[DS["COA_NANOBOT_CLEANSER"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Tinker — Nanobot Cleanser (single-target, direct-castable) - DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (upgraded Burn Impurities; bleed dispel not exposed to Decursive) + DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON, DC.BLEED}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (Magic + Poison via dummy; 1 Bleed via Dispel Mechanic, re-tagged by DC.BleedSpellIDs) end -- }}} diff --git a/Decursive/Dcr_BleedIDs.lua b/Decursive/Dcr_BleedIDs.lua new file mode 100644 index 0000000..fdc2914 --- /dev/null +++ b/Decursive/Dcr_BleedIDs.lua @@ -0,0 +1,1506 @@ +-- Decursive — CoA bleed-aura spell IDs +-- Auto-generated from db.exil.es (coa-db) — DO NOT EDIT by hand. +-- Regenerate from coa-db Postgres with: +-- SELECT s.id, s.name FROM spell s +-- WHERE EXISTS (SELECT 1 FROM jsonb_array_elements(s.effects) e +-- WHERE (e->>'id')::int = 6 -- SPELL_EFFECT_APPLY_AURA +-- AND (e->>'aura')::int = 3 -- SPELL_AURA_PERIODIC_DAMAGE +-- AND (e->>'mechanic')::int = 15) -- MECHANIC_BLEED +-- ORDER BY s.id; +-- Generated: 2026-05-27T17:03:24Z Count: 1491 + +local DC = DcrC; + +DC.BleedSpellIDs = { + [703] = true, -- Garrote + [772] = true, -- Rend + [1079] = true, -- Rip + [1080] = true, -- Rip + [1081] = true, -- Rip + [1822] = true, -- Rake + [1823] = true, -- Rake + [1824] = true, -- Rake + [1826] = true, -- Rake + [1943] = true, -- Rupture + [3147] = true, -- Rend Flesh + [4102] = true, -- Gore + [4244] = true, -- Open Wound Effect + [6546] = true, -- Rend + [6547] = true, -- Rend + [6548] = true, -- Rend + [8631] = true, -- Garrote + [8632] = true, -- Garrote + [8633] = true, -- Garrote + [8639] = true, -- Rupture + [8640] = true, -- Rupture + [8818] = true, -- Garrote + [9492] = true, -- Rip + [9493] = true, -- Rip + [9752] = true, -- Rip + [9894] = true, -- Rip + [9896] = true, -- Rip + [9904] = true, -- Rake + [10044] = true, -- QA Test 3x Bleed stacks 0 damage + [11273] = true, -- Rupture + [11274] = true, -- Rupture + [11275] = true, -- Rupture + [11289] = true, -- Garrote + [11290] = true, -- Garrote + [11572] = true, -- Rend + [11573] = true, -- Rend + [11574] = true, -- Rend + [11575] = true, -- Rend + [11977] = true, -- Rend + [12054] = true, -- Rend + [12721] = true, -- Deep Wounds + [13318] = true, -- Shanked! + [13443] = true, -- Rend + [13445] = true, -- Rend + [13738] = true, -- Rend + [14087] = true, -- Rend + [14118] = true, -- Rend + [14331] = true, -- Vicious Rend + [14874] = true, -- Rupture + [14903] = true, -- Rupture + [15583] = true, -- Rupture + [15976] = true, -- Puncture + [16095] = true, -- Vicious Rend + [16393] = true, -- Rend + [16403] = true, -- Rend + [16406] = true, -- Rend + [16509] = true, -- Rend + [17153] = true, -- Rend + [17407] = true, -- Wound + [17504] = true, -- Rend + [18075] = true, -- Rend + [18078] = true, -- Rend + [18106] = true, -- Rend + [18200] = true, -- Rend + [18202] = true, -- Rend + [19771] = true, -- Serrated Bite + [21948] = true, -- Rend + [21949] = true, -- Rend + [24192] = true, -- Speed Slash + [24331] = true, -- Rake + [24332] = true, -- Rake + [25208] = true, -- Rend + [26839] = true, -- Garrote + [26867] = true, -- Rupture + [26884] = true, -- Garrote + [27003] = true, -- Rake + [27008] = true, -- Rip + [27556] = true, -- Rake + [27638] = true, -- Rake + [28913] = true, -- Flesh Rot + [29574] = true, -- Rend + [29578] = true, -- Rend + [29583] = true, -- Impale + [29906] = true, -- Ravage + [29935] = true, -- Gaping Maw + [30285] = true, -- Eagle Claw + [30639] = true, -- Carnivorous Bite + [31041] = true, -- Mangle + [31410] = true, -- Coral Cut + [31956] = true, -- Grievous Wound + [32019] = true, -- Gore + [32901] = true, -- Carnivorous Bite + [33745] = true, -- Lacerate + [33865] = true, -- Singe + [33912] = true, -- Rip + [35144] = true, -- Vicious Rend + [35318] = true, -- Saw Blade + [35321] = true, -- Gushing Wound + [36023] = true, -- Deathblow + [36054] = true, -- Deathblow + [36332] = true, -- Rake + [36383] = true, -- Carnivorous Bite + [36590] = true, -- Rip + [36617] = true, -- Gaping Maw + [36965] = true, -- Rend + [36991] = true, -- Rend + [37123] = true, -- Saw Blade + [37662] = true, -- Rend + [37973] = true, -- Coral Cut + [38363] = true, -- Gushing Wound + [38772] = true, -- Grievous Wound + [38801] = true, -- Grievous Wound + [38810] = true, -- Gaping Maw + [39198] = true, -- Carnivorous Bite + [39215] = true, -- Gushing Wound + [39382] = true, -- Carnivorous Bite + [40199] = true, -- Flesh Rip + [41092] = true, -- Carnivorous Bite + [41932] = true, -- Carnivorous Bite + [42395] = true, -- Lacerating Slash + [42397] = true, -- Rend Flesh + [42658] = true, -- Sic'em! + [43093] = true, -- Grievous Throw + [43153] = true, -- Lynx Rush + [43246] = true, -- Rend + [43931] = true, -- Rend + [43937] = true, -- Grievous Wound + [46845] = true, -- Rend + [47465] = true, -- Rend + [48130] = true, -- Gore + [48261] = true, -- Impale + [48286] = true, -- Grievous Slash + [48374] = true, -- Puncture Wound + [48567] = true, -- Lacerate + [48568] = true, -- Lacerate + [48573] = true, -- Rake + [48574] = true, -- Rake + [48671] = true, -- Rupture + [48672] = true, -- Rupture + [48675] = true, -- Garrote + [48676] = true, -- Garrote + [48880] = true, -- Rend + [48920] = true, -- Grievous Bite + [49678] = true, -- Flesh Rot + [49799] = true, -- Rip + [49800] = true, -- Rip + [50498] = true, -- Savage Rend + [50729] = true, -- Carnivorous Bite + [51275] = true, -- Gut Rip + [52401] = true, -- Gut Rip + [52504] = true, -- Lacerate + [52771] = true, -- Wounding Strike + [52873] = true, -- Open Wound + [53317] = true, -- Rend + [53499] = true, -- Rake + [53578] = true, -- Savage Rend + [53579] = true, -- Savage Rend + [53580] = true, -- Savage Rend + [53581] = true, -- Savage Rend + [53582] = true, -- Savage Rend + [53602] = true, -- Dart + [54668] = true, -- Rake + [54703] = true, -- Rend + [54708] = true, -- Rend + [55102] = true, -- Determined Gore + [55249] = true, -- Whirling Slash + [55276] = true, -- Puncture + [55550] = true, -- Jagged Knife + [55604] = true, -- Death Plague + [55622] = true, -- Impale + [55645] = true, -- Bloodletting + [57661] = true, -- Rip + [58459] = true, -- Impale + [58517] = true, -- Grievous Wound + [58830] = true, -- Wounding Strike + [58978] = true, -- Impale + [59007] = true, -- Flesh Rot + [59239] = true, -- Rend + [59256] = true, -- Impale + [59262] = true, -- Grievous Wound + [59264] = true, -- Gore + [59268] = true, -- Impale + [59269] = true, -- Carnivorous Bite + [59343] = true, -- Rend + [59349] = true, -- Dart + [59444] = true, -- Determined Gore + [59682] = true, -- Grievous Wound + [59691] = true, -- Rend + [59825] = true, -- Whirling Slash + [59826] = true, -- Puncture + [59881] = true, -- Rake (Pet) + [59882] = true, -- Rake (Pet) + [59883] = true, -- Rake (Pet) + [59884] = true, -- Rake (Pet) + [59885] = true, -- Rake (Pet) + [59886] = true, -- Rake (Pet) + [59989] = true, -- Rip + [61164] = true, -- Impale + [61896] = true, -- Lacerate + [62318] = true, -- Barbed Shot + [62331] = true, -- Impale + [62418] = true, -- Impale + [65033] = true, -- Constricting Rend + [66620] = true, -- Old Wounds + [67679] = true, -- Old Wounds + [70278] = true, -- Puncture Wound + [70279] = true, -- Puncture Wound + [71926] = true, -- Rip + [75160] = true, -- Bloody Rip + [80183] = true, -- Puncture + [80304] = true, -- Puncture + [80629] = true, -- Rend + [80636] = true, -- Serrated Bite + [83532] = true, -- Rend + [85137] = true, -- Gaping Maw + [85138] = true, -- Gaping Maw + [85139] = true, -- Gaping Maw + [85242] = true, -- Mangle + [85327] = true, -- Rend + [85339] = true, -- Impale + [85356] = true, -- Ravage + [92365] = true, -- Rend + [92468] = true, -- Serrated Bite + [92716] = true, -- Rend + [100332] = true, -- Open Wound + [100632] = true, -- Bite + [101478] = true, -- Shred + [102884] = true, -- Rend + [102887] = true, -- Rend + [102894] = true, -- Rend + [102900] = true, -- Rend + [156943] = true, -- Rupture + [158045] = true, -- Puncture + [164018] = true, -- Rend + [182200] = true, -- Rake + [201161] = true, -- Assisting Hand + [202026] = true, -- Blood for Hakkar! + [202072] = true, -- Blood for Hakkar! + [202884] = true, -- Rend + [202887] = true, -- Rend + [202894] = true, -- Rend + [202900] = true, -- Rend + [234785] = true, -- Rend + [254002] = true, -- Carnivorous Bite + [254118] = true, -- Blood Venon + [254120] = true, -- Rake + [254126] = true, -- Rend + [254138] = true, -- Rupture + [254669] = true, -- Rupture + [254671] = true, -- Rupture + [254902] = true, -- Crimson Tempest + [255434] = true, -- Lacerate + [255435] = true, -- Lacerate + [255436] = true, -- Lacerate + [255777] = true, -- Gaping Maw + [255922] = true, -- Rend + [256416] = true, -- Shanked! + [257330] = true, -- Rend + [257342] = true, -- Rend + [257343] = true, -- Rend + [257344] = true, -- Rend + [257525] = true, -- Blood Strike + [267018] = true, -- Deathblow + [267020] = true, -- Rake + [271853] = true, -- Barbed Snare + [272355] = true, -- Deadly Bite + [273872] = true, -- Disembowel + [273873] = true, -- Disembowel + [273874] = true, -- Disembowel + [273875] = true, -- Disembowel + [273876] = true, -- Disembowel + [273877] = true, -- Disembowel + [273878] = true, -- Disembowel + [273879] = true, -- Disembowel + [273880] = true, -- Disembowel + [273881] = true, -- Disembowel + [273882] = true, -- Disembowel + [273883] = true, -- Disembowel + [273887] = true, -- Disembowel + [274279] = true, -- Impaled + [274321] = true, -- Impaled + [274322] = true, -- Impaled + [274323] = true, -- Impaled + [274324] = true, -- Impaled + [274325] = true, -- Impaled + [274326] = true, -- Impaled + [274327] = true, -- Impaled + [274328] = true, -- Impaled + [274329] = true, -- Impaled + [274330] = true, -- Impaled + [274331] = true, -- Impaled + [274332] = true, -- Impaled + [274870] = true, -- Elemental Rend (Frost) + [274871] = true, -- Elemental Rend (Fire) + [274872] = true, -- Elemental Rend (Nature) + [275327] = true, -- Combo Shot + [275662] = true, -- Puncture + [275699] = true, -- Puncture + [275700] = true, -- Puncture + [275701] = true, -- Puncture + [275702] = true, -- Puncture + [275703] = true, -- Puncture + [275704] = true, -- Puncture + [276204] = true, -- Carnage Rend + [276205] = true, -- Carnage Rend + [276206] = true, -- Carnage Rend + [276207] = true, -- Carnage Rend + [276208] = true, -- Carnage Rend + [276209] = true, -- Carnage Rend + [276210] = true, -- Carnage Rend + [276211] = true, -- Carnage Rend + [276212] = true, -- Carnage Rend + [276213] = true, -- Carnage Rend + [277532] = true, -- Saber Fangs + [282288] = true, -- Hydra's Venom + [282289] = true, -- Hydra's Venom + [282290] = true, -- Hydra's Venom + [282291] = true, -- Hydra's Venom + [282292] = true, -- Hydra's Venom + [282293] = true, -- Hydra's Venom + [282294] = true, -- Hydra's Venom + [282295] = true, -- Hydra's Venom + [282296] = true, -- Hydra's Venom + [282297] = true, -- Hydra's venom + [283003] = true, -- Flesh Hook + [283510] = true, -- Blunt Force Trauma + [284564] = true, -- Razorvine + [284840] = true, -- Sandscoured + [284845] = true, -- Sandscoured + [284846] = true, -- Sandscoured + [284847] = true, -- Sandscoured + [284848] = true, -- Sandscoured + [284881] = true, -- Bone Arrow + [284890] = true, -- Bone Spear + [284892] = true, -- Bone Speared + [285052] = true, -- Shadow Word: Gore + [285053] = true, -- Shadow Word: Gore + [285054] = true, -- Shadow Word: Gore + [285055] = true, -- Shadow Word: Gore + [285056] = true, -- Shadow Word: Gore + [285057] = true, -- Shadow Word: Gore + [285058] = true, -- Shadow Word: Gore + [285059] = true, -- Shadow Word: Gore + [285060] = true, -- Shadow Word: Gore + [285061] = true, -- Shadow Word: Gore + [285062] = true, -- Shadow Word: Gore + [285063] = true, -- Shadow Word: Gore + [285071] = true, -- Shredding Shot + [285164] = true, -- Razorvine + [285165] = true, -- Razorvine + [285166] = true, -- Razorvine + [285167] = true, -- Razorvine + [285168] = true, -- Razorvine + [285169] = true, -- Razorvine + [285170] = true, -- Razorvine + [285694] = true, -- Hell Scream + [285897] = true, -- Hydra's Venom + [285901] = true, -- Hydra's Venom + [285902] = true, -- Hydra's Venom + [285903] = true, -- Hydra's Venom + [285904] = true, -- Hydra's Venom + [285905] = true, -- Hydra's Venom + [285906] = true, -- Hydra's Venom + [285907] = true, -- Hydra's Venom + [285908] = true, -- Hydra's Venom + [285909] = true, -- Hydra's Venom + [286035] = true, -- Hell Scream + [286036] = true, -- Hell Scream + [286037] = true, -- Hell Scream + [286038] = true, -- Hell Scream + [286039] = true, -- Hell Scream + [286040] = true, -- Hell Scream + [286041] = true, -- Hell Scream + [286181] = true, -- Bone Arrow + [286182] = true, -- Bone Arrow + [286183] = true, -- Bone Arrow + [286184] = true, -- Bone Arrow + [286185] = true, -- Bone Arrow + [286186] = true, -- Bone Arrow + [286187] = true, -- Bone Arrow + [286428] = true, -- Bone Spear + [286429] = true, -- Bone Spear + [286430] = true, -- Bone Spear + [286431] = true, -- Bone Spear + [286432] = true, -- Bone Spear + [286433] = true, -- Bone Spear + [290242] = true, -- Feral Frenzy + [290244] = true, -- Feral Frenzy + [290245] = true, -- Feral Frenzy + [290246] = true, -- Feral Frenzy + [290247] = true, -- Feral Frenzy + [290248] = true, -- Feral Frenzy + [290249] = true, -- Feral Frenzy + [290250] = true, -- Feral Frenzy + [291026] = true, -- Thrash (Bear) + [291027] = true, -- Thrash (Bear) + [291028] = true, -- Thrash (Bear) + [291029] = true, -- Thrash (Bear) + [291030] = true, -- Thrash (Bear) + [291031] = true, -- Thrash (Bear) + [291041] = true, -- Thrash (Bear) + [291056] = true, -- Thrash (Bear) + [300844] = true, -- Impale + [300870] = true, -- Frostbite + [300933] = true, -- Lacerate + [300934] = true, -- Lacerate + [300935] = true, -- Lacerate + [300936] = true, -- Lacerate + [300937] = true, -- Lacerate + [300938] = true, -- Lacerate + [300939] = true, -- Lacerate + [303010] = true, -- Gutshot + [303017] = true, -- Torn Flesh + [303046] = true, -- Ripped Flesh + [304003] = true, -- Mangled Flesh + [304167] = true, -- Cleaved Flesh + [304223] = true, -- Buzz Saw + [312451] = true, -- Assisting Hand + [312525] = true, -- Blood for Hakkar! + [312778] = true, -- Ripped Flesh + [312786] = true, -- Gutshot + [312802] = true, -- Torn Flesh + [312842] = true, -- Ripped Flesh + [312844] = true, -- Serrated Flesh + [312970] = true, -- Mangled Flesh + [313165] = true, -- Mangled Flesh + [313292] = true, -- Cleaved Flesh + [313415] = true, -- Buzz Saw + [316451] = true, -- Assisting Hand + [316525] = true, -- Blood for Hakkar! + [316778] = true, -- Ripped Flesh + [316786] = true, -- Gutshot + [316802] = true, -- Torn Flesh + [316842] = true, -- Ripped Flesh + [316844] = true, -- Serrated Flesh + [316970] = true, -- Mangled Flesh + [317165] = true, -- Mangled Flesh + [317292] = true, -- Cleaved Flesh + [317415] = true, -- Buzz Saw + [320451] = true, -- Assisting Hand + [320525] = true, -- Blood for Hakkar! + [320778] = true, -- Ripped Flesh + [320786] = true, -- Gutshot + [320802] = true, -- Torn Flesh + [320842] = true, -- Ripped Flesh + [320844] = true, -- Serrated Flesh + [320970] = true, -- Mangled Flesh + [321165] = true, -- Mangled Flesh + [321292] = true, -- Cleaved Flesh + [321415] = true, -- Buzz Saw + [340015] = true, -- Carnivorous Bite + [340052] = true, -- Deathblow + [340095] = true, -- Rend + [340119] = true, -- Coral Cut + [340516] = true, -- Rend + [350009] = true, -- Rake + [350010] = true, -- Rake + [350039] = true, -- Rake + [350052] = true, -- Rend + [350057] = true, -- Open Wound + [350069] = true, -- Serrated Bite + [350302] = true, -- Jagged Knife + [350346] = true, -- Rend + [350378] = true, -- Rend + [350379] = true, -- Rend + [351014] = true, -- Garrote + [351053] = true, -- Mangle + [351092] = true, -- Ravage + [351096] = true, -- Rend + [351121] = true, -- Impale + [351284] = true, -- Rend + [351285] = true, -- Rend + [351343] = true, -- Rend + [351344] = true, -- Rend + [351349] = true, -- Carnivorous Bite + [351350] = true, -- Carnivorous Bite + [351351] = true, -- Carnivorous Bite + [354043] = true, -- Thorned Claw + [354072] = true, -- Thorned Claw + [354073] = true, -- Thorned Claw + [354274] = true, -- Soul Rend + [354281] = true, -- Burning Blood + [354292] = true, -- Blistering Wound + [354619] = true, -- Soul Rend + [354620] = true, -- Soul Rend + [354621] = true, -- Soul Rend + [354643] = true, -- Blistering Wound + [354644] = true, -- Blistering Wound + [354645] = true, -- Blistering Wound + [354830] = true, -- Disembowel + [354835] = true, -- Rending Slash + [354858] = true, -- Disembowel + [354859] = true, -- Disembowel + [354860] = true, -- Disembowel + [354864] = true, -- Rending Slash + [354865] = true, -- Rending Slash + [354866] = true, -- Rending Slash + [354976] = true, -- Rake + [354995] = true, -- Rip + [355247] = true, -- Rake + [355263] = true, -- Rend + [355375] = true, -- Shredding Gash + [355376] = true, -- Sticky Bomb + [355437] = true, -- Rend + [355485] = true, -- Rend + [355500] = true, -- Pinprick + [355561] = true, -- Disembowel + [355764] = true, -- Rend + [384294] = true, -- Rupture + [385396] = true, -- Puncture + [391369] = true, -- Rend + [413006] = true, -- Savage Rip + [462136] = true, -- Rend + [500073] = true, -- Serrated Shot + [500127] = true, -- Eviscerated + [500351] = true, -- Darkthrash + [501640] = true, -- Hematophage + [501641] = true, -- Hematophage + [501642] = true, -- Hematophage + [501643] = true, -- Hematophage + [501644] = true, -- Hematophage + [501645] = true, -- Hematophage + [501646] = true, -- Hematophage + [501647] = true, -- Hematophage + [501648] = true, -- Hematophage + [501649] = true, -- Hematophage + [501650] = true, -- Hematophage + [501651] = true, -- Hematophage + [501687] = true, -- Lupine Shred + [501688] = true, -- Lupine Shred + [501689] = true, -- Lupine Shred + [501690] = true, -- Lupine Shred + [501691] = true, -- Lupine Shred + [501692] = true, -- Lupine Shred + [501693] = true, -- Lupine Shred + [501694] = true, -- Lupine Shred + [501704] = true, -- Serrated Shot + [501705] = true, -- Serrated Shot + [501706] = true, -- Serrated Shot + [501707] = true, -- Serrated Shot + [502732] = true, -- Primal Shred + [502733] = true, -- Primal Shred + [503561] = true, -- Shattering Shells + [504291] = true, -- Mortal Wounds + [504669] = true, -- Primal Shred + [504670] = true, -- Primal Shred + [504671] = true, -- Primal Shred + [504672] = true, -- Primal Shred + [504673] = true, -- Primal Shred + [504674] = true, -- Primal Shred + [504675] = true, -- Primal Shred + [504676] = true, -- Primal Shred + [520610] = true, -- Disembowel + [520712] = true, -- Disembowel + [520713] = true, -- Disembowel + [520714] = true, -- Disembowel + [520715] = true, -- Disembowel + [520716] = true, -- Disembowel + [520781] = true, -- Disembowel + [524964] = true, -- Crowd Pummeler + [560101] = true, -- Ravage (UNUSED) + [560102] = true, -- Ravage (UNUSED) + [560103] = true, -- Ravage (UNUSED) + [560104] = true, -- Ravage (UNUSED) + [560313] = true, -- Torn to Shreds + [560356] = true, -- Maiming Strike + [560407] = true, -- Massacre + [561303] = true, -- Cursed Ground + [572725] = true, -- Reverberations + [573337] = true, -- One Shot + [575836] = true, -- Serrated Shot + [575837] = true, -- Serrated Shot + [600703] = true, -- Aroy Garrote + [600772] = true, -- Aroy Rend + [601079] = true, -- Aroy Rip + [601822] = true, -- Aroy Rake + [601943] = true, -- Aroy Rupture + [633745] = true, -- Aroy Lacerate + [680279] = true, -- Gore Barrage + [680744] = true, -- Agonizing Pain + [680766] = true, -- Bleed test + [704256] = true, -- Darkrend Scythe + [705023] = true, -- Apocalypse Edge + [705757] = true, -- Piercing Impact + [706808] = true, -- Deadly Blow + [707229] = true, -- Darkrend Scythe + [707303] = true, -- Traumatic Wounds + [782754] = true, -- Pierced + [782801] = true, -- Spear Shards + [783054] = true, -- Headlopped + [783055] = true, -- Bleeding Out + [783056] = true, -- Warbeast + [800341] = true, -- Torn Flesh + [800772] = true, -- Taldaram's Torment + [800990] = true, -- Rend + [801023] = true, -- Savage Rend + [802568] = true, -- Taldaram's Torment + [802569] = true, -- Taldaram's Torment + [802570] = true, -- Taldaram's Torment + [802571] = true, -- Taldaram's Torment + [802572] = true, -- Taldaram's Torment + [802573] = true, -- Taldaram's Torment + [802580] = true, -- Taldaram's Torment + [802587] = true, -- Torn Flesh + [803851] = true, -- Ravage + [803859] = true, -- Ravage + [803860] = true, -- Ravage + [803861] = true, -- Ravage + [803862] = true, -- Ravage + [803863] = true, -- Ravage + [803864] = true, -- Ravage + [804143] = true, -- Puncture Wound + [804600] = true, -- Rending Slash + [805366] = true, -- Deadly Flourish + [805832] = true, -- Gutspiller + [806569] = true, -- Shred + [806576] = true, -- Wolf Spirit's Claw + [806670] = true, -- Rake + [806671] = true, -- Rake + [806882] = true, -- Gutspiller + [806883] = true, -- Gutspiller + [806884] = true, -- Gutspiller + [806885] = true, -- Gutspiller + [806886] = true, -- Gutspiller + [806887] = true, -- Gutspiller + [806898] = true, -- Rending Slash + [806899] = true, -- Rending Slash + [806900] = true, -- Rending Slash + [806901] = true, -- Rending Slash + [806902] = true, -- Rending Slash + [806903] = true, -- Rending Slash + [807237] = true, -- Toxic Dart + [807324] = true, -- Toxic Dart + [807325] = true, -- Toxic Dart + [807326] = true, -- Toxic Dart + [807327] = true, -- Toxic Dart + [807328] = true, -- Toxic Dart + [807329] = true, -- Toxic Dart + [807330] = true, -- Toxic Dart + [850518] = true, -- Combo Shot Bleed + [860210] = true, -- Barbed Snare + [901020] = true, -- Bloodbath + [901021] = true, -- Bloodbath + [901022] = true, -- Bloodbath + [901023] = true, -- Bloodbath + [901081] = true, -- Bone Arrow Bleed + [901149] = true, -- Thrash (Bear) + [901150] = true, -- Thrash (Bear) + [901151] = true, -- Thrash (Bear) + [901152] = true, -- Thrash (Bear) + [901153] = true, -- Thrash (Bear) + [901154] = true, -- Thrash (Bear) + [901185] = true, -- Bone Arrow Bleed + [901186] = true, -- Bone Arrow Bleed + [901187] = true, -- Bone Arrow Bleed + [901188] = true, -- Bone Arrow Bleed + [901189] = true, -- Bone Arrow Bleed + [901190] = true, -- Bone Arrow Bleed + [901191] = true, -- Bone Arrow Bleed + [901192] = true, -- Bone Arrow Bleed + [904000] = true, -- Aether Rip + [904001] = true, -- Aether Rip + [904002] = true, -- Aether Rip + [904003] = true, -- Aether Rip + [904004] = true, -- Aether Rip + [904005] = true, -- Aether Rip + [904006] = true, -- Aether Rip + [904007] = true, -- Aether Rip + [904008] = true, -- Aether Rip + [904009] = true, -- Aether Rip + [904010] = true, -- Aether Rip + [904020] = true, -- Voidrip + [904021] = true, -- Voidrip + [904022] = true, -- Voidrip + [904023] = true, -- Voidrip + [904024] = true, -- Voidrip + [904025] = true, -- Voidrip + [904026] = true, -- Voidrip + [904027] = true, -- Voidrip + [904028] = true, -- Voidrip + [904029] = true, -- Voidrip + [904030] = true, -- Voidrip + [904040] = true, -- Shredding Light + [904041] = true, -- Shredding Light + [904042] = true, -- Shredding Light + [904043] = true, -- Shredding Light + [904044] = true, -- Shredding Light + [904045] = true, -- Shredding Light + [904046] = true, -- Shredding Light + [904047] = true, -- Shredding Light + [904048] = true, -- Shredding Light + [904049] = true, -- Shredding Light + [904050] = true, -- Shredding Light + [904060] = true, -- Emberclaw + [904061] = true, -- Emberclaw + [904062] = true, -- Emberclaw + [904063] = true, -- Emberclaw + [904064] = true, -- Emberclaw + [904065] = true, -- Emberclaw + [904066] = true, -- Emberclaw + [904067] = true, -- Emberclaw + [904068] = true, -- Emberclaw + [904069] = true, -- Emberclaw + [904070] = true, -- Emberclaw + [904080] = true, -- Rime Tear + [904081] = true, -- Rime Tear + [904082] = true, -- Rime Tear + [904083] = true, -- Rime Tear + [904084] = true, -- Rime Tear + [904085] = true, -- Rime Tear + [904086] = true, -- Rime Tear + [904087] = true, -- Rime Tear + [904088] = true, -- Rime Tear + [904089] = true, -- Rime Tear + [904090] = true, -- Rime Tear + [904100] = true, -- Voltripper + [904101] = true, -- Voltripper + [904102] = true, -- Voltripper + [904103] = true, -- Voltripper + [904104] = true, -- Voltripper + [904105] = true, -- Voltripper + [904106] = true, -- Voltripper + [904107] = true, -- Voltripper + [904108] = true, -- Voltripper + [904109] = true, -- Voltripper + [904110] = true, -- Voltripper + [904120] = true, -- Arcane Tear + [904121] = true, -- Arcane Tear + [904122] = true, -- Arcane Tear + [904123] = true, -- Arcane Tear + [904124] = true, -- Arcane Tear + [904125] = true, -- Arcane Tear + [904126] = true, -- Arcane Tear + [904127] = true, -- Arcane Tear + [904140] = true, -- Corrupting Claws + [904141] = true, -- Corrupting Claws + [904142] = true, -- Corrupting Claws + [904143] = true, -- Corrupting Claws + [904144] = true, -- Corrupting Claws + [904145] = true, -- Corrupting Claws + [904146] = true, -- Corrupting Claws + [904147] = true, -- Corrupting Claws + [904160] = true, -- Rending Dawn + [904161] = true, -- Rending Dawn + [904162] = true, -- Rending Dawn + [904163] = true, -- Rending Dawn + [904164] = true, -- Rending Dawn + [904165] = true, -- Rending Dawn + [904166] = true, -- Rending Dawn + [904167] = true, -- Rending Dawn + [904180] = true, -- Burning Claws + [904181] = true, -- Burning Claws + [904182] = true, -- Burning Claws + [904183] = true, -- Burning Claws + [904184] = true, -- Burning Claws + [904185] = true, -- Burning Claws + [904186] = true, -- Burning Claws + [904187] = true, -- Burning Claws + [904200] = true, -- Frost Bite + [904201] = true, -- Frost Bite + [904202] = true, -- Frost Bite + [904203] = true, -- Frost Bite + [904204] = true, -- Frost Bite + [904205] = true, -- Frost Bite + [904206] = true, -- Frost Bite + [904207] = true, -- Frost Bite + [904220] = true, -- Stormclaw + [904221] = true, -- Stormclaw + [904222] = true, -- Stormclaw + [904223] = true, -- Stormclaw + [904224] = true, -- Stormclaw + [904225] = true, -- Stormclaw + [904226] = true, -- Stormclaw + [904227] = true, -- Stormclaw + [904960] = true, -- Spellrender + [904961] = true, -- Spellrender + [904962] = true, -- Spellrender + [904963] = true, -- Spellrender + [904964] = true, -- Spellrender + [904965] = true, -- Spellrender + [904966] = true, -- Spellrender + [904967] = true, -- Spellrender + [904968] = true, -- Spellrender + [904980] = true, -- Dusk Wound + [904981] = true, -- Dusk Wound + [904982] = true, -- Dusk Wound + [904983] = true, -- Dusk Wound + [904984] = true, -- Dusk Wound + [904985] = true, -- Dusk Wound + [904986] = true, -- Dusk Wound + [904987] = true, -- Dusk Wound + [904988] = true, -- Dusk Wound + [907000] = true, -- Brand of Dawn + [907001] = true, -- Brand of Dawn + [907002] = true, -- Brand of Dawn + [907003] = true, -- Brand of Dawn + [907004] = true, -- Brand of Dawn + [907005] = true, -- Brand of Dawn + [907006] = true, -- Brand of Dawn + [907007] = true, -- Brand of Dawn + [907008] = true, -- Brand of Dawn + [907020] = true, -- Burning Brand + [907021] = true, -- Burning Brand + [907022] = true, -- Burning Brand + [907023] = true, -- Burning Brand + [907024] = true, -- Burning Brand + [907025] = true, -- Burning Brand + [907026] = true, -- Burning Brand + [907027] = true, -- Burning Brand + [907028] = true, -- Burning Brand + [907040] = true, -- Ice Shard + [907041] = true, -- Ice Shard + [907042] = true, -- Ice Shard + [907043] = true, -- Ice Shard + [907044] = true, -- Ice Shard + [907045] = true, -- Ice Shard + [907046] = true, -- Ice Shard + [907047] = true, -- Ice Shard + [907048] = true, -- Ice Shard + [907060] = true, -- Cloudburst + [907061] = true, -- Cloudburst + [907062] = true, -- Cloudburst + [907063] = true, -- Cloudburst + [907064] = true, -- Cloudburst + [907065] = true, -- Cloudburst + [907066] = true, -- Cloudburst + [907067] = true, -- Cloudburst + [907068] = true, -- Cloudburst + [947470] = true, -- Disembowel + [947471] = true, -- Disembowel + [947472] = true, -- Disembowel + [947473] = true, -- Disembowel + [947474] = true, -- Disembowel + [947475] = true, -- Disembowel + [947476] = true, -- Disembowel + [947477] = true, -- Disembowel + [947478] = true, -- Disembowel + [947479] = true, -- Disembowel + [947480] = true, -- Disembowel + [947481] = true, -- Disembowel + [954809] = true, -- Crimson Tempest + [954815] = true, -- Bloodbath + [954883] = true, -- Crimson Tempest + [954884] = true, -- Crimson Tempest + [954885] = true, -- Crimson Tempest + [954886] = true, -- Crimson Tempest + [954887] = true, -- Crimson Tempest + [954888] = true, -- Crimson Tempest + [954889] = true, -- Crimson Tempest + [965150] = true, -- Feast + [965408] = true, -- Deadly Bite + [965630] = true, -- Carve + [965747] = true, -- Flesh Wound + [965758] = true, -- Nick + [965762] = true, -- Cut Throat + [965772] = true, -- Impale + [966380] = true, -- Savage Rend + [975040] = true, -- Shark Bite + [978693] = true, -- Elemental Rend (Frost) + [978694] = true, -- Elemental Rend (Fire) + [978695] = true, -- Elemental Rend (Nature) + [982251] = true, -- Impaled + [982450] = true, -- Razorvine + [982682] = true, -- Razorvine + [982683] = true, -- Razorvine + [982684] = true, -- Razorvine + [982685] = true, -- Razorvine + [982686] = true, -- Razorvine + [982687] = true, -- Razorvine + [982688] = true, -- Razorvine + [982703] = true, -- Ironsand + [982704] = true, -- Ironsand + [982705] = true, -- Ironsand + [982706] = true, -- Ironsand + [982707] = true, -- Ironsand + [983021] = true, -- Shadow Word: Gore + [983022] = true, -- Shadow Word: Gore + [983023] = true, -- Shadow Word: Gore + [983024] = true, -- Shadow Word: Gore + [983025] = true, -- Shadow Word: Gore + [983026] = true, -- Shadow Word: Gore + [983027] = true, -- Shadow Word: Gore + [983028] = true, -- Shadow Word: Gore + [983029] = true, -- Shadow Word: Gore + [983030] = true, -- Shadow Word: Gore + [983031] = true, -- Shadow Word: Gore + [983032] = true, -- Shadow Word: Gore + [983037] = true, -- Beast Shot + [983251] = true, -- Bone Spear + [983260] = true, -- Bone Spear + [983261] = true, -- Bone Spear + [983262] = true, -- Bone Spear + [983263] = true, -- Bone Spear + [983264] = true, -- Bone Spear + [983265] = true, -- Bone Spear + [983266] = true, -- Bone Spear + [983267] = true, -- Bone Spear + [983663] = true, -- Shredded Flesh + [984698] = true, -- Saber Fangs + [984702] = true, -- Elemental Rend + [984818] = true, -- Bloodshed + [984828] = true, -- Barbed Shot + [984831] = true, -- Bloodhunt Shot + [984865] = true, -- Furious Reaction + [986011] = true, -- Rend (Carnage) + [986012] = true, -- Rend (Carnage) + [986013] = true, -- Rend (Carnage) + [986014] = true, -- Rend (Carnage) + [986015] = true, -- Rend (Carnage) + [986016] = true, -- Rend (Carnage) + [986017] = true, -- Rend (Carnage) + [986018] = true, -- Rend (Carnage) + [986019] = true, -- Rend (Carnage) + [986020] = true, -- Rend (Carnage) + [987149] = true, -- Blunt Force Trauma + [990240] = true, -- Disembowel + [992373] = true, -- Flay Flesh + [992716] = true, -- Flesh Rend + [992722] = true, -- Ice Bite + [992768] = true, -- Flesh Tear + [992802] = true, -- Feral Frenzy + [992833] = true, -- Barbed Shot + [992943] = true, -- Feral Bite + [992991] = true, -- Feral Frenzy + [993001] = true, -- Saw Blades + [993096] = true, -- Brewer's Fury + [993740] = true, -- Voidfang + [993741] = true, -- Voidfang + [993742] = true, -- Voidfang + [993752] = true, -- Bloodletting Slash + [993900] = true, -- Brutal Chop + [997099] = true, -- Hell Scream + [997243] = true, -- Hydra's Venom + [997244] = true, -- Hydra's Venom + [997245] = true, -- Hydra's Venom + [997246] = true, -- Hydra's Venom + [997247] = true, -- Hydra's Venom + [997248] = true, -- Hydra's Venom + [997249] = true, -- Hydra's Venom + [997250] = true, -- Hydra's Venom + [997251] = true, -- Hydra's Venom + [997252] = true, -- Hydra's venom + [997316] = true, -- Rake + [997595] = true, -- Arcane Melee + [997765] = true, -- Puncture + [997766] = true, -- Puncture + [997767] = true, -- Puncture + [997768] = true, -- Puncture + [997769] = true, -- Puncture + [997770] = true, -- Puncture + [997771] = true, -- Puncture + [1100703] = true, -- Garrote + [1100772] = true, -- Rend + [1100790] = true, -- Thrash + [1100791] = true, -- Thrash + [1100792] = true, -- Thrash + [1100793] = true, -- Thrash + [1100794] = true, -- Thrash + [1100795] = true, -- Thrash + [1101079] = true, -- Rip + [1101822] = true, -- Rake + [1101823] = true, -- Rake + [1101824] = true, -- Rake + [1101943] = true, -- Rupture + [1106546] = true, -- Rend + [1106547] = true, -- Rend + [1106548] = true, -- Rend + [1108631] = true, -- Garrote + [1108632] = true, -- Garrote + [1108633] = true, -- Garrote + [1108639] = true, -- Rupture + [1108640] = true, -- Rupture + [1109007] = true, -- Pounce Bleed + [1109492] = true, -- Rip + [1109493] = true, -- Rip + [1109752] = true, -- Rip + [1109824] = true, -- Pounce Bleed + [1109826] = true, -- Pounce Bleed + [1109894] = true, -- Rip + [1109896] = true, -- Rip + [1109904] = true, -- Rake + [1111273] = true, -- Rupture + [1111274] = true, -- Rupture + [1111275] = true, -- Rupture + [1111289] = true, -- Garrote + [1111290] = true, -- Garrote + [1111572] = true, -- Rend + [1111573] = true, -- Rend + [1111574] = true, -- Rend + [1112721] = true, -- Deep Wounds + [1114874] = true, -- Rupture + [1114903] = true, -- Rupture + [1115583] = true, -- Rupture + [1124331] = true, -- Rake + [1124332] = true, -- Rake + [1125208] = true, -- Rend + [1126839] = true, -- Garrote + [1126867] = true, -- Rupture + [1126884] = true, -- Garrote + [1127003] = true, -- Rake + [1127007] = true, -- Pounce Bleed + [1127008] = true, -- Rip + [1127556] = true, -- Rake + [1127638] = true, -- Rake + [1129583] = true, -- Impale + [1131041] = true, -- Mangle + [1133745] = true, -- Lacerate + [1133746] = true, -- Lacerate + [1133747] = true, -- Lacerate + [1136332] = true, -- Rake + [1137066] = true, -- Garrote + [1143104] = true, -- Deep Wound + [1146845] = true, -- Rend + [1147465] = true, -- Rend + [1148567] = true, -- Lacerate + [1148568] = true, -- Lacerate + [1148573] = true, -- Rake + [1148574] = true, -- Rake + [1148580] = true, -- Lacerate + [1148581] = true, -- Lacerate + [1148671] = true, -- Rupture + [1148672] = true, -- Rupture + [1148675] = true, -- Garrote + [1148676] = true, -- Garrote + [1149799] = true, -- Rip + [1149800] = true, -- Rip + [1149804] = true, -- Pounce Bleed + [1150498] = true, -- Savage Rend + [1153578] = true, -- Savage Rend + [1153579] = true, -- Savage Rend + [1153580] = true, -- Savage Rend + [1153581] = true, -- Savage Rend + [1153582] = true, -- Savage Rend + [1155550] = true, -- Jagged Knife + [1155622] = true, -- Impale + [1158978] = true, -- Impale + [1159881] = true, -- Rake + [1159882] = true, -- Rake + [1159883] = true, -- Rake + [1159884] = true, -- Rake + [1159885] = true, -- Rake + [1159886] = true, -- Rake + [1161164] = true, -- Impale + [1163071] = true, -- Laceration + [1163468] = true, -- Piercing Shots + [1180242] = true, -- Feral Frenzy + [1180251] = true, -- Feral Frenzy + [1180252] = true, -- Feral Frenzy + [1180253] = true, -- Feral Frenzy + [1180254] = true, -- Feral Frenzy + [1180255] = true, -- Feral Frenzy + [1402322] = true, -- Rake + [1407046] = true, -- Rend + [1407048] = true, -- Rend + [1569398] = true, -- Barbed Snare + [1570396] = true, -- Deadly Bite + [1572620] = true, -- Disembowel + [1572621] = true, -- Disembowel + [1572622] = true, -- Disembowel + [1572623] = true, -- Disembowel + [1572624] = true, -- Disembowel + [1572625] = true, -- Disembowel + [1572626] = true, -- Disembowel + [1572627] = true, -- Disembowel + [1572628] = true, -- Disembowel + [1572629] = true, -- Disembowel + [1572630] = true, -- Disembowel + [1572631] = true, -- Disembowel + [1572638] = true, -- Disembowel + [1573293] = true, -- Impaled + [1574215] = true, -- Elemental Rend (Frost) + [1574241] = true, -- Elemental Rend (Fire) + [1574267] = true, -- Elemental Rend (Nature) + [1575466] = true, -- Puncture + [1575467] = true, -- Puncture + [1575468] = true, -- Puncture + [1575469] = true, -- Puncture + [1575470] = true, -- Puncture + [1575471] = true, -- Puncture + [1575472] = true, -- Puncture + [1576594] = true, -- Carnage Rend + [1576595] = true, -- Carnage Rend + [1576596] = true, -- Carnage Rend + [1576597] = true, -- Carnage Rend + [1576598] = true, -- Carnage Rend + [1576599] = true, -- Carnage Rend + [1576600] = true, -- Carnage Rend + [1576601] = true, -- Carnage Rend + [1576602] = true, -- Carnage Rend + [1576603] = true, -- Carnage Rend + [1580246] = true, -- Garrote + [1584827] = true, -- Blunt Force Trauma + [1587588] = true, -- Razorvine + [1588276] = true, -- Sandscoured + [1588281] = true, -- Sandscoured + [1588282] = true, -- Sandscoured + [1588283] = true, -- Sandscoured + [1588284] = true, -- Sandscoured + [1588346] = true, -- Bone Arrow Bleed + [1588348] = true, -- Bone Arrow Bleed + [1588372] = true, -- Bone Speared + [1588841] = true, -- Shadow Word: Gore + [1588842] = true, -- Shadow Word: Gore + [1588843] = true, -- Shadow Word: Gore + [1588844] = true, -- Shadow Word: Gore + [1588845] = true, -- Shadow Word: Gore + [1588846] = true, -- Shadow Word: Gore + [1588847] = true, -- Shadow Word: Gore + [1588848] = true, -- Shadow Word: Gore + [1588849] = true, -- Shadow Word: Gore + [1588850] = true, -- Shadow Word: Gore + [1588851] = true, -- Shadow Word: Gore + [1588852] = true, -- Shadow Word: Gore + [1588894] = true, -- Shredding Shot + [1590352] = true, -- Hell Scream + [1590575] = true, -- Hydra's Venom + [1590576] = true, -- Hydra's Venom + [1590577] = true, -- Hydra's Venom + [1590578] = true, -- Hydra's Venom + [1590579] = true, -- Hydra's Venom + [1590580] = true, -- Hydra's Venom + [1590581] = true, -- Hydra's Venom + [1590582] = true, -- Hydra's Venom + [1590583] = true, -- Hydra's Venom + [1590584] = true, -- Hydra's Venom + [1901020] = true, -- Bloodbath + [1901021] = true, -- Bloodbath + [1901022] = true, -- Bloodbath + [1901023] = true, -- Bloodbath + [1954815] = true, -- Bloodbath + [2100021] = true, -- Rend + [2100022] = true, -- Rend + [2100023] = true, -- Rend + [2100024] = true, -- Rend + [2100170] = true, -- Rupture + [2100752] = true, -- Deep Wound + [2100913] = true, -- Puncture + [2102164] = true, -- Throw Cleaver + [2102580] = true, -- Rupture + [2102654] = true, -- Cleaver Wound + [2102655] = true, -- Cleaver Wound + [2102656] = true, -- Cleaver Wound + [2102657] = true, -- Cleaver Wound + [2102681] = true, -- Rend + [2102682] = true, -- Rend + [2102683] = true, -- Rend + [2102684] = true, -- Rend + [2102842] = true, -- Rend + [2102843] = true, -- Rend + [2102844] = true, -- Rend + [2102845] = true, -- Rend + [2106029] = true, -- Impaling Throw + [2106030] = true, -- Impaling Throw + [2106031] = true, -- Impaling Throw + [2106032] = true, -- Impaling Throw + [2110917] = true, -- Rending Claws + [2110918] = true, -- Rending Claws + [2110919] = true, -- Rending Claws + [2110920] = true, -- Rending Claws + [2112408] = true, -- Dismember + [2112409] = true, -- Dismember + [2112410] = true, -- Dismember + [2112411] = true, -- Dismember + [2118240] = true, -- Rip + [2118241] = true, -- Rip + [2118242] = true, -- Rip + [2118243] = true, -- Rip + [2118326] = true, -- Razor Claws + [2118327] = true, -- Razor Claws + [2118328] = true, -- Razor Claws + [2118329] = true, -- Razor Claws + [2122122] = true, -- Rending Claws + [2122123] = true, -- Rending Claws + [2122124] = true, -- Rending Claws + [2122125] = true, -- Rending Claws + [2122323] = true, -- Impale + [2122324] = true, -- Impale + [2122325] = true, -- Impale + [2122326] = true, -- Impale + [2125205] = true, -- Deathblow + [2125206] = true, -- Deathblow + [2125207] = true, -- Deathblow + [2125208] = true, -- Deathblow + [2125292] = true, -- Rend + [2125293] = true, -- Rend + [2125294] = true, -- Rend + [2125295] = true, -- Rend + [2125372] = true, -- Impale + [2125373] = true, -- Impale + [2125374] = true, -- Impale + [2125375] = true, -- Impale + [2125601] = true, -- Dark Talon + [2125602] = true, -- Dark Talon + [2125603] = true, -- Dark Talon + [2125604] = true, -- Dark Talon + [2125664] = true, -- Gaping Maw + [2125665] = true, -- Gaping Maw + [2125666] = true, -- Gaping Maw + [2125667] = true, -- Gaping Maw + [2130032] = true, -- Impaling Throw + [2130174] = true, -- Gaping Maw + [2130814] = true, -- Rake + [2130815] = true, -- Rake + [2130816] = true, -- Rake + [2130817] = true, -- Rake + [2130829] = true, -- Ferocious Rake + [2130855] = true, -- Ferocious Rake + [2130856] = true, -- Ferocious Rake + [2130857] = true, -- Ferocious Rake + [2135600] = true, -- Rend + [2135601] = true, -- Rend + [2135602] = true, -- Rend + [2135603] = true, -- Rend + [2135657] = true, -- Gut Rip + [2135658] = true, -- Gut Rip + [2135659] = true, -- Gut Rip + [2135660] = true, -- Gut Rip + [2135668] = true, -- Gaping Maw + [2135669] = true, -- Gaping Maw + [2135670] = true, -- Gaping Maw + [2135671] = true, -- Gaping Maw + [2135747] = true, -- Talon Strike + [2135748] = true, -- Talon Strike + [2135749] = true, -- Talon Strike + [2135750] = true, -- Talon Strike + [2135819] = true, -- Amani Bear Trap + [2135820] = true, -- Amani Bear Trap + [2135821] = true, -- Amani Bear Trap + [2135822] = true, -- Amani Bear Trap + [2135824] = true, -- Impaled + [2135825] = true, -- Impaled + [2135826] = true, -- Impaled + [2135827] = true, -- Impaled + [2135833] = true, -- Rend Flesh + [2135834] = true, -- Rend Flesh + [2135835] = true, -- Rend Flesh + [2135836] = true, -- Rend Flesh + [2135857] = true, -- Lacerate + [2135858] = true, -- Lacerate + [2135859] = true, -- Lacerate + [2135860] = true, -- Lacerate + [2135877] = true, -- Lacerating Swipe + [2135878] = true, -- Lacerating Swipe + [2135879] = true, -- Lacerating Swipe + [2135880] = true, -- Lacerating Swipe + [2136058] = true, -- Lynx Rush + [2136059] = true, -- Lynx Rush + [2136060] = true, -- Lynx Rush + [2136061] = true, -- Lynx Rush + [2136326] = true, -- Rend Flesh + [2136327] = true, -- Rend Flesh + [2136328] = true, -- Rend Flesh + [2136329] = true, -- Rend Flesh + [2136382] = true, -- Lynx Rush + [2136383] = true, -- Lynx Rush + [2136384] = true, -- Lynx Rush + [2136385] = true, -- Lynx Rush + [2136398] = true, -- Amani Bear Trap + [2136399] = true, -- Amani Bear Trap + [2136400] = true, -- Amani Bear Trap + [2136401] = true, -- Amani Bear Trap + [2137739] = true, -- Carnivorous Bite + [2137740] = true, -- Carnivorous Bite + [2137741] = true, -- Carnivorous Bite + [2137742] = true, -- Carnivorous Bite + [2137807] = true, -- Rend + [2137808] = true, -- Rend + [2137809] = true, -- Rend + [2137810] = true, -- Rend + [2141254] = true, -- Crippling Wound + [2141255] = true, -- Crippling Wound + [2141256] = true, -- Crippling Wound + [2141257] = true, -- Crippling Wound + [2141572] = true, -- Rend + [2141573] = true, -- Rend + [2141574] = true, -- Rend + [2141575] = true, -- Rend + [2142208] = true, -- Rupture + [2142209] = true, -- Rupture + [2142210] = true, -- Rupture + [2142211] = true, -- Rupture + [2142516] = true, -- Impaling Spine + [2142517] = true, -- Impaling Spine + [2142518] = true, -- Impaling Spine + [2142519] = true, -- Impaling Spine + [2145205] = true, -- Slaying Shot + [2148844] = true, -- Impale + [2148845] = true, -- Impale + [2148846] = true, -- Impale + [2148847] = true, -- Impale + [2150775] = true, -- Rending Claws + [2150776] = true, -- Rending Claws + [2150777] = true, -- Rending Claws + [2150778] = true, -- Rending Claws + [2150844] = true, -- Impale + [2150845] = true, -- Impale + [2150846] = true, -- Impale + [2150847] = true, -- Impale + [2151239] = true, -- Infected Wound + [2151357] = true, -- Infected Wound + [2151372] = true, -- Rending Claws + [2151451] = true, -- Dart + [2151452] = true, -- Dart + [2151453] = true, -- Dart + [2151454] = true, -- Dart + [2152541] = true, -- Gore + [2152542] = true, -- Gore + [2152543] = true, -- Gore + [2152544] = true, -- Gore + [2152614] = true, -- Slashing Wound + [2152615] = true, -- Slashing Wound + [2152616] = true, -- Slashing Wound + [2152617] = true, -- Slashing Wound + [2152775] = true, -- Rending Claws + [2152776] = true, -- Rending Claws + [2152777] = true, -- Rending Claws + [2152778] = true, -- Rending Claws + [2153067] = true, -- Rend + [2153239] = true, -- Infected Wound + [2153357] = true, -- Infected Wound + [2153372] = true, -- Rending Claws + [2154541] = true, -- Gore + [2154542] = true, -- Gore + [2154543] = true, -- Gore + [2154544] = true, -- Gore + [2154614] = true, -- Slashing Wound + [2154615] = true, -- Slashing Wound + [2154616] = true, -- Slashing Wound + [2154617] = true, -- Slashing Wound + [2154867] = true, -- Rend + [2156122] = true, -- Rending Claws + [2156123] = true, -- Rending Claws + [2156124] = true, -- Rending Claws + [2156125] = true, -- Rending Claws + [2156323] = true, -- Impale + [2156324] = true, -- Impale + [2156325] = true, -- Impale + [2156326] = true, -- Impale + [2251020] = true, -- Bloodbath + [2251021] = true, -- Bloodbath + [2251022] = true, -- Bloodbath + [2251023] = true, -- Bloodbath + [2304587] = true, -- Barbed Shot + [2304809] = true, -- Crimson Tempest + [2304815] = true, -- Bloodbath + [2304883] = true, -- Crimson Tempest + [2304884] = true, -- Crimson Tempest + [2304885] = true, -- Crimson Tempest + [2304886] = true, -- Crimson Tempest + [2304887] = true, -- Crimson Tempest + [2304888] = true, -- Crimson Tempest + [2304889] = true, -- Crimson Tempest + [3100021] = true, -- Rend + [3100022] = true, -- Rend + [3100023] = true, -- Rend + [3100024] = true, -- Rend + [3100170] = true, -- Rupture + [3100752] = true, -- Deep Wound + [3102164] = true, -- Throw Cleaver + [3102580] = true, -- Rupture + [3102654] = true, -- Cleaver Wound + [3102655] = true, -- Cleaver Wound + [3102656] = true, -- Cleaver Wound + [3102657] = true, -- Cleaver Wound + [3102681] = true, -- Rend + [3102682] = true, -- Rend + [3102683] = true, -- Rend + [3102684] = true, -- Rend + [3106029] = true, -- Impaling Throw + [3106030] = true, -- Impaling Throw + [3106031] = true, -- Impaling Throw + [3106032] = true, -- Impaling Throw + [3123924] = true, -- Jagged Cold Steel Knife + [3123925] = true, -- Jagged Cold Steel Knife + [3123926] = true, -- Jagged Cold Steel Knife + [3123927] = true, -- Jagged Cold Steel Knife + [3125205] = true, -- Deathblow + [3125206] = true, -- Deathblow + [3125207] = true, -- Deathblow + [3125208] = true, -- Deathblow + [3125292] = true, -- Rend + [3125293] = true, -- Rend + [3125294] = true, -- Rend + [3125295] = true, -- Rend + [3125372] = true, -- Impale + [3125373] = true, -- Impale + [3125374] = true, -- Impale + [3125375] = true, -- Impale + [3125601] = true, -- Dark Talon + [3125602] = true, -- Dark Talon + [3125603] = true, -- Dark Talon + [3125604] = true, -- Dark Talon + [3125664] = true, -- Gaping Maw + [3125665] = true, -- Gaping Maw + [3125666] = true, -- Gaping Maw + [3125667] = true, -- Gaping Maw + [3130032] = true, -- Impaling Throw + [3130174] = true, -- Gaping Maw + [3130814] = true, -- Rake + [3130815] = true, -- Rake + [3130816] = true, -- Rake + [3130817] = true, -- Rake + [3135600] = true, -- Rend + [3135601] = true, -- Rend + [3135602] = true, -- Rend + [3135603] = true, -- Rend + [3135657] = true, -- Gut Rip + [3135658] = true, -- Gut Rip + [3135659] = true, -- Gut Rip + [3135660] = true, -- Gut Rip + [3135668] = true, -- Gaping Maw + [3135669] = true, -- Gaping Maw + [3135670] = true, -- Gaping Maw + [3135671] = true, -- Gaping Maw + [3135747] = true, -- Talon Strike + [3135748] = true, -- Talon Strike + [3135749] = true, -- Talon Strike + [3135750] = true, -- Talon Strike + [3135819] = true, -- Amani Bear Trap + [3135820] = true, -- Amani Bear Trap + [3135821] = true, -- Amani Bear Trap + [3135822] = true, -- Amani Bear Trap + [3135824] = true, -- Impaled + [3135825] = true, -- Impaled + [3135826] = true, -- Impaled + [3135827] = true, -- Impaled + [3135833] = true, -- Rend Flesh + [3135834] = true, -- Rend Flesh + [3135835] = true, -- Rend Flesh + [3135836] = true, -- Rend Flesh + [3135857] = true, -- Lacerate + [3135858] = true, -- Lacerate + [3135859] = true, -- Lacerate + [3135860] = true, -- Lacerate + [3135877] = true, -- Lacerating Swipe + [3135878] = true, -- Lacerating Swipe + [3135879] = true, -- Lacerating Swipe + [3135880] = true, -- Lacerating Swipe + [3136058] = true, -- Lynx Rush + [3136059] = true, -- Lynx Rush + [3136060] = true, -- Lynx Rush + [3136061] = true, -- Lynx Rush + [3136326] = true, -- Rend Flesh + [3136327] = true, -- Rend Flesh + [3136328] = true, -- Rend Flesh + [3136329] = true, -- Rend Flesh + [3136382] = true, -- Lynx Rush + [3136383] = true, -- Lynx Rush + [3136384] = true, -- Lynx Rush + [3136385] = true, -- Lynx Rush + [3136398] = true, -- Amani Bear Trap + [3136399] = true, -- Amani Bear Trap + [3136400] = true, -- Amani Bear Trap + [3136401] = true, -- Amani Bear Trap + [3137739] = true, -- Carnivorous Bite + [3137740] = true, -- Carnivorous Bite + [3137741] = true, -- Carnivorous Bite + [3137742] = true, -- Carnivorous Bite + [3137807] = true, -- Rend + [3137808] = true, -- Rend + [3137809] = true, -- Rend + [3137810] = true, -- Rend + [3141254] = true, -- Crippling Wound + [3141255] = true, -- Crippling Wound + [3141256] = true, -- Crippling Wound + [3141257] = true, -- Crippling Wound + [3141572] = true, -- Rend + [3141573] = true, -- Rend + [3141574] = true, -- Rend + [3141575] = true, -- Rend + [3142208] = true, -- Rupture + [3142209] = true, -- Rupture + [3142210] = true, -- Rupture + [3142211] = true, -- Rupture + [3142516] = true, -- Impaling Spine + [3142517] = true, -- Impaling Spine + [3142518] = true, -- Impaling Spine + [3142519] = true, -- Impaling Spine + [3280243] = true, -- Feral Frenzy + [3304815] = true, -- Bloodbath + [3954809] = true, -- Crimson Tempest + [4125431] = true, -- Grievous Wound + [5011037] = true, -- Grievous Whirl + [5011166] = true, -- Grievous Whirl + [5036870] = true, -- Grievous Whirl + [5432530] = true, -- Grievous Whirl + [8000004] = true, -- Shredding Bite + [9931133] = true, -- Lashing Thorns + [9980645] = true, -- Rend + [10013445] = true, -- Rend + [10092716] = true, -- Rend +}; diff --git a/Decursive/Dcr_opt.lua b/Decursive/Dcr_opt.lua index bb99850..82b5d24 100644 --- a/Decursive/Dcr_opt.lua +++ b/Decursive/Dcr_opt.lua @@ -79,6 +79,7 @@ function D:GetDefaultsSettings() [DC.POISON] = 4, [DC.DISEASE] = 5, [DC.CHARMED] = 6, + [DC.BLEED] = 7, }, }, @@ -1599,6 +1600,17 @@ local function GetOptions() disabled = function() return not D.Status.CuringSpells[DC.CHARMED] end, order = 146 }, + CureBleed = { + type = "toggle", + name = " "..L["BLEED"], + desc = L["OPT_BLEEDCHECK_DESC"], + get = function() return D:GetCureCheckBoxStatus(DC.BLEED) end, + set = function() + D:SetCureOrder (DC.BLEED); + end, + disabled = function() return not D.Status.CuringSpells[DC.BLEED] end, + order = 147 + }, } }, -- }}} @@ -1776,6 +1788,7 @@ local TypesToUName = { [DC.POISON] = "POISON", [DC.DISEASE] = "DISEASE", [DC.CHARMED] = "CHARM", + [DC.BLEED] = "BLEED", } local CureCheckBoxes = false; @@ -1803,6 +1816,7 @@ function D:CheckCureOrder () [DC.POISON] = 4, [DC.DISEASE] = 5, [DC.CHARMED] = 6, + [DC.BLEED] = 7, }; local AuthorizedValues = { [false] = true; -- LOL Yes, it's TRUE tnat FALSE is an authorized value xD @@ -1819,6 +1833,8 @@ function D:CheckCureOrder () [-15] = DC.DISEASE, [6] = DC.CHARMED, [-16] = DC.CHARMED, + [7] = DC.BLEED, + [-17] = DC.BLEED, }; local GivenValues = {}; diff --git a/Decursive/Decursive.lua b/Decursive/Decursive.lua index 98969f9..9e7754d 100644 --- a/Decursive/Decursive.lua +++ b/Decursive/Decursive.lua @@ -403,13 +403,19 @@ do --D:Debug("|cFFFF0000Getting debuffs for %s , id = %d|r", Unit, i); - -- Name, rank, Texture, Applications, TypeName, duration, expirationTime, unitCaster, isStealable = UnitAura("unit", index or ["name", "rank"][, "filter"]) + -- Name, rank, Texture, Applications, TypeName, duration, expirationTime, unitCaster, isStealable, shouldConsolidate, spellId = UnitAura("unit", index or ["name", "rank"][, "filter"]) - local Name, rank, Texture, Applications, TypeName, Duration, expirationTime = UnitAura(Unit, i, "HARMFUL"); + local Name, rank, Texture, Applications, TypeName, Duration, expirationTime, _src, _stealable, _consolidate, spellId = UnitAura(Unit, i, "HARMFUL"); --local Name, rank, Texture, Applications, TypeName, Duration = UnitDebuff(Unit, i); if Name then + -- CoA: bleeds have no Blizzard dispel type. Re-tag them as "Bleed" + -- when spellId matches DC.BleedSpellIDs (generated from coa-db). + -- Only overrides typeless debuffs — a real Magic/Curse/etc tag wins. + if (not TypeName or TypeName == "") and spellId and DC.BleedSpellIDs and DC.BleedSpellIDs[spellId] then + TypeName = "Bleed"; + end return Name, TypeName, Applications, Texture, expirationTime; else return false, false, false, false, false; diff --git a/Decursive/Decursive.toc b/Decursive/Decursive.toc index 96c0a27..2d335a9 100644 --- a/Decursive/Decursive.toc +++ b/Decursive/Decursive.toc @@ -18,7 +18,7 @@ ## SavedVariables: DecursiveDB -## Version: Asc-1.1.7-coa (orig 2.5.1-6-gd3885c5) +## Version: Asc-1.1.8-coa (orig 2.5.1-6-gd3885c5) ## Author: Archarodim ## X-License: All Rights Reserved @@ -50,6 +50,7 @@ Dcr_DIAG.xml Localization\load.xml DCR_init.lua +Dcr_BleedIDs.lua Dcr_LDB.lua Dcr_utils.lua diff --git a/Decursive/Localization/deDE.lua b/Decursive/Localization/deDE.lua index b3184a7..198ff43 100644 --- a/Decursive/Localization/deDE.lua +++ b/Decursive/Localization/deDE.lua @@ -99,6 +99,7 @@ L["BINDING_NAME_DCRSKLIST"] = "Ignorierliste ausgeben" L["BINDING_NAME_DCRSKSHOW"] = "Zeige/Verstecke die Ignorierliste UI" L["BLACK_LENGTH"] = "Sekunden auf der Blacklist: " L["BLACKLISTED"] = "Black-listed" +L["BLEED"] = "Blutung" L["CHARM"] = "Verführung/Übernommen/Gedankenkontrolle" L["CLASS_HUNTER"] = "Jäger" L["CLEAR_PRIO"] = "C" @@ -196,6 +197,7 @@ L["OPT_ANCHOR_DESC"] = "Zeigt Anker des Rahmens der allgemeinen Mitteilungen an" L["OPT_AUTOHIDEMFS"] = "Automatisch verstecken" L["OPT_AUTOHIDEMFS_DESC"] = "Wähle, wann das MUF-Fenster verborgen werden soll." L["OPT_BLACKLENTGH_DESC"] = "Definiert wie lange ein Spieler auf der Blacklist steht. " +L["OPT_BLEEDCHECK_DESC"] = "Wenn markiert, kannst du Blutungseffekte sehen und entfernen (CoA: Zauber wie 'Ausbrennen', die die Blutungs-Mechanik aufheben)" L["OPT_BORDERTRANSP"] = "Rahmen-Transparenz" L["OPT_BORDERTRANSP_DESC"] = "Rahmen-Transparenz setzten" L["OPT_CENTERTRANSP"] = "Transparenz Mitte" diff --git a/Decursive/Localization/enUS.lua b/Decursive/Localization/enUS.lua index 7990fc1..53ddee9 100644 --- a/Decursive/Localization/enUS.lua +++ b/Decursive/Localization/enUS.lua @@ -98,6 +98,7 @@ L["BINDING_NAME_DCRSKLIST"] = "Print the skip list" L["BINDING_NAME_DCRSKSHOW"] = "Show or hide the skip list" L["BLACK_LENGTH"] = "Seconds on the blacklist : " L["BLACKLISTED"] = "Black-listed" +L["BLEED"] = "Bleed" L["CHARM"] = "Charm" L["CLASS_HUNTER"] = "Hunter" L["CLEAR_PRIO"] = "C" @@ -197,6 +198,7 @@ L["OPT_ANCHOR_DESC"] = "Shows the anchor of the custom message frame" L["OPT_AUTOHIDEMFS"] = "Auto-Hide" L["OPT_AUTOHIDEMFS_DESC"] = "Choose when to hide the MUF window" L["OPT_BLACKLENTGH_DESC"] = "Defines how long someone stays on the blacklist" +L["OPT_BLEEDCHECK_DESC"] = "If checked you'll be able to see and remove bleed effects (CoA: spells like Cauterize that clear bleed mechanic)" L["OPT_BORDERTRANSP"] = "Border transparency" L["OPT_BORDERTRANSP_DESC"] = "Set the transparency of the border" L["OPT_CENTERTRANSP"] = "Center transparency" diff --git a/Decursive/Localization/esES.lua b/Decursive/Localization/esES.lua index c6179aa..bf2e9e1 100644 --- a/Decursive/Localization/esES.lua +++ b/Decursive/Localization/esES.lua @@ -72,6 +72,7 @@ if not L then return; end; +L["BLEED"] = "Sangrado" L["CLASS_HUNTER"] = "Cazador" L["CURSE"] = "Maldición" L["DEFAULT_MACROKEY"] = "NONE" diff --git a/Decursive/Localization/frFR.lua b/Decursive/Localization/frFR.lua index 7d2d67d..cbc09f1 100644 --- a/Decursive/Localization/frFR.lua +++ b/Decursive/Localization/frFR.lua @@ -99,6 +99,7 @@ L["BINDING_NAME_DCRSKLIST"] = "Afficher la liste des exceptions" L["BINDING_NAME_DCRSKSHOW"] = "Afficher ou Cacher la liste des exceptions" L["BLACK_LENGTH"] = "Délais (Secs) sur la *blacklist* : " L["BLACKLISTED"] = "Sur liste noire" +L["BLEED"] = "Saignement" L["CHARM"] = "Possession" L["CLASS_HUNTER"] = "Chasseur" L["CLEAR_PRIO"] = "E" @@ -197,6 +198,7 @@ L["OPT_ANCHOR_DESC"] = "Montre l'ancre de la fenêtre de discussion spéciale" L["OPT_AUTOHIDEMFS"] = "Masquer automatiquement" L["OPT_AUTOHIDEMFS_DESC"] = "Choisissez quand la fenêtre des micro-portraits doit être masquée automatiquement." L["OPT_BLACKLENTGH_DESC"] = "Définit combien de temps quelqu'un reste sur liste noire" +L["OPT_BLEEDCHECK_DESC"] = "Si cochée, vous pourrez voir et retirer les effets de saignement (CoA : sorts comme « Cautérisation » qui dissipent la mécanique de saignement)" L["OPT_BORDERTRANSP"] = "Transparence de la bordure" L["OPT_BORDERTRANSP_DESC"] = "Règle la transparence de la bordure" L["OPT_CENTERTRANSP"] = "Transparence du centre" diff --git a/Decursive/Localization/koKR.lua b/Decursive/Localization/koKR.lua index 28244c4..70a8032 100644 --- a/Decursive/Localization/koKR.lua +++ b/Decursive/Localization/koKR.lua @@ -103,6 +103,7 @@ L["BINDING_NAME_DCRSKLIST"] = "제외 목록 출력" L["BINDING_NAME_DCRSKSHOW"] = "제외 목록 표시/숨김" L["BLACK_LENGTH"] = "블랙리스트 추가 시간(초) : " L["BLACKLISTED"] = "블랙리스트됨" +L["BLEED"] = "출혈" L["CHARM"] = "변이" L["CLASS_HUNTER"] = "사냥꾼" L["CLEAR_PRIO"] = "C" @@ -204,6 +205,7 @@ L["OPT_ANCHOR_DESC"] = "사용자 정의 메세지창의 고정위치를 표시 L["OPT_AUTOHIDEMFS"] = "자동숨김" L["OPT_AUTOHIDEMFS_DESC"] = "선택하면 언제 MUF창을 숨겨둘지 설정합니다." L["OPT_BLACKLENTGH_DESC"] = "블랙리스트에 등록할 시간을 지정합니다." +L["OPT_BLEEDCHECK_DESC"] = "선택 시 출혈 효과를 표시하고 제거합니다 (CoA: '소작' 등 출혈 메커니즘을 해제하는 주문)" L["OPT_BORDERTRANSP"] = "테두리 투명도" L["OPT_BORDERTRANSP_DESC"] = "테두리의 투명도를 설정합니다." L["OPT_CENTERTRANSP"] = "가운데 투명도" diff --git a/Decursive/Localization/ruRU.lua b/Decursive/Localization/ruRU.lua index 4a11c6a..ae23d07 100644 --- a/Decursive/Localization/ruRU.lua +++ b/Decursive/Localization/ruRU.lua @@ -99,6 +99,7 @@ L["BINDING_NAME_DCRSKLIST"] = "Распечатка списка пропуск L["BINDING_NAME_DCRSKSHOW"] = "Показать или скрыть список пропусков" L["BLACK_LENGTH"] = "Секунд в чёрном списке : " L["BLACKLISTED"] = "В чёрном списке" +L["BLEED"] = "Кровотечение" L["CHARM"] = "Подчинение" L["CLASS_HUNTER"] = "Охотник" L["CLEAR_PRIO"] = "О" @@ -196,6 +197,7 @@ L["OPT_ANCHOR_DESC"] = "Отображать указатель пользова L["OPT_AUTOHIDEMFS"] = "Автоскрытие" L["OPT_AUTOHIDEMFS_DESC"] = "Выберите, когда скрывать МФИ" L["OPT_BLACKLENTGH_DESC"] = "Установить продолжительность нахождения кого-либо в чёрном списке" +L["OPT_BLEEDCHECK_DESC"] = "Если отмечено, вы сможете видеть и снимать эффекты кровотечения (CoA: заклинания вроде «Прижигания», снимающие механику кровотечения)" L["OPT_BORDERTRANSP"] = "Прозрачность краёв" L["OPT_BORDERTRANSP_DESC"] = "Установка прозрачности краёв" L["OPT_CENTERTRANSP"] = "Прозрачность центра" diff --git a/Decursive/Localization/zhCN.lua b/Decursive/Localization/zhCN.lua index 3aa5213..29fc3cd 100644 --- a/Decursive/Localization/zhCN.lua +++ b/Decursive/Localization/zhCN.lua @@ -98,6 +98,7 @@ L["BINDING_NAME_DCRSKLIST"] = "显示忽略列表明细条目" L["BINDING_NAME_DCRSKSHOW"] = "显示/隐藏 忽略列表" L["BLACK_LENGTH"] = "黑名单持续时间: " L["BLACKLISTED"] = "黑名单" +L["BLEED"] = "流血" L["CHARM"] = "魅惑" L["CLASS_HUNTER"] = "猎人" L["CLEAR_PRIO"] = "C" @@ -191,6 +192,7 @@ L["OPT_ANCHOR_DESC"] = "设置自定义信息面板的定位点。" L["OPT_AUTOHIDEMFS"] = "自动隐藏" L["OPT_AUTOHIDEMFS_DESC"] = "选择何时自动隐藏微单元面板(MUF)" L["OPT_BLACKLENTGH_DESC"] = "设置被暂时加入黑名单的玩家在名单中停留的时间。" +L["OPT_BLEEDCHECK_DESC"] = "选中后你将可以查看和移除流血效果(CoA:如「灼烧术」等可清除流血机制的法术)" L["OPT_BORDERTRANSP"] = "边框透明度" L["OPT_BORDERTRANSP_DESC"] = "设置边框的透明度。" L["OPT_CENTERTRANSP"] = "面板透明度" diff --git a/Decursive/Localization/zhTW.lua b/Decursive/Localization/zhTW.lua index cd2a6cc..f6cb448 100644 --- a/Decursive/Localization/zhTW.lua +++ b/Decursive/Localization/zhTW.lua @@ -97,6 +97,7 @@ L["BINDING_NAME_DCRSKLIST"] = "顯示忽略名單至聊天視窗" L["BINDING_NAME_DCRSKSHOW"] = "開/關忽略名單" L["BLACK_LENGTH"] = "停留在排除名單的時間: " L["BLACKLISTED"] = "在排除名單" +L["BLEED"] = "流血" L["CHARM"] = "魅惑" L["CLASS_HUNTER"] = "獵人" L["CLEAR_PRIO"] = "C" @@ -189,6 +190,7 @@ L["OPT_ANCHOR_DESC"] = "顯示自訂視窗的文字定位點。" L["OPT_AUTOHIDEMFS"] = "自動隱藏" L["OPT_AUTOHIDEMFS_DESC"] = "選擇什麼時候隱藏 MUF 視窗" L["OPT_BLACKLENTGH_DESC"] = "設定一個人停留在排除名單中的時間。" +L["OPT_BLEEDCHECK_DESC"] = "選取後你可以看見並移除流血效果(CoA:如「灼燒術」等可清除流血機制的法術)" L["OPT_BORDERTRANSP"] = "邊框透明度" L["OPT_BORDERTRANSP_DESC"] = "設定邊框的透明度。" L["OPT_CENTERTRANSP"] = "中央透明度" From f87b41960d622291f2a80cf1f94ee31b69501ac5 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Wed, 27 May 2026 20:37:52 +0200 Subject: [PATCH 3/9] refactor(bleed): pack BleedIDs as comma-string (~16/line) for clean diffs Previous per-ID-per-line form (1502 lines / 53 KB) made every regen show as a 1500-line block diff. Pack the IDs into a comma-separated string at ~16 entries per line (94 packed lines / 11.5 KB) and parse once at load. Future regenerations only churn the chunks where IDs actually change. No behaviour change: still produces a {[spellId]=true} hash for O(1) lookup in Decursive.lua:GetUnitDebuff. --- Decursive/Dcr_BleedIDs.lua | 1602 +++--------------------------------- 1 file changed, 106 insertions(+), 1496 deletions(-) diff --git a/Decursive/Dcr_BleedIDs.lua b/Decursive/Dcr_BleedIDs.lua index fdc2914..33a0eaf 100644 --- a/Decursive/Dcr_BleedIDs.lua +++ b/Decursive/Dcr_BleedIDs.lua @@ -1,1506 +1,116 @@ -- Decursive — CoA bleed-aura spell IDs -- Auto-generated from db.exil.es (coa-db) — DO NOT EDIT by hand. --- Regenerate from coa-db Postgres with: --- SELECT s.id, s.name FROM spell s +-- Regenerate with: +-- SELECT s.id FROM spell s -- WHERE EXISTS (SELECT 1 FROM jsonb_array_elements(s.effects) e -- WHERE (e->>'id')::int = 6 -- SPELL_EFFECT_APPLY_AURA -- AND (e->>'aura')::int = 3 -- SPELL_AURA_PERIODIC_DAMAGE -- AND (e->>'mechanic')::int = 15) -- MECHANIC_BLEED -- ORDER BY s.id; --- Generated: 2026-05-27T17:03:24Z Count: 1491 +-- Generated: 2026-05-27T18:37:37Z Count: 1491 local DC = DcrC; -DC.BleedSpellIDs = { - [703] = true, -- Garrote - [772] = true, -- Rend - [1079] = true, -- Rip - [1080] = true, -- Rip - [1081] = true, -- Rip - [1822] = true, -- Rake - [1823] = true, -- Rake - [1824] = true, -- Rake - [1826] = true, -- Rake - [1943] = true, -- Rupture - [3147] = true, -- Rend Flesh - [4102] = true, -- Gore - [4244] = true, -- Open Wound Effect - [6546] = true, -- Rend - [6547] = true, -- Rend - [6548] = true, -- Rend - [8631] = true, -- Garrote - [8632] = true, -- Garrote - [8633] = true, -- Garrote - [8639] = true, -- Rupture - [8640] = true, -- Rupture - [8818] = true, -- Garrote - [9492] = true, -- Rip - [9493] = true, -- Rip - [9752] = true, -- Rip - [9894] = true, -- Rip - [9896] = true, -- Rip - [9904] = true, -- Rake - [10044] = true, -- QA Test 3x Bleed stacks 0 damage - [11273] = true, -- Rupture - [11274] = true, -- Rupture - [11275] = true, -- Rupture - [11289] = true, -- Garrote - [11290] = true, -- Garrote - [11572] = true, -- Rend - [11573] = true, -- Rend - [11574] = true, -- Rend - [11575] = true, -- Rend - [11977] = true, -- Rend - [12054] = true, -- Rend - [12721] = true, -- Deep Wounds - [13318] = true, -- Shanked! - [13443] = true, -- Rend - [13445] = true, -- Rend - [13738] = true, -- Rend - [14087] = true, -- Rend - [14118] = true, -- Rend - [14331] = true, -- Vicious Rend - [14874] = true, -- Rupture - [14903] = true, -- Rupture - [15583] = true, -- Rupture - [15976] = true, -- Puncture - [16095] = true, -- Vicious Rend - [16393] = true, -- Rend - [16403] = true, -- Rend - [16406] = true, -- Rend - [16509] = true, -- Rend - [17153] = true, -- Rend - [17407] = true, -- Wound - [17504] = true, -- Rend - [18075] = true, -- Rend - [18078] = true, -- Rend - [18106] = true, -- Rend - [18200] = true, -- Rend - [18202] = true, -- Rend - [19771] = true, -- Serrated Bite - [21948] = true, -- Rend - [21949] = true, -- Rend - [24192] = true, -- Speed Slash - [24331] = true, -- Rake - [24332] = true, -- Rake - [25208] = true, -- Rend - [26839] = true, -- Garrote - [26867] = true, -- Rupture - [26884] = true, -- Garrote - [27003] = true, -- Rake - [27008] = true, -- Rip - [27556] = true, -- Rake - [27638] = true, -- Rake - [28913] = true, -- Flesh Rot - [29574] = true, -- Rend - [29578] = true, -- Rend - [29583] = true, -- Impale - [29906] = true, -- Ravage - [29935] = true, -- Gaping Maw - [30285] = true, -- Eagle Claw - [30639] = true, -- Carnivorous Bite - [31041] = true, -- Mangle - [31410] = true, -- Coral Cut - [31956] = true, -- Grievous Wound - [32019] = true, -- Gore - [32901] = true, -- Carnivorous Bite - [33745] = true, -- Lacerate - [33865] = true, -- Singe - [33912] = true, -- Rip - [35144] = true, -- Vicious Rend - [35318] = true, -- Saw Blade - [35321] = true, -- Gushing Wound - [36023] = true, -- Deathblow - [36054] = true, -- Deathblow - [36332] = true, -- Rake - [36383] = true, -- Carnivorous Bite - [36590] = true, -- Rip - [36617] = true, -- Gaping Maw - [36965] = true, -- Rend - [36991] = true, -- Rend - [37123] = true, -- Saw Blade - [37662] = true, -- Rend - [37973] = true, -- Coral Cut - [38363] = true, -- Gushing Wound - [38772] = true, -- Grievous Wound - [38801] = true, -- Grievous Wound - [38810] = true, -- Gaping Maw - [39198] = true, -- Carnivorous Bite - [39215] = true, -- Gushing Wound - [39382] = true, -- Carnivorous Bite - [40199] = true, -- Flesh Rip - [41092] = true, -- Carnivorous Bite - [41932] = true, -- Carnivorous Bite - [42395] = true, -- Lacerating Slash - [42397] = true, -- Rend Flesh - [42658] = true, -- Sic'em! - [43093] = true, -- Grievous Throw - [43153] = true, -- Lynx Rush - [43246] = true, -- Rend - [43931] = true, -- Rend - [43937] = true, -- Grievous Wound - [46845] = true, -- Rend - [47465] = true, -- Rend - [48130] = true, -- Gore - [48261] = true, -- Impale - [48286] = true, -- Grievous Slash - [48374] = true, -- Puncture Wound - [48567] = true, -- Lacerate - [48568] = true, -- Lacerate - [48573] = true, -- Rake - [48574] = true, -- Rake - [48671] = true, -- Rupture - [48672] = true, -- Rupture - [48675] = true, -- Garrote - [48676] = true, -- Garrote - [48880] = true, -- Rend - [48920] = true, -- Grievous Bite - [49678] = true, -- Flesh Rot - [49799] = true, -- Rip - [49800] = true, -- Rip - [50498] = true, -- Savage Rend - [50729] = true, -- Carnivorous Bite - [51275] = true, -- Gut Rip - [52401] = true, -- Gut Rip - [52504] = true, -- Lacerate - [52771] = true, -- Wounding Strike - [52873] = true, -- Open Wound - [53317] = true, -- Rend - [53499] = true, -- Rake - [53578] = true, -- Savage Rend - [53579] = true, -- Savage Rend - [53580] = true, -- Savage Rend - [53581] = true, -- Savage Rend - [53582] = true, -- Savage Rend - [53602] = true, -- Dart - [54668] = true, -- Rake - [54703] = true, -- Rend - [54708] = true, -- Rend - [55102] = true, -- Determined Gore - [55249] = true, -- Whirling Slash - [55276] = true, -- Puncture - [55550] = true, -- Jagged Knife - [55604] = true, -- Death Plague - [55622] = true, -- Impale - [55645] = true, -- Bloodletting - [57661] = true, -- Rip - [58459] = true, -- Impale - [58517] = true, -- Grievous Wound - [58830] = true, -- Wounding Strike - [58978] = true, -- Impale - [59007] = true, -- Flesh Rot - [59239] = true, -- Rend - [59256] = true, -- Impale - [59262] = true, -- Grievous Wound - [59264] = true, -- Gore - [59268] = true, -- Impale - [59269] = true, -- Carnivorous Bite - [59343] = true, -- Rend - [59349] = true, -- Dart - [59444] = true, -- Determined Gore - [59682] = true, -- Grievous Wound - [59691] = true, -- Rend - [59825] = true, -- Whirling Slash - [59826] = true, -- Puncture - [59881] = true, -- Rake (Pet) - [59882] = true, -- Rake (Pet) - [59883] = true, -- Rake (Pet) - [59884] = true, -- Rake (Pet) - [59885] = true, -- Rake (Pet) - [59886] = true, -- Rake (Pet) - [59989] = true, -- Rip - [61164] = true, -- Impale - [61896] = true, -- Lacerate - [62318] = true, -- Barbed Shot - [62331] = true, -- Impale - [62418] = true, -- Impale - [65033] = true, -- Constricting Rend - [66620] = true, -- Old Wounds - [67679] = true, -- Old Wounds - [70278] = true, -- Puncture Wound - [70279] = true, -- Puncture Wound - [71926] = true, -- Rip - [75160] = true, -- Bloody Rip - [80183] = true, -- Puncture - [80304] = true, -- Puncture - [80629] = true, -- Rend - [80636] = true, -- Serrated Bite - [83532] = true, -- Rend - [85137] = true, -- Gaping Maw - [85138] = true, -- Gaping Maw - [85139] = true, -- Gaping Maw - [85242] = true, -- Mangle - [85327] = true, -- Rend - [85339] = true, -- Impale - [85356] = true, -- Ravage - [92365] = true, -- Rend - [92468] = true, -- Serrated Bite - [92716] = true, -- Rend - [100332] = true, -- Open Wound - [100632] = true, -- Bite - [101478] = true, -- Shred - [102884] = true, -- Rend - [102887] = true, -- Rend - [102894] = true, -- Rend - [102900] = true, -- Rend - [156943] = true, -- Rupture - [158045] = true, -- Puncture - [164018] = true, -- Rend - [182200] = true, -- Rake - [201161] = true, -- Assisting Hand - [202026] = true, -- Blood for Hakkar! - [202072] = true, -- Blood for Hakkar! - [202884] = true, -- Rend - [202887] = true, -- Rend - [202894] = true, -- Rend - [202900] = true, -- Rend - [234785] = true, -- Rend - [254002] = true, -- Carnivorous Bite - [254118] = true, -- Blood Venon - [254120] = true, -- Rake - [254126] = true, -- Rend - [254138] = true, -- Rupture - [254669] = true, -- Rupture - [254671] = true, -- Rupture - [254902] = true, -- Crimson Tempest - [255434] = true, -- Lacerate - [255435] = true, -- Lacerate - [255436] = true, -- Lacerate - [255777] = true, -- Gaping Maw - [255922] = true, -- Rend - [256416] = true, -- Shanked! - [257330] = true, -- Rend - [257342] = true, -- Rend - [257343] = true, -- Rend - [257344] = true, -- Rend - [257525] = true, -- Blood Strike - [267018] = true, -- Deathblow - [267020] = true, -- Rake - [271853] = true, -- Barbed Snare - [272355] = true, -- Deadly Bite - [273872] = true, -- Disembowel - [273873] = true, -- Disembowel - [273874] = true, -- Disembowel - [273875] = true, -- Disembowel - [273876] = true, -- Disembowel - [273877] = true, -- Disembowel - [273878] = true, -- Disembowel - [273879] = true, -- Disembowel - [273880] = true, -- Disembowel - [273881] = true, -- Disembowel - [273882] = true, -- Disembowel - [273883] = true, -- Disembowel - [273887] = true, -- Disembowel - [274279] = true, -- Impaled - [274321] = true, -- Impaled - [274322] = true, -- Impaled - [274323] = true, -- Impaled - [274324] = true, -- Impaled - [274325] = true, -- Impaled - [274326] = true, -- Impaled - [274327] = true, -- Impaled - [274328] = true, -- Impaled - [274329] = true, -- Impaled - [274330] = true, -- Impaled - [274331] = true, -- Impaled - [274332] = true, -- Impaled - [274870] = true, -- Elemental Rend (Frost) - [274871] = true, -- Elemental Rend (Fire) - [274872] = true, -- Elemental Rend (Nature) - [275327] = true, -- Combo Shot - [275662] = true, -- Puncture - [275699] = true, -- Puncture - [275700] = true, -- Puncture - [275701] = true, -- Puncture - [275702] = true, -- Puncture - [275703] = true, -- Puncture - [275704] = true, -- Puncture - [276204] = true, -- Carnage Rend - [276205] = true, -- Carnage Rend - [276206] = true, -- Carnage Rend - [276207] = true, -- Carnage Rend - [276208] = true, -- Carnage Rend - [276209] = true, -- Carnage Rend - [276210] = true, -- Carnage Rend - [276211] = true, -- Carnage Rend - [276212] = true, -- Carnage Rend - [276213] = true, -- Carnage Rend - [277532] = true, -- Saber Fangs - [282288] = true, -- Hydra's Venom - [282289] = true, -- Hydra's Venom - [282290] = true, -- Hydra's Venom - [282291] = true, -- Hydra's Venom - [282292] = true, -- Hydra's Venom - [282293] = true, -- Hydra's Venom - [282294] = true, -- Hydra's Venom - [282295] = true, -- Hydra's Venom - [282296] = true, -- Hydra's Venom - [282297] = true, -- Hydra's venom - [283003] = true, -- Flesh Hook - [283510] = true, -- Blunt Force Trauma - [284564] = true, -- Razorvine - [284840] = true, -- Sandscoured - [284845] = true, -- Sandscoured - [284846] = true, -- Sandscoured - [284847] = true, -- Sandscoured - [284848] = true, -- Sandscoured - [284881] = true, -- Bone Arrow - [284890] = true, -- Bone Spear - [284892] = true, -- Bone Speared - [285052] = true, -- Shadow Word: Gore - [285053] = true, -- Shadow Word: Gore - [285054] = true, -- Shadow Word: Gore - [285055] = true, -- Shadow Word: Gore - [285056] = true, -- Shadow Word: Gore - [285057] = true, -- Shadow Word: Gore - [285058] = true, -- Shadow Word: Gore - [285059] = true, -- Shadow Word: Gore - [285060] = true, -- Shadow Word: Gore - [285061] = true, -- Shadow Word: Gore - [285062] = true, -- Shadow Word: Gore - [285063] = true, -- Shadow Word: Gore - [285071] = true, -- Shredding Shot - [285164] = true, -- Razorvine - [285165] = true, -- Razorvine - [285166] = true, -- Razorvine - [285167] = true, -- Razorvine - [285168] = true, -- Razorvine - [285169] = true, -- Razorvine - [285170] = true, -- Razorvine - [285694] = true, -- Hell Scream - [285897] = true, -- Hydra's Venom - [285901] = true, -- Hydra's Venom - [285902] = true, -- Hydra's Venom - [285903] = true, -- Hydra's Venom - [285904] = true, -- Hydra's Venom - [285905] = true, -- Hydra's Venom - [285906] = true, -- Hydra's Venom - [285907] = true, -- Hydra's Venom - [285908] = true, -- Hydra's Venom - [285909] = true, -- Hydra's Venom - [286035] = true, -- Hell Scream - [286036] = true, -- Hell Scream - [286037] = true, -- Hell Scream - [286038] = true, -- Hell Scream - [286039] = true, -- Hell Scream - [286040] = true, -- Hell Scream - [286041] = true, -- Hell Scream - [286181] = true, -- Bone Arrow - [286182] = true, -- Bone Arrow - [286183] = true, -- Bone Arrow - [286184] = true, -- Bone Arrow - [286185] = true, -- Bone Arrow - [286186] = true, -- Bone Arrow - [286187] = true, -- Bone Arrow - [286428] = true, -- Bone Spear - [286429] = true, -- Bone Spear - [286430] = true, -- Bone Spear - [286431] = true, -- Bone Spear - [286432] = true, -- Bone Spear - [286433] = true, -- Bone Spear - [290242] = true, -- Feral Frenzy - [290244] = true, -- Feral Frenzy - [290245] = true, -- Feral Frenzy - [290246] = true, -- Feral Frenzy - [290247] = true, -- Feral Frenzy - [290248] = true, -- Feral Frenzy - [290249] = true, -- Feral Frenzy - [290250] = true, -- Feral Frenzy - [291026] = true, -- Thrash (Bear) - [291027] = true, -- Thrash (Bear) - [291028] = true, -- Thrash (Bear) - [291029] = true, -- Thrash (Bear) - [291030] = true, -- Thrash (Bear) - [291031] = true, -- Thrash (Bear) - [291041] = true, -- Thrash (Bear) - [291056] = true, -- Thrash (Bear) - [300844] = true, -- Impale - [300870] = true, -- Frostbite - [300933] = true, -- Lacerate - [300934] = true, -- Lacerate - [300935] = true, -- Lacerate - [300936] = true, -- Lacerate - [300937] = true, -- Lacerate - [300938] = true, -- Lacerate - [300939] = true, -- Lacerate - [303010] = true, -- Gutshot - [303017] = true, -- Torn Flesh - [303046] = true, -- Ripped Flesh - [304003] = true, -- Mangled Flesh - [304167] = true, -- Cleaved Flesh - [304223] = true, -- Buzz Saw - [312451] = true, -- Assisting Hand - [312525] = true, -- Blood for Hakkar! - [312778] = true, -- Ripped Flesh - [312786] = true, -- Gutshot - [312802] = true, -- Torn Flesh - [312842] = true, -- Ripped Flesh - [312844] = true, -- Serrated Flesh - [312970] = true, -- Mangled Flesh - [313165] = true, -- Mangled Flesh - [313292] = true, -- Cleaved Flesh - [313415] = true, -- Buzz Saw - [316451] = true, -- Assisting Hand - [316525] = true, -- Blood for Hakkar! - [316778] = true, -- Ripped Flesh - [316786] = true, -- Gutshot - [316802] = true, -- Torn Flesh - [316842] = true, -- Ripped Flesh - [316844] = true, -- Serrated Flesh - [316970] = true, -- Mangled Flesh - [317165] = true, -- Mangled Flesh - [317292] = true, -- Cleaved Flesh - [317415] = true, -- Buzz Saw - [320451] = true, -- Assisting Hand - [320525] = true, -- Blood for Hakkar! - [320778] = true, -- Ripped Flesh - [320786] = true, -- Gutshot - [320802] = true, -- Torn Flesh - [320842] = true, -- Ripped Flesh - [320844] = true, -- Serrated Flesh - [320970] = true, -- Mangled Flesh - [321165] = true, -- Mangled Flesh - [321292] = true, -- Cleaved Flesh - [321415] = true, -- Buzz Saw - [340015] = true, -- Carnivorous Bite - [340052] = true, -- Deathblow - [340095] = true, -- Rend - [340119] = true, -- Coral Cut - [340516] = true, -- Rend - [350009] = true, -- Rake - [350010] = true, -- Rake - [350039] = true, -- Rake - [350052] = true, -- Rend - [350057] = true, -- Open Wound - [350069] = true, -- Serrated Bite - [350302] = true, -- Jagged Knife - [350346] = true, -- Rend - [350378] = true, -- Rend - [350379] = true, -- Rend - [351014] = true, -- Garrote - [351053] = true, -- Mangle - [351092] = true, -- Ravage - [351096] = true, -- Rend - [351121] = true, -- Impale - [351284] = true, -- Rend - [351285] = true, -- Rend - [351343] = true, -- Rend - [351344] = true, -- Rend - [351349] = true, -- Carnivorous Bite - [351350] = true, -- Carnivorous Bite - [351351] = true, -- Carnivorous Bite - [354043] = true, -- Thorned Claw - [354072] = true, -- Thorned Claw - [354073] = true, -- Thorned Claw - [354274] = true, -- Soul Rend - [354281] = true, -- Burning Blood - [354292] = true, -- Blistering Wound - [354619] = true, -- Soul Rend - [354620] = true, -- Soul Rend - [354621] = true, -- Soul Rend - [354643] = true, -- Blistering Wound - [354644] = true, -- Blistering Wound - [354645] = true, -- Blistering Wound - [354830] = true, -- Disembowel - [354835] = true, -- Rending Slash - [354858] = true, -- Disembowel - [354859] = true, -- Disembowel - [354860] = true, -- Disembowel - [354864] = true, -- Rending Slash - [354865] = true, -- Rending Slash - [354866] = true, -- Rending Slash - [354976] = true, -- Rake - [354995] = true, -- Rip - [355247] = true, -- Rake - [355263] = true, -- Rend - [355375] = true, -- Shredding Gash - [355376] = true, -- Sticky Bomb - [355437] = true, -- Rend - [355485] = true, -- Rend - [355500] = true, -- Pinprick - [355561] = true, -- Disembowel - [355764] = true, -- Rend - [384294] = true, -- Rupture - [385396] = true, -- Puncture - [391369] = true, -- Rend - [413006] = true, -- Savage Rip - [462136] = true, -- Rend - [500073] = true, -- Serrated Shot - [500127] = true, -- Eviscerated - [500351] = true, -- Darkthrash - [501640] = true, -- Hematophage - [501641] = true, -- Hematophage - [501642] = true, -- Hematophage - [501643] = true, -- Hematophage - [501644] = true, -- Hematophage - [501645] = true, -- Hematophage - [501646] = true, -- Hematophage - [501647] = true, -- Hematophage - [501648] = true, -- Hematophage - [501649] = true, -- Hematophage - [501650] = true, -- Hematophage - [501651] = true, -- Hematophage - [501687] = true, -- Lupine Shred - [501688] = true, -- Lupine Shred - [501689] = true, -- Lupine Shred - [501690] = true, -- Lupine Shred - [501691] = true, -- Lupine Shred - [501692] = true, -- Lupine Shred - [501693] = true, -- Lupine Shred - [501694] = true, -- Lupine Shred - [501704] = true, -- Serrated Shot - [501705] = true, -- Serrated Shot - [501706] = true, -- Serrated Shot - [501707] = true, -- Serrated Shot - [502732] = true, -- Primal Shred - [502733] = true, -- Primal Shred - [503561] = true, -- Shattering Shells - [504291] = true, -- Mortal Wounds - [504669] = true, -- Primal Shred - [504670] = true, -- Primal Shred - [504671] = true, -- Primal Shred - [504672] = true, -- Primal Shred - [504673] = true, -- Primal Shred - [504674] = true, -- Primal Shred - [504675] = true, -- Primal Shred - [504676] = true, -- Primal Shred - [520610] = true, -- Disembowel - [520712] = true, -- Disembowel - [520713] = true, -- Disembowel - [520714] = true, -- Disembowel - [520715] = true, -- Disembowel - [520716] = true, -- Disembowel - [520781] = true, -- Disembowel - [524964] = true, -- Crowd Pummeler - [560101] = true, -- Ravage (UNUSED) - [560102] = true, -- Ravage (UNUSED) - [560103] = true, -- Ravage (UNUSED) - [560104] = true, -- Ravage (UNUSED) - [560313] = true, -- Torn to Shreds - [560356] = true, -- Maiming Strike - [560407] = true, -- Massacre - [561303] = true, -- Cursed Ground - [572725] = true, -- Reverberations - [573337] = true, -- One Shot - [575836] = true, -- Serrated Shot - [575837] = true, -- Serrated Shot - [600703] = true, -- Aroy Garrote - [600772] = true, -- Aroy Rend - [601079] = true, -- Aroy Rip - [601822] = true, -- Aroy Rake - [601943] = true, -- Aroy Rupture - [633745] = true, -- Aroy Lacerate - [680279] = true, -- Gore Barrage - [680744] = true, -- Agonizing Pain - [680766] = true, -- Bleed test - [704256] = true, -- Darkrend Scythe - [705023] = true, -- Apocalypse Edge - [705757] = true, -- Piercing Impact - [706808] = true, -- Deadly Blow - [707229] = true, -- Darkrend Scythe - [707303] = true, -- Traumatic Wounds - [782754] = true, -- Pierced - [782801] = true, -- Spear Shards - [783054] = true, -- Headlopped - [783055] = true, -- Bleeding Out - [783056] = true, -- Warbeast - [800341] = true, -- Torn Flesh - [800772] = true, -- Taldaram's Torment - [800990] = true, -- Rend - [801023] = true, -- Savage Rend - [802568] = true, -- Taldaram's Torment - [802569] = true, -- Taldaram's Torment - [802570] = true, -- Taldaram's Torment - [802571] = true, -- Taldaram's Torment - [802572] = true, -- Taldaram's Torment - [802573] = true, -- Taldaram's Torment - [802580] = true, -- Taldaram's Torment - [802587] = true, -- Torn Flesh - [803851] = true, -- Ravage - [803859] = true, -- Ravage - [803860] = true, -- Ravage - [803861] = true, -- Ravage - [803862] = true, -- Ravage - [803863] = true, -- Ravage - [803864] = true, -- Ravage - [804143] = true, -- Puncture Wound - [804600] = true, -- Rending Slash - [805366] = true, -- Deadly Flourish - [805832] = true, -- Gutspiller - [806569] = true, -- Shred - [806576] = true, -- Wolf Spirit's Claw - [806670] = true, -- Rake - [806671] = true, -- Rake - [806882] = true, -- Gutspiller - [806883] = true, -- Gutspiller - [806884] = true, -- Gutspiller - [806885] = true, -- Gutspiller - [806886] = true, -- Gutspiller - [806887] = true, -- Gutspiller - [806898] = true, -- Rending Slash - [806899] = true, -- Rending Slash - [806900] = true, -- Rending Slash - [806901] = true, -- Rending Slash - [806902] = true, -- Rending Slash - [806903] = true, -- Rending Slash - [807237] = true, -- Toxic Dart - [807324] = true, -- Toxic Dart - [807325] = true, -- Toxic Dart - [807326] = true, -- Toxic Dart - [807327] = true, -- Toxic Dart - [807328] = true, -- Toxic Dart - [807329] = true, -- Toxic Dart - [807330] = true, -- Toxic Dart - [850518] = true, -- Combo Shot Bleed - [860210] = true, -- Barbed Snare - [901020] = true, -- Bloodbath - [901021] = true, -- Bloodbath - [901022] = true, -- Bloodbath - [901023] = true, -- Bloodbath - [901081] = true, -- Bone Arrow Bleed - [901149] = true, -- Thrash (Bear) - [901150] = true, -- Thrash (Bear) - [901151] = true, -- Thrash (Bear) - [901152] = true, -- Thrash (Bear) - [901153] = true, -- Thrash (Bear) - [901154] = true, -- Thrash (Bear) - [901185] = true, -- Bone Arrow Bleed - [901186] = true, -- Bone Arrow Bleed - [901187] = true, -- Bone Arrow Bleed - [901188] = true, -- Bone Arrow Bleed - [901189] = true, -- Bone Arrow Bleed - [901190] = true, -- Bone Arrow Bleed - [901191] = true, -- Bone Arrow Bleed - [901192] = true, -- Bone Arrow Bleed - [904000] = true, -- Aether Rip - [904001] = true, -- Aether Rip - [904002] = true, -- Aether Rip - [904003] = true, -- Aether Rip - [904004] = true, -- Aether Rip - [904005] = true, -- Aether Rip - [904006] = true, -- Aether Rip - [904007] = true, -- Aether Rip - [904008] = true, -- Aether Rip - [904009] = true, -- Aether Rip - [904010] = true, -- Aether Rip - [904020] = true, -- Voidrip - [904021] = true, -- Voidrip - [904022] = true, -- Voidrip - [904023] = true, -- Voidrip - [904024] = true, -- Voidrip - [904025] = true, -- Voidrip - [904026] = true, -- Voidrip - [904027] = true, -- Voidrip - [904028] = true, -- Voidrip - [904029] = true, -- Voidrip - [904030] = true, -- Voidrip - [904040] = true, -- Shredding Light - [904041] = true, -- Shredding Light - [904042] = true, -- Shredding Light - [904043] = true, -- Shredding Light - [904044] = true, -- Shredding Light - [904045] = true, -- Shredding Light - [904046] = true, -- Shredding Light - [904047] = true, -- Shredding Light - [904048] = true, -- Shredding Light - [904049] = true, -- Shredding Light - [904050] = true, -- Shredding Light - [904060] = true, -- Emberclaw - [904061] = true, -- Emberclaw - [904062] = true, -- Emberclaw - [904063] = true, -- Emberclaw - [904064] = true, -- Emberclaw - [904065] = true, -- Emberclaw - [904066] = true, -- Emberclaw - [904067] = true, -- Emberclaw - [904068] = true, -- Emberclaw - [904069] = true, -- Emberclaw - [904070] = true, -- Emberclaw - [904080] = true, -- Rime Tear - [904081] = true, -- Rime Tear - [904082] = true, -- Rime Tear - [904083] = true, -- Rime Tear - [904084] = true, -- Rime Tear - [904085] = true, -- Rime Tear - [904086] = true, -- Rime Tear - [904087] = true, -- Rime Tear - [904088] = true, -- Rime Tear - [904089] = true, -- Rime Tear - [904090] = true, -- Rime Tear - [904100] = true, -- Voltripper - [904101] = true, -- Voltripper - [904102] = true, -- Voltripper - [904103] = true, -- Voltripper - [904104] = true, -- Voltripper - [904105] = true, -- Voltripper - [904106] = true, -- Voltripper - [904107] = true, -- Voltripper - [904108] = true, -- Voltripper - [904109] = true, -- Voltripper - [904110] = true, -- Voltripper - [904120] = true, -- Arcane Tear - [904121] = true, -- Arcane Tear - [904122] = true, -- Arcane Tear - [904123] = true, -- Arcane Tear - [904124] = true, -- Arcane Tear - [904125] = true, -- Arcane Tear - [904126] = true, -- Arcane Tear - [904127] = true, -- Arcane Tear - [904140] = true, -- Corrupting Claws - [904141] = true, -- Corrupting Claws - [904142] = true, -- Corrupting Claws - [904143] = true, -- Corrupting Claws - [904144] = true, -- Corrupting Claws - [904145] = true, -- Corrupting Claws - [904146] = true, -- Corrupting Claws - [904147] = true, -- Corrupting Claws - [904160] = true, -- Rending Dawn - [904161] = true, -- Rending Dawn - [904162] = true, -- Rending Dawn - [904163] = true, -- Rending Dawn - [904164] = true, -- Rending Dawn - [904165] = true, -- Rending Dawn - [904166] = true, -- Rending Dawn - [904167] = true, -- Rending Dawn - [904180] = true, -- Burning Claws - [904181] = true, -- Burning Claws - [904182] = true, -- Burning Claws - [904183] = true, -- Burning Claws - [904184] = true, -- Burning Claws - [904185] = true, -- Burning Claws - [904186] = true, -- Burning Claws - [904187] = true, -- Burning Claws - [904200] = true, -- Frost Bite - [904201] = true, -- Frost Bite - [904202] = true, -- Frost Bite - [904203] = true, -- Frost Bite - [904204] = true, -- Frost Bite - [904205] = true, -- Frost Bite - [904206] = true, -- Frost Bite - [904207] = true, -- Frost Bite - [904220] = true, -- Stormclaw - [904221] = true, -- Stormclaw - [904222] = true, -- Stormclaw - [904223] = true, -- Stormclaw - [904224] = true, -- Stormclaw - [904225] = true, -- Stormclaw - [904226] = true, -- Stormclaw - [904227] = true, -- Stormclaw - [904960] = true, -- Spellrender - [904961] = true, -- Spellrender - [904962] = true, -- Spellrender - [904963] = true, -- Spellrender - [904964] = true, -- Spellrender - [904965] = true, -- Spellrender - [904966] = true, -- Spellrender - [904967] = true, -- Spellrender - [904968] = true, -- Spellrender - [904980] = true, -- Dusk Wound - [904981] = true, -- Dusk Wound - [904982] = true, -- Dusk Wound - [904983] = true, -- Dusk Wound - [904984] = true, -- Dusk Wound - [904985] = true, -- Dusk Wound - [904986] = true, -- Dusk Wound - [904987] = true, -- Dusk Wound - [904988] = true, -- Dusk Wound - [907000] = true, -- Brand of Dawn - [907001] = true, -- Brand of Dawn - [907002] = true, -- Brand of Dawn - [907003] = true, -- Brand of Dawn - [907004] = true, -- Brand of Dawn - [907005] = true, -- Brand of Dawn - [907006] = true, -- Brand of Dawn - [907007] = true, -- Brand of Dawn - [907008] = true, -- Brand of Dawn - [907020] = true, -- Burning Brand - [907021] = true, -- Burning Brand - [907022] = true, -- Burning Brand - [907023] = true, -- Burning Brand - [907024] = true, -- Burning Brand - [907025] = true, -- Burning Brand - [907026] = true, -- Burning Brand - [907027] = true, -- Burning Brand - [907028] = true, -- Burning Brand - [907040] = true, -- Ice Shard - [907041] = true, -- Ice Shard - [907042] = true, -- Ice Shard - [907043] = true, -- Ice Shard - [907044] = true, -- Ice Shard - [907045] = true, -- Ice Shard - [907046] = true, -- Ice Shard - [907047] = true, -- Ice Shard - [907048] = true, -- Ice Shard - [907060] = true, -- Cloudburst - [907061] = true, -- Cloudburst - [907062] = true, -- Cloudburst - [907063] = true, -- Cloudburst - [907064] = true, -- Cloudburst - [907065] = true, -- Cloudburst - [907066] = true, -- Cloudburst - [907067] = true, -- Cloudburst - [907068] = true, -- Cloudburst - [947470] = true, -- Disembowel - [947471] = true, -- Disembowel - [947472] = true, -- Disembowel - [947473] = true, -- Disembowel - [947474] = true, -- Disembowel - [947475] = true, -- Disembowel - [947476] = true, -- Disembowel - [947477] = true, -- Disembowel - [947478] = true, -- Disembowel - [947479] = true, -- Disembowel - [947480] = true, -- Disembowel - [947481] = true, -- Disembowel - [954809] = true, -- Crimson Tempest - [954815] = true, -- Bloodbath - [954883] = true, -- Crimson Tempest - [954884] = true, -- Crimson Tempest - [954885] = true, -- Crimson Tempest - [954886] = true, -- Crimson Tempest - [954887] = true, -- Crimson Tempest - [954888] = true, -- Crimson Tempest - [954889] = true, -- Crimson Tempest - [965150] = true, -- Feast - [965408] = true, -- Deadly Bite - [965630] = true, -- Carve - [965747] = true, -- Flesh Wound - [965758] = true, -- Nick - [965762] = true, -- Cut Throat - [965772] = true, -- Impale - [966380] = true, -- Savage Rend - [975040] = true, -- Shark Bite - [978693] = true, -- Elemental Rend (Frost) - [978694] = true, -- Elemental Rend (Fire) - [978695] = true, -- Elemental Rend (Nature) - [982251] = true, -- Impaled - [982450] = true, -- Razorvine - [982682] = true, -- Razorvine - [982683] = true, -- Razorvine - [982684] = true, -- Razorvine - [982685] = true, -- Razorvine - [982686] = true, -- Razorvine - [982687] = true, -- Razorvine - [982688] = true, -- Razorvine - [982703] = true, -- Ironsand - [982704] = true, -- Ironsand - [982705] = true, -- Ironsand - [982706] = true, -- Ironsand - [982707] = true, -- Ironsand - [983021] = true, -- Shadow Word: Gore - [983022] = true, -- Shadow Word: Gore - [983023] = true, -- Shadow Word: Gore - [983024] = true, -- Shadow Word: Gore - [983025] = true, -- Shadow Word: Gore - [983026] = true, -- Shadow Word: Gore - [983027] = true, -- Shadow Word: Gore - [983028] = true, -- Shadow Word: Gore - [983029] = true, -- Shadow Word: Gore - [983030] = true, -- Shadow Word: Gore - [983031] = true, -- Shadow Word: Gore - [983032] = true, -- Shadow Word: Gore - [983037] = true, -- Beast Shot - [983251] = true, -- Bone Spear - [983260] = true, -- Bone Spear - [983261] = true, -- Bone Spear - [983262] = true, -- Bone Spear - [983263] = true, -- Bone Spear - [983264] = true, -- Bone Spear - [983265] = true, -- Bone Spear - [983266] = true, -- Bone Spear - [983267] = true, -- Bone Spear - [983663] = true, -- Shredded Flesh - [984698] = true, -- Saber Fangs - [984702] = true, -- Elemental Rend - [984818] = true, -- Bloodshed - [984828] = true, -- Barbed Shot - [984831] = true, -- Bloodhunt Shot - [984865] = true, -- Furious Reaction - [986011] = true, -- Rend (Carnage) - [986012] = true, -- Rend (Carnage) - [986013] = true, -- Rend (Carnage) - [986014] = true, -- Rend (Carnage) - [986015] = true, -- Rend (Carnage) - [986016] = true, -- Rend (Carnage) - [986017] = true, -- Rend (Carnage) - [986018] = true, -- Rend (Carnage) - [986019] = true, -- Rend (Carnage) - [986020] = true, -- Rend (Carnage) - [987149] = true, -- Blunt Force Trauma - [990240] = true, -- Disembowel - [992373] = true, -- Flay Flesh - [992716] = true, -- Flesh Rend - [992722] = true, -- Ice Bite - [992768] = true, -- Flesh Tear - [992802] = true, -- Feral Frenzy - [992833] = true, -- Barbed Shot - [992943] = true, -- Feral Bite - [992991] = true, -- Feral Frenzy - [993001] = true, -- Saw Blades - [993096] = true, -- Brewer's Fury - [993740] = true, -- Voidfang - [993741] = true, -- Voidfang - [993742] = true, -- Voidfang - [993752] = true, -- Bloodletting Slash - [993900] = true, -- Brutal Chop - [997099] = true, -- Hell Scream - [997243] = true, -- Hydra's Venom - [997244] = true, -- Hydra's Venom - [997245] = true, -- Hydra's Venom - [997246] = true, -- Hydra's Venom - [997247] = true, -- Hydra's Venom - [997248] = true, -- Hydra's Venom - [997249] = true, -- Hydra's Venom - [997250] = true, -- Hydra's Venom - [997251] = true, -- Hydra's Venom - [997252] = true, -- Hydra's venom - [997316] = true, -- Rake - [997595] = true, -- Arcane Melee - [997765] = true, -- Puncture - [997766] = true, -- Puncture - [997767] = true, -- Puncture - [997768] = true, -- Puncture - [997769] = true, -- Puncture - [997770] = true, -- Puncture - [997771] = true, -- Puncture - [1100703] = true, -- Garrote - [1100772] = true, -- Rend - [1100790] = true, -- Thrash - [1100791] = true, -- Thrash - [1100792] = true, -- Thrash - [1100793] = true, -- Thrash - [1100794] = true, -- Thrash - [1100795] = true, -- Thrash - [1101079] = true, -- Rip - [1101822] = true, -- Rake - [1101823] = true, -- Rake - [1101824] = true, -- Rake - [1101943] = true, -- Rupture - [1106546] = true, -- Rend - [1106547] = true, -- Rend - [1106548] = true, -- Rend - [1108631] = true, -- Garrote - [1108632] = true, -- Garrote - [1108633] = true, -- Garrote - [1108639] = true, -- Rupture - [1108640] = true, -- Rupture - [1109007] = true, -- Pounce Bleed - [1109492] = true, -- Rip - [1109493] = true, -- Rip - [1109752] = true, -- Rip - [1109824] = true, -- Pounce Bleed - [1109826] = true, -- Pounce Bleed - [1109894] = true, -- Rip - [1109896] = true, -- Rip - [1109904] = true, -- Rake - [1111273] = true, -- Rupture - [1111274] = true, -- Rupture - [1111275] = true, -- Rupture - [1111289] = true, -- Garrote - [1111290] = true, -- Garrote - [1111572] = true, -- Rend - [1111573] = true, -- Rend - [1111574] = true, -- Rend - [1112721] = true, -- Deep Wounds - [1114874] = true, -- Rupture - [1114903] = true, -- Rupture - [1115583] = true, -- Rupture - [1124331] = true, -- Rake - [1124332] = true, -- Rake - [1125208] = true, -- Rend - [1126839] = true, -- Garrote - [1126867] = true, -- Rupture - [1126884] = true, -- Garrote - [1127003] = true, -- Rake - [1127007] = true, -- Pounce Bleed - [1127008] = true, -- Rip - [1127556] = true, -- Rake - [1127638] = true, -- Rake - [1129583] = true, -- Impale - [1131041] = true, -- Mangle - [1133745] = true, -- Lacerate - [1133746] = true, -- Lacerate - [1133747] = true, -- Lacerate - [1136332] = true, -- Rake - [1137066] = true, -- Garrote - [1143104] = true, -- Deep Wound - [1146845] = true, -- Rend - [1147465] = true, -- Rend - [1148567] = true, -- Lacerate - [1148568] = true, -- Lacerate - [1148573] = true, -- Rake - [1148574] = true, -- Rake - [1148580] = true, -- Lacerate - [1148581] = true, -- Lacerate - [1148671] = true, -- Rupture - [1148672] = true, -- Rupture - [1148675] = true, -- Garrote - [1148676] = true, -- Garrote - [1149799] = true, -- Rip - [1149800] = true, -- Rip - [1149804] = true, -- Pounce Bleed - [1150498] = true, -- Savage Rend - [1153578] = true, -- Savage Rend - [1153579] = true, -- Savage Rend - [1153580] = true, -- Savage Rend - [1153581] = true, -- Savage Rend - [1153582] = true, -- Savage Rend - [1155550] = true, -- Jagged Knife - [1155622] = true, -- Impale - [1158978] = true, -- Impale - [1159881] = true, -- Rake - [1159882] = true, -- Rake - [1159883] = true, -- Rake - [1159884] = true, -- Rake - [1159885] = true, -- Rake - [1159886] = true, -- Rake - [1161164] = true, -- Impale - [1163071] = true, -- Laceration - [1163468] = true, -- Piercing Shots - [1180242] = true, -- Feral Frenzy - [1180251] = true, -- Feral Frenzy - [1180252] = true, -- Feral Frenzy - [1180253] = true, -- Feral Frenzy - [1180254] = true, -- Feral Frenzy - [1180255] = true, -- Feral Frenzy - [1402322] = true, -- Rake - [1407046] = true, -- Rend - [1407048] = true, -- Rend - [1569398] = true, -- Barbed Snare - [1570396] = true, -- Deadly Bite - [1572620] = true, -- Disembowel - [1572621] = true, -- Disembowel - [1572622] = true, -- Disembowel - [1572623] = true, -- Disembowel - [1572624] = true, -- Disembowel - [1572625] = true, -- Disembowel - [1572626] = true, -- Disembowel - [1572627] = true, -- Disembowel - [1572628] = true, -- Disembowel - [1572629] = true, -- Disembowel - [1572630] = true, -- Disembowel - [1572631] = true, -- Disembowel - [1572638] = true, -- Disembowel - [1573293] = true, -- Impaled - [1574215] = true, -- Elemental Rend (Frost) - [1574241] = true, -- Elemental Rend (Fire) - [1574267] = true, -- Elemental Rend (Nature) - [1575466] = true, -- Puncture - [1575467] = true, -- Puncture - [1575468] = true, -- Puncture - [1575469] = true, -- Puncture - [1575470] = true, -- Puncture - [1575471] = true, -- Puncture - [1575472] = true, -- Puncture - [1576594] = true, -- Carnage Rend - [1576595] = true, -- Carnage Rend - [1576596] = true, -- Carnage Rend - [1576597] = true, -- Carnage Rend - [1576598] = true, -- Carnage Rend - [1576599] = true, -- Carnage Rend - [1576600] = true, -- Carnage Rend - [1576601] = true, -- Carnage Rend - [1576602] = true, -- Carnage Rend - [1576603] = true, -- Carnage Rend - [1580246] = true, -- Garrote - [1584827] = true, -- Blunt Force Trauma - [1587588] = true, -- Razorvine - [1588276] = true, -- Sandscoured - [1588281] = true, -- Sandscoured - [1588282] = true, -- Sandscoured - [1588283] = true, -- Sandscoured - [1588284] = true, -- Sandscoured - [1588346] = true, -- Bone Arrow Bleed - [1588348] = true, -- Bone Arrow Bleed - [1588372] = true, -- Bone Speared - [1588841] = true, -- Shadow Word: Gore - [1588842] = true, -- Shadow Word: Gore - [1588843] = true, -- Shadow Word: Gore - [1588844] = true, -- Shadow Word: Gore - [1588845] = true, -- Shadow Word: Gore - [1588846] = true, -- Shadow Word: Gore - [1588847] = true, -- Shadow Word: Gore - [1588848] = true, -- Shadow Word: Gore - [1588849] = true, -- Shadow Word: Gore - [1588850] = true, -- Shadow Word: Gore - [1588851] = true, -- Shadow Word: Gore - [1588852] = true, -- Shadow Word: Gore - [1588894] = true, -- Shredding Shot - [1590352] = true, -- Hell Scream - [1590575] = true, -- Hydra's Venom - [1590576] = true, -- Hydra's Venom - [1590577] = true, -- Hydra's Venom - [1590578] = true, -- Hydra's Venom - [1590579] = true, -- Hydra's Venom - [1590580] = true, -- Hydra's Venom - [1590581] = true, -- Hydra's Venom - [1590582] = true, -- Hydra's Venom - [1590583] = true, -- Hydra's Venom - [1590584] = true, -- Hydra's Venom - [1901020] = true, -- Bloodbath - [1901021] = true, -- Bloodbath - [1901022] = true, -- Bloodbath - [1901023] = true, -- Bloodbath - [1954815] = true, -- Bloodbath - [2100021] = true, -- Rend - [2100022] = true, -- Rend - [2100023] = true, -- Rend - [2100024] = true, -- Rend - [2100170] = true, -- Rupture - [2100752] = true, -- Deep Wound - [2100913] = true, -- Puncture - [2102164] = true, -- Throw Cleaver - [2102580] = true, -- Rupture - [2102654] = true, -- Cleaver Wound - [2102655] = true, -- Cleaver Wound - [2102656] = true, -- Cleaver Wound - [2102657] = true, -- Cleaver Wound - [2102681] = true, -- Rend - [2102682] = true, -- Rend - [2102683] = true, -- Rend - [2102684] = true, -- Rend - [2102842] = true, -- Rend - [2102843] = true, -- Rend - [2102844] = true, -- Rend - [2102845] = true, -- Rend - [2106029] = true, -- Impaling Throw - [2106030] = true, -- Impaling Throw - [2106031] = true, -- Impaling Throw - [2106032] = true, -- Impaling Throw - [2110917] = true, -- Rending Claws - [2110918] = true, -- Rending Claws - [2110919] = true, -- Rending Claws - [2110920] = true, -- Rending Claws - [2112408] = true, -- Dismember - [2112409] = true, -- Dismember - [2112410] = true, -- Dismember - [2112411] = true, -- Dismember - [2118240] = true, -- Rip - [2118241] = true, -- Rip - [2118242] = true, -- Rip - [2118243] = true, -- Rip - [2118326] = true, -- Razor Claws - [2118327] = true, -- Razor Claws - [2118328] = true, -- Razor Claws - [2118329] = true, -- Razor Claws - [2122122] = true, -- Rending Claws - [2122123] = true, -- Rending Claws - [2122124] = true, -- Rending Claws - [2122125] = true, -- Rending Claws - [2122323] = true, -- Impale - [2122324] = true, -- Impale - [2122325] = true, -- Impale - [2122326] = true, -- Impale - [2125205] = true, -- Deathblow - [2125206] = true, -- Deathblow - [2125207] = true, -- Deathblow - [2125208] = true, -- Deathblow - [2125292] = true, -- Rend - [2125293] = true, -- Rend - [2125294] = true, -- Rend - [2125295] = true, -- Rend - [2125372] = true, -- Impale - [2125373] = true, -- Impale - [2125374] = true, -- Impale - [2125375] = true, -- Impale - [2125601] = true, -- Dark Talon - [2125602] = true, -- Dark Talon - [2125603] = true, -- Dark Talon - [2125604] = true, -- Dark Talon - [2125664] = true, -- Gaping Maw - [2125665] = true, -- Gaping Maw - [2125666] = true, -- Gaping Maw - [2125667] = true, -- Gaping Maw - [2130032] = true, -- Impaling Throw - [2130174] = true, -- Gaping Maw - [2130814] = true, -- Rake - [2130815] = true, -- Rake - [2130816] = true, -- Rake - [2130817] = true, -- Rake - [2130829] = true, -- Ferocious Rake - [2130855] = true, -- Ferocious Rake - [2130856] = true, -- Ferocious Rake - [2130857] = true, -- Ferocious Rake - [2135600] = true, -- Rend - [2135601] = true, -- Rend - [2135602] = true, -- Rend - [2135603] = true, -- Rend - [2135657] = true, -- Gut Rip - [2135658] = true, -- Gut Rip - [2135659] = true, -- Gut Rip - [2135660] = true, -- Gut Rip - [2135668] = true, -- Gaping Maw - [2135669] = true, -- Gaping Maw - [2135670] = true, -- Gaping Maw - [2135671] = true, -- Gaping Maw - [2135747] = true, -- Talon Strike - [2135748] = true, -- Talon Strike - [2135749] = true, -- Talon Strike - [2135750] = true, -- Talon Strike - [2135819] = true, -- Amani Bear Trap - [2135820] = true, -- Amani Bear Trap - [2135821] = true, -- Amani Bear Trap - [2135822] = true, -- Amani Bear Trap - [2135824] = true, -- Impaled - [2135825] = true, -- Impaled - [2135826] = true, -- Impaled - [2135827] = true, -- Impaled - [2135833] = true, -- Rend Flesh - [2135834] = true, -- Rend Flesh - [2135835] = true, -- Rend Flesh - [2135836] = true, -- Rend Flesh - [2135857] = true, -- Lacerate - [2135858] = true, -- Lacerate - [2135859] = true, -- Lacerate - [2135860] = true, -- Lacerate - [2135877] = true, -- Lacerating Swipe - [2135878] = true, -- Lacerating Swipe - [2135879] = true, -- Lacerating Swipe - [2135880] = true, -- Lacerating Swipe - [2136058] = true, -- Lynx Rush - [2136059] = true, -- Lynx Rush - [2136060] = true, -- Lynx Rush - [2136061] = true, -- Lynx Rush - [2136326] = true, -- Rend Flesh - [2136327] = true, -- Rend Flesh - [2136328] = true, -- Rend Flesh - [2136329] = true, -- Rend Flesh - [2136382] = true, -- Lynx Rush - [2136383] = true, -- Lynx Rush - [2136384] = true, -- Lynx Rush - [2136385] = true, -- Lynx Rush - [2136398] = true, -- Amani Bear Trap - [2136399] = true, -- Amani Bear Trap - [2136400] = true, -- Amani Bear Trap - [2136401] = true, -- Amani Bear Trap - [2137739] = true, -- Carnivorous Bite - [2137740] = true, -- Carnivorous Bite - [2137741] = true, -- Carnivorous Bite - [2137742] = true, -- Carnivorous Bite - [2137807] = true, -- Rend - [2137808] = true, -- Rend - [2137809] = true, -- Rend - [2137810] = true, -- Rend - [2141254] = true, -- Crippling Wound - [2141255] = true, -- Crippling Wound - [2141256] = true, -- Crippling Wound - [2141257] = true, -- Crippling Wound - [2141572] = true, -- Rend - [2141573] = true, -- Rend - [2141574] = true, -- Rend - [2141575] = true, -- Rend - [2142208] = true, -- Rupture - [2142209] = true, -- Rupture - [2142210] = true, -- Rupture - [2142211] = true, -- Rupture - [2142516] = true, -- Impaling Spine - [2142517] = true, -- Impaling Spine - [2142518] = true, -- Impaling Spine - [2142519] = true, -- Impaling Spine - [2145205] = true, -- Slaying Shot - [2148844] = true, -- Impale - [2148845] = true, -- Impale - [2148846] = true, -- Impale - [2148847] = true, -- Impale - [2150775] = true, -- Rending Claws - [2150776] = true, -- Rending Claws - [2150777] = true, -- Rending Claws - [2150778] = true, -- Rending Claws - [2150844] = true, -- Impale - [2150845] = true, -- Impale - [2150846] = true, -- Impale - [2150847] = true, -- Impale - [2151239] = true, -- Infected Wound - [2151357] = true, -- Infected Wound - [2151372] = true, -- Rending Claws - [2151451] = true, -- Dart - [2151452] = true, -- Dart - [2151453] = true, -- Dart - [2151454] = true, -- Dart - [2152541] = true, -- Gore - [2152542] = true, -- Gore - [2152543] = true, -- Gore - [2152544] = true, -- Gore - [2152614] = true, -- Slashing Wound - [2152615] = true, -- Slashing Wound - [2152616] = true, -- Slashing Wound - [2152617] = true, -- Slashing Wound - [2152775] = true, -- Rending Claws - [2152776] = true, -- Rending Claws - [2152777] = true, -- Rending Claws - [2152778] = true, -- Rending Claws - [2153067] = true, -- Rend - [2153239] = true, -- Infected Wound - [2153357] = true, -- Infected Wound - [2153372] = true, -- Rending Claws - [2154541] = true, -- Gore - [2154542] = true, -- Gore - [2154543] = true, -- Gore - [2154544] = true, -- Gore - [2154614] = true, -- Slashing Wound - [2154615] = true, -- Slashing Wound - [2154616] = true, -- Slashing Wound - [2154617] = true, -- Slashing Wound - [2154867] = true, -- Rend - [2156122] = true, -- Rending Claws - [2156123] = true, -- Rending Claws - [2156124] = true, -- Rending Claws - [2156125] = true, -- Rending Claws - [2156323] = true, -- Impale - [2156324] = true, -- Impale - [2156325] = true, -- Impale - [2156326] = true, -- Impale - [2251020] = true, -- Bloodbath - [2251021] = true, -- Bloodbath - [2251022] = true, -- Bloodbath - [2251023] = true, -- Bloodbath - [2304587] = true, -- Barbed Shot - [2304809] = true, -- Crimson Tempest - [2304815] = true, -- Bloodbath - [2304883] = true, -- Crimson Tempest - [2304884] = true, -- Crimson Tempest - [2304885] = true, -- Crimson Tempest - [2304886] = true, -- Crimson Tempest - [2304887] = true, -- Crimson Tempest - [2304888] = true, -- Crimson Tempest - [2304889] = true, -- Crimson Tempest - [3100021] = true, -- Rend - [3100022] = true, -- Rend - [3100023] = true, -- Rend - [3100024] = true, -- Rend - [3100170] = true, -- Rupture - [3100752] = true, -- Deep Wound - [3102164] = true, -- Throw Cleaver - [3102580] = true, -- Rupture - [3102654] = true, -- Cleaver Wound - [3102655] = true, -- Cleaver Wound - [3102656] = true, -- Cleaver Wound - [3102657] = true, -- Cleaver Wound - [3102681] = true, -- Rend - [3102682] = true, -- Rend - [3102683] = true, -- Rend - [3102684] = true, -- Rend - [3106029] = true, -- Impaling Throw - [3106030] = true, -- Impaling Throw - [3106031] = true, -- Impaling Throw - [3106032] = true, -- Impaling Throw - [3123924] = true, -- Jagged Cold Steel Knife - [3123925] = true, -- Jagged Cold Steel Knife - [3123926] = true, -- Jagged Cold Steel Knife - [3123927] = true, -- Jagged Cold Steel Knife - [3125205] = true, -- Deathblow - [3125206] = true, -- Deathblow - [3125207] = true, -- Deathblow - [3125208] = true, -- Deathblow - [3125292] = true, -- Rend - [3125293] = true, -- Rend - [3125294] = true, -- Rend - [3125295] = true, -- Rend - [3125372] = true, -- Impale - [3125373] = true, -- Impale - [3125374] = true, -- Impale - [3125375] = true, -- Impale - [3125601] = true, -- Dark Talon - [3125602] = true, -- Dark Talon - [3125603] = true, -- Dark Talon - [3125604] = true, -- Dark Talon - [3125664] = true, -- Gaping Maw - [3125665] = true, -- Gaping Maw - [3125666] = true, -- Gaping Maw - [3125667] = true, -- Gaping Maw - [3130032] = true, -- Impaling Throw - [3130174] = true, -- Gaping Maw - [3130814] = true, -- Rake - [3130815] = true, -- Rake - [3130816] = true, -- Rake - [3130817] = true, -- Rake - [3135600] = true, -- Rend - [3135601] = true, -- Rend - [3135602] = true, -- Rend - [3135603] = true, -- Rend - [3135657] = true, -- Gut Rip - [3135658] = true, -- Gut Rip - [3135659] = true, -- Gut Rip - [3135660] = true, -- Gut Rip - [3135668] = true, -- Gaping Maw - [3135669] = true, -- Gaping Maw - [3135670] = true, -- Gaping Maw - [3135671] = true, -- Gaping Maw - [3135747] = true, -- Talon Strike - [3135748] = true, -- Talon Strike - [3135749] = true, -- Talon Strike - [3135750] = true, -- Talon Strike - [3135819] = true, -- Amani Bear Trap - [3135820] = true, -- Amani Bear Trap - [3135821] = true, -- Amani Bear Trap - [3135822] = true, -- Amani Bear Trap - [3135824] = true, -- Impaled - [3135825] = true, -- Impaled - [3135826] = true, -- Impaled - [3135827] = true, -- Impaled - [3135833] = true, -- Rend Flesh - [3135834] = true, -- Rend Flesh - [3135835] = true, -- Rend Flesh - [3135836] = true, -- Rend Flesh - [3135857] = true, -- Lacerate - [3135858] = true, -- Lacerate - [3135859] = true, -- Lacerate - [3135860] = true, -- Lacerate - [3135877] = true, -- Lacerating Swipe - [3135878] = true, -- Lacerating Swipe - [3135879] = true, -- Lacerating Swipe - [3135880] = true, -- Lacerating Swipe - [3136058] = true, -- Lynx Rush - [3136059] = true, -- Lynx Rush - [3136060] = true, -- Lynx Rush - [3136061] = true, -- Lynx Rush - [3136326] = true, -- Rend Flesh - [3136327] = true, -- Rend Flesh - [3136328] = true, -- Rend Flesh - [3136329] = true, -- Rend Flesh - [3136382] = true, -- Lynx Rush - [3136383] = true, -- Lynx Rush - [3136384] = true, -- Lynx Rush - [3136385] = true, -- Lynx Rush - [3136398] = true, -- Amani Bear Trap - [3136399] = true, -- Amani Bear Trap - [3136400] = true, -- Amani Bear Trap - [3136401] = true, -- Amani Bear Trap - [3137739] = true, -- Carnivorous Bite - [3137740] = true, -- Carnivorous Bite - [3137741] = true, -- Carnivorous Bite - [3137742] = true, -- Carnivorous Bite - [3137807] = true, -- Rend - [3137808] = true, -- Rend - [3137809] = true, -- Rend - [3137810] = true, -- Rend - [3141254] = true, -- Crippling Wound - [3141255] = true, -- Crippling Wound - [3141256] = true, -- Crippling Wound - [3141257] = true, -- Crippling Wound - [3141572] = true, -- Rend - [3141573] = true, -- Rend - [3141574] = true, -- Rend - [3141575] = true, -- Rend - [3142208] = true, -- Rupture - [3142209] = true, -- Rupture - [3142210] = true, -- Rupture - [3142211] = true, -- Rupture - [3142516] = true, -- Impaling Spine - [3142517] = true, -- Impaling Spine - [3142518] = true, -- Impaling Spine - [3142519] = true, -- Impaling Spine - [3280243] = true, -- Feral Frenzy - [3304815] = true, -- Bloodbath - [3954809] = true, -- Crimson Tempest - [4125431] = true, -- Grievous Wound - [5011037] = true, -- Grievous Whirl - [5011166] = true, -- Grievous Whirl - [5036870] = true, -- Grievous Whirl - [5432530] = true, -- Grievous Whirl - [8000004] = true, -- Shredding Bite - [9931133] = true, -- Lashing Thorns - [9980645] = true, -- Rend - [10013445] = true, -- Rend - [10092716] = true, -- Rend -}; +-- Packed as comma-separated IDs (~16/line) so regens diff cleanly. +-- Parsed once at addon load into a {[id]=true} hash for O(1) lookup. +local packed = [[ +703,772,1079,1080,1081,1822,1823,1824,1826,1943,3147,4102,4244,6546,6547,6548 +8631,8632,8633,8639,8640,8818,9492,9493,9752,9894,9896,9904,10044,11273,11274,11275 +11289,11290,11572,11573,11574,11575,11977,12054,12721,13318,13443,13445,13738,14087,14118,14331 +14874,14903,15583,15976,16095,16393,16403,16406,16509,17153,17407,17504,18075,18078,18106,18200 +18202,19771,21948,21949,24192,24331,24332,25208,26839,26867,26884,27003,27008,27556,27638,28913 +29574,29578,29583,29906,29935,30285,30639,31041,31410,31956,32019,32901,33745,33865,33912,35144 +35318,35321,36023,36054,36332,36383,36590,36617,36965,36991,37123,37662,37973,38363,38772,38801 +38810,39198,39215,39382,40199,41092,41932,42395,42397,42658,43093,43153,43246,43931,43937,46845 +47465,48130,48261,48286,48374,48567,48568,48573,48574,48671,48672,48675,48676,48880,48920,49678 +49799,49800,50498,50729,51275,52401,52504,52771,52873,53317,53499,53578,53579,53580,53581,53582 +53602,54668,54703,54708,55102,55249,55276,55550,55604,55622,55645,57661,58459,58517,58830,58978 +59007,59239,59256,59262,59264,59268,59269,59343,59349,59444,59682,59691,59825,59826,59881,59882 +59883,59884,59885,59886,59989,61164,61896,62318,62331,62418,65033,66620,67679,70278,70279,71926 +75160,80183,80304,80629,80636,83532,85137,85138,85139,85242,85327,85339,85356,92365,92468,92716 +100332,100632,101478,102884,102887,102894,102900,156943,158045,164018,182200,201161,202026,202072,202884,202887 +202894,202900,234785,254002,254118,254120,254126,254138,254669,254671,254902,255434,255435,255436,255777,255922 +256416,257330,257342,257343,257344,257525,267018,267020,271853,272355,273872,273873,273874,273875,273876,273877 +273878,273879,273880,273881,273882,273883,273887,274279,274321,274322,274323,274324,274325,274326,274327,274328 +274329,274330,274331,274332,274870,274871,274872,275327,275662,275699,275700,275701,275702,275703,275704,276204 +276205,276206,276207,276208,276209,276210,276211,276212,276213,277532,282288,282289,282290,282291,282292,282293 +282294,282295,282296,282297,283003,283510,284564,284840,284845,284846,284847,284848,284881,284890,284892,285052 +285053,285054,285055,285056,285057,285058,285059,285060,285061,285062,285063,285071,285164,285165,285166,285167 +285168,285169,285170,285694,285897,285901,285902,285903,285904,285905,285906,285907,285908,285909,286035,286036 +286037,286038,286039,286040,286041,286181,286182,286183,286184,286185,286186,286187,286428,286429,286430,286431 +286432,286433,290242,290244,290245,290246,290247,290248,290249,290250,291026,291027,291028,291029,291030,291031 +291041,291056,300844,300870,300933,300934,300935,300936,300937,300938,300939,303010,303017,303046,304003,304167 +304223,312451,312525,312778,312786,312802,312842,312844,312970,313165,313292,313415,316451,316525,316778,316786 +316802,316842,316844,316970,317165,317292,317415,320451,320525,320778,320786,320802,320842,320844,320970,321165 +321292,321415,340015,340052,340095,340119,340516,350009,350010,350039,350052,350057,350069,350302,350346,350378 +350379,351014,351053,351092,351096,351121,351284,351285,351343,351344,351349,351350,351351,354043,354072,354073 +354274,354281,354292,354619,354620,354621,354643,354644,354645,354830,354835,354858,354859,354860,354864,354865 +354866,354976,354995,355247,355263,355375,355376,355437,355485,355500,355561,355764,384294,385396,391369,413006 +462136,500073,500127,500351,501640,501641,501642,501643,501644,501645,501646,501647,501648,501649,501650,501651 +501687,501688,501689,501690,501691,501692,501693,501694,501704,501705,501706,501707,502732,502733,503561,504291 +504669,504670,504671,504672,504673,504674,504675,504676,520610,520712,520713,520714,520715,520716,520781,524964 +560101,560102,560103,560104,560313,560356,560407,561303,572725,573337,575836,575837,600703,600772,601079,601822 +601943,633745,680279,680744,680766,704256,705023,705757,706808,707229,707303,782754,782801,783054,783055,783056 +800341,800772,800990,801023,802568,802569,802570,802571,802572,802573,802580,802587,803851,803859,803860,803861 +803862,803863,803864,804143,804600,805366,805832,806569,806576,806670,806671,806882,806883,806884,806885,806886 +806887,806898,806899,806900,806901,806902,806903,807237,807324,807325,807326,807327,807328,807329,807330,850518 +860210,901020,901021,901022,901023,901081,901149,901150,901151,901152,901153,901154,901185,901186,901187,901188 +901189,901190,901191,901192,904000,904001,904002,904003,904004,904005,904006,904007,904008,904009,904010,904020 +904021,904022,904023,904024,904025,904026,904027,904028,904029,904030,904040,904041,904042,904043,904044,904045 +904046,904047,904048,904049,904050,904060,904061,904062,904063,904064,904065,904066,904067,904068,904069,904070 +904080,904081,904082,904083,904084,904085,904086,904087,904088,904089,904090,904100,904101,904102,904103,904104 +904105,904106,904107,904108,904109,904110,904120,904121,904122,904123,904124,904125,904126,904127,904140,904141 +904142,904143,904144,904145,904146,904147,904160,904161,904162,904163,904164,904165,904166,904167,904180,904181 +904182,904183,904184,904185,904186,904187,904200,904201,904202,904203,904204,904205,904206,904207,904220,904221 +904222,904223,904224,904225,904226,904227,904960,904961,904962,904963,904964,904965,904966,904967,904968,904980 +904981,904982,904983,904984,904985,904986,904987,904988,907000,907001,907002,907003,907004,907005,907006,907007 +907008,907020,907021,907022,907023,907024,907025,907026,907027,907028,907040,907041,907042,907043,907044,907045 +907046,907047,907048,907060,907061,907062,907063,907064,907065,907066,907067,907068,947470,947471,947472,947473 +947474,947475,947476,947477,947478,947479,947480,947481,954809,954815,954883,954884,954885,954886,954887,954888 +954889,965150,965408,965630,965747,965758,965762,965772,966380,975040,978693,978694,978695,982251,982450,982682 +982683,982684,982685,982686,982687,982688,982703,982704,982705,982706,982707,983021,983022,983023,983024,983025 +983026,983027,983028,983029,983030,983031,983032,983037,983251,983260,983261,983262,983263,983264,983265,983266 +983267,983663,984698,984702,984818,984828,984831,984865,986011,986012,986013,986014,986015,986016,986017,986018 +986019,986020,987149,990240,992373,992716,992722,992768,992802,992833,992943,992991,993001,993096,993740,993741 +993742,993752,993900,997099,997243,997244,997245,997246,997247,997248,997249,997250,997251,997252,997316,997595 +997765,997766,997767,997768,997769,997770,997771,1100703,1100772,1100790,1100791,1100792,1100793,1100794,1100795,1101079 +1101822,1101823,1101824,1101943,1106546,1106547,1106548,1108631,1108632,1108633,1108639,1108640,1109007,1109492,1109493,1109752 +1109824,1109826,1109894,1109896,1109904,1111273,1111274,1111275,1111289,1111290,1111572,1111573,1111574,1112721,1114874,1114903 +1115583,1124331,1124332,1125208,1126839,1126867,1126884,1127003,1127007,1127008,1127556,1127638,1129583,1131041,1133745,1133746 +1133747,1136332,1137066,1143104,1146845,1147465,1148567,1148568,1148573,1148574,1148580,1148581,1148671,1148672,1148675,1148676 +1149799,1149800,1149804,1150498,1153578,1153579,1153580,1153581,1153582,1155550,1155622,1158978,1159881,1159882,1159883,1159884 +1159885,1159886,1161164,1163071,1163468,1180242,1180251,1180252,1180253,1180254,1180255,1402322,1407046,1407048,1569398,1570396 +1572620,1572621,1572622,1572623,1572624,1572625,1572626,1572627,1572628,1572629,1572630,1572631,1572638,1573293,1574215,1574241 +1574267,1575466,1575467,1575468,1575469,1575470,1575471,1575472,1576594,1576595,1576596,1576597,1576598,1576599,1576600,1576601 +1576602,1576603,1580246,1584827,1587588,1588276,1588281,1588282,1588283,1588284,1588346,1588348,1588372,1588841,1588842,1588843 +1588844,1588845,1588846,1588847,1588848,1588849,1588850,1588851,1588852,1588894,1590352,1590575,1590576,1590577,1590578,1590579 +1590580,1590581,1590582,1590583,1590584,1901020,1901021,1901022,1901023,1954815,2100021,2100022,2100023,2100024,2100170,2100752 +2100913,2102164,2102580,2102654,2102655,2102656,2102657,2102681,2102682,2102683,2102684,2102842,2102843,2102844,2102845,2106029 +2106030,2106031,2106032,2110917,2110918,2110919,2110920,2112408,2112409,2112410,2112411,2118240,2118241,2118242,2118243,2118326 +2118327,2118328,2118329,2122122,2122123,2122124,2122125,2122323,2122324,2122325,2122326,2125205,2125206,2125207,2125208,2125292 +2125293,2125294,2125295,2125372,2125373,2125374,2125375,2125601,2125602,2125603,2125604,2125664,2125665,2125666,2125667,2130032 +2130174,2130814,2130815,2130816,2130817,2130829,2130855,2130856,2130857,2135600,2135601,2135602,2135603,2135657,2135658,2135659 +2135660,2135668,2135669,2135670,2135671,2135747,2135748,2135749,2135750,2135819,2135820,2135821,2135822,2135824,2135825,2135826 +2135827,2135833,2135834,2135835,2135836,2135857,2135858,2135859,2135860,2135877,2135878,2135879,2135880,2136058,2136059,2136060 +2136061,2136326,2136327,2136328,2136329,2136382,2136383,2136384,2136385,2136398,2136399,2136400,2136401,2137739,2137740,2137741 +2137742,2137807,2137808,2137809,2137810,2141254,2141255,2141256,2141257,2141572,2141573,2141574,2141575,2142208,2142209,2142210 +2142211,2142516,2142517,2142518,2142519,2145205,2148844,2148845,2148846,2148847,2150775,2150776,2150777,2150778,2150844,2150845 +2150846,2150847,2151239,2151357,2151372,2151451,2151452,2151453,2151454,2152541,2152542,2152543,2152544,2152614,2152615,2152616 +2152617,2152775,2152776,2152777,2152778,2153067,2153239,2153357,2153372,2154541,2154542,2154543,2154544,2154614,2154615,2154616 +2154617,2154867,2156122,2156123,2156124,2156125,2156323,2156324,2156325,2156326,2251020,2251021,2251022,2251023,2304587,2304809 +2304815,2304883,2304884,2304885,2304886,2304887,2304888,2304889,3100021,3100022,3100023,3100024,3100170,3100752,3102164,3102580 +3102654,3102655,3102656,3102657,3102681,3102682,3102683,3102684,3106029,3106030,3106031,3106032,3123924,3123925,3123926,3123927 +3125205,3125206,3125207,3125208,3125292,3125293,3125294,3125295,3125372,3125373,3125374,3125375,3125601,3125602,3125603,3125604 +3125664,3125665,3125666,3125667,3130032,3130174,3130814,3130815,3130816,3130817,3135600,3135601,3135602,3135603,3135657,3135658 +3135659,3135660,3135668,3135669,3135670,3135671,3135747,3135748,3135749,3135750,3135819,3135820,3135821,3135822,3135824,3135825 +3135826,3135827,3135833,3135834,3135835,3135836,3135857,3135858,3135859,3135860,3135877,3135878,3135879,3135880,3136058,3136059 +3136060,3136061,3136326,3136327,3136328,3136329,3136382,3136383,3136384,3136385,3136398,3136399,3136400,3136401,3137739,3137740 +3137741,3137742,3137807,3137808,3137809,3137810,3141254,3141255,3141256,3141257,3141572,3141573,3141574,3141575,3142208,3142209 +3142210,3142211,3142516,3142517,3142518,3142519,3280243,3304815,3954809,4125431,5011037,5011166,5036870,5432530,8000004,9931133 +9980645,10013445,10092716 +]] + +DC.BleedSpellIDs = {} +for id in string.gmatch(packed, "%d+") do + DC.BleedSpellIDs[tonumber(id)] = true +end From 6a686f9a2dc4c4016862873c8778313b34a736d6 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Fri, 29 May 2026 10:43:54 +0200 Subject: [PATCH 4/9] fix: reset Bleed cure state in Configure + map CureBleed checkbox; port icon/border textures .tga->BLP --- Decursive/DCR_init.lua | 7 ++++--- Decursive/Dcr_LiveList.xml | 4 ++-- Decursive/Dcr_opt.lua | 1 + Decursive/Decursive.lua | 2 +- Decursive/Textures/BackDrop.blp | Bin 0 -> 2564 bytes Decursive/Textures/BackDrop.tga | Bin 204 -> 0 bytes Decursive/Textures/GoldBorder.blp | Bin 0 -> 350724 bytes Decursive/Textures/GoldBorder.tga | Bin 1048594 -> 0 bytes Decursive/iconOFF.blp | Bin 0 -> 2564 bytes Decursive/iconOFF.tga | Bin 2590 -> 0 bytes Decursive/iconON.blp | Bin 0 -> 2564 bytes Decursive/iconON.tga | Bin 2647 -> 0 bytes 12 files changed, 8 insertions(+), 6 deletions(-) create mode 100644 Decursive/Textures/BackDrop.blp delete mode 100644 Decursive/Textures/BackDrop.tga create mode 100644 Decursive/Textures/GoldBorder.blp delete mode 100644 Decursive/Textures/GoldBorder.tga create mode 100644 Decursive/iconOFF.blp delete mode 100644 Decursive/iconOFF.tga create mode 100644 Decursive/iconON.blp delete mode 100644 Decursive/iconON.tga diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index 55f72a9..61c4575 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -124,8 +124,8 @@ DC.AfflictionSound = "Interface\\AddOns\\Decursive\\Sounds\\AfflictionAlert.wav" --DC.AfflictionSound = "Sound\\Doodad\\BellTollTribal.wav" DC.FailedSound = "Interface\\AddOns\\Decursive\\Sounds\\FailedSpell.wav"; -DC.IconON = "Interface\\AddOns\\Decursive\\iconON.tga"; -DC.IconOFF = "Interface\\AddOns\\Decursive\\iconOFF.tga"; +DC.IconON = "Interface\\AddOns\\Decursive\\iconON.blp"; +DC.IconOFF = "Interface\\AddOns\\Decursive\\iconOFF.blp"; for class in pairs(RAID_CLASS_COLORS) do DC["CLASS_"..class] = class @@ -826,7 +826,7 @@ function D:OnDisable() -- When the addon is disabled by Ace D.Status.Enabled = false; D.DcrFullyInitialized = false; - D:SetIcon("Interface\\AddOns\\Decursive\\iconOFF.tga"); + D:SetIcon("Interface\\AddOns\\Decursive\\iconOFF.blp"); if ( D.profile.ShowDebuffsFrame) then D.MFContainer:Hide(); @@ -986,6 +986,7 @@ function D:Configure() --{{{ CuringSpells[DC.POISON] = false; CuringSpells[DC.DISEASE] = false; CuringSpells[DC.CHARMED] = false; + CuringSpells[DC.BLEED] = false; -- CoA: reset so Cauterize doesn't ghost after respec local Spell, spellName, Type, _; local GetSpellInfo = _G.GetSpellInfo; diff --git a/Decursive/Dcr_LiveList.xml b/Decursive/Dcr_LiveList.xml index 982cc0a..cdc890d 100644 --- a/Decursive/Dcr_LiveList.xml +++ b/Decursive/Dcr_LiveList.xml @@ -84,7 +84,7 @@ - + @@ -97,7 +97,7 @@ - + diff --git a/Decursive/Dcr_opt.lua b/Decursive/Dcr_opt.lua index 82b5d24..c8fcfb5 100644 --- a/Decursive/Dcr_opt.lua +++ b/Decursive/Dcr_opt.lua @@ -1877,6 +1877,7 @@ function D:SetCureOrder (ToChange) [DC.POISON] = D.options.args.CureOptions.args.CurePoison, [DC.DISEASE] = D.options.args.CureOptions.args.CureDisease, [DC.CHARMED] = D.options.args.CureOptions.args.CureCharmed, + [DC.BLEED] = D.options.args.CureOptions.args.CureBleed, -- CoA: added with DC.BLEED } end diff --git a/Decursive/Decursive.lua b/Decursive/Decursive.lua index 9e7754d..34de0f6 100644 --- a/Decursive/Decursive.lua +++ b/Decursive/Decursive.lua @@ -397,7 +397,7 @@ do if D.LiveList.TestItemDisplayed and i == 1 and Unit ~= "target" and Unit ~= "mouseover" and UnitExists(Unit) then D:Debug("|cFFFF0000Setting test debuff for %s (debuff %d)|r", Unit, i); - return "Test item", DC.TypeNames[D.Status.ReversedCureOrder[1]], 2, "Interface\\AddOns\\Decursive\\iconON.tga", D.LiveList.TestItemDisplayed + 70; + return "Test item", DC.TypeNames[D.Status.ReversedCureOrder[1]], 2, "Interface\\AddOns\\Decursive\\iconON.blp", D.LiveList.TestItemDisplayed + 70; end --D:Debug("|cFFFF0000Getting debuffs for %s , id = %d|r", Unit, i); diff --git a/Decursive/Textures/BackDrop.blp b/Decursive/Textures/BackDrop.blp new file mode 100644 index 0000000000000000000000000000000000000000..aee00f370da71d37f6d15472842c072110667a98 GIT binary patch literal 2564 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 xvTCl!?_KY=E*-vTWG@~0;l1Hfs+0}iO3au literal 0 HcmV?d00001 diff --git a/Decursive/Textures/GoldBorder.tga b/Decursive/Textures/GoldBorder.tga deleted file mode 100644 index 159a06e29894f6e064a7ca38a51580e180bd9390..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1048594 zcmeFaUu;}un(n)%JEV&t>8{<5`&1vtnmXIDy0VSwVjLfeHW3BEhoX(u#W5B}A)7+M zgBi%i44|$)kkcgvPJ0Asdjx3G0o3Uey0=?^I#M?}Ici#pw0opT(<4RNbCC-!axoWN z%mo+cB6r_;p3n6ze`}@e*pS%eswdH-Z@K=i`qpo~&-cFH`V&Q8i{gJ@i@ui6IOiIY z`aleb0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1 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 J2W?>k{||_U&Wr#6 diff --git a/Decursive/iconOFF.blp b/Decursive/iconOFF.blp new file mode 100644 index 0000000000000000000000000000000000000000..8c37e65d820ca101fe0e8542629db37425a323ef GIT binary patch literal 2564 zcmeH}U1$?o6vxlxLnd*{=A~E!C3(nNb(f7|ck5y?E%>l%F$S+mV@Xr{q@irBi0xLo zq3BDr__F#Sg0V}5of!L+mqMfIZ&NM%WhHZZ^krCVQK(`mhW8*gKp% z^P79_Id}f&4l_-=eVY{kFsX{-q%+&E7BZF025_J31=%dwziu=iD5#fCjtZm8<+iNA zvI5Hr{0|B^roQd~5JJ4>V83ZaY>v8AA?B0J+7GBVN1ZhO?OSGmLFI4%jV1n1{eYw3 zLA{Uiotnp-b~IxLsO0_xaU1Gc zclCdEC0_8x{rr5@`Fl8TWW09t%BJt!gA+3Tkux`HYBdZ<9-SO;fPJN{%sbXY;%P+k zmSOV0j(Kdrv%I2Q-<3@lgWZQXzlDxczI_2mz$vnZ?jdoWxU?(`LqTwCb@pRQ4O~4U#iE4j7xRboy*Jd z-t2>n1}24ArwTN1yhx-g$lA+%0TR@Jiq38f?7VqLL){GB1guCI< zSD;&P4eqID4xTtZi+9mmgzgKI0PiMd^0)`r=$3Ub%G}WxxV(Dd(!!<7t2?7kXuJXM YG%(5onm_K>lA2~WvQhpgCI_MR5sH6uEC2ui literal 0 HcmV?d00001 diff --git a/Decursive/iconOFF.tga b/Decursive/iconOFF.tga deleted file mode 100644 index 6207de6d851e0a098ea7f439e56d038050db87ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2590 zcmY+GS7=pB6oyaB&N<;~q8Ei&;3}dH=cqeqWK%a$z@er9H7BFu;xRzMiG7=kx->eSH4ks~ulj~-pot5>g@;lqb( z=FFK|wQ808)vH&_W5f(AAV9)^X&UxO&(6-ypE6~NmMvSRef#!l>(;G`$K&=sZ{9r3 zpFdwKR;*BAVWF*o0SgDNsT8rNzt^o>mo;kCs8VO)Ya)@*{rmTI@ZdpBm@q-zx^S;wQAK$?r54cX_Af{Ibv8iaM3`^R11+#b+576vuD3_|8@54Sv`63M3*jI zQt#fq6^%v(O3`32s8}qfK7IP=%9SgI0u2i`DyEkd?cTk6S7%R`FJIQ<$BzxpFGmiA zLc+dM8O@qCs~!RdOcYEj&Mw1l>ffP5hgKgyeq0Y8JWv7K46@J8ojWJxg6-P1vz^;o z7!+t&uuaDvp}u|lmaJK`Mz?R@Rve+wqeqWaQc|MEjT;M$LU_~neLZ~m@D~O&EZC+~ zz|JCL#*E3CIC0|lqeqV#7^$S_)vH%Ec<^95uy3Mxap1s#=0U?mKw|({UA)~#E%YyZxjJBr@Ddsp}F-P7K^d)1;v3pH%mPz@S1uv3(mm)lw) zpfGzsckY~d8%`#j`OKL!nmc!{1?J?*ljV{| zK9hlyCr`>hefqQlr%s)c4&*P+ z9O?}iFhDzY?65tL7%@V*xw$4bY}hdIo|l(rC1c5wC3a2F6>8S3nK5u^eEj(FN^wpT zgKgWknI5|6*O?O*REY_5=hmz5aE0|IXPCCN=r)x-pW8K`9bv~SI`B;)es$jibVjtkDr6A*Y_4% z_l67^A}Sy^jQgo99K%vC*tTt3oj-qGKFJZhc=4j;xUG4=>kzpP8x_>*-+U@@=ccQu z(42kj*s*HUrj433X;PPtslU_l`Sa(ht*zC!Z{PIx?OQ8q<|r=7suaA|ty^0-QWele z|4)2dLS;Iq=emZVIdkS{(V|7_*RLN9!b~@9+EkH9L>U&%1}tN^XmCn2dB;Xwg`i92xMuO49nn0fr;LeY90Q%x(=A@TdZjO4zUbq}k5-YH z15c2Fg+s7nipW9-ZEToHD|->wa7ws*SFf~w{d&86pKcQ-j!71>m%`-Z&9s|0Z;GNq zey~MK2yoYT%@fn7Pq&kyYZmO0M$vZBTs>&eAT3|M+=|80rAzI0NO zW^UZLVRZ`@4VE&&nA}AXWwT)oCg$R;D``WWp+6ruaKQR8GVk8K(}xcq^y$+l`JX?3 zR*Vrdtk63scU4tY#zdiG$BshLw37yCj_!~z>B{&NBUDa``0LlN_5S^PyAz+wi4hox zzj*ON*REZ&CI$m03Ml<)x7Ns`?lsF@U}={wUA}Ti;)S%N1JPZ~MQ`4`QS|B4r{*F$ z=kDFR4G9A#3MiRo@>|GF=MzEh*W9ys@nXAR>k$_&T#(0zD_^*9p&>y2VkAFcl0weq zAs1em?lY;vRhw$(?^^8QF`xMK7!iohf3+Y$!hmTS<+Q7id(C!DHPN9%hlKBNi4Y@Z KSTRi97vO(r@V)N< diff --git a/Decursive/iconON.blp b/Decursive/iconON.blp new file mode 100644 index 0000000000000000000000000000000000000000..5c88fc04cd3297a25d1339d22cc7d7180a08f102 GIT binary patch literal 2564 zcmeH}UuaWT9LK-+rj?tF%)E3|nQ~ihV_q*XF_*VOV1%Rq4iq5Y>#;UkzT-?A9Tz=-V!sTBNZV&F%;1^$o@Y~I? zS%J+8Y*yfZsDN+b&?y~^v0sI=D^`i}gM!zm1Y6Bi$Pa>Z`mtbOM0uvacZ2`ade&EL zqOIq-|KX+SRVtAf3)8!UEaPr;fG@B9;ya&d1SA(9ru&AHoI9x?o(<0L39{G#&$j_{ z3b`DA9c@D|%*23Ub%^|Hau4XK6EQ!ytN9iGaJTgT>DbNM28%+Hzj-+6gXbl8ndj{~ zBo|G|fz(g64c90~Ep$<2sU$0#psjl{5t20Hsjz}!F5gkcS z50J^EQqtZYH(Dc;lddw4>aEPO%Jnu!4MckFq}(??PH4kkmq)Tao@lGox5txhsS6kE zjp!bTc(GU{!VfM()WjPHa+gHHCEkGtWM^+3bh*8L>2GnyxN7lZPI5A9XyNG5az7Gj z1OC9JoZNq=uW&B#4z$?WM+a@QH!Nx|M8{e~DwW z{P*z3UKRMNn&yZ;n?Iqk&Zh}s>cURE?C6JLSl7v<1l>9l)H11ihh#mD&6=9$K+US; z@T`vHLbNjtQfUimLO&MidoRJQb;9~bSA*Ku`}_f^znImxy?e(jfB%bFW82ylcQt9; zT1{gj9n?M;2uHDmCXv&3aRq^#s7H~^yTI~HPz$gB$(iQvZUH8;^_qX`L$;G=FZH7# zUZ0aj={~K{>$k7_n7`%6-6&Mi4munb9FD)gLifoi;j}VZhjZ8O<>)Z&C{*o%GOFN4 tYhP$$``YET%M;tb?J~4CZsLgrr#%RqtZz%FEX(6W1HR8sDpQta{RJWUYb5{x literal 0 HcmV?d00001 diff --git a/Decursive/iconON.tga b/Decursive/iconON.tga deleted file mode 100644 index dfe756327dbb23a1bb4727a118097aa67e29bfe7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2647 zcmY+GdsJ0r8phwV_c@1)EM(avO0dF2xv3#XAKu~d! zRzf9>t}f=$R4hz}0c9L@My-?xm6oPBUQ#e-%|DgSjL*F9x0@JY?Y;K-_VfInZ@=GV zZz6a4-=9Cp{~r0NPPKBSmlYLzy_}otjEIhM`ujiYboluAICZ&_7P%t|rQIwB>ypJw zw5c;PM<&h9s`E>le9L2DBCJ*OVQ$QWL;piQta2qSaz_-R6o)t!L!E|>ONh>VzF;2A z^(#QR>9K21*Epd5jO}X;0|Ghr%4<2TGX$OX*86eZAe#vPZna5SF5D z60|G-bX#7K*FD^^2&TV(0Ky4S-#(Bn942=ckcm*mLb#I21kJ+@lo1K~VZTy}L!3eo zl47cpi+{|-i9^a~f*$NOp!hTBaR;b&F-X@SeSiyTCRiLf#vM^eJUhfG1jUkkGIM#O zedi?hQV$p4@gG^*0SB>1qx;<7*dXq!31WbWBAx@?``EZ|7Nv5qQwTy*Om))7r^Ie? z+r0|(ut`BH4d{PPK>OrXXx?5%0W|$Lp3puhe~C^O5!H zUKKrRhFK{evG;BxT&uDnT$LbwQ?F-T9#Jc7l3d=ZMR4>e&uAy80G7cX2P? zg?Z}&Sk`61Ty6(#;L+zcy3NP6o%~qW>tUg5tiJXp=mvurC}18CT}2srQ<4*{&`q8T&E?RS#KZdgsW6>#7;WdOc+lD_IIe9S z=p?VaZsssgxWfOxxS$E4R==4qf=+MbxLVM$Qts=)Le4x?#8Z@m>1-wFg)wTp$gIPX zGldsmjgnT;kz&qiTFv}dKwVoENPq$!%<%{uA7b^*;z2*ji@muNl*^DsF`&hK{Epj~ z#ea&}&@P;xz8v8XHFzPF268Ji-*VWDG{?D)OaR zqh7n0F^*SWr96R7Rx{|g{78FvI~wh6BxyrZ!g)jDwJ`1(E})y0Q(P?|7uJ5n+ZdPK zmvK*~m{kF%MMG+4`g9G3SY3>D=wjx@V|_0Vo`=>VG zo4C~C_hZhJb+fAJU{3_q&4bol0{^fec)IgE*5p~ZK2}-y{vm;AZ)wG)FE65-j}xtJ z2n?TKtX->U#S<7BtQf)?&&(&Mf{RSVsOc$tDK`$<{*?$=IvoLlWAXF|Z&-ERD3aQ= zlBTAhr>h(Pd@z82^gY0hZ?B>tKObfn>n|$Ni*IZ|0Me&t!0cSfLmmg=|2pB-DjVtT z@0;qGG7+vd*_c~Vi0I^aOp1v{$k?$M&IsLVfyXc}Y^te7-|f42^wZCH_~TFb{^l)I zd{_@XY!q}Ci_(fmyi*bruzFP?+^Vx7Y{^h*Mx=e_jJV*$=m9T&iB*)9BQGxx85tQ! zx7m=EmWp_`&zdtE```Zv*DhVbz`Z{7-}xSwFLdIS!;Oe4TY{vNWTh3)bbi8>1uIdq zel3PFQ`nNB(u@r}G9q$|Z+ryO7tg~MM->WL?pTns0DA7yrD%A42U-q)iq5~ChohIP z>Hg*EzvA$|1K3snHr8<$a~9@6lfQr&G6y+D7Vf!06ck(nk&whcP&TlxVhlAuwTF(FF42~ad!E5E~u(7-X?=`%m z2!8e#F^Y*oRzd2msZAnX|Zl z|OK5QOyWJ6e4K$jd)CJvD9XsHm{} zF}7sn7p=mccN%e~y#w7}T;LLQ!Eya^4_vQY?84VvqEoHytk|WL;t;10gru0pM^xCP z@XR=#K>?G(kT%b{d`Q12L@5p)EaPizo4ms`{uz^OOLYc^ VjdMD9|8i<_B`tDCX$C(X{|g7qg$e)w From 9adfb1e1bd40c6efb30f34c5ad525af1880e7a89 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Fri, 29 May 2026 20:23:33 +0200 Subject: [PATCH 5/9] fix(libs): pcall AceGUI OnGamePadButtonDown (3.3.5 has no gamepad script type) --- Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua b/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua index ee5a83b..07c8f76 100644 --- a/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua +++ b/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua @@ -199,7 +199,7 @@ local function Constructor() button:SetScript("OnKeyDown", Keybinding_OnKeyDown) button:SetScript("OnMouseDown", Keybinding_OnMouseDown) button:SetScript("OnMouseWheel", Keybinding_OnMouseWheel) - button:SetScript("OnGamePadButtonDown", Keybinding_OnKeyDown) + pcall(button.SetScript, button, "OnGamePadButtonDown", Keybinding_OnKeyDown) button:SetPoint("BOTTOMLEFT") button:SetPoint("BOTTOMRIGHT") button:SetHeight(24) From af24c1de666657c9c17caef8a8c3bf7a80deef7a Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Fri, 29 May 2026 20:51:11 +0200 Subject: [PATCH 6/9] ci(release): hide auto-generated source archives (hide_archive_links) --- .gitea/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 709a7cd..1b1b66b 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -37,7 +37,7 @@ jobs: RID=$(curl -sf -X POST -H "Authorization: token $GITEA_TOKEN" \ -H "Content-Type: application/json" \ "$API/repos/$REPO/releases" \ - -d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false}')" \ + -d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false,hide_archive_links:true}')" \ | jq -r '.id') fi echo "release id: $RID" From ffd20d9c74e331dffd444f7b6fb42beff5bc44c2 Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Sun, 31 May 2026 14:45:24 +0200 Subject: [PATCH 7/9] fix(dispels): map Witch Doctor Hexbreak (806240) as single-target Curse cure Witch Doctor only had Cleansing Idol (504840, AoE Disease/Poison) registered, so curses were never flagged or curable. Add Hexbreak (806240) as the single-target Curse remover (IsBest=1, 40yd instant). DBC dispel-type reads "Magic" but name+description+gameplay are Curse (cf. Soothing Touch). --- Decursive/DCR_init.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index 61c4575..5d9ff8f 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -517,6 +517,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_SOOTHING_TOUCH"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist DC.SpellsToUse[DS["COA_SOOTHING_TOUCH_MOA"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist MoA DC.SpellsToUse[DS["COA_CLEANSING_IDOL"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Witch Doctor — Cleansing Idol (AoE, can't direct-target via click) + DC.SpellsToUse[DS["COA_HEXBREAK"]] = { Types = {DC.CURSE}, IsBest = 1, Pet = false, } -- Witch Doctor — Hexbreak (single-target curse removal, 40yd, instant; DBC type reads "Magic" but description+gameplay = Curse, cf. Soothing Touch) DC.SpellsToUse[DS["COA_NANOBOT_CLEANSER"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Tinker — Nanobot Cleanser (single-target, direct-castable) DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON, DC.BLEED}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (Magic + Poison via dummy; 1 Bleed via Dispel Mechanic, re-tagged by DC.BleedSpellIDs) end @@ -1191,6 +1192,7 @@ function D:GetSpellsTranslations(FromDIAG) ["COA_SOOTHING_TOUCH"] = { 801439, }, -- Primalist (Poison, Disease — DBC type "Magic" doesn't fire; trust gameplay) ["COA_SOOTHING_TOUCH_MOA"] = { 520841, }, -- Primalist MoA (Poison, Disease — same Soothing-Touch variant pattern as Venomancer's Antivenom/Blight pair) ["COA_CLEANSING_IDOL"] = { 504840, }, -- Witch Doctor (Disease, Poison — AoE idol, 30yd, ticks every 3s) + ["COA_HEXBREAK"] = { 806240, }, -- Witch Doctor (Curse — single-target, 40yd, instant; DBC type "Magic" doesn't fire, trust description+gameplay) ["COA_NANOBOT_CLEANSER"] = { 502537, }, -- Tinker / Invention (Disease, Poison — single-target, 40yd, ticks every 3s for 15s) ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; also removes 1 bleed via Dispel Mechanic — bleed not modelled by Decursive) } From a662a14dbb22ebed6bccf4d52c8cd46b4f21798c Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Wed, 10 Jun 2026 02:11:46 +0200 Subject: [PATCH 8/9] ci(release): sync release.yml from coa-template MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hide_archive_links is only honored by Gitea on release edit, not create — add the PATCH step after create/lookup so auto-generated source archive links actually stay hidden (coa-template 90874c5). --- .gitea/workflows/release.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 1b1b66b..2f93975 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -41,6 +41,10 @@ jobs: | jq -r '.id') fi echo "release id: $RID" + # Gitea honors hide_archive_links only on edit, not create — PATCH it + # so the auto-generated Source Code (zip/tar.gz) links stay hidden. + curl -sf -X PATCH -H "Authorization: token $GITEA_TOKEN" -H "Content-Type: application/json" \ + "$API/repos/$REPO/releases/$RID" -d '{"hide_archive_links":true}' >/dev/null || true # Upload every dist/*.zip. Per-asset failures don't fail the job — # we want partial releases to still publish rather than block the # whole pipeline on one big file. From 6707d64ffb8935124edd9237fdc64bd2211e8ceb Mon Sep 17 00:00:00 2001 From: Florian Berthold Date: Wed, 10 Jun 2026 02:15:57 +0200 Subject: [PATCH 9/9] docs: correct stale CoA dispel comments in DCR_init.lua - COA_CAUTERIZE: bleed IS modelled (DC.BLEED registration exists) - COA_MENDING_TOUCH: note it is intentionally translation-only (passive) - COA_BLIGHT_ANTIDOTE: state the 524824 curse-cure is deliberately not registered (unverified server-side, like Antivenom's DBC curse) No behavior change. --- Decursive/DCR_init.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index 5d9ff8f..b97c825 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -506,7 +506,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_DEVOUR_CURSE"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Cultist DC.SpellsToUse[DS["COA_REBUKE"]] = { Types = {DC.MAGIC, DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Templar DC.SpellsToUse[DS["COA_ANTIVENOM"]] = { Types = {DC.POISON}, IsBest = 0, Pet = false, } -- Venomancer (baseline, poison-only — curse-dispel in DBC doesn't fire server-side) - DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; Venomancer curse-dispel needs the dedicated 524824 spell) + DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; the dedicated curse-cure 524824 is deliberately not registered: like Antivenom's DBC curse-dispel it is unverified to fire server-side) DC.SpellsToUse[DS["COA_BURN_IMPURITIES"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Pyromancer DC.SpellsToUse[DS["COA_SURVIVAL_POTION"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Ranger DC.SpellsToUse[DS["COA_HEMAL_EXCISION"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Bloodmage @@ -1188,13 +1188,13 @@ function D:GetSpellsTranslations(FromDIAG) ["COA_PRAYER_OF_ELUNE"] = { 801987, }, -- Starcaller (Magic) ["COA_WITCHBLOOD_TONIC"] = { 802278, }, -- WitchHunter (Curse) ["COA_SANCTIFY"] = { 524968, }, -- Sun Cleric (Magic, Poison, Disease) - ["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel) + ["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel) — intentionally translation-only, never registered in SpellsToUse (passive, not castable) ["COA_SOOTHING_TOUCH"] = { 801439, }, -- Primalist (Poison, Disease — DBC type "Magic" doesn't fire; trust gameplay) ["COA_SOOTHING_TOUCH_MOA"] = { 520841, }, -- Primalist MoA (Poison, Disease — same Soothing-Touch variant pattern as Venomancer's Antivenom/Blight pair) ["COA_CLEANSING_IDOL"] = { 504840, }, -- Witch Doctor (Disease, Poison — AoE idol, 30yd, ticks every 3s) ["COA_HEXBREAK"] = { 806240, }, -- Witch Doctor (Curse — single-target, 40yd, instant; DBC type "Magic" doesn't fire, trust description+gameplay) ["COA_NANOBOT_CLEANSER"] = { 502537, }, -- Tinker / Invention (Disease, Poison — single-target, 40yd, ticks every 3s for 15s) - ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; also removes 1 bleed via Dispel Mechanic — bleed not modelled by Decursive) + ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; 1 Bleed via Dispel Mechanic — DC.BLEED, re-tagged by DC.BleedSpellIDs) } for k,v in pairs(customSpells) do Spells[k] = v end end