Skip to content

Commit

Permalink
Drycdoe 5 of the 7 bosses, at least ones logged. Many spells are stil…
Browse files Browse the repository at this point in the history
…l guesses on what they do (I can't be arsed to watch vod, I'll wait for boss guide to fix up mods further).
  • Loading branch information
MysticalOS committed Dec 2, 2023
1 parent cb75e68 commit 4443b93
Show file tree
Hide file tree
Showing 7 changed files with 336 additions and 59 deletions.
111 changes: 94 additions & 17 deletions DBM-Raids-Vanilla/VanillaSoD_BFD/Akumai.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,40 +4,117 @@ local L = mod:GetLocalizedStrings()
mod:SetRevision("@file-date-integer@")
mod:SetCreatureID(213334)
mod:SetEncounterID(2891)--2767 is likely 5 man version in instance type 201
mod:SetHotfixNoticeRev(20231201000000)
--mod:SetMinSyncRevision(20231115000000)
mod:SetUsedIcons(1, 2)

mod:RegisterCombat("combat")

mod:RegisterEventsInCombat(
-- "SPELL_CAST_START",
"SPELL_AURA_APPLIED 407791"
"SPELL_CAST_START 429168",
"SPELL_CAST_SUCCESS 427751 428761 429207 429541 429359 429353",
"SPELL_SUMMON 428828",
"SPELL_AURA_APPLIED 427625 428482",
"SPELL_AURA_APPLIED_DOSE 427625 428482",
"SPELL_AURA_REMOVED 429541"
)

--https://www.wowhead.com/classic/spell=429315/akumai-phase-transition
local warningAkumaisRage = mod:NewTargetNoFilterAnnounce(407791, 3, nil, "Healer|Tank|RemoveEnrage")
--TODO, corrosive blast is utterly ambigious about who it targets or what it even does, so generic warning for now
--TODO, Shadowbolt Volley ability from elemental adds? blue post mentions such an ability but nos uch ability exists in logs
--TODO, too much of boss is ambigous and many warnings are just pure drycode without any idea what they even do
local warnCorrosion = mod:NewStackAnnounce(427625, 2, nil, "Tank|Healer")
local warnCorrosiveBlast = mod:NewCastAnnounce(429168, 3)
local warnCleansingPool = mod:NewSpellAnnounce(427751, 1)
local warnElementalInstability = mod:NewSpellAnnounce(428761, 3)
local warnDarkProtection = mod:NewSpellAnnounce(429541, 3)
local warnDarkProtectionOver = mod:NewEndAnnounce(429541, 3)
local warnVoidBlast = mod:NewCastAnnounce(429359, 3, 3)
local warnShadowSeep = mod:NewStackAnnounce(428482, 2, nil, "Tank|Healer")
local warningPoolofShadow = mod:NewTargetNoFilterAnnounce(429394, 3)--No idea what this does

local specWarnEnrage = mod:NewSpecialWarningDispel(407791, "RemoveEnrage", nil, nil, 1, 2)
local timerCorrosiveBlastCD = mod:NewCDTimer(21, 429168, nil, nil, nil, 3)
local timerCorrosiveBiteCD = mod:NewCDTimer(6.5, 429207, nil, "Tank|Healer", nil, 5, nil, DBM_COMMON_L.TANK_ICON)
local timerVoidBlastCD = mod:NewCDTimer(21, 429359, nil, nil, nil, 3)
local timerVoidFangCD = mod:NewCDTimer(6.5, 429353, nil, "Tank|Healer", nil, 5, nil, DBM_COMMON_L.TANK_ICON)

--local timerSleepCD = mod:NewAITimer(180, 8399, nil, nil, nil, 3, nil, DBM_COMMON_L.MAGIC_ICON)
mod:AddSetIconOption("SetIconOnElementals", 428828, true, 5, {1, 2})

--function mod:OnCombatStart(delay)
mod.vb.iconCount = 1

--end
function mod:OnCombatStart(delay)
self:SetStage(1)
timerCorrosiveBiteCD:Start(3-delay)
timerCorrosiveBlastCD:Start(21.2-delay)
end

--[[
function mod:SPELL_CAST_START(args)
if args:IsSpell(8399) and args:IsSrcTypeHostile() then
if args:IsSpell(429168) then
warnCorrosiveBlast:Show()
timerCorrosiveBlastCD:Start()
end
end

function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpell(427751) and self:AntiSpam(5, 1) then
warnCleansingPool:Show()
elseif args:IsSpell(428761) then
warnElementalInstability:Show()
elseif args:IsSpell(429207) then
timerCorrosiveBiteCD:Start()
elseif args:IsSpell(429541) then
self:SetStage(2)
self.vb.iconCount = 1
timerCorrosiveBiteCD:Stop()
timerCorrosiveBlastCD:Stop()
warnDarkProtection:Show()
elseif args:IsSpell(429359) then
warnVoidBlast:Show()
timerVoidBlastCD:Start()
elseif args:IsSpell(429353) then
timerVoidFangCD:Start()
end
end

function mod:SPELL_SUMMON(args)
local spellId = args.spellId
if args:IsSpell(428828) then
if self.Options.SetIconOnElementals then
self:ScanForMobs(args.destGUID, 2, self.vb.iconCount, 1, nil, 12, "SetIconOnElementals")
end
self.vb.iconCount = self.vb.iconCount + 1
end
end
--]]

function mod:SPELL_AURA_APPLIED(args)
if args:IsSpell(407791) then
if self.Options.SpecWarn407791dispel then
specWarnEnrage:Show(args.destName)
specWarnEnrage:Play("enrage")
else
warningAkumaisRage:Show(args.destName)
if args:IsSpell(427625) then
local amount = args.amount or 1
if amount % 3 == 0 or amount >= 6 then
warnShadowStrike:Show(args.destName, amount)
end
elseif args:IsSpell(428482) then
local amount = args.amount or 1
if amount % 3 == 0 or amount >= 6 then
warnShadowSeep:Show(args.destName, amount)
end
elseif args:IsSpell(429394) then
warningPoolofShadow:Show(args.destName)
end
end
mod.SPELL_AURA_APPLIED_DOSE = mod.SPELL_AURA_APPLIED

function mod:SPELL_AURA_REMOVED(args)
if args:IsSpell(429541) then
warnDarkProtectionOver:Show()
timerVoidFangCD:Start(3.7)
timerVoidBlastCD:Start()--21
end
end

