Grid2

Grid2

11M Downloads

[Request] heal-absorbs for Cataclysm

gonstr opened this issue ยท 15 comments

commented

Hey!

In Cataclysm, it would be really handy to be able to see absorb values in the raid frames.

I know this only works for retail and I think the reason is that UnitGetTotalHealAbsorbs doesnt exist until MoP?

if Grid2.isClassic then return end

I was playing around with WeakAuras trying to make something similar and what I do know is that in Cataclysm absorb values show correctly in buff tooltips. I was able to make a WA quite quickly that would update some bars based on the tooltip of Power Word: Shield, Divine Aegis and Illuminated Healing (which I think are the 3 main absorbs).

Would it be possible to add support for heal-absorb in to Cataclysm using tooltip data or some other approach? ๐Ÿค”

commented

Made a WA that enables the shields and shields-overflow statuses in Cataclysm: https://wago.io/Ba3YpVv6A

It's more or less the code from StatusShields.lua with some slight modifications to get data from the WeakAura triggers instead of native events that don't exist in Cataclysm.

The WA reads tooltip data of Power Word: Shield, Divine Aegies and Illuminated Healing to get absorb values.

commented

Try out 2.8.27-beta-cata version.
Remember to remove the Shields WeakAura, because it breaks the grid2 code.

commented

Thanks for the quick work. Seems to work well! I deleted the WA.

commented

Im not going to implement things based on parsing tooltips, its too resource intensive. But it seems auras API is returning the shield values (at least for mages ice barrier).
Unfortunatelly i dont have a high level priest in cataclysm so i cannot gather the information for priest auras, auras api returns up 3 custom values in the points[] array, i need to know the array index for the shield amount.
Maybef you can paste into your chat this code, and copy here the information printed into chat. You priest must have the shields auras active to gather the information about the auras.

/script for i=1,40 do local d=C_UnitAuras.GetAuraDataByIndex("player",i); if d then print(d.name,unpack(d.points)) end; end

commented

Hi, i run the script on my priest:
Power Word: Shield 14130
Divine Aegis 1229

I also run it on holy pala for Illuminated Healing
Illuminated Healing 12067

commented

Can also confirm that it shows the shield values.

absorbs
absorb-pala

Here are spell ids:

  • Power Word: Shield 17
  • Divine Aegis 47753
  • Illuminated Healing 86273
commented

DKs have Blood Shield but it only absorbs physical damage so I'm not sure it makes sense to track it.

bloodshield

commented

Could you please add a feature similar to retail, where the 'current-health' status includes the option to 'add shield to health percent'?

commented

Could you please add a feature similar to retail, where the 'current-health' status includes the option to 'add shield to health percent'?

Try out 2.8.28-beta version.

commented

awesome, thankyou

commented

I've been searching through combat logs from ICC raids for _ABSORBED entries and found some more Cata absorbs:

Shield value is first value in array again

absorb-sc

Comes from Glyph of Stoneclaw totem

Unfortunately this one does not have an entry in C_UnitAuras.GetAuraDataByIndex :(

absorb-stoneclaw

commented

And a few more:

Savage defense only absorbs physical damage similar to dks blood shield

absorb-sd

absorb-gl

commented

That's really cool. Nice with a different color for physical shields will try that ๐Ÿ˜„๐Ÿ‘

I think it would be nice with at least Sacred Shield and Guarded by the Light added to the list of tracked shields though:

local shield_spells = {
	[1463]  = 1, -- Mana Shield (Mage)
	[11426] = 1, -- Ice Barrier (Mage)
	[17]    = 1, -- Power Word: Shield (Priest)
	[47753] = 1, -- Divine Aegis (Priest)
	[86273] = 1, -- Iluminated Healing (Paladin)
	[96263] = 1, -- Sacred Shield (Paladin)
	[88063] = 1, -- Guarded by the Light (Paladin)
	-- [77535] = 1, -- Blood Shield (DK)
}

They are not physical only afaik and C_UnitAuras.GetAuraDataByIndex return the shield values for them

commented

I did not enable the physical shields, i think they should not by added.
I should note that these physical shields values, can be tracked without the shields status using a multibar-indicator, and creating standards buffs. For example:

  1. Create the Savage Defense buff, then in the "Value" section in the buff settings , select "Value1" as value to track/display.
  2. Do the same for the DK Blood Shield buff.
  3. Create a multibar indicator with two bars, set different bar colors if you wish to differenciate the shields.
  4. Link first bar to savage defense buff status, and second bar to dk blod shield buff status.
  5. For personal shields cds, we can get the same result using two single bar indicators instead of one multi-bar, and positioning the bars at the same place (because dk shield and druid shield cannot exist on the same player ).

The same approach could be used to display the standard healer absorbs like "Power Word: Shield", the problem is that some buff can be duplicated on the same player (two shields applied by different healers), and this approach will only display one shield of each type.

commented

I think I have been misunderstood, i already added those new paladin non-physical shields (but not published yet). In my previous post i was only talking about the druid and dk shields, not the paladin shields.