Go to Page... |
Updated: | 12-02-11 03:29 AM |
Created: | 10-26-08 11:30 AM |
Downloads: | 99,700 |
Favorites: | 313 |
MD5: |
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!
Comment Options |
frenchie |
View Public Profile |
Send a private message to frenchie |
Find More Posts by frenchie |
Add frenchie to Your Buddy List |
Zhiva |
View Public Profile |
Send a private message to Zhiva |
Visit Zhiva's homepage! |
Find More Posts by Zhiva |
Add Zhiva to Your Buddy List |
frenchie |
View Public Profile |
Send a private message to frenchie |
Visit frenchie's homepage! |
Find More Posts by frenchie |
Add frenchie to Your Buddy List |
zasy99 |
View Public Profile |
Send a private message to zasy99 |
Visit zasy99's homepage! |
Find More Posts by zasy99 |
Add zasy99 to Your Buddy List |
frenchie |
View Public Profile |
Send a private message to frenchie |
Visit frenchie's homepage! |
Find More Posts by frenchie |
Add frenchie to Your Buddy List |
H0PE |
View Public Profile |
Send a private message to H0PE |
Visit H0PE's homepage! |
Find More Posts by H0PE |
Add H0PE to Your Buddy List |
Bockscar |
View Public Profile |
Send a private message to Bockscar |
Visit Bockscar's homepage! |
Find More Posts by Bockscar |
Add Bockscar to Your Buddy List |
10-16-10, 05:51 AM | |
|
Ok, just uploaded 1.7.3 which hopefully will get rid of most if not all LUA error messages
If you do get an error, the info which people have posted from things like Buggrabber is very helpful. Also you can help by switching on Shieldmonitor's own debug messages by typing '/sm dbg' (it's a toggle, typing it again switches off the debug messages). The message that gives the spellid of the aura being applied is usually the most useful in tracking down errors. Of course, getting rid of LUA error messages is only part of a major patch update. The other thing which I haven't done anything for yet is making sure that the maximum value of a shield is correct. It used to be that the shield value displayed by the tooltip was only half the story as this was then modified by a characters spellpower (and possibly talents and glyphs). So research needs to be done to see if this is still the case and if things have changed then workout what numbers need altering. For example currently the base value from the tooltip for most shields is boosted by adding spellpower*0.8067 (for now the new Mage Shield is just using the tooltip value). The other big headache is what happens when a character has multiple shields on them. The Blizz combat log messages do not identify which shield has absorbed the damage so the addon has to work this out for itself. Is the priority still correct? Where does the new shield fit into the hierarchy? The final issue is shields being cast on your character by other characters. If the shield value is still modified by spellpower then the maximum value will be a guess, since we don't know the other characters spellpower (without having addon communcation, which this addon currently doesn't do). |
|
frenchie |
View Public Profile |
Send a private message to frenchie |
Visit frenchie's homepage! |
Find More Posts by frenchie |
Add frenchie to Your Buddy List |
10-16-10, 03:47 AM | |
A Kobold Labourer
Forum posts: 0
File comments: 9
Uploads: 0
|
Hm, actually the addon works fine after I deleted all my past settings and reinstalled it. Cheers, not a single bug.
|
|
etnoxic |
View Public Profile |
Send a private message to etnoxic |
Visit etnoxic's homepage! |
Find More Posts by etnoxic |
Add etnoxic to Your Buddy List |
10-15-10, 09:05 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 2
Uploads: 0
|
Addon error
Here's the error I got while in EotS today. Btw thank you for updating this addon. Important part of mage pvp imo.
Date: 2010-10-15 21:30:28 ID: 1 Error occured in: Global Count: 1 Message: ..\AddOns\shieldmonitor\shieldmonitor.lua line 816: attempt to perform arithmetic on field '?' (a nil value) Debug: (tail call): ? [C]: ? shieldmonitor\shieldmonitor.lua:816: shieldmonitor_shieldup() shieldmonitor\shieldmonitor.lua:972: shieldmonitor_onevent() [string "*:OnEvent"]:1: [string "*:OnEvent"]:1 AddOns: Swatter, v3.1.15 (<%codename%>) ArkInventory, v3.02 ArkInventoryRules, v AtlasLoot, vv5.11.05 AtlasLootFu, vv5.11.05 AucAdvanced, v5.9.4938 (WhackyWallaby) AucFilterBasic, v5.9.4938 (WhackyWallaby) AucFilterOutlier, v5.9.4938.2531 AucMatchUndercut, v5.9.4938.2531 AucScanData, v5.9.4938 (WhackyWallaby) AucStatHistogram, v5.9.4938 (WhackyWallaby) AucStatiLevel, v5.9.4938 (WhackyWallaby) AucStatPurchased, v5.9.4938 (WhackyWallaby) AucStatSales, v5.9.4938.2842 AucStatSimple, v5.9.4938 (WhackyWallaby) AucStatStdDev, v5.9.4938 (WhackyWallaby) AucStatWOWEcon, v5.9.4938.2530 AucUtilAHWindowControl, v5.9.4938.3311 AucUtilAppraiser, v5.9.4938.2530 AucUtilAskPrice, v5.9.4938.3175 AucUtilAutoMagic, v5.9.4938.3142 AucUtilCompactUI, v5.9.4938.2530 AucUtilEasyBuyout, v5.9.4938.3583 AucUtilGlypher, v5.9.4938.2545 AucUtilItemSuggest, v5.9.4938.3108 AucUtilPriceLevel, v5.9.4938.2545 AucUtilScanButton, v5.9.4938.2530 AucUtilScanFinish, v5.9.4938.2530 AucUtilScanProgress, v5.9.4938.2530 AucUtilScanStart, v5.9.4938.4819 AucUtilSearchUI, v5.9.4938.3655 AucUtilSimpleAuction, v5.9.4938.4546 AucUtilVendMarkup, v5.9.4938.2530 Babylonian, v5.1.DEV.130 BeanCounter, v5.9.4938 (WhackyWallaby) Configator, v5.1.DEV.282 DBMCore, v DBMPvP, v DebugLib, v5.1.DEV.275 Decursive, v2.5.2.1 Dominos, v1.19.4 DominosCast, v DominosRoll, v DominosTotems, v DominosXP, v Gatherer, v3.1.15 Informant, v5.9.4938 (WhackyWallaby) Mapster, v1.3.10 OmniCC, v3.1.4 Recount, v shieldmonitor, v1.7.2 SlideBar, v3.1.15 (<%codename%>) Stubby, v5.9.4938 (WhackyWallaby) BlizRuntimeLib_enUS v4.0.1.40000 <us> (ck=691) |
|
Bockscar |
View Public Profile |
Send a private message to Bockscar |
Visit Bockscar's homepage! |
Find More Posts by Bockscar |
Add Bockscar to Your Buddy List |
10-15-10, 05:02 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 2
Uploads: 0
|
Error
I'm getting this error...
Message: Interface\AddOns\shieldmonitor\shieldmonitor.lua:918: attempt to compare number with nil Time: 10/15/10 18:58:12 Count: 1 Stack: Interface\AddOns\shieldmonitor\shieldmonitor.lua:918: in function `shieldmonitor_update' Interface\AddOns\shieldmonitor\shieldmonitor.lua:945: in function `shieldmonitor_update' Interface\AddOns\shieldmonitor\shieldmonitor.lua:843: in function `shieldmonitor_onupdate' [string "*:OnUpdate"]:1: in function <[string "*:OnUpdate"]:1> Locals: slot = 4 (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = "attempt to compare number with nil" shieldstore = <table> { 4 = <table> { } 6 = <table> { } } shieldmonitor_timewarn = false shieldstore_slotmax = 7 shieldmonitor_slotdisplayed = 4 |
|
Bludstain |
View Public Profile |
Send a private message to Bludstain |
Visit Bludstain's homepage! |
Find More Posts by Bludstain |
Add Bludstain to Your Buddy List |
10-15-10, 04:15 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 9
Uploads: 0
|
Was like this for me.
When I solely put Mage Ward, no response from addon. When I put Ice barrier, then ward, barriers breaks, ward appears = huge lag. |
|
etnoxic |
View Public Profile |
Send a private message to etnoxic |
Visit etnoxic's homepage! |
Find More Posts by etnoxic |
Add etnoxic to Your Buddy List |
10-15-10, 02:54 PM | |
|
Thanks Xylan and etnoxic for your bug reports I'll look into them.
etnoxic, I do have a mage but she's only level 70 so obviously quite a bit of stuff is different. Mage Ward works fine on her without any other shields being cast and I'm not seeing any lag, so I'm a bit stuck, but I'll see what I can work out. |
|
frenchie |
View Public Profile |
Send a private message to frenchie |
Visit frenchie's homepage! |
Find More Posts by frenchie |
Add frenchie to Your Buddy List |
10-15-10, 02:42 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 9
Uploads: 0
|
I will report all the bugs I've seen as mage.
1. And the most annoying one. If you have Ice Barrier, and cast Mage Ward, after your barrier is broke, then the Mage Ward tooltip (shieldbox) appears, then FPS drops to 1-10. 2. Mage Ward is NOT detected when you cast it without having any shield on yourself, the only way Shieldmonitor detects it, is if you already have a shield + mage ward, then the shield breaks, then it shows mageward, but with the problem mentioned above, huge lag. I understand you have no chars to test the changes, but since I'm telling you what exactly is bugged, you could maybe fix it, no? And to the fellow mages out there, I'd suggest using 1.7.1 version, it has no Mage Ward there, buuut, you will atleast see your barrier for Shattered Barriers. |
|
etnoxic |
View Public Profile |
Send a private message to etnoxic |
Visit etnoxic's homepage! |
Find More Posts by etnoxic |
Add etnoxic to Your Buddy List |
10-15-10, 02:22 PM | |
|
More info
Here is a error message I just received on my Level 80 Human paladin while standing ungouped in Stormwind with a shield cast on him by a priest. As seen by BugGrabber, English client.
1x shieldmonitor-1.7.2\shieldmonitor.lua:808: attempt to perform arithmetic on field '?' (a nil value) shieldmonitor-1.7.2\shieldmonitor.lua:972: in function `shieldmonitor_onevent' <string>:"*:OnEvent":1: in function <[string "*:OnEvent"]:1> Locals: self = shieldmonitor_Frame { 0 = <userdata> } event = "COMBAT_LOG_EVENT_UNFILTERED" arg1 = 1287172381.988 arg2 = "SPELL_AURA_APPLIED" arg3 = "0x05800000069A2066" arg4 = "Yès" arg5 = 1304 arg6 = "0x05800000006EDA4D" arg7 = "My toons name" arg8 = 1297 arg9 = 17 arg10 = "Power Word: Shield" arg11 = 2 arg12 = "BUFF" arg13 = 452 arg14 = 0 arg15 = 0 shieldmonitor_MyGUID = "0x05800000006EDA4D" SHIELDMONITOR_SPELLS = <table> { Ice Barrier = <table> {} Mana Shield = <table> {} Shadow Ward = <table> {} Sacred Shield = <table> {} Power Word: Shield = <table> {} Fel Blossom = <table> {} Sacrifice = <table> {} Mage Ward = <table> {} Divine Aegis = <table> {} } shieldmonitor_lastcritheal = 0 shieldpower = <table> { } shieldmonitor_slotdisplayed = nil shieldmonitor_donetalentcheck = true --- |
|
Xylan Trueheart |
View Public Profile |
Send a private message to Xylan Trueheart |
Visit Xylan Trueheart's homepage! |
Find More Posts by Xylan Trueheart |
Add Xylan Trueheart to Your Buddy List |