Download
(21Kb)
Download
Updated: 12-02-11 03:29 AM
Pictures
File Info
Updated:12-02-11 03:29 AM
Created:10-26-08 11:30 AM
Downloads:99,493
Favorites:313
MD5:

Shieldmonitor  Popular! (More than 5000 hits)

Version: 1.11.0
by: frenchie [More]

Shieldmonitor by Frenchie
German localisation by Spiritmoon
Russian localisation by Glaurung
French localisation by Iktose
Korean localisation by Metalchoir
Chinese localisations by xiezi and juha
Spanish localisation by miros

Current version: 1.11.0, 2nd December 2011 - Available from http://www.wowinterface.com/

IMPORTANT: unfortunately I no longer play as main any characters that use shields (my mage I used to test the last update is still level 70!). So I'm not it a position to make updates or test for most gameplay changes. If someone else wants to pick up development on this addon, I'm happy to help out with any explanation of the code as needed.

Note: Due to time constraints development on this mod by me is now in maintenance mode, if anyone else wishes to pick it up to update it or add new features, please feel free.

Changelog
=========

1.11.0 - Updated for Wow 4.3 combatlog API
- removed right-click menu since is causes taint - use /sm options to change any options now
1.10.0 - Updated for Wow 4.2 combatlog API - no other changes
1.9.0 - Updated for Wow 4.1 API - no other changes
1.8.2 - Where shield strength is read from the tooltip this is now used as the final value as this should now already include spell/glyph bonuses. As a result we now check the tooltip every time a shield is cast rather than caching the value, since spellpower could have changed.
1.8.1 - Fix to shields where Blizz now sends the strength going back to 100% after damage - since they also now send a SPELL_AURA_REFRESH with a new strength each time such a shield takes damage.
- added French translation for Mage Ward (Thanks Mizaru)
- added Paladin's Guarded by the Light shield (Thanks Tatltael). Note I don't have a Paladin to test this on, so it's up to you guys
1.8.0 - Since Blizz have been kind enough to include the shield strength in the combat log for Priest shields, this version now reads that value
- other classes shield strength is still determined using tooltips so a fix is also included in case the user has beginner tooltips switched on
- support for Mage Shield in the Russian client added (thanks Khom), other translations still needed.

1.7.3 - more fixes to talent detection that were causing error messages
1.7.2 - added Mage Shield, works for English client only at the moment (thanks to grimmier)
- fix for PW:S bug as a result of talent tree changes
1.7.1 - fix for mouse button click handler
1.7.0 - Compatibility fix for WoW 4.0.1 - IMPORTANT NOTE - this is a fix for small changes in the WoW API ONLY - It does not address any changes in shield mechanics or any problems that may have been caused by tooltip changes.
1.6.1 - Small fix to Russian locale for Power word: shield
1.6.0 - ToC updated for WoW 3.3, cap of 10k added on Divine Aegis shield

(for changes in older versions, see the 'Change Log' tab)

Description
===========
Since Patch 3.0, the combat log has shown exact figures for damage absorbed by shields such as 'Power Word: Shield'. Shieldmonitor is a lightweight addon that takes advantage of that fact to provide feedback on precisely how much more damage a shield can sustain before it fails. It does this by means of a small window that shows a bar with the percentage and damage absorption of the shield remaining as well as the time the shield buff has left.

Usage
=====
This addon is pretty much install and go. There will be nothing to see until a shield is cast on you (by yourself or someone else). At that point the status window appears, initially in the centre of the screen. Left-click and drag the window to where you'd like it to be. Right click on the window to pop-up a menu with options 'Lock Window' and 'disable' and 'Options'. If you disable Shieldmonitor via the menu, then you either have to use the slash command /shieldmonitor enable or the options screen to re-enable it. Note that Shieldmonitor's window disappears as soon as the shield is exhausted, dispelled or the shield buff times out.

Shields currently monitored are:

Priest - Power Word: Shield, Divine Aegis
Mage - Ice Barrier, Mana Shield, Mage Ward
Paladin - Sacred Shield, Guarded by the Light
Warlock - Voidwalker Sacrifice, Shadow Ward
Herbalists - Fel Blossom (note this provides a shield that has a min and max damage absorption. For the purposes of monitoring, the most optimistic value is taken, however Shieldmonitor will close its window as soon as the shield fails.)

Limitations
===========
The maximum value of a Power Word: Shield or Divine Aegis cast on you by another player will probably be inaccurate, since the shield will benefit from the casting player's spell bonus and talents and this is not available via the API, only your own spell bonus/talents. (that is unless someone can point me to a way to find it out - GetSpellBonusDamage is self only).

There are no configuration options for the style of the window other than the scaling. If you don't like it, feel free to play around with the xml file, everything that controls its appearance is in there.

Localisation
============
The addon will work for the English, German, French, Spanish, Korean, Chinese (zhCH and zhTW) and Russian clients at present. If any player from a non-supported locale wants to help, then you can see what needs to be done by looking at the already added German (deDE) locale block in the lua file. Only the spellnames and the TIPREAD entries are essential for making the addon work, other texts are just for completeness.

Noted suggestions (which may or may not make it into a future version!)
==============
- Add a sound alert to the warnings (possible, perhaps)
- Add option to customise bar textures (possible, low priority for now)
- Add option to adjust bar length (possible, low priority for now)
- make addon communicate between people in groups/raids who are all using shieldmonitor in order to make the level of PW:S casted on you by someone else accurate (possible, being researched, testing issues though, i.e. requires group!)
Note: It's likely to be a while now before I dovote a lot more time to Shieldmonitor as, like everyone else I suspect, I'm now busy levelling my main characters to 80

Bugs
====
Due to the complexity of testing various shield combinations at the same time, the priority of the shields with respect to each other might not yet be correct. Any testing info always welcome!

1.5.0 - Updated for WoW 3.2 - localisation patches incorporated
1.4.6 - Paladin sacred shield added into Korean locale, fix to different duration on sacred shield depending on talents (Thanks Metalchoir).
1.4.5 - Fix to voidwalker shield
1.4.4 - Changed the way talents / glyphs are checked since the Blizz functions do not return the right info immediately after zoning into an instance/bg. Checks are now done the first time you cast any shield spell in any particular instance.
1.4.3 - Urgent fix to problem that could cause Shieldmonitor to hang the UI under certain conditions
1.4.2 - Spanish localisation added
- attempts to clear existing buffs on entering arena
- fixed bug where tooltips are different during the preparation phase of arena/bg (mana line is not shown) therefore were not being read correctly.
1.4.1 - A few small fixes to Ice Barrier. Now checking for correct glyph id, glyph bonus calculation changed, French tooltip pattern updated.
1.4.0 - Added paladin Sacred Shield spell. I've been able to localise the spell name for the German, French and Russian clients thanks to Wowhead but other localisations still need transalation. The priority of this shield with regard to other shields still needs checking.
- Added code to (hopefully) handle stacking of Divine Aegis shields.
- Fixed Divine Aegis spelling for German client.
1.3.0 - Updated for WoW version 3.1
- version numbering changed to format <major>.<minor>.<release>, changes to the <release> number will mean that there are only bug fixes/localisation updates. Feature changes will be reflected in a change to the <major> or <minor> number
- priest talent checks updated to reflect the revised trees
- check for Mage Glyph of Ice Barrier added.
- also includes a small non-shield related function for hunters to announce their misdirect. Why? I have a hunter and wanted this and as it only took a few lines I couldn't be bothered to write a complete new addon. By default the feature is switched off. Activate it with the command
/sm mdchannel <channel> where <channel> is any valid chat channel such as SAY, PARTY, RAID, etc then you will get an announcement in that channel whenever you successfully cast a misdirect. use OFF to turn off the feature again.
1.20 - Small fix to zhTW locale
1.19 - Chinese (zhCN and zhTW) locales added, thanks to xiezi and juha
1.18 - Korean localisation added thanks to Metalchoir.
- Warlock shield spell Shadow Ward is now monitored, thanks to Metalchoir for pointing that spell out.
1.17 - French localisation added thanks to Iktose. Still nothing new for anyone already running 1.14 (and will be a while for anything new, as now playing WotLK :) )
1.16 - Russian localisation added thanks to Glaurung. Again, nothing new for anyone already running 1.14
1.15 - German localisation added thanks to Spiritmoon. No new features so people already running 1.14 do not need to download.1.14 - Small fix to trap bad arguments to the slash commands
1.13 - Added options to warn you when the shield goes below a specified time or percent left (initial warning defaults are 3sec and 20%). The corresponding text element will flash as will (optionally) the frame border. These new options and the existing options can be configured through the Blizzard Interface options screen, where Shieldmonitor now has its own panel. You can directly access this panel via /shieldmonitor options, or the right-click menu new item 'Options'.
- added /sm as a shortcut for /shieldmonitor

