-
-
Notifications
You must be signed in to change notification settings - Fork 81
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
For Onyxia and PTR realm. Will need logs to validate timers
- Loading branch information
Showing
28 changed files
with
5,330 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
local mod = DBM:NewMod("Anub'Rekhan", "DBM-VanillaNaxx", 1) | ||
local L = mod:GetLocalizedStrings() | ||
|
||
mod:SetRevision("20240701222429") | ||
mod:SetCreatureID(15956) | ||
|
||
mod:RegisterCombat("combat_yell", L.Pull1, L.Pull2) | ||
|
||
mod:RegisterEventsInCombat( | ||
"SPELL_CAST_START 28785 54021", | ||
"SPELL_CAST_SUCCESS 28783 56090", | ||
"SPELL_AURA_REMOVED 28785 54021" | ||
) | ||
|
||
local warningLocustSoon = mod:NewSoonAnnounce(28785, 2) | ||
local warningLocustFaded = mod:NewFadesAnnounce(28785, 1) | ||
local warnImpale = mod:NewTargetNoFilterAnnounce(28783, 3, nil, false) | ||
|
||
local specialWarningLocust = mod:NewSpecialWarningSpell(28785, nil, nil, nil, 2, 2) | ||
local yellImpale = mod:NewYell(28783, nil, false) | ||
|
||
local timerLocustIn = mod:NewCDTimer(80, 28785, nil, nil, nil, 6) | ||
local timerLocustFade = mod:NewBuffActiveTimer(23, 28785, nil, nil, nil, 6) | ||
local timerImpale = mod:NewCDTimer(13, 56090, nil, nil, nil, 3) -- REVIEW! ~7s variance [13.0-19.8]? (25m Lordaeron 2022/10/16) -- 13.7, 13.6, 19.8, 13.0 | ||
|
||
function mod:OnCombatStart(delay) | ||
timerLocustIn:Start(100 - delay) | ||
warningLocustSoon:Schedule(90 - delay) | ||
timerImpale:Start(12.7-delay) -- REVIEW! variance? (25m Lordaeron 2022/10/16) - pull:12.7 | ||
end | ||
|
||
function mod:SPELL_CAST_START(args) | ||
if args:IsSpellID(28785, 54021) then -- Locust Swarm | ||
specialWarningLocust:Show() | ||
specialWarningLocust:Play("aesoon") | ||
timerLocustIn:Stop() | ||
timerLocustFade:Start(23) | ||
end | ||
end | ||
|
||
function mod:SPELL_CAST_SUCCESS(args) | ||
if args:IsSpellID(28783, 56090) then -- Impale. REVIEW! 28783 needed? | ||
timerImpale:Start() | ||
warnImpale:Show(args.destName) | ||
if args:IsPlayer() then | ||
yellImpale:Yell() | ||
end | ||
end | ||
end | ||
|
||
function mod:SPELL_AURA_REMOVED(args) | ||
if args:IsSpellID(28785, 54021) | ||
and args.auraType == "BUFF" then | ||
warningLocustFaded:Show() | ||
timerLocustIn:Start() | ||
warningLocustSoon:Schedule(62) | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
local mod = DBM:NewMod("Faerlina", "DBM-VanillaNaxx", 1) | ||
local L = mod:GetLocalizedStrings() | ||
|
||
mod:SetRevision("20240701222429") | ||
mod:SetCreatureID(15953) | ||
|
||
mod:RegisterCombat("combat_yell", L.Pull) | ||
|
||
mod:RegisterEventsInCombat( | ||
"SPELL_AURA_APPLIED 28798 54100 28732 54097 28794 54099", | ||
"SPELL_CAST_SUCCESS 28796 54098", | ||
"UNIT_DIED" | ||
) | ||
|
||
local warnEmbraceActive = mod:NewSpellAnnounce(28732, 1) | ||
local warnEmbraceExpire = mod:NewAnnounce("WarningEmbraceExpire", 2, 28732, nil, nil, nil, 28732) | ||
local warnEmbraceExpired = mod:NewFadesAnnounce(28732, 3) | ||
local warnEnrageSoon = mod:NewSoonAnnounce(28131, 3) | ||
local warnEnrageNow = mod:NewSpellAnnounce(28131, 4) | ||
|
||
local specWarnEnrage = mod:NewSpecialWarningDefensive(28131, nil, nil, nil, 3, 2) | ||
local specWarnGTFO = mod:NewSpecialWarningGTFO(28794, nil, nil, nil, 1, 8) | ||
|
||
local timerEmbrace = mod:NewBuffActiveTimer(30, 28732, nil, nil, nil, 6) | ||
local timerEnrage = mod:NewCDTimer(60, 28131, nil, nil, nil, 6) | ||
local timerPoisonVolleyCD = mod:NewCDTimer(8.2, 54098, nil, nil, nil, 5) -- REVIEW! ~1s variance? (25man Lordaeron 2022/10/16) - 9.1, 9.3, 9.1, 8.5, 8.4, 8.5, 8.2, 8.8 | ||
|
||
mod.vb.enraged = false | ||
|
||
function mod:OnCombatStart(delay) | ||
timerEnrage:Start(-delay) | ||
warnEnrageSoon:Schedule(55 - delay) | ||
timerPoisonVolleyCD:Start(12.6-delay) -- REVIEW! variance? (25man Lordaeron 2022/10/16) - 12.6 | ||
self.vb.enraged = false | ||
end | ||
|
||
function mod:SPELL_AURA_APPLIED(args) | ||
if args:IsSpellID(28798, 54100) then -- Frenzy | ||
self.vb.enraged = true | ||
if self:IsTanking("player", "boss1", nil, true) then | ||
specWarnEnrage:Show() | ||
specWarnEnrage:Play("defensive") | ||
else | ||
warnEnrageNow:Show() | ||
end | ||
elseif args:IsSpellID(28732, 54097) and args:GetDestCreatureID() == 15953 and self:AntiSpam(5, 2) then -- Widow's Embrace | ||
warnEmbraceExpire:Cancel() | ||
warnEmbraceExpired:Cancel() | ||
warnEnrageSoon:Cancel() | ||
timerEnrage:Stop() | ||
if self.vb.enraged then | ||
timerEnrage:Start() | ||
warnEnrageSoon:Schedule(45) | ||
end | ||
timerEmbrace:Start() | ||
warnEmbraceActive:Show() | ||
warnEmbraceExpire:Schedule(25) | ||
warnEmbraceExpired:Schedule(30) | ||
self.vb.enraged = false | ||
elseif args:IsSpellID(28794, 54099) and args:IsPlayer() then | ||
specWarnGTFO:Show(args.spellName) | ||
specWarnGTFO:Play("watchfeet") | ||
end | ||
end | ||
|
||
function mod:SPELL_CAST_SUCCESS(args) | ||
if args:IsSpellID(28796, 54098) then -- Poison Bolt Volley | ||
timerPoisonVolleyCD:Start(10) | ||
end | ||
end | ||
|
||
function mod:UNIT_DIED(args) | ||
local cid = self:GetCIDFromGUID(args.destGUID) | ||
if cid == 15953 then | ||
warnEnrageSoon:Cancel() | ||
warnEmbraceExpire:Cancel() | ||
warnEmbraceExpired:Cancel() | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
local mod = DBM:NewMod("Maexxna", "DBM-VanillaNaxx", 1) | ||
local L = mod:GetLocalizedStrings() | ||
|
||
mod:SetRevision("20240701222429") | ||
mod:SetCreatureID(15952) | ||
mod:RegisterCombat("combat") | ||
|
||
mod:RegisterEventsInCombat( | ||
"SPELL_AURA_APPLIED 28622", | ||
"SPELL_CAST_SUCCESS 29484 54125" | ||
) | ||
|
||
--TODO, verify nax40 web wrap timer | ||
local warnWebWrap = mod:NewTargetNoFilterAnnounce(28622, 2) | ||
local warnWebSpraySoon = mod:NewSoonAnnounce(29484, 1) | ||
local warnWebSprayNow = mod:NewSpellAnnounce(29484, 3) | ||
local warnSpidersSoon = mod:NewAnnounce("WarningSpidersSoon", 2, 17332) | ||
local warnSpidersNow = mod:NewAnnounce("WarningSpidersNow", 4, 17332) | ||
|
||
local specWarnWebWrap = mod:NewSpecialWarningSwitch(28622, "RangedDps", nil, nil, 1, 2) | ||
local yellWebWrap = mod:NewYellMe(28622) | ||
|
||
local timerWebSpray = mod:NewNextTimer(40, 29484, nil, nil, nil, 2) | ||
local timerWebWrap = mod:NewNextTimer(39.6, 28622, nil, "RangedDps|Healer", nil, 3)-- 39.593-40.885 | ||
local timerSpider = mod:NewTimer(30, "TimerSpider", 17332, nil, nil, 1) | ||
|
||
local function Spiderlings(self) | ||
warnSpidersSoon:Schedule(35) | ||
warnSpidersNow:Schedule(40) | ||
timerSpider:Start(40) | ||
self:Unschedule(Spiderlings) | ||
self:Schedule(40, Spiderlings, self) | ||
end | ||
|
||
function mod:OnCombatStart(delay) | ||
warnWebSpraySoon:Schedule(35 - delay) | ||
timerWebSpray:Start(40 - delay) | ||
timerWebWrap:Start(20.1 - delay)--20.095-21.096 | ||
warnSpidersSoon:Schedule(25 - delay) | ||
warnSpidersNow:Schedule(30 - delay) | ||
timerSpider:Start(30 - delay) | ||
self:Schedule(30 - delay, Spiderlings, self) | ||
end | ||
|
||
function mod:OnCombatEnd(wipe) | ||
if not wipe then | ||
if DBT:GetBar(L.ArachnophobiaTimer) then | ||
DBT:CancelBar(L.ArachnophobiaTimer) | ||
end | ||
end | ||
end | ||
|
||
function mod:SPELL_AURA_APPLIED(args) | ||
if args.spellId == 28622 then -- Web Wrap | ||
warnWebWrap:CombinedShow(0.5, args.destName) | ||
if args.destName == UnitName("player") then | ||
yellWebWrap:Yell() | ||
elseif not DBM:UnitDebuff("player", args.spellName) and self:AntiSpam(3, 1) then | ||
specWarnWebWrap:Show() | ||
specWarnWebWrap:Play("targetchange") | ||
timerWebWrap:Start() | ||
end | ||
end | ||
end | ||
|
||
function mod:SPELL_CAST_SUCCESS(args) | ||
if args:IsSpellID(29484, 54125) then -- Web Spray | ||
warnWebSprayNow:Show() | ||
warnWebSpraySoon:Schedule(35) | ||
timerWebSpray:Start() | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
local mod = DBM:NewMod("Gluth", "DBM-VanillaNaxx", 2) | ||
local L = mod:GetLocalizedStrings() | ||
|
||
mod:SetRevision("20240701222429") | ||
mod:SetCreatureID(15932) | ||
|
||
mod:RegisterCombat("combat") | ||
|
||
mod:RegisterEventsInCombat( | ||
"SPELL_AURA_APPLIED 28371", | ||
"SPELL_AURA_REMOVED 28371", | ||
"SPELL_DAMAGE 28375 54426" | ||
) | ||
|
||
--TODO, is it really necessary to use SPELL_DAMAGE here? | ||
--TODO, verify decimate timer is actually accurate for wrath (it certainly wasn't for naxx 40) | ||
local warnEnrage = mod:NewTargetNoFilterAnnounce(19451, 3, nil , "Healer|Tank|RemoveEnrage", 2) | ||
local warnDecimateSoon = mod:NewSoonAnnounce(28374, 2) | ||
local warnDecimateNow = mod:NewSpellAnnounce(28374, 3) | ||
|
||
local specWarnEnrage = mod:NewSpecialWarningDispel(19451, "RemoveEnrage", nil, nil, 1, 6) | ||
|
||
local timerEnrage = mod:NewBuffActiveTimer(8, 19451, nil, nil, nil, 5, nil, DBM_COMMON_L.ENRAGE_ICON) | ||
local timerDecimate = mod:NewCDTimer(104, 28374, nil, nil, nil, 2) | ||
local enrageTimer = mod:NewBerserkTimer(420) | ||
|
||
function mod:OnCombatStart(delay) | ||
enrageTimer:Start(420 - delay) | ||
timerDecimate:Start(110 - delay) -- 25m Log review from 2022-05-05 - 1 minutes 50 seconds | ||
warnDecimateSoon:Schedule(100 - delay) | ||
end | ||
|
||
function mod:SPELL_AURA_APPLIED(args) | ||
if args.spellId == 28371 then | ||
if self.Options.SpecWarn19451dispel then | ||
specWarnEnrage:Show(args.destName) | ||
specWarnEnrage:Play("enrage") | ||
else | ||
warnEnrage:Show(args.destName) | ||
end | ||
timerEnrage:Start() | ||
end | ||
end | ||
|
||
function mod:SPELL_AURA_REMOVED(args) | ||
if args.spellId == 28371 then | ||
timerEnrage:Stop() | ||
end | ||
end | ||
|
||
function mod:SPELL_DAMAGE(_, _, _, _, _, _, spellId) | ||
if (spellId == 28375 or spellId == 54426) and self:AntiSpam(20) then | ||
warnDecimateNow:Show() | ||
timerDecimate:Start() | ||
warnDecimateSoon:Schedule(96) | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
local mod = DBM:NewMod("Grobbulus", "DBM-VanillaNaxx", 2) | ||
local L = mod:GetLocalizedStrings() | ||
|
||
mod:SetRevision("20240701222429") | ||
mod:SetCreatureID(15931) | ||
mod:SetUsedIcons(1, 2, 3, 4) | ||
|
||
mod:RegisterCombat("combat") | ||
|
||
mod:RegisterEventsInCombat( | ||
"SPELL_AURA_APPLIED 28169", | ||
"SPELL_AURA_REMOVED 28169", | ||
"SPELL_CAST_SUCCESS 28240 28157 54364" | ||
) | ||
|
||
local warnInjection = mod:NewTargetNoFilterAnnounce(28169, 2) | ||
local warnCloud = mod:NewSpellAnnounce(28240, 2) | ||
local warnSlimeSprayNow = mod:NewSpellAnnounce(54364, 2) | ||
local warnSlimeSpraySoon = mod:NewSoonAnnounce(54364, 1) | ||
|
||
local specWarnInjection = mod:NewSpecialWarningYou(28169, nil, nil, nil, 1, 2) | ||
local yellInjection = mod:NewYellMe(28169, nil, false) | ||
|
||
local timerInjection = mod:NewTargetTimer(10, 28169, nil, nil, nil, 3) | ||
local timerCloud = mod:NewNextTimer(15, 28240, nil, nil, nil, 5, nil, DBM_COMMON_L.TANK_ICON) | ||
local timerSlimeSprayCD = mod:NewCDTimer(32, 54364, nil, nil, nil, 2) -- Transcriptor snippet below | ||
local enrageTimer = mod:NewBerserkTimer(720) | ||
|
||
mod:AddSetIconOption("SetIconOnInjectionTarget", 28169, false, false, {1, 2, 3, 4}) | ||
|
||
mod.vb.slimeSprays = 1 | ||
local mutateIcons = {} | ||
|
||
local function addIcon(self) | ||
for i,j in ipairs(mutateIcons) do | ||
local icon = 0 + i | ||
self:SetIcon(j, icon) | ||
end | ||
end | ||
|
||
local function removeIcon(self, target) | ||
for i,j in ipairs(mutateIcons) do | ||
if j == target then | ||
table.remove(mutateIcons, i) | ||
self:SetIcon(target, 0) | ||
end | ||
end | ||
addIcon(self) | ||
end | ||
|
||
function mod:OnCombatStart(delay) | ||
self.vb.slimeSprays = 1 | ||
table.wipe(mutateIcons) | ||
enrageTimer:Start(-delay) | ||
warnSlimeSpraySoon:Schedule(27) | ||
timerSlimeSprayCD:Start(31) -- REVIEW! variance? (25man Lordaeron 2022/10/16) - 31.0 | ||
end | ||
|
||
function mod:OnCombatEnd() | ||
for _, j in ipairs(mutateIcons) do | ||
self:SetIcon(j, 0) | ||
end | ||
end | ||
|
||
function mod:SPELL_AURA_APPLIED(args) | ||
if args.spellId == 28169 then | ||
warnInjection:Show(args.destName) | ||
timerInjection:Start(args.destName) | ||
if args:IsPlayer() then | ||
specWarnInjection:Show() | ||
specWarnInjection:Play("runout") | ||
yellInjection:Yell() | ||
end | ||
if self.Options.SetIconOnInjectionTarget then | ||
table.insert(mutateIcons, args.destName) | ||
addIcon(self) | ||
end | ||
end | ||
end | ||
|
||
function mod:SPELL_AURA_REMOVED(args) | ||
if args.spellId == 28169 then | ||
timerInjection:Cancel(args.destName)--Cancel timer if someone is dumb and dispels it. | ||
if self.Options.SetIconOnInjectionTarget then | ||
removeIcon(self, args.destName) | ||
end | ||
end | ||
end | ||
|
||
function mod:SPELL_CAST_SUCCESS(args) | ||
if args.spellId == 28240 then | ||
warnCloud:Show() | ||
timerCloud:Start() | ||
elseif args:IsSpellID(28157, 54364) then | ||
warnSlimeSprayNow:Show() | ||
self.vb.slimeSprays = self.vb.slimeSprays + 1 | ||
-- REVIEW! variance? (25man Lordaeron 2022/10/16) - pull:31.0, 27.7, 61.1, 25.5 | ||
if self.vb.slimeSprays % 2 == 0 then -- every 2/4/6... spray short cd | ||
warnSlimeSpraySoon:Schedule(20.5) | ||
timerSlimeSprayCD:Start(25.5) | ||
else -- every 3/5/7... spray long cd | ||
warnSlimeSpraySoon:Schedule(54) | ||
timerSlimeSprayCD:Start(59) | ||
end | ||
end | ||
end |
Oops, something went wrong.