Oblivion Tear timer
EKE00372 opened this issue ยท 7 comments
What steps will reproduce the problem?
After hotfix , mythic Uu'nat wont cast Oblivion Tear and Unstable Resonance in same time, if Unstable Resonancedeubff cast during Oblivion Tear countdown, Oblivion Tear will delay about 18s.
What version of BigWigs are you using? (Stating 'latest' is not useful)
v146.1 (f24a924)
(Retelling and we temporarily do)
if self:GetBarTimeLeft(CL.count:format(self:SpellName(285185), oblivionTearCount)) >0 then
self:StopBar(CL.count:format(self:SpellName(285185), oblivionTearCount))
self:Bar(285185, 18, CL.count:format(self:SpellName(285185), oblivionTearCount))
end
Fixed in f0d090c
Line423 was not accurate.
Actually in mythic phase 3 the tear cool down was changed to 12.3 seconds or 17.1 seconds. EK saids it was 29 is due to he missed one.
And using count number %2 is also not accurate. The inner mechanism is that the cooldown time varies due to if there are Resonance casted between the tears. If there are it's 17.1 otherwise it's 12.3.
So when I was trying to modify your code, I checked the Resonance remaining time every time when I try to initialize a Tear bar. If it was larger than 12.3 then create a 12.3 seconds Tear Bar otherwise a 17.1 seconds Tear Bar.
Also the Torment cooldown in phase 3 was changed to 45 in the last patch. You may need to know this.
Line423 was not accurate.
Actually in mythic phase 3 the tear cool down was changed to 12.3 seconds or 17.1 seconds. EK saids it was 29 is due to he missed one.
And using count number %2 is also not accurate. The inner mechanism is that the cooldown time varies due to if there are Resonance casted between the tears. If there are it's 17.1 otherwise it's 12.3.
While the current implementation is not perfect yet; it does come close. I'm not sure about the 17.1 though; I will take another look and confirm that.
Also the Torment cooldown in phase 3 was changed to 45 in the last patch. You may need to know this.
Good catch, forgot to update this.
function mod:OblivionTear(args)
self:StopBar(CL.count:format(args.spellName, oblivionTearCount))
self:Message2(args.spellId, "orange", CL.count:format(args.spellName, oblivionTearCount))
self:PlaySound(args.spellId, "alarm")
oblivionTearCount = oblivionTearCount + 1
local resonanceBarTimingLeft = self:BarTimeLeft(CL.count:format(self:SpellName(293653), unstableResonanceCount))
if stage == 1 or stage == 2 then
if resonanceBarTimingLeft < 17 then
self:Bar(args.spellId, 17 + 8.4, CL.count:format(args.spellName, oblivionTearCount))
else
self:Bar(args.spellId, 17, CL.count:format(args.spellName, oblivionTearCount))
end
end
if stage == 3 then
if resonanceBarTimingLeft < 12.2 then
self:Bar(args.spellId, 12.2 + 8.4, CL.count:format(args.spellName, oblivionTearCount))
else
self:Bar(args.spellId, 12.2, CL.count:format(args.spellName, oblivionTearCount))
end
end
end
This function runs well in our raiding (Alpha in China). Just FYI. Our guild members are taking holidays so cannot create a pull request. And it's 20.6 not 17.1.