1.12 - Divine Aegis is now monitored.
- Talents affecting the maximum value of PW:S are now taken into account. However note that with both Divine Aegis and PW:S the maximum value is unlikely to be accurate if cast on you by another player. This is because my addon doesn't have access to the other player's talents and spellpower through the API.
- A few slash commands have been implemented
/shieldmonitor scale <num> (where <num is between 0.3 and 3) scales the shieldmonitor window. This setting is saved per character. Using a value of 1 will reset the window to the design size.
/shieldmonitor disable - disables shieldmonitor for the remainder of the current session, or until re-enabled or a reloadui is performed. The disable function is also available via the right-click menu.
/shieldmonitor enable - re-enables shieldmonitor if disabled.

1.10 - Now handles multiple shields up at once. The status bar always shows the 'outermost' shield (i.e. the one first in line to take damage). If this shield is removed and another one is still active the bar will change to show that. Similarly if a shield with a higher priority is cast the bar again changes to show the new shield. This means that the status bar is almost always showing the shield that is taking damage. The only exception to this is if a mage has both an elemental (fire/frost ward) up and mana shield, and takes damage that cannot be absorbed by the elemental shield. In this case the mana shield will take the damage, but the status bar will continue to show the elemental shield. Internally the addon will keep track of the level of the mana shield and it will be displayed at the correct level if the elemental shield is lost. This version also introduces a small icon on the left of the status window to indicate which shield is being displayed, as well as using different coloured status bars for the different shields.

1.05 - Now correctly detects environmental damage absorbed by a shield. Also most shields get a benefit from the player's current spell bonus. This isn't shown in the tooltip and therefore the addon was previously showing a too low value for these shields. As far as I can tell the extra to these shields is 80.5% of the appropriate spell bonus (holy,fire, frost etc). 80.5% seems a bit of a strange number and may not be quite accurate, but it's the best I could come up with testing on my poorly geared mage and priest.

1.04 - Initial public release
Optional Files (0)


Post A Reply Comment Options
Unread 10-26-10, 05:13 PM  
Gizim
A Defias Bandit

Forum posts: 2
File comments: 37
Uploads: 0
Yes if you could add a way to monitor the Guarded by the Light shield that would be amazing.

http://www.wowhead.com/spell=85646
Report comment to moderator  
Reply With Quote
Unread 10-26-10, 05:08 AM  
KurenaiXIII
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Originally posted by frenchie
The addon already monitors multiple shields, as long as it has details of the relevant spells. However the display only shows the state of what it sees as the 'outermost' shield, that is the one that is currently absorbing damage, since, in general only one shield at a time can be soaking up hits. Magic wards (Mage Ward and Shadow Ward) are special cases in that they only absorb certain types of damage, so if you also have a lower priority shield on you, some damage could pass through and hit that shield. The addon does its best to attribute the damage to the right shield in these cases.

I have no plans (or free time!) to change the way the addon works in this respect.

It's quite possible that the shield priority is not correct in all cases since it's quite complex to test all the different combinations.

Currently Word of Glory is not one of the shields monitored by the addon, but PW:S is.
I see. Thanks for the reply.
Report comment to moderator  
Reply With Quote
Unread 10-26-10, 12:36 AM  
Kinoko
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Minor Issue

It shows the appropriate number value for the shield, but every time I get hit, the percentage (number and bar graphic) drops, then immediately jumps back up to 100% It makes it a little confusing when glancing at it. Any ideas what might be causing this?
Report comment to moderator  
Reply With Quote
Unread 10-25-10, 08:05 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Originally posted by KurenaiXIII
Hi Frenchie, love the addon--very very useful!

Are there any plans to allow ShieldMonitor to monitor more than one shield at a time? Say if I have Mage Ward and Ice Barrier up at the same time, for whatever reason, or if I have a Word of Glory overheal and a priest tosses PW:S on me.
The addon already monitors multiple shields, as long as it has details of the relevant spells. However the display only shows the state of what it sees as the 'outermost' shield, that is the one that is currently absorbing damage, since, in general only one shield at a time can be soaking up hits. Magic wards (Mage Ward and Shadow Ward) are special cases in that they only absorb certain types of damage, so if you also have a lower priority shield on you, some damage could pass through and hit that shield. The addon does its best to attribute the damage to the right shield in these cases.

I have no plans (or free time!) to change the way the addon works in this respect.

It's quite possible that the shield priority is not correct in all cases since it's quite complex to test all the different combinations.

Currently Word of Glory is not one of the shields monitored by the addon, but PW:S is.
Report comment to moderator  
Reply With Quote
Unread 10-24-10, 05:23 PM  
KurenaiXIII
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Hi Frenchie, love the addon--very very useful!

Are there any plans to allow ShieldMonitor to monitor more than one shield at a time? Say if I have Mage Ward and Ice Barrier up at the same time, for whatever reason, or if I have a Word of Glory overheal and a priest tosses PW:S on me.
Report comment to moderator  
Reply With Quote
Unread 10-23-10, 05:38 PM  
Tatltael
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Re: Re: Newer absorb spells

Originally posted by frenchie
Hi Tatitael,

It depends how Blizz show the information in the combat log.

If they send the 'SPELL_AURA_APPLIED' log entry (and particularly if they send the strength of the shield in that event) then it is as simple as adding the spell info to the table of spells that the addon knows about. The only complication beyond that is what priority the shield has for taking damage when there are multiple shields on a character.

However Blizz don't always implement a shield like that (for example the Shammy shield from a totem doesn't send a log entry at all when it goes up). If that's the case then a whole new chunk of code would have to be written and is beyond the scope of the changes I have time to make to the addon, though someone else might be prepared to do it.
The Word of Glory overheal talent shows something in the combat log of how strong the shield will be since it's as simple as calculating the overheal, if I understand it correctly.
The trinket, if I'm not mistaken, doesn't take any affects from stats, so its a flat 6400 absorb (whatever the # is).
The shammy glyph where your stoneclaw totem grants an absorb shield to you is 4x the amount it grants your other totems. I'm not sure if it scales with stats either, but that amount would come to 4340 I think.
As for the DK blood talent, it calculates the amount of damage over the last 5 seconds, then heals you for 30% of it, at a minimum of 10% of your health. Probably a bit more complicated. I'll have to check the combat log next time I use that character.
Last edited by Tatltael : 10-23-10 at 05:39 PM.
Report comment to moderator  
Reply With Quote
Unread 10-20-10, 02:51 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Re: Newer absorb spells

Originally posted by Tatltael
I wonder if anyone would be able to figure out how to add in the newer absorb spells to this addon?
Hi Tatitael,

It depends how Blizz show the information in the combat log.

If they send the 'SPELL_AURA_APPLIED' log entry (and particularly if they send the strength of the shield in that event) then it is as simple as adding the spell info to the table of spells that the addon knows about. The only complication beyond that is what priority the shield has for taking damage when there are multiple shields on a character.

However Blizz don't always implement a shield like that (for example the Shammy shield from a totem doesn't send a log entry at all when it goes up). If that's the case then a whole new chunk of code would have to be written and is beyond the scope of the changes I have time to make to the addon, though someone else might be prepared to do it.
Report comment to moderator  
Reply With Quote
Unread 10-19-10, 07:03 PM  
Tatltael
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Newer absorb spells

I wonder if anyone would be able to figure out how to add in the newer absorb spells to this addon? There are new ones from talents such as the Word of Glory prot talent for pallies that gives absorb to overheals from that spell, and DK absorb shields from death strike in the blood tree. Also, the Corroded Skeleton Key would be another good one. If someone helps me figure out how to do that I may be able to help upload it, etc. Never really tampered with WoW addons before.
Report comment to moderator  
Reply With Quote
Unread 10-19-10, 02:49 PM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Hehe , no worries, I've made similar mistakes myself before now.

I appreciate people taking the time to test and report errors.
Report comment to moderator  
Reply With Quote
Unread 10-19-10, 02:34 PM  
zasy99
A Kobold Labourer

Forum posts: 0
File comments: 17
Uploads: 0
Originally posted by frenchie
Thanks zasy99,

however the errors you've posted say that you are running 1.7.3?

I've doublechecked that I did upate the version number for the release, so could you please try re-installing your copy?
Right you are, gosh, I feel retarded now, especially because the version number are right there, I deleted the post as it makes no sense having such a long and invalid error report

I play WoW on my laptop and home PC and use a sync program to sync all files so I keep my game data, addons and settings the same (as I have like 80 addons). It seems that's what failed this time.

Just tried with 1.8.0 casting a few shields and proccing Divine Aegis, no issue thus far, will try in a 5man later.

Thanks for the update!
Report comment to moderator  
Reply With Quote
Unread 10-19-10, 01:46 PM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Thanks zasy99,

however the errors you've posted say that you are running 1.7.3?

I've doublechecked that I did upate the version number for the release, so could you please try re-installing your copy?
Report comment to moderator  
Reply With Quote
Unread 10-18-10, 04:20 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Originally posted by Zhiva
Maybe you could take this information from combat log?
Ah excellent, Blizz added it to the combat log too. That's much the easiest way to grab the number. Now if only they could be persuaded to do it for other shields besides the priest ones.

I expect this info was added because Disc priests kept complaining that all their shield healing didn't show up on the meters!
Report comment to moderator  
Reply With Quote
Unread 10-18-10, 01:09 AM  
Zhiva
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 30
Uploads: 1
Originally posted by frenchie
Bah.. it seems it's only Power Word:Shield that have the amount it will absorb in the buff tooltip. Still I suppose something is better than nothing.
Maybe you could take this information from combat log?
Report comment to moderator  
Reply With Quote
Unread 10-17-10, 11:16 AM  
zasy99
A Kobold Labourer

Forum posts: 0
File comments: 17
Uploads: 0
Both my Power Word: Shield and Divine Aegis show a "buff" and tooltip info indicates amount that can be absorbed.
E.g. as I am writing this:

Tooltip Info:

Power Word: Shield Magic
Absobrs 6581 damage.
30 seconds remaining

Divine Aegis Magic
Absorbs 4549 damage.
12 seconds remaining

Here's my debug:
______________________________________________________________
Shieldmonitor debug true
SHIELDMONITOR DEBUG: aura from spell 17
SHIELDMONITOR DEBUG: reported glyph slots: 9
SHIELDMONITOR DEBUG: got glyph: 0(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 0(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 1(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 1(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 2(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 2(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 0(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 1(enabled: 1)
SHIELDMONITOR DEBUG: got glyph: 2(enabled: 1)
SHIELDMONITOR DEBUG: talent 1 name Twin Disciplines rank 3
SHIELDMONITOR DEBUG: talent boost 1 is 0.03
SHIELDMONITOR DEBUG: talent 2 name Improved Power Word: Shield rank 2
SHIELDMONITOR DEBUG: talent boost 2 is 0.1
SHIELDMONITOR DEBUG: talent 3 name Divine Aegis rank 3
SHIELDMONITOR DEBUG: talent boost 3 is 0.3
SHIELDMONITOR DEBUG: tiplines 4
SHIELDMONITOR DEBUG: line: Create a magical shield around you or a friend, preventing damage taken.
Power Word: Shield is good to use before battle, as it also reduces the chance that enemies melee attacks will slow your spell cast.
SHIELDMONITOR DEBUG: dmgab nil
SHIELDMONITOR DEBUG: aura expires 11195.715 duration 30
SHIELDMONITOR DEBUG: aura from spell 47753
SHIELDMONITOR DEBUG: aura expires 11188.514 duration 12
_______________________________________________________________
Could it be Divine Aegis is spell "47753" ?
Last edited by zasy99 : 10-17-10 at 11:17 AM.
Report comment to moderator  
Reply With Quote
Unread 10-17-10, 10:03 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Bah.. it seems it's only Power Word:Shield that have the amount it will absorb in the buff tooltip. Still I suppose something is better than nothing.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: