Ardent Defender is an addon designed to help Protection Paladins.
It provides several functions which I found useful as a Tankadin,
and hope someone else finds them useful as well.
Ardent Defender will:
- Announces when Ardent Defender proc's and saves your life, as well as flashing your screen and shaking it to alert you to the averted death.
- Detects and tells you when someone causes a parry on an NPC you are tanking. Also tells you if you cause a parry on an NPC someone else is tanking.
- Announces bubblewall usage (when it activates and when it fades)
- Announce if your taunt fails (and why) or if your Avenger Shield misses.
- Tracks combat stats such as damage received, damage blocked, damage absorbed.
- Makes use of LibDataBroker if you have it, to display combat stats and Ardent Defender info.. see screenshots to see what I mean.
- Tracks & Whispers on usage: Hand of Protection, Sacrifice, Salvation,
Freedom. also Divine Guardian, Divine Intervention, Guardian of Ancient Kings and Lay On Hands.
- (Disabled by default) Can annoy you with red screen slashing if Righteous Fury is not active AND you are currently wearing defense gear.
- Will not announce or track any of the above while in a Battleground, but will work normally while in an Arena.
- The LDB object displays combat statistics such as how much damage you have absorbed, blocked and received, how many times (since reload)
Ardent Defender has saved your life, as well as how much Ardent Defender will heal you upon proc, how much damage Divine Sacrifice absorbs, and more..
Feel free to leave good or bad comments. I will take reasonable requests under consideration.
Type "/ad" to bring up the Options panel, or right click the LDB object.
Addon can also be enabled/disabled with "/ad standby" command.
Enjoy.. -Blinddate US-Thrall
** TOC Bump
** Should announce to INSTANCE_CHAT instead of Raid/Party where appropriate. (As requested)
** More changes to the AD LDB tooltips. Most of the work was from ntex, based on Theck's theorycrafting.
** An addon I used for all these years finally broke. As a stopgap measure, I have added a 'quickmarks' ability to this addon. If enabled in settings, holding ALT and CONTROL while mousing over targets will mark them in order of Skull, X, Square, etc. Basically in reverse order of the default UI. This is still in testing, I threw it together in 15 minutes and it has not been extensively tested. Use at your own risk. Typing /ad reset will reset the tags.
** Fixed UI errors in raid chat (I think) .
** Bugfixes for UI errors from UnitIsLeader()
** Added some addition info to tooltip: Parry to Dodge ratio. Now that Dodge and Parry are on very different diminishing returns. Let me know if this helps or not helps. Thanks ntex.
** Replaced Divine Guardian with Devotion Aura.
2.14 Beta 08/30/2012
** 5.04 compatibility changes and TOC Bump.
** Some things may be broken, will fix problems are they are found.
** Note that this absolutely breaks compatibility with any previous version of WoW. (Mists compatibile ONLY)
** 4.3 Compatibility and TOC bump..
** 4.2 compatibility changes. Interrupt announcer works properly now.
** Avenger shield misses are handled a little differently, you can choose what channel (Raid, Party, Local, Yell) or disable it.
** Fixed the bug causing the report statistics to channel to not work (Shift-click LDB object)
** Fixed bug causing taunt to announce to channel even when disabled if basic mode was enabled.
** Fixed blocks, absorbs, taunt watcher, parry watcher, etc. that were also broken in 4.1 and I didn't notice.
** Added new statistics by request: Will now track how many hits you dodge or parry, or how many times an enemy outright misses you. This can be seen with the other stats by hovering over the LDB object, or in the config screen under statistics. The statistics do not save, and will reset to zero each time you logout or reset your UI.
Fixed interrupt announcer
** Fixes for 4.1 patch
** Guardian of the Ancient Kings will announce properly now (Only if you are Prot spec); however, it's not currently
possible to announce when the affect fades because of how it's handled on the server-side. This is the best solution unless Blizzard changes something on their end.
** Fixed error that showed when you have special fx on, Ardent Defender procs, and you have or had nameplates enabled.
** Automatically switches to quiet-mode when you are in Tol Barad or Wintergrasp.
** New 'Tanking Only' option, if enabled (by default it is) AD will only announce if you are currently spec'd protection. This does not affect Whispers from Hand of xxxx spells.
** It's currently NOT possible to track Guardian of the Ancient kings. I'm not sure if this is a bug or a 'feature' but events are triggered when its used, unlike in beta, so theres nothing I can do about this currently.
** Added an 'I interrupted that' announcer. Announces 'I have interrupted targetname's spellname'. It can be a bit spammy with avenger shield, but for heroics I like it. It's on by default but can be turned off in options.
** In the LDB object, you can now see your current total avoidance. According to the latest and greatest from EJ forums, we should be once again aiming for 102.4% avoidance, after getting expertise and hit capped anyhow. Hope this helps.
** Fixed Ardent Guardian, should announce properly now.
** Fixed Ardent Defender heal proc's, will announce death averted message properly again.
** Note if you are having problems with custom messags not working. Type /script ArdentDefender.db:ResetDB() and then /reload.
** Taunt channel should now work properly when in basic mode.
** Divine Guardian should be announcing properly again.
** Added a 'Basic mode' option, when enabled, all output is sent using the 'Taunt output' setting, except for Hand of xxx messages which are whispered. I got tired of having soo many options, and if you are too.. make use of it!!
** Now tracks the Ardent Defender ability (not proc), along with the ability to customize the message as usual.
** I have still not tested the proc of ardent defender, when you should die and it saves you. If you have, please let me know in a comment that it works or doesn't work.
** Fixed a bug where you would get error messages if you had AD enabled but were not a paladin.
** Pretty sure the 'c is nil' bug is fixed.
2.0 Beta4 09/22/10
** Quiet mode toggle added. When quiet mode is enabled, all enabled output is redirected to local chat window.
** Now handles Ancient Guardian ability.
** Complete rewrite of options and how things work
** Replaced Divine Sacrifice with Divine Guardian
** Things left to test: Ardent Defender proc, stress testing in an actual instance or raid.
** This is still a BETA please report any bugs via comments on curse or wowinterface
I am pushing this beta to the regular build now due to patch 4.01 going on live servers.. but some things are still untested. My RL is crazy right now and I don't have time to play or test, please leave a comment with any issues you find.
** Fixed small bug with Taunt, it would announce to channel even if you had it set
to announce locally only.
** Fixes raid announcement thing.
** Hopefuly that's all the bugs!! Happy Fourth!
** Added further options for Parry tracking. Local, Whisper, or disabled. Defaults to Disabled.
** No longer tracks parries that you cause or parries caused by pets, only parries caused by other players.
** Bubblewall should work properly now.
** Forgot to remove debug flag from build.
** Bug fixes with RAID_WARNING channel option.
** Added option for taunts to have their own channel, as it was causing problems with settings.
** Taunt tracking option is for your own taunts, if it's resisted, if the npc is immune or it misses.
** Track other taunts option is for tracking when someone else taunts your target (and you are tanking it), if it is disabled then it displays locally, if enabled it displays in the taunt channel(s).
** Removed some deprecated options, including channel name.
** New options for all messages, you can choose individually which channel(s) a message is announced to.
** LDB object must now be alt-right-clicked to reset data, instead of just right click.
** Taunt resists, other taunts, and avenger shield misses use the Death averted message channel.
** Note that if you choose more than one channel for a message, it will announce to all available channels (spam!).
** This update will reset your DB to defaults due to many changes in the database.
** Bug fixes
** Bug fix for the spam caused by a stupid bug.. blah
** Fixed bug relating to warriors taunting your target using mocking blow.
** Changed the options text a little bit to make it more clear.
** The OtherTaunt option is no longer an option, the addon will always tell you when someone taunts your target. You can have it announce to your channel (RAID/PARTY/etc) by using the AnnounceTaunt option.
** Bug fixes..
** Lay on Hands will announce properly now (Note: Hand of xxx spells, and LoH does NOT announce by design.)
** Now actually uses target's name when you announce your hand of xxx spells to raid.. DUH!
** If you customize your message, the <you> in the hand messages is replaced by the target name when announcing to raid only.
*** Option to announce Hand of xxxx spell usage to Raid/Party. Defaults to OFF.
*** Added new options to customize all messages that the addon displays.
*** Fixed a couple more bugs I found that no one but me probably ever saw..
Fixed a LUA error
*** Updated Ace3 libraries to latest version
*** Workaround for bug that was not allowing you to see your own messages in party/raid chat.
*** Believe it or not, it was because of the '****'s in the message. I don't know why.. changed it to <<< and >>>... works for now.
** Updated TOC for 3.3
** Updated LDB tooltip for how Divine Guardian and Divine Sacrifice work now.
** Updated libraries and such.
** Bumped version to 1.5 to simply things on my end. You may lose your settings.. sorry!
** By popular demand, I reworked the system once more to allow <heal> to work
in your avert death messages. It's a bit of a hack, but it works nicely. Tested it as best I could, let me know if you find any problems.
** Removed the screen flashing stuff from the Parry code. It's annoying as hell and was not intended.
** New option: Othertaunts. Alerts you when someone else taunts your target. I find it useful during certain raids.
** Various bugfixes introduced with 1.4, and fixed an old bug causing it not to alert you when YOU cause a parry on a target you aren't tanking.
**** Grr the parry flashing is really gone this time.. I promise!
** Rewrote alot of the core event code, should be more efficient now.
** As a consequence of the above, AD -should- work for a Paladin of any level now,
not sure if the AD Heal will be accurate or not I haven't had a chance to test it.
** Now tracks/whispers Hand of Freedom on target.
** In Battlegrounds, it will still whisper targets, but will not make any raid announcements.
** Fixed a bug where sometimes AD would proc and it would not be announced.. This was caused by you taking such a large hit that it absorbed all of your remaining HP
and the entire AD Heal proc.. unfortunately by fixing this bug, death averted messages can no longer announce how much AD healed you for.
** Your settings will be reset to defaults upon loading this version, needed to fix some DB changes.. sorry :)
** New option 'Annoy RF', will flash your screen red constantly until you buff yourself with RF. Only works if you are wearing defense gear,
otherwise it does not check for RF. Defaults to OFF.
** Addon can now be put into standby mode by typing /ad standby. Type it again to re-enable it.
** Will not make announcements while you are in a BG. Still tracks statistics though.
** Some more bugfixes and grammatical errors in the .toc file.
** Added ability to whisper targets when you use your Hand of Salvation, Hand of Protection, Lay on Hands
or Divine Intervention on them. Note only works at maxlevel, addon not really designed for lower levels.
** Above option is enabled by default, can be disabled with the "Whisper Other" toggle in the options menu.
** Replaced some of the messages used in announcements, uses spell links instead of just names.. especially useful when in raids with healers who don't know what Divine Sacrifice means, etc. etc
** Fixes two more bugs relating to parrying and whispering, it will now work properly
for everyone.. thanks for the bug reports guys!
Assuming no more bugs crop up, this should be the final release. I consider the addon feature
Fixes a couple bugs people were having.
** Added option by request to WHISPER someone if they cause your target to parry. It's under Parry announce option, defaults to off.
** Hand of Sacrifice is now tracked as part of the Aura tracking, will announce who your hand of sacrifice is on and when it fades.
** Fixed some leftover code from first version where we used to track more events, had potential to cause errors.
** Changed the default death avoided message, seemed too long for me. I personaly use a simple 'Ardent Defender just saved my ass again!' message. ;)
** When AD procs, your screen will shake and flash blue and a sound will be played (Remember Ogri'la dailies?) . This can be disabled in options. (Specialfx)
** Fixed bug with shift-clicking the LDB object not reporting to party/raid channels.
When sending the info to a channel it will look way different than when you are alone, due to not being able to send line breaks or colors to channels.
** New option: SpecialFX. Enables/disalbes screen flashing and shaking.
** Credits for Screen shaking and flashing code go to Omen3 and Xinhuan. Thanks for letting me use the code!
-- Note: The Parry whisper code is untested, if you have problems with it please let me know.
** Fixed a bug dealing with Avenger shield and immune NPCs (such as banished elementals), now does some sanity checking. 1.1b: 08/27/09
Bug fixes only...
** Activating Divine Sacrifice will no longer make an announcement for
each member of your raid. Sorry about that!
** Death averted numbers were not properly being tracked. Fixed. Really fixed this time..
** Added aura tracking for Divine Sacrifice.
** Rewrote some of the if() statements in the combat log parser for better sanity.
** Changed bubbleWall option to 'trackAura' option, since it now applies not only to
bubblewall but also to Divine Sacrice.
** Added partial implementation to track/announce Hand of Sacrifice.. do people want this? Hmm.
** Added info in LDB object to display an estimate of how much health Divine Sacrifice will absorb (if talented)
** Rearranged options to make them more enjoyable to read and use.
** Removed deprecated 'AvengerMiss' option, Avenger shield tracking is part of the tauntWatcher
option now. Can seperate if people request it. I dont see a need for it.
** Hide the bubblewall message box, in all my time using the addon I never felt the need
to change the bubblewall msg. I can turn it back on if people request it. I didn't enjoy the clutter.
** Cleaned up alot of my comments and added some more to make things more readable.
** CheckTalents() wasn't really needed anymore, removed it and all calls to it. Rewrote ldb object to work without it.
** With CheckTalents() gone, we don't need to watch for "PLAYER_TALENT_UPDATE" or "CHARACTER_POINTS_CHANGED") events anymore.
Bugfix -- CheckTalents() sometimes caused an assert() failure
due to the game not being fully loaded yet. Made it silent if called from self:Initialize(),
we check when entering combat anyhow.
You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.
*Clicking the donate button above will take you to PayPal.com
*Clicking the donate button above will take you to Pledgie.com