Skip to content

Commit

Permalink
Delve Updates:
Browse files Browse the repository at this point in the history
 - Added support for Delve end bosses: Bogpiper and Mirror Master Murkna
 - Added alerts and nameplate timers for this weeks rare rotation (Reno Jackson and his murloc)
 - Updated timers for Webbed Aegiss and Shadows of Strife to live values

Dungeon Updates:
 - Fixed a bug where Rashanan alert for Rolling Acid had wrong spellname and option description
 - Fixed bad alert text for Tormented Eruption on Dawnbreaker trash. Text and voice more accurately describe ability now
 - Updated Forge Speaker timers yet again for 125236th time because this fight is a disaster blizzard code wise.
  • Loading branch information
MysticalOS committed Aug 25, 2024
1 parent 29ef8d3 commit f7ba58b
Show file tree
Hide file tree
Showing 8 changed files with 101 additions and 48 deletions.
35 changes: 26 additions & 9 deletions DBM-Delves-WarWithin/MycomancerCavern.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ mod:SetMinSyncRevision(20240422000000)
mod:RegisterCombat("scenario", 2679)

mod:RegisterEventsInCombat(
-- "SPELL_CAST_START ",
"SPELL_CAST_START 454213 453897 449965",
-- "SPELL_CAST_SUCCESS",
-- "SPELL_AURA_APPLIED",
-- "SPELL_AURA_REMOVED",
Expand All @@ -18,22 +18,33 @@ mod:RegisterEventsInCombat(
"ENCOUNTER_END"
)

--local warnDrones = mod:NewSpellAnnounce(449072, 2)
local warnSporesong = mod:NewCastAnnounce(453897, 2)
local warnSwampBolt = mod:NewSpellAnnounce(449965, 2)

--local specWarnFearfulShriek = mod:NewSpecialWarningDodge(433410, nil, nil, nil, 2, 2)
local specWarnMuckCharge = mod:NewSpecialWarningDodge(454213, nil, nil, nil, 2, 2)

--local timerShadowsofStrifeCD = mod:NewCDNPTimer(12.4, 449318, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)
--local timerBurrowingTremorsCD = mod:NewCDTimer(31.5, 448644, nil, nil, nil, 5)
local timerMuckChargeCD = mod:NewCDTimer(25.5, 454213, nil, nil, nil, 3)
local timerSporesongCD = mod:NewCDTimer(29.1, 453897, nil, nil, nil, 3)
local timerSwampBoltCD = mod:NewCDTimer(27.9, 449965, nil, nil, nil, 5)

--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt

--[[
function mod:SPELL_CAST_START(args)
if args.spellId == 449318 then
if args.spellId == 454213 then
--"Muck Charge-454213-npc:220314-0000497D69 = pull:5.8, 25.5, 25.5, 25.5, 27.9, 29.1",
specWarnMuckCharge:Show()
specWarnMuckCharge:Play("chargemove")
timerMuckChargeCD:Start()
elseif args.spellId == 453897 then
--"Sporesong-453897-npc:220314-0000497D69 = pull:15.5, 29.1, 29.1, 29.1, 29.1, 29.1",
warnSporesong:Show()
timerSporesongCD:Start()
elseif args.spellId == 449965 then
--"Swamp Bolt-449965-npc:220314-0000497D69 = pull:10.6, 27.9, 27.9, 27.9, 27.9, 27.9",
warnSwampBolt:Show()
timerSwampBoltCD:Start()
end
end
--]]

--[[
function mod:SPELL_CAST_SUCCESS(args)
Expand Down Expand Up @@ -81,6 +92,9 @@ end
function mod:ENCOUNTER_START(eID)
if eID == 2960 then--Bogpiper
--Start some timers
timerMuckChargeCD:Start(5.8)
timerSwampBoltCD:Start(10.6)
timerSporesongCD:Start(15.5)
end
end

Expand All @@ -90,6 +104,9 @@ function mod:ENCOUNTER_END(eID, _, _, _, success)
DBM:EndCombat(self)
else
--Stop Timers manually
timerMuckChargeCD:Stop()
timerSwampBoltCD:Stop()
timerSporesongCD:Stop()
end
end
end
5 changes: 3 additions & 2 deletions DBM-Delves-WarWithin/SkitteringBreach.lua
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ end

function mod:ENCOUNTER_START(eID)
if eID == 2946 then--Nerl'athekk the Skulking
timerDarkriftSmashCD:Start(8.7)
timerDarkAbatementCD:Start(12.4)
timerDarkAbatementCD:Start(2.2)
timerDarkriftSmashCD:Start(8.5)
self:RegisterShortTermEvents(
"UNIT_SPELLCAST_SUCCEEDED boss1"
)
Expand Down Expand Up @@ -130,6 +130,7 @@ end
function mod:UNIT_SPELLCAST_SUCCEEDED(uId, _, spellId)
if spellId == 458183 then
--"Dark Abatement-458183-npc:219676-00001EA30B = pull:2.2, 20.6, 20.0, 20.0, 20.0, 21.2, 20.1, 20.0, 21.3, 26.8",
--2.4, 20.6, 21.3, 21.2, 21.2, 20.0
warnDarkAbatement:Show()
timerDarkAbatementCD:Start()
end
Expand Down
11 changes: 7 additions & 4 deletions DBM-Delves-WarWithin/TheDreadPit.lua
Original file line number Diff line number Diff line change
Expand Up @@ -23,22 +23,25 @@ local warnStingingSwarm = mod:NewSpellAnnounce(448663, 2)
local specWarnBurrowingTremors = mod:NewSpecialWarningDodge(448644, nil, nil, nil, 2, 2)
local specWarnImpale = mod:NewSpecialWarningDodge(448634, nil, nil, nil, 2, 2)

local timerBurrowingTremorsCD = mod:NewCDTimer(32.4, 448644, nil, nil, nil, 5)
local timerImpaleCD = mod:NewCDTimer(30, 448634, nil, nil, nil, 3)
local timerStingingSwarmCD = mod:NewCDTimer(30, 448663, nil, nil, nil, 3)--Repeat timer not known
local timerBurrowingTremorsCD = mod:NewCDTimer(31.5, 448644, nil, nil, nil, 5)
local timerImpaleCD = mod:NewCDTimer(14.6, 448634, nil, nil, nil, 3)
local timerStingingSwarmCD = mod:NewCDTimer(32.8, 448663, nil, nil, nil, 3)

--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt

function mod:SPELL_CAST_START(args)
if args.spellId == 448644 then
--12.2, 32.4, 31.6, 31.5, 32.0
specWarnBurrowingTremors:Show()
specWarnBurrowingTremors:Play("watchstep")
timerBurrowingTremorsCD:Start()
elseif args.spellId == 448634 then
--6.2, 26.3, 23.1, 14.6, 17.0, 14.6, 17.0, 15.0, 17.0
specWarnImpale:Show()
specWarnImpale:Play("watchstep")
timerImpaleCD:Start()
elseif args.spellId == 448663 then
--23.2, 34.8, 32.8, 33.2, 33.6
warnStingingSwarm:Show()
-- timerStingingSwarmCD:Start()
end
Expand Down Expand Up @@ -91,7 +94,7 @@ function mod:ENCOUNTER_START(eID)
if eID == 2989 then--Under-Lord Vik'tis
timerImpaleCD:Start(6.1)
timerBurrowingTremorsCD:Start(12.1)
timerStingingSwarmCD:Start(26.7)
timerStingingSwarmCD:Start(23.2)
end
end

Expand Down
11 changes: 9 additions & 2 deletions DBM-Delves-WarWithin/TheSinkhole.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ mod:SetMinSyncRevision(20240422000000)
mod:RegisterCombat("scenario", 2687, 2767)--2767 likely not used player facing

mod:RegisterEventsInCombat(
"SPELL_CAST_START 446079",
"SPELL_CAST_START 446079 445860",
-- "SPELL_CAST_SUCCESS",
-- "SPELL_AURA_APPLIED",
-- "SPELL_AURA_REMOVED",
Expand All @@ -21,18 +21,24 @@ mod:RegisterEventsInCombat(
--NOTE: This one lacks encounter ID for easy win detection and boss timers
--NOTE, all of Leviathan Caller timers are fucked due to low dps. needs repulls. 446080 can be used to auto mark adds maybe?
local warnCalloftheAbyss = mod:NewSpellAnnounce(446080, 2)
local warnDrownedIllusions = mod:NewSpellAnnounce(445860, 2)

--local specWarnFearfulShriek = mod:NewSpecialWarningDodge(433410, nil, nil, nil, 2, 2)

--local timerShadowsofStrifeCD = mod:NewCDNPTimer(12.4, 449318, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)
local timerCalloftheAbyssCD = mod:NewCDTimer(31.5, 446080, nil, nil, nil, 1)
local timerDrownedIllusionsCD = mod:NewCDTimer(13.8, 445860, nil, nil, nil, 1)

--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt

function mod:SPELL_CAST_START(args)
if args.spellId == 446079 then
warnCalloftheAbyss:Show()
--timerCalloftheAbyssCD:Start()
elseif args.spellId == 445860 then
--"Drowned Illusions-445860-npc:219763-000049B174 = pull:7.8, 15.5, 13.8, 15.4, 14.6, 19.4, 19.5",
warnDrownedIllusions:Show()
timerDrownedIllusionsCD:Start()
end
end

Expand Down Expand Up @@ -81,7 +87,7 @@ end

function mod:ENCOUNTER_START(eID)
if eID == 2999 then--Mirror Master Murkna
DBM:AddMsg("Boss alerts/timers not yet implemented for Mirror Master Murkna")
timerDrownedIllusionsCD:Start(7.8)
elseif eID == 3000 then--Bloated Drowner
DBM:AddMsg("Boss alerts/timers not yet implemented for Bloated Drowner")
elseif eID == 3001 then--Cragpie
Expand All @@ -97,6 +103,7 @@ function mod:ENCOUNTER_END(eID, _, _, _, success)
DBM:EndCombat(self)
else
--Stop Timers manually
timerDrownedIllusionsCD:Stop()
end
elseif eID == 3000 then--Bloated Drowner
if success == 1 then
Expand Down
42 changes: 32 additions & 10 deletions DBM-Delves-WarWithin/TrashCommon.lua
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ mod:RegisterEvents(
--for now ALL are being put in common til we have enough data to scope trash abilities to appropriate modules
--NOTE: Jagged Slash (450176) has precisely 9.7 CD, but is it worth tracking?
--NOTE: Stab (443510) is a 14.6 CD, but is it worth tracking?
--TODO: add "Gatling Wand-461757-npc:228044-00004977F7 = pull:1392.7, 17.0, 17.0", (used by Reno Jackson)
local warnDebilitatingVenom = mod:NewTargetNoFilterAnnounce(424614, 3)--Brann will dispel this if healer role
local warnCastigate = mod:NewTargetNoFilterAnnounce(418297, 4)
local warnSpearFish = mod:NewTargetNoFilterAnnounce(430036, 2)
Expand All @@ -28,9 +29,10 @@ local warnShadowsofStrife = mod:NewCastAnnounce(449318, 3)--High Prio Interr
local warnWebbedAegis = mod:NewCastAnnounce(450546, 3)
local warnBloatedEruption = mod:NewCastAnnounce(424798, 4)
local warnBattleRoar = mod:NewCastAnnounce(414944, 3)
local warnVineSpear = mod:NewCastAnnounce(424891, 3, nil, nil, nil, nil, nil, 12)
local warnVineSpear = mod:NewCastAnnounce(424891, 3, nil, nil, nil, nil, nil, 12)--Move to NewSpecialWarningDodge?
local warnSkitterCharge = mod:NewCastAnnounce(450197, 3, nil, nil, nil, nil, nil, 2)
local warnWicklighterVolley = mod:NewCastAnnounce(445191, 3)
local warnSkullCracker = mod:NewCastAnnounce(462686, 3)
local warnThrowDyno = mod:NewSpellAnnounce(448600, 3)

local specWarnFearfulShriek = mod:NewSpecialWarningDodge(433410, nil, nil, nil, 2, 2)
Expand All @@ -52,11 +54,12 @@ local specWarnWebbedAegis = mod:NewSpecialWarningInterrupt(450546, "HasInter
local specWarnRotWaveVolley = mod:NewSpecialWarningInterrupt(425040, "HasInterrupt", nil, nil, 1, 2)
local specWarnCastigate = mod:NewSpecialWarningInterrupt(418297, "HasInterrupt", nil, nil, 1, 2)
local specWarnBattleCry = mod:NewSpecialWarningInterrupt(448399, "HasInterrupt", nil, nil, 1, 2)
local specWarnHolyLight = mod:NewSpecialWarningInterrupt(459421, "HasInterrupt", nil, nil, 1, 2)

local timerFearfulShriekCD = mod:NewCDNPTimer(13.4, 433410, nil, nil, nil, 3)
local timerShadowsofStrifeCD = mod:NewCDNPTimer(20, 449318, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)--Needs more Data
local timerShadowsofStrifeCD = mod:NewCDNPTimer(15.6, 449318, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)
local timerRotWaveVolleyCD = mod:NewCDNPTimer(15.2, 425040, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)--15.2-17
local timerWebbedAegisCD = mod:NewCDNPTimer(14.6, 450546, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)--14.6 BUT enemies can skip casts sometimes and make it 29.1
local timerWebbedAegisCD = mod:NewCDNPTimer(15.8, 450546, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)--14.6 BUT enemies can skip casts sometimes and make it 29.1
local timerLavablastCD = mod:NewCDNPTimer(15.8, 445781, nil, nil, nil, 3)
local timerBlazingWickCD = mod:NewCDNPTimer(14.6, 449071, nil, nil, nil, 3)
local timerBattleRoarCD = mod:NewCDNPTimer(15.4, 414944, nil, nil, nil, 5, nil, DBM_COMMON_L.MAGIC_ICON)
Expand All @@ -73,6 +76,8 @@ local timerSpearFishCD = mod:NewCDNPTimer(12.1, 430036, nil, nil, nil, 3)
local timerViciousStabsCD = mod:NewCDNPTimer(20.6, 424704, nil, nil, nil, 3)
local timerThrowDynoCD = mod:NewCDNPTimer(7.2, 448600, nil, nil, nil, 3)
local timerSerratedCleaveCD = mod:NewCDNPTimer(32.7, 445492, nil, nil, nil, 5, nil, DBM_COMMON_L.TANK_ICON)--Not technically tanks only, just whoever has aggro in it
local timerSkullCrackerCD = mod:NewCDNPTimer(15.8, 462686, nil, nil, nil, 3)
local timerHolyLightCD = mod:NewCDNPTimer(17, 459421, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)--17-18.2

--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt

Expand All @@ -84,8 +89,8 @@ do
if not force and validZones[currentZone] and not eventsRegistered then
eventsRegistered = true
self:RegisterShortTermEvents(
"SPELL_CAST_START 449318 450546 433410 450714 445781 415253 425040 424704 424798 414944 418791 424891 450197 448399 445191 455932 445492 434281 450637 445210 448528 449071",
"SPELL_CAST_SUCCESS 414944 424614 418791 424891 427812 450546 450197 415253 449318 445191 430036 445252 425040 424704 448399 448528 433410 445492",
"SPELL_CAST_START 449318 450546 433410 450714 445781 415253 425040 424704 424798 414944 418791 424891 450197 448399 445191 455932 445492 434281 450637 445210 448528 449071 462686 459421",
"SPELL_CAST_SUCCESS 414944 424614 418791 424891 427812 450546 450197 415253 449318 445191 430036 445252 425040 424704 448399 448528 433410 445492 462686 447392 459421",
"SPELL_INTERRUPT",
"SPELL_AURA_APPLIED 424614 449071 418297 430036 440622 441129",
--"SPELL_AURA_REMOVED",
Expand Down Expand Up @@ -176,7 +181,7 @@ function mod:SPELL_CAST_START(args)
elseif args.spellId == 424891 then
if self:AntiSpam(3, 6) then
warnVineSpear:Show()
warnVineSpear:Play("pullin")
warnVineSpear:Play("shockwave")
end
elseif args.spellId == 450197 then
if self:AntiSpam(3, 2) then
Expand Down Expand Up @@ -225,6 +230,15 @@ function mod:SPELL_CAST_START(args)
specWarnBlazingWick:Show()
specWarnBlazingWick:Play("shockwave")
end
elseif args.spellId == 462686 then
if self:AntiSpam(3, 6) then
warnSkullCracker:Show()
end
elseif args.spellId == 459421 then
if self:CheckInterruptFilter(args.sourceGUID, false, true) then
specWarnHolyLight:Show(args.sourceName)
specWarnHolyLight:Play("kickcast")
end
end
end

Expand All @@ -247,13 +261,13 @@ function mod:SPELL_CAST_SUCCESS(args)
warnRelocate:Show()
end
elseif args.spellId == 450546 then
timerWebbedAegisCD:Start(14.6, args.sourceGUID)
timerWebbedAegisCD:Start(12.8, args.sourceGUID)--15.8 - 3
elseif args.spellId == 450197 then
timerSkitterChargeCD:Start(12.5, args.sourceGUID)-- 14.6 - 2.1
elseif args.spellId == 415253 then
timerFungalBreathCD:Start(15.2, args.sourceGUID)-- 18.2 - 3
elseif args.spellId == 449318 then
timerShadowsofStrifeCD:Start(17, args.sourceGUID)--20 - 3
timerShadowsofStrifeCD:Start(12.6, args.sourceGUID)--15.6 - 3
elseif args.spellId == 445191 then
timerWicklighterVolleyCD:Start(18.3, args.sourceGUID)--21.8 - 3.5
elseif args.spellId == 430036 then
Expand All @@ -275,6 +289,12 @@ function mod:SPELL_CAST_SUCCESS(args)
timerFearfulShriekCD:Start(10.4, args.sourceGUID)--13.4 - 3
elseif args.spellId == 445492 then
timerSerratedCleaveCD:Start(29.7, args.sourceGUID)--32.7 - 3
elseif args.spellId == 462686 then
timerSkullCrackerCD:Start(13.3, args.sourceGUID)--15.8 - 2.5
elseif args.spellId == 447392 then--Supply Bag (Cast when Reno Jackson Defeated)
timerSkullCrackerCD:Stop(args.sourceGUID)
elseif args.spellId == 459421 then
timerHolyLightCD:Start(14.5, args.sourceGUID)--17-2.5
end
end

Expand All @@ -288,9 +308,9 @@ function mod:SPELL_INTERRUPT(args)
timerBattleRoarCD:Start(9.9, args.destGUID)--9.9-12
end
elseif args.extraSpellId == 450546 then
timerWebbedAegisCD:Start(14.6, args.destGUID)
timerWebbedAegisCD:Start(12.8, args.destGUID)
elseif args.extraSpellId == 449318 then
timerShadowsofStrifeCD:Start(17, args.destGUID)--20 - 3
timerShadowsofStrifeCD:Start(12.6, args.destGUID)--15.6 - 3
elseif args.extraSpellId == 445191 then
timerWicklighterVolleyCD:Start(18.3, args.destGUID)--21.8 - 3.5
elseif args.extraSpellId == 425040 then
Expand All @@ -303,6 +323,8 @@ function mod:SPELL_INTERRUPT(args)
timerThrowDynoCD:Start(5.7, args.destGUID)-- 7.2 - 1.5
elseif args.extraSpellId == 433410 then
timerFearfulShriekCD:Start(10.4, args.destGUID)--13.4 - 3
elseif args.extraSpellId == 459421 then
timerHolyLightCD:Start(14.5, args.sourceGUID)--17-2.5
end
end

Expand Down
4 changes: 2 additions & 2 deletions DBM-Party-WarWithin/TheDawnbreaker/Rashanan.lua
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ mod:RegisterEventsInCombat(
or ability.id = 434726 and type = "damage"
--]]
local warnBlazing = mod:NewCountAnnounce(434726, 1)
local warnRollingAcid = mod:NewIncomingCountAnnounce(438875, 2)--General announce, private aura sound will be personal emphasis
local warnRollingAcid = mod:NewIncomingCountAnnounce(434407, 2)--General announce, private aura sound will be personal emphasis
local warnRadiantLight = mod:NewYouAnnounce(449042, 1)
local warnSpinneretsStrands = mod:NewIncomingCountAnnounce(434089, 3)--General announce, private aura sound will be personal emphasis

Expand Down Expand Up @@ -111,7 +111,7 @@ function mod:SPELL_CAST_START(args)
if spellId == 434407 then
self.vb.rollingCount = self.vb.rollingCount + 1
warnRollingAcid:Show(self.vb.rollingCount)
timerRollingAcidCD:Start(self:IsMythic() and 15.2 or (self:GetStage(2) and 25 or 20), self.vb.rollingCount+1)
timerRollingAcidCD:Start(self:IsMythic() and 15.2 or (self:GetStage(2) and 25 or 18.6), self.vb.rollingCount+1)
updateAllTimers(self, self:GetStage(1) and 6 or 6.6)
elseif spellId == 448213 then
self.vb.expelCount = self.vb.expelCount + 1
Expand Down
4 changes: 2 additions & 2 deletions DBM-Party-WarWithin/TheDawnbreaker/TheDawnbreakerTrash.lua
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ local specWarnBlackEdge = mod:NewSpecialWarningDodge(431494, nil, nil, nil,
local specWarnBlackHail = mod:NewSpecialWarningDodge(432565, nil, nil, nil, 2, 2)
local specWarnTerrifyingSlam = mod:NewSpecialWarningRun(451117, nil, nil, nil, 4, 2)
local specWarnTackyNova = mod:NewSpecialWarningRun(451098, nil, nil, nil, 4, 2)
local specWarnTormentingEruption = mod:NewSpecialWarningRun(431349, "Melee", nil, nil, 4, 2)
local specWarnTormentingEruption = mod:NewSpecialWarningMoveAway(431349, "Melee", nil, nil, 4, 2)
local specWarnSygianSeed = mod:NewSpecialWarningMoveAway(432448, nil, nil, nil, 1, 2)
local yellStygianSeed = mod:NewShortYell(432448)
local yellStygianSeedFades = mod:NewShortFadesYell(432448)
Expand Down Expand Up @@ -164,7 +164,7 @@ function mod:SPELL_CAST_START(args)
elseif spellId == 431349 then
if self:AntiSpam(3, 1) then
specWarnTormentingEruption:Show()
specWarnTormentingEruption:Play("justrun")
specWarnTormentingEruption:Play("scatter")
end
elseif spellId == 446615 and self:AntiSpam(3, 6) then
warnReinforcements:Show()
Expand Down
Loading

0 comments on commit f7ba58b

Please sign in to comment.