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,755
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-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, 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, 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: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, 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-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-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, 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-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 06-21-13, 09:09 AM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Looks like Palidans might be getting another shield through a talent for themselves (or give to others with Becon of Light).

This just hit the PTR - spellid 145760 (talent) grants spellid 145766 (shield).

Just something to watch for now and possibly add to ShieldBars if it goes live.
__________________
XMPP: [email protected]
ActivityPub (Mastodon / Pleroma): @[email protected]
Report comment to moderator  
Reply With Quote
Unread 09-10-13, 03:18 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Well, the Pali stuff I posted previously is gone so you can ignore that.

I did add a shield though from a trinket on an alt...

http://www.wowhead.com/spell=31771
__________________
XMPP: [email protected]
ActivityPub (Mastodon / Pleroma): @[email protected]
Report comment to moderator  
Reply With Quote
Unread 10-16-13, 08:10 AM  
glonglon
A Kobold Labourer

Forum posts: 0
File comments: 42
Uploads: 0
Great addon, thanks man, can't play without it !
Report comment to moderator  
Reply With Quote
Unread 10-19-14, 03:59 PM  
GeneralWurst
A Defias Bandit

Forum posts: 2
File comments: 96
Uploads: 0
error with newest patch:

Date: 2014-10-19 14:47:53
ID: -1
Error occured in: Global
Count: 53
Message: ..\AddOns\ShieldBars\ShieldBars.lua line 1036:
attempt to compare number with nil
Debug:
ShieldBars\ShieldBars.lua:1036: ShieldDamage()
ShieldBars\ShieldBars.lua:1068: ?()
...vUI\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147:
...vUI\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147
[string "safecall Dispatcher[19]"]:4:
[string "safecall Dispatcher[19]"]:4
[C]: ?
[string "safecall Dispatcher[19]"]:13: ?()
...vUI\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: Fire()
...face\AddOns\ElvUI\libs\AceEvent-3.0\AceEvent-3.0.lua:120:
...face\AddOns\ElvUI\libs\AceEvent-3.0\AceEvent-3.0.lua:119
Report comment to moderator  
Reply With Quote
Unread 10-23-14, 08:02 AM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Hopefully Voyager will post an update here soon to fix this.

If not, I'll take a look at this once I'm done fixing up the mods I'm responsible for.
__________________
XMPP: [email protected]
ActivityPub (Mastodon / Pleroma): @[email protected]
Report comment to moderator  
Reply With Quote
Unread 01-05-15, 07:56 PM  
tiker
A Deviate Faerie Dragon
 
tiker's Avatar
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 129
Uploads: 1
Just an FYI, Shieldbars doesn't recognize the shield from Shieldtronic Shield

I've added it to mine for now.
__________________
XMPP: [email protected]
ActivityPub (Mastodon / Pleroma): @[email protected]
Last edited by tiker : 01-05-15 at 08:00 PM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: