Как починить ДБМ в домашних условиях
Дебаффы с которыми нужно выбегать в свету и в тьме а именно 74792 и 74562 - по оффу приурочены к SubEvent-у "SPELL_CAST_SUCCESS"
Но увы на нашем сервере, если отследить бой на Халионе через /combatlog - то "SPELL_CAST_SUCCESS" связанных с 74792 и 74562 - нет, есть только "SPELL_AURA_APPLIED"
Поэтому логично что КД на метки на нашей сервере ДБМ не анонсит, вернее анонсирует только первую по отсчету от начала боя.
Исправить это можно как починкой боя нашими разработчиками или примерно так как это сделал я:
В файле World of Warcraft Wrath of the Lich King\Interface\AddOns\DBM-ChamberOfAspects\Ruby\Halion - изначальный текст удалить
и вместо него вставить:PHP код:function mod:SPELL_CAST_SUCCESS(args)--We use spell cast success for debuff timers in case it gets resisted by a player we still get CD timer for next one
if args:IsSpellID(74792) then
if mod:IsDifficulty("heroic10") or mod:IsDifficulty("heroic25") then
timerShadowConsumptionCD:Start(20)
else
timerShadowConsumptionCD:Start()
end
if mod:LatencyCheck() then
self:SendSync("ShadowCD")
end
elseif args:IsSpellID(74562) then
if mod:IsDifficulty("heroic10") or mod:IsDifficulty("heroic25") then
timerFieryConsumptionCD:Start(20)
else
timerFieryConsumptionCD:Start()
end
if mod:LatencyCheck() then
self:SendSync("FieryCD")
end
end
end
function mod:SPELL_AURA_APPLIED(args)--We don't use spell cast success for actual debuff on >player< warnings since it has a chance to be resisted.
if args:IsSpellID(74792) then
if not self.Options.AnnounceAlternatePhase then
warningShadowConsumption:Show(args.destName)
if DBM:GetRaidRank() >= 1 and self.Options.WhisperOnConsumption then
SendChatMessage(L.WhisperConsumption, "WHISPER", "COMMON", args.destName)
end
end
if mod:LatencyCheck() then
self:SendSync("ShadowTarget", args.destName)
end
if args:IsPlayer() then
specWarnShadowConsumption:Show()
soundConsumption:Play()
if self.Options.YellOnConsumption then
SendChatMessage(L.YellConsumption, "SAY")
end
end
if self.Options.SetIconOnConsumption then
self:SetIcon(args.destName, 7)
end
elseif args:IsSpellID(74562) then
if not self.Options.AnnounceAlternatePhase then
warningFieryConsumption:Show(args.destName)
if DBM:GetRaidRank() >= 1 and self.Options.WhisperOnConsumption then
SendChatMessage(L.WhisperCombustion, "WHISPER", "COMMON", args.destName)
end
end
if mod:LatencyCheck() then
self:SendSync("FieryTarget", args.destName)
end
if args:IsPlayer() then
specWarnFieryConsumption:Show()
soundConsumption:Play()
if self.Options.YellOnConsumption then
SendChatMessage(L.YellCombustion, "SAY")
end
end
if self.Options.SetIconOnConsumption then
self:SetIcon(args.destName, 8)
end
end
end
и вуаля таймеры заработают, а вообще надеемся на правкуPHP код:function mod:SPELL_AURA_APPLIED(args)--We don't use spell cast success for actual debuff on >player< warnings since it has a chance to be resisted.
if args:IsSpellID(74792) then
if mod:IsDifficulty("heroic10") or mod:IsDifficulty("heroic25") then
timerShadowConsumptionCD:Start(20)
else
timerShadowConsumptionCD:Start()
end
if mod:LatencyCheck() then
self:SendSync("ShadowCD")
end
if not self.Options.AnnounceAlternatePhase then
warningShadowConsumption:Show(args.destName)
if DBM:GetRaidRank() >= 1 and self.Options.WhisperOnConsumption then
SendChatMessage(L.WhisperConsumption, "WHISPER", "COMMON", args.destName)
end
end
if mod:LatencyCheck() then
self:SendSync("ShadowTarget", args.destName)
end
if args:IsPlayer() then
specWarnShadowConsumption:Show()
soundConsumption:Play()
if self.Options.YellOnConsumption then
SendChatMessage(L.YellConsumption, "SAY")
end
end
if self.Options.SetIconOnConsumption then
self:SetIcon(args.destName, 7)
end
elseif args:IsSpellID(74562) then
if mod:IsDifficulty("heroic10") or mod:IsDifficulty("heroic25") then
timerFieryConsumptionCD:Start(20)
else
timerFieryConsumptionCD:Start()
end
if mod:LatencyCheck() then
self:SendSync("FieryCD")
end
if not self.Options.AnnounceAlternatePhase then
warningFieryConsumption:Show(args.destName)
if DBM:GetRaidRank() >= 1 and self.Options.WhisperOnConsumption then
SendChatMessage(L.WhisperCombustion, "WHISPER", "COMMON", args.destName)
end
end
if mod:LatencyCheck() then
self:SendSync("FieryTarget", args.destName)
end
if args:IsPlayer() then
specWarnFieryConsumption:Show()
soundConsumption:Play()
if self.Options.YellOnConsumption then
SendChatMessage(L.YellCombustion, "SAY")
end
end
if self.Options.SetIconOnConsumption then
self:SetIcon(args.destName, 8)
end
end
end