--[[
function mod:UNIT_DIED(args)
local cid = self:GetCIDFromGUID(args.destGUID)
if cid == 213451 then--CLeansing Elemental
end
end
--]]
2 changes: 2 additions & 0 deletions DBM-Raids-Vanilla/VanillaSoD_BFD/BaronAuanis.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ local L = mod:GetLocalizedStrings()
mod:SetRevision("@file-date-integer@")
mod:SetCreatureID(202699)
mod:SetEncounterID(2694)--2765 is likely 5 man version in instance type 201 (which has Old Serra'kis instead of Baron)
mod:SetHotfixNoticeRev(20231201000000)
--mod:SetMinSyncRevision(20231115000000)

mod:RegisterCombat("combat")

Expand Down
64 changes: 54 additions & 10 deletions DBM-Raids-Vanilla/VanillaSoD_BFD/Gelihast.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,76 @@ local L = mod:GetLocalizedStrings()
mod:SetRevision("@file-date-integer@")
mod:SetCreatureID(204921)
mod:SetEncounterID(2704)--2763 is likely 5 man version in instance type 201
mod:SetHotfixNoticeRev(20231201000000)
--mod:SetMinSyncRevision(20231115000000)

mod:RegisterCombat("combat")

mod:RegisterEventsInCombat(
"SPELL_CAST_START",
"SPELL_AURA_APPLIED"
-- "SPELL_CAST_START",
"SPELL_CAST_SUCCESS 412072 411973 412456 411990 412528",
"SPELL_AURA_APPLIED 412072 411956",
"SPELL_AURA_APPLIED_DOSE 412072"
)

--local warningSleep = mod:NewTargetNoFilterAnnounce(8399, 2)

--local timerSleepCD = mod:NewAITimer(180, 8399, nil, nil, nil, 3, nil, DBM_COMMON_L.MAGIC_ICON)
--TODO, better detect march starting/ending to cleanup antispam and resume nono murloc phase timers
--TODO, what does shadow crash even do, does it need an alert?
--TODO, void empowerment is what? stage change?
--[[
(ability.id = 412456 or ability.id = 411973 or ability.id = 412072 or ability.id = 411990 or ability.id = 412248 or ability.id = 412528) and type = "cast"
--]]
local warnShadowStrike = mod:NewStackAnnounce(412072, 2, nil, "Tank|Healer")
local warnCurseofBlackfathom = mod:NewTargetNoFilterAnnounce(411956, 2, nil, "RemoveCurse")
local warnMarchofMurlocs = mod:NewSpellAnnounce(412456, 2)
local warnGroundRupture = mod:NewSpellAnnounce(412528, 2)

--function mod:OnCombatStart(delay)
local timerShadowStrikeCD = mod:NewCDTimer(11.3, 412072, nil, nil, nil, 3, nil, DBM_COMMON_L.MAGIC_ICON)
local timerCurseofBlackfathomCD = mod:NewCDTimer(11.3, 411973, nil, nil, nil, 5, nil, DBM_COMMON_L.CURSE_ICON)
local timerShadowCrashCD = mod:NewCDTimer(11.3, 411990, nil, nil, nil, 3)
local timerGroundRuptureCD = mod:NewCDTimer(11.3, 412528, nil, nil, nil, 3)
local timerMarchofMurlocsCD = mod:NewCDTimer(77.6, 412456, nil, nil, nil, 1)

--end
function mod:OnCombatStart(delay)
timerShadowStrikeCD:Start(3-delay)
timerCurseofBlackfathomCD:Start(6-delay)
timerShadowCrashCD:Start(8-delay)
timerMarchofMurlocsCD:Start(40-delay)
end

--[[
function mod:SPELL_CAST_START(args)
if args:IsSpell(8399) and args:IsSrcTypeHostile() then
end
end
--]]

function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpell(412072) then
timerShadowStrikeCD:Start()
elseif args:IsSpell(411973) then
timerCurseofBlackfathomCD:Start()
elseif args:IsSpell(411990) then
timerShadowCrashCD:Start()
elseif args:IsSpell(412528 and self:AntiSpam(5, 1) then
warnGroundRupture:Show()
timerGroundRuptureCD:Start()
elseif args:IsSpell(412456) and self:AntiSpam(25, 2) then
--Boss stops casting these during murlocs
timerCurseofBlackfathomCD:Stop()
timerShadowStrikeCD:Stop()
timerShadowCrashCD:Stop()
warnMarchofMurlocs:Show()
timerMarchofMurlocsCD:Start()
end
end

function mod:SPELL_AURA_APPLIED(args)
if args:IsSpell(8399) and args:IsDestTypePlayer() then
if args:IsSpell(412072) and args:IsDestTypePlayer() then
local amount = args.amount or 1
warnShadowStrike:Show(args.destName, amount)
elseif args:IsSpell(412072) and args:IsDestTypePlayer()
warnCurseofBlackfathom:CombinedShow(0.5, args.destName)
end
end
--]]
mod.SPELL_AURA_APPLIED_DOSE = mod.SPELL_AURA_APPLIED
2 changes: 2 additions & 0 deletions DBM-Raids-Vanilla/VanillaSoD_BFD/Ghamoora.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ local L = mod:GetLocalizedStrings()
mod:SetRevision("@file-date-integer@")
mod:SetCreatureID(201722)
mod:SetEncounterID(2697)--2761 is likely 5 man version in instance type 201
mod:SetHotfixNoticeRev(20231201000000)
--mod:SetMinSyncRevision(20231115000000)

mod:RegisterCombat("combat")

Expand Down
60 changes: 50 additions & 10 deletions DBM-Raids-Vanilla/VanillaSoD_BFD/LadySarevess.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,72 @@ local L = mod:GetLocalizedStrings()
mod:SetRevision("@file-date-integer@")
mod:SetCreatureID(204068)
mod:SetEncounterID(2699)--2762 is likely 5 man version in instance type 201
mod:SetHotfixNoticeRev(20231201000000)
--mod:SetMinSyncRevision(20231115000000)

mod:RegisterCombat("combat")

mod:RegisterEventsInCombat(
"SPELL_CAST_START",
"SPELL_AURA_APPLIED"
"SPELL_CAST_START 407568",
"SPELL_CAST_SUCCESS 407794 407653",
"SPELL_AURA_APPLIED 407791 407653",
"UNIT_DIED"
)

--local warningSleep = mod:NewTargetNoFilterAnnounce(8399, 2)
--TODO, add spawns/timings?
--TODO, tank stack/swap alerts?
--TODO, add cleave at all? 407811
local warningAkumaisRage = mod:NewTargetNoFilterAnnounce(407791, 3, nil, "Healer|Tank|RemoveEnrage")
local warningForkedLightning = mod:NewTargetNoFilterAnnounce(407653, 3)

--local timerSleepCD = mod:NewAITimer(180, 8399, nil, nil, nil, 3, nil, DBM_COMMON_L.MAGIC_ICON)
local specWarnForkedLightning = mod:NewSpecialWarningMoveAway(407653, nil, nil, nil, 1, 2)
local yellnForkedLightning = mod:NewYell(407653)
local specWarnFreezingArrow = mod:NewSpecialWarningInterrupt(407568, "HasInterrupt", nil, nil, 1, 2)

--function mod:OnCombatStart(delay)
local timerForkedLightningCD = mod:NewCDTimer(20.6, 407653, nil, nil, nil, 3)
local timerFreezingArrowCD = mod:NewCDTimer(22.9, 407568, nil, nil, nil, 4, nil, DBM_COMMON_L.INTERRUPT_ICON)
local timerTriplePunctureCD = mod:NewCDNPTimer(10.9, 407794, nil, nil, nil, 5)

--end
function mod:OnCombatStart(delay)
timerFreezingArrowCD:Start(5-delay)
timerForkedLightningCD:Start(15-delay)
end

--[[
function mod:SPELL_CAST_START(args)
if args:IsSpell(8399) and args:IsSrcTypeHostile() then
if args:IsSpell(407568) then
timerFreezingArrowCD:Start()
if self:CheckInterruptFilter(args.sourceGUID, false, true) then
specWarnFreezingArrow:Show(args.sourceName)
specWarnFreezingArrow:Play("kickcast")
end
end
end

function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpell(407794) then
timerTriplePunctureCD:Start(nil, args.sourceGUID)
elseif args:IsSpell(407653) then
timerForkedLightningCD:start()
end
end

function mod:SPELL_AURA_APPLIED(args)
if args:IsSpell(8399) and args:IsDestTypePlayer() then
if args:IsSpell(407791) then
warningAkumaisRage:Show(args.destName)
elseif args:IsSpell(407653) then
if args:IsPlayer() then
specWarnForkedLightning:Show()
specWarnForkedLightning:Play("scatter")
yellnForkedLightning:Yell()
else
warningForkedLightning:Show(args.destName)
end
end
end

function mod:UNIT_DIED(args)
local cid = self:GetCIDFromGUID(args.destGUID)
if cid == 204645 or cid == 204091 or cid == 209209 then--Blackfathom Elites
timerTriplePunctureCD:Stop(args.destGUID)
end
end
--]]
Loading

0 comments on commit 4443b93

Please sign in to comment.