Download
(172Kb)
Download
Updated: 08-21-18 07:12 AM
Pictures
File Info
Compatibility:
Battle for Azeroth (8.0.1)
Updated:08-21-18 07:12 AM
Created:08-20-11 02:14 PM
Downloads:8,667
Favorites:47
MD5:

ShieldBars  Popular! (More than 5000 hits)

Version: 1.2.8
by: Voyager [More]

ShieldBars 1.2.8

ShieldBars is an addon that displays your currently active shields.
Most of the commonly used shields are supported. It will only display something while there's an active shield on the player.
Use the options menu to show an example shield to help with customisation.

Features

  • Supports all classes
  • Change colors, fonts and bar textures
  • Change size of bars and icon
  • Bar text flashing when shield is about to expire or on low percentage
  • Bar sorting by shield priority, time left or index

1.2.8
- Fixed issue with shields sometimes not being refreshed
1.2.7
- Updated for 8.0
- Added detection of unknown shields
1.2.4
- Added new mage shields
1.2.2
- Fixes issue after profile change
1.2.0
- Updated for 7.0
1.1.4
- Updated for 6.2+
1.1.2
- Updated for 6.0.2
1.1.1
- Updated for 5.4.0
1.1.0
- Updated for 5.3.0
- Added some new shields from TTK
1.0.8-50200
- Updated for 5.2.0
1.0.8
- Updated for 5.1.0
1.0.7
- Added Brewmaster Monk's Guard shield
1.0.6
- Updated for 5.0.4
- Added many new shields
- Fix for Blood Shield
1.0.5
- Updated for 4.3
1.0.4
- Fixed shield names overlapping
- Improved shield value detection
1.0.2
- Fixed Stoneclaw Shield, Blood Shield
- Added Savage Defence, Anti-Magic Shell
1.0.1
- Fixed bar height/width setting options
Post A Reply Comment Options
Unread 05-08-13, 10:09 AM  
shadofall
A Murloc Raider
 
shadofall's Avatar

Forum posts: 9
File comments: 36
Uploads: 0
nice.

so i did 2 tot lfr's last night and didnt notice any issues seemed to work ok with soul leech for as much attention as i pay to it. usually just a glance to see if i have enough absorb up from it fr big damage or if i need to sacrifical pact for buffer :P

i appreciate the effort
Report comment to moderator  
Reply With Quote
Unread 05-07-13, 07:11 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Seems like that short fix also fixed a 2nd problem I noticed.

Previously if the same shield was applied twice (priest healing shield) Sheild Bars would only show the bar for the first shield applied and would then show the 2nd shield once the first expired. Now both shields are shown.

Here's the other shield additions I've added. (This list will grow as I test them.) I've not set the bar colors so they'll need to be adjusted for your liking.

Code:
[138668] = { name = "Frost Bulwark", duration = 10, priority = 1, tip = 1, line = 3, icon = "spell_frost_chillingarmor", r = 0.0, g = 0.7, b = 0.4 },  -- mages spell steal from mobs in ToT
[108366] = { name = "Soul Leech", duration = 15, priority = 1, tip = 1, icon = "warlock_siphonlife", r = 0.77, g = 0.12, b = 0.23 },
Added but in the untested list.
Code:
[137552] = { name = "Crystal Shell 1", duration = 60, priority = 1, tip = 1, line = 3, icon = "spell_frost_chillingarmor", r = 0.0, g = 0.7, b = 0.4 },
[137633] = { name = "Crystal Shell 2", duration = 60, priority = 1, tip = 1, line = 3, icon = "spell_frost_chillingarmor", r = 0.0, g = 0.7, b = 0.4 },
[137648] = { name = "Crystal Shell 3", duration = 60, priority = 1, tip = 1, line = 3, icon = "spell_frost_chillingarmor", r = 0.0, g = 0.7, b = 0.4 },
[138979] = { name = "Soul Barrier", duration = 20, priority = 1, school = 1, tip = 1, line = 3, icon = "spell_warlock_demonsoul", r = 0.0, g = 0.7, b = 0.4 },
[138925] = { name = "Zandalari Warding", duration = 15, priority = 1, tip = 1, line = 3, icon = "spell_fire_twilightfireward", r = 0.0, g = 0.7, b = 0.4 },
[140380] = { name = "Shield of Hydra Sputum", duration = 15, priority = 1, tip = 1, line = 5, icon = "ability_creature_poison_06", r = 0.0, g = 0.7, b = 0.4 },
[136070] = { name = "Guard", duration = 30, priority = 2, school = 126, tip = 1, line = 5, icon = "Ability_Monk_Guard", r = 0.0, g = 0.7, b = 0.4 },
Report comment to moderator  
Reply With Quote
Unread 05-07-13, 02:16 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Excellent.

A quick test is all I gave it as well so if you do find something let me know. I borrowed my wife's warlock to do this so I won't be testing this under normal playing conditions.

Hopefully the author will add this fix for the next update along with the newer shield spells (3 from trinkets, 1 warlock, 1 mob shield that mages can spell steal, etc.).

Thanks.
Report comment to moderator  
Reply With Quote
Unread 05-07-13, 01:29 PM  
shadofall
A Murloc Raider
 
shadofall's Avatar

Forum posts: 9
File comments: 36
Uploads: 0
awsome. cant wait to try it out. thanks

sweet! seems to be working on a quick test. thanks alot !
Last edited by shadofall : 05-07-13 at 01:46 PM.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 08:34 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
My raid for the evening was cancelled so I poked around and looks like I've got it working.

File ShieldBars.lua, somewhere near line 1095 you'll see code similar to this:
Code:
			elseif (data.active and data.shieldState == 2) then
				local name, rank, icon, count, debuffType, duration, expirationTime, unitCaster, isStealable, shouldConsolidate, spellId, canApplyAura, isBossDebuff, value1, value2, value3 = UnitBuff("player", data.name, data.rank);
				if (spellId == data.spellID) then
					if (value1 and type(value1) == "number" and value1 > 0 and data.current ~= value1) then
						barUpdate = true;
						data.current = value1;
					end
					if (not spellId) then
						data.shieldState = nil;
						ShieldBars:ShieldDown(data.spellID, shieldSpells[data.spellID], data.casterGUID);
					end
				end
			end
		end
You want to change this to:
Code:
			elseif (data.active and data.shieldState == 2) then
				local name, rank, icon, count, debuffType, duration, expirationTime, unitCaster, isStealable, shouldConsolidate, spellId, canApplyAura, isBossDebuff, value1, value2, value3 = UnitBuff("player", data.name, data.rank);
				if (spellId == data.spellID) then
					if (value1 and type(value1) == "number" and value1 > 0 and data.current ~= value1) then
						barUpdate = true;
						data.current = value1;
					elseif (value2 and type(value2) == "number" and value2 > 0 and data.current ~= value2) then
						barUpdate = true;
						data.current = value2;
						data.expires = expirationTime;
						data.duration = data.expires - currentTime;
					end
					if (not spellId) then
						data.shieldState = nil;
						ShieldBars:ShieldDown(data.spellID, shieldSpells[data.spellID], data.casterGUID);
					end
				end
			end
		end
The difference is the addition of:
Code:
					elseif (value2 and type(value2) == "number" and value2 > 0 and data.current ~= value2) then
						barUpdate = true;
						data.current = value2;
						data.expires = expirationTime;
						data.duration = data.expires - currentTime;
Quick tests so far shows it updates the timer and the damage absorbed. It might help some other shield buffs as well which update without triggering the combat event update but that'll have to be tested still.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 06:30 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
I took a quick look at Shield Tracker and it looks as if it re-scans every time something changes. Shield Bars only modifies what actually changes so it looks to be more efficient. Now, don't take my word on how difficult it will be to update Shield Bars. I'm not the author and am still learning how it works. The author might know a quick fix for it.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 06:15 PM  
shadofall
A Murloc Raider
 
shadofall's Avatar

Forum posts: 9
File comments: 36
Uploads: 0
Originally Posted by tiker
Ok, fix isn't going to be a quick fix.

Spells that re-apply fire an event - COMBAT_LOG_EVENT_UNFILTERED / SPELL_AURA_REFRESH which is what Shield Bars is looking for. Soul Leech does not fire this event when refreshing.

Most likely because it is not just refreshing itself, more of a applying new with new shield absorb value.

So far, none of the COMBAT_LOG_EVENT_UNFILTERED events fire other than the first time it applies as a new spell which Shield Bars does pick up.

I'll continue playing around with this to find something that works but I won't be done tonight.
sokay. might look at Shield Tracker its been a while since i used it. didnt much care for it but it does soul leech. some how :P
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 06:08 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Ok, fix isn't going to be a quick fix.

Spells that re-apply fire an event - COMBAT_LOG_EVENT_UNFILTERED / SPELL_AURA_REFRESH which is what Shield Bars is looking for. Soul Leech does not fire this event when refreshing.

Most likely because it is not just refreshing itself, more of a applying new with new shield absorb value.

So far, none of the COMBAT_LOG_EVENT_UNFILTERED events fire other than the first time it applies as a new spell which Shield Bars does pick up.

I'll continue playing around with this to find something that works but I won't be done tonight.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 04:42 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
I've determined where the problem is. The refresh of the shield does not trigger an event like it should so Shield Bars does not see it refresh. Working on a fix now.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 03:19 PM  
shadofall
A Murloc Raider
 
shadofall's Avatar

Forum posts: 9
File comments: 36
Uploads: 0
Its still not refreshing. i've tried it with out the school, or tip. tried with tip with various lines. it decreases if i get hit but doesn't increase when i do more damage.

im trying to think of any other shields that increase as you do damage and i cant think of any.. blood shield is closest i can come to it. but its 50% of your self heal amount becomes a physical damage shield

duration's meaning is confusing. since sacrificial pact has a 20 sec dur, the code has it as ten but the bar shows 20 when activated. and if i remove duration from soul leech. it still generates a 15 sec bar.

i even dismissed my pet just incase it was a pet issue since pets get the soul leech buff as well.

i actually even stripped it down to just spell id, name, icon, and the color code and got the bar to appear... with the initial value. and count down.


Originally Posted by tiker
I've added a few shield spells to the mod that don't exist but still need to test them.

For your Soul Leech spell, I've noticed a couple things.

First, "duration" is lower case, your line shows "Duration".

Second, you're missing the "tip" value which I believe should be "tip = 1".

Here's how I've added it but haven't tested yet.
[108366] = { name = "Soul Leech", duration = 15, priority = 1, school = 34, tip = 1, icon = "warlock_siphonlife", r = 0.77, g = 0.12, b = 0.23 },

A "line = .." value might be needed as well but I will test this evening if I can and will let you know.
Also the "school = 34" I think identifies a set type of magic the shield absorbs. Doesn't Soul Leech absorb all damage and not specific to a spell type? If so, the "school = 34" value should be removed.
Report comment to moderator  
Reply With Quote
Unread 05-06-13, 08:54 AM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
I've added a few shield spells to the mod that don't exist but still need to test them.

For your Soul Leech spell, I've noticed a couple things.

First, "duration" is lower case, your line shows "Duration".

Second, you're missing the "tip" value which I believe should be "tip = 1".

Here's how I've added it but haven't tested yet.
[108366] = { name = "Soul Leech", duration = 15, priority = 1, school = 34, tip = 1, icon = "warlock_siphonlife", r = 0.77, g = 0.12, b = 0.23 },

A "line = .." value might be needed as well but I will test this evening if I can and will let you know.
Also the "school = 34" I think identifies a set type of magic the shield absorbs. Doesn't Soul Leech absorb all damage and not specific to a spell type? If so, the "school = 34" value should be removed.
Last edited by tiker : 05-06-13 at 08:56 AM.
Report comment to moderator  
Reply With Quote
Unread 05-04-13, 07:24 AM  
shadofall
A Murloc Raider
 
shadofall's Avatar

Forum posts: 9
File comments: 36
Uploads: 0
Trying to get Soul Leech (Warlock Talent) to show right. i've got the bar showing up. but it doesnt refresh/update the bar when the duration/absorb amount increases. i used blood shield as a starting point. since its a somewhat dynamic shield


-- Soul Leech
[108366] = { name = "Soul Leech", school = 34, Duration = 15, priority = 1, icon = "warlock_siphonlife", r = 0.77, g = 0.12, b = 0.23 },
Report comment to moderator  
Reply With Quote
Unread 04-08-13, 03:00 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Does Shield Bars show the shield buff from the different "Inscribed Bag of Hydra-Spawn" trinkets or the "Stolen Relic of Zuldazar" trinkets?
Last edited by tiker : 04-09-13 at 11:24 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-12, 02:10 PM  
Amoriard
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
I have been looking for an addon that tracks absorbs for my tanks abilities. Really just to time the absorbs a little better. I seen this one and I wanted to try it. I just tried to install it a couple of times. I can see it in my AddOns folder unzipped, but when I log into the game, I do not see it under the addons list when I click on the addons button in the lower left of the character selection screen. Is there anything different I need to do to get this to work? I play on the US realms. I don't know if that has anything to do with it. This addon is not on curse either. If there are any suggestions that I could try to get this to work, I would like to try this addon out.
Report comment to moderator  
Reply With Quote
Unread 11-09-12, 09:55 PM  
Vodkaholic
A Kobold Labourer
 
Vodkaholic's Avatar

Forum posts: 0
File comments: 57
Uploads: 0
Great addon! now am not very good at coding but is there any reason my on texture is not working?
Cheers

Code:
local defaults = {
	profile = {
		enabled = true,
		showExample = false,
		scale = 1,
		alpha = 1,
		clickThrough = true,
		lockFrames = false,

		texture = "Interface\\AddOns\\oUF_lumen\\media\\texture_bg",
		sorting = "priority",
		height = 16,
		width = 160,
		padding = 2,
		spacing = 1,
		maxRows = 20,
		barHeight = 12,
		grow = true,
		fade = true,
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: