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,479
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 11-05-08, 04:29 PM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
I think those are pretty much the formulas I'm using now although from my testing the 0.808 modifier (approx, I am currently using 0.805) needs to be applied to GetSpellBonusHealing irrespective of talents. Oh wait, you're doing that, I just read your formulas a bit wrong.

Anyway, in my tests I've been getting a max value for PW:S within a point or two of the actual maximum absorbed in the combat log. This testing was done on a level 80 premade priest in the beta, with a selection of different talents. However since the beta has now closed, I've lost this test character, so the only priest I've got now is a lowly level 33 (the original inspiration for the mod!)

If the addon is showing wildly inaccurate values for a self-cast PW:S for anyone then please let me know, giving details of talents etc.
Last edited by frenchie : 11-05-08 at 04:34 PM.
Report comment to moderator  
Reply With Quote
Unread 11-05-08, 02:41 PM  
Julith
A Deviate Faerie Dragon
 
Julith's Avatar
AddOn Author - Click to view AddOns

Forum posts: 11
File comments: 34
Uploads: 8
I did some own testing on the correct formular for the amount of the PW:Shield and came up to the following:

totalAmount = (baseAmount + healBonus * (0.808 + talentBrwdTime) * talentImprShield) * talentTwinDisc

whit

baseAmount = parsed amount from spellbook (which is the already by improved shield increased amount)
healBonus = the amount retuned by GetSpellBonusHealing()
talentBrwdTime = points-in-this-talent * 0.08
talentImprShield = 1 + points-in-this-talent * 0.05 (impr. shield affects base amount+healBonus, but since the amount read from the spellbook is already increased we only need to apply it to the healBonus
talentTwinDisc = 1 + points-in-this-talent * 0.01

Maybe you can use it.
Last edited by Julith : 11-05-08 at 02:41 PM.
Report comment to moderator  
Reply With Quote
Unread 11-04-08, 05:21 PM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
In order to get the maximum hp for a shield my addon reads the spell tooltip. Thus it needs a localised string for the pattern matching. Since that part of the addon needs localisation, I also match on the spell name in the combat log rather than the spellid, as that covers all ranks automatically.
Report comment to moderator  
Reply With Quote
Unread 11-04-08, 01:41 PM  
Mars85
A Deviate Faerie Dragon
AddOn Author - Click to view AddOns

Forum posts: 15
File comments: 65
Uploads: 1
Why do you use localization for compatibility? AFAIK when using Spell-IDs, it would work on all client languages without localization.
Report comment to moderator  
Reply With Quote
Unread 11-03-08, 11:48 AM  
firegrove
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
ShieldLeft - the original Shield Monitor

frenchie,

I am the third in a line of developers for ShieldLeft which is an addon that is similar to yours. I have not had a chance to check out your addon, but it looks to have the same general idea as my addon (looks to actually cover more shields). I also noticed that you are looking to setup a way for individuals to configure the look of the bar. Here's my proposal: I am unable to dedicate the time to my addon recently due to other obligations, so I just thought you might want to look at the code I used to set up the configuration part of the bar and see if you can adapt it easily to work with yours. You can find ShieldLeft on WoWUI or at my GoogleCode site:

http://code.google.com/p/fireaddons/
http://wowui.worldofwar.net/?p=mod&m=6421

ShieldLeft works with 3.0.2, but does not report the actual damage absorbed (since I haven't had a chance to update it since the patch release) - it still uses averages from stored damage. One day, I would like to update it, but I have no idea when that will be. If you can get yours to incorporate the configuration menu of mine and have the capabilities of what you want, I might not update it at all. Let me know if you have any questions and I'll help as much as I can.

Originally posted by frenchie
I have to be honest and say that playing around with the look isn't really my thing. I'm more interested in getting the data side of things accurate, and making sure the addon runs efficiently. For instance, showing the correct max value for a PW:S when it's cast be someone else on you. By the way, I've now realised that the way to do that, at least for people that regularly play together, is to have both players running Shieldmonitor and have the addon send/receive data via the addon channel about the other player's talents and spell bonus. Whether I actually get around to implementing that, probably depends on if enough people want it.

That said, I do appreciate that different styles of presentation appeal to different people, so I will consider adding some more customisable options. In the meantime if anyone wants to contribute alternative styles, either as a mockup or by hacking the existing code, they are more than welcome.
Report comment to moderator  
Reply With Quote
Unread 11-03-08, 11:48 AM  
Eliasar
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Originally posted by frenchie
That said, I do appreciate that different styles of presentation appeal to different people, so I will consider adding some more customisable options. In the meantime if anyone wants to contribute alternative styles, either as a mockup or by hacking the existing code, they are more than welcome.
I probably will then :-)
Report comment to moderator  
Reply With Quote
Unread 11-03-08, 10:22 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
I have to be honest and say that playing around with the look isn't really my thing. I'm more interested in getting the data side of things accurate, and making sure the addon runs efficiently. For instance, showing the correct max value for a PW:S when it's cast be someone else on you. By the way, I've now realised that the way to do that, at least for people that regularly play together, is to have both players running Shieldmonitor and have the addon send/receive data via the addon channel about the other player's talents and spell bonus. Whether I actually get around to implementing that, probably depends on if enough people want it.

That said, I do appreciate that different styles of presentation appeal to different people, so I will consider adding some more customisable options. In the meantime if anyone wants to contribute alternative styles, either as a mockup or by hacking the existing code, they are more than welcome.
Report comment to moderator  
Reply With Quote
Unread 11-01-08, 06:54 PM  
Eliasar
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Timer

Do you think you could make the timer a bar rather than text to the left? I'm much more of a visual person only glancing at this bar from time to time. I had actually started a mod for this exact purpose, only to find yours when I was near completion. If you need any help with upkeep, I'd be more than happy to oblige.

Also, I would suggest putting in "/sm" as a slash command as well. Under where you have the SlashCmdList line, you can put
Code:
SLASH_SHIELDMONITOR1 = "/sm";
This will allow us to not have to type out "/shieldmonitor" and then the rest of the command. We'll only have to type "/sm"

Also, I have a mage and herbalist if you needed any testing done. Leywor on Detheroc
Last edited by Eliasar : 11-01-08 at 07:08 PM.
Report comment to moderator  
Reply With Quote
Unread 10-31-08, 03:09 PM  
affix
A Kobold Labourer

Forum posts: 0
File comments: 103
Uploads: 0
Thanks for the scaling feature. This addon has proved to be very useful in arenas, it flat out won me a match last night.
Report comment to moderator  
Reply With Quote
Unread 10-30-08, 11:46 AM  
JMHammer
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 309
Uploads: 1
Great addon! Thanks for creating it.

In which file is the saved location of the shieldmonitor frame? It seems to be saved on a per-character basis. The data doesn't seem to be saved in layout-cache.txt or shieldmonitor.lua.

I'm asking because I would like to copy the location preference to each of my other characters, rather than waiting for a shield to be cast on them one of these days and then having to quickly adjust the location of the shieldmonitor frame while in combat.

Thanks again!
Originally posted by frenchie
Since Patch 3.0 Blizz's per-character layout file is now called layout-local.txt, that is of course in <wowdir>\WTF\Account\<your account>\<realm>\<character>\ directory. That is where you will find the shieldmonitor entry.
Thank you for the VERY QUICK response!
Last edited by JMHammer : 10-31-08 at 09:47 AM.
Report comment to moderator  
Reply With Quote
Unread 10-30-08, 11:28 AM  
frenchie
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 77
Uploads: 1
Originally posted by JMHammer

In which file is the saved location of the shieldmonitor frame? It seems to be saved on a per-character basis. The data doesn't seem to be saved in layout-cache.txt or shieldmonitor.lua.
Since Patch 3.0 Blizz's per-character layout file is now called layout-local.txt, that is of course in <wowdir>\WTF\Account\<your account>\<realm>\<character>\ directory. That is where you will find the shieldmonitor entry.
Report comment to moderator  
Reply With Quote
Unread 10-30-08, 10:58 AM  
JMHammer
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 309
Uploads: 1
Great addon! Thanks for creating it.

In which file is the saved location of the shieldmonitor frame? It seems to be saved on a per-character basis. The data doesn't seem to be saved in layout-cache.txt or shieldmonitor.lua.

I'm asking because I would like to copy the location preference to each of my other characters, rather than waiting for a shield to be cast on them one of these days and then having to quickly adjust the location of the shieldmonitor frame while in combat.

Thanks again!
Report comment to moderator  
Reply With Quote
Unread 10-29-08, 06:46 PM  
niennasill
A Defias Bandit

Forum posts: 3
File comments: 13
Uploads: 0
good addon... so its in my favorite list atm.. but scaling and skinning ( with SharedMedia ) options would be nice... yea i know I'm a control freak on my ui's looking...
Last edited by niennasill : 10-29-08 at 06:47 PM.
Report comment to moderator  
Reply With Quote
Unread 10-29-08, 01:39 PM  
affix
A Kobold Labourer

Forum posts: 0
File comments: 103
Uploads: 0
Working absolutely perfectly so far, thank you *SO* much for expanding this addon the way you did, I really do appreciate the work.

Only other thing I can think of that would be useful would be scaling (width/height/total size settings). It is pretty small by default.
Report comment to moderator  
Reply With Quote
Unread 10-29-08, 12:04 PM  
0Blackmage0
A Chromatic Dragonspawn
 
0Blackmage0's Avatar
AddOn Author - Click to view AddOns

Forum posts: 192
File comments: 18
Uploads: 5
I have a Herbalist Warlock, once im home i will look into what sheild comes first and post it here or send you a PM
__________________


Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: