H.H.T.D.
H.H.T.D.
In World of Warcraft healers have to die (H.H.T.D). This is a cruel truth that you're taught very early in the game. This add-on helps you influence this unfortunate destiny in a way or another depending on the healer's side...
This add-on is now known as H.H.T.D.
I originally chose the original name as a provocation to make one of the basic cruel truths of World of Warcraft perfectly obvious to everyone. Now I find this name too harsh, too long and mostly not specific enough to WoW.
As an author I could not stand that name anymore. This add-on does have an existence (and meaning) both in WoW and in the real world where obviously we don't want the death of our beloved healers...
While H.H.T.D is just an acronym of the original name, it will stay in World of Warcraft where it belongs.
Current features:
HHTD automatically adds healer symbols on top of players nameplate indicating their class and healing rank. Unlike other add-ons it only takes into account actively healing players. (It uses different symbols for friends and foes).
HHTD lets you apply custom marks on top of any unit's nameplate. These are the same marks as the default raid markers but you can set as many as you want and customize their look. These marks persist across game sessions. (They are only visible to you)
IMPORTANT NOTE: You have to enable nameplates, else you won't see any healer symbol!
HHTD lets you announce through a customizable message who the enemy and friendly healers are (using the Raid Warning channel if possible).
It will also help you protect the healers who are on your side alerting you when they are being attacked (check the option panel for details).
Helps you target healers easily when they are in a pack.
All of this applies to PVP and PVE.
NOTE: Type /HHTDG to open the configuration panel. There are many settings to check!
HHTD's options are not directly available in the "Interface" panel due to ongoing tainting issues Blizzard is not willing to fix.
That player is not a healer?
If you see a player marked as healer that should not be:
If their mark's background is NOT grey, check the 'Logging' option in the option panel (/HHTDG) ; then when you see such a player, reopen the option panel and check the content of the 'Logs' tab and report to me by opening a ticket. Please avoid comments on Curse.com as it's impossible to follow what happens there).
If their mark's background is grey then enable the 'Healer specialization detection' option so as to only report specialized healers ignoring others.
Also note that the healer's rank is displayed as a number in the center of the displayed mark so you can judge the importance of that player in the healing currently being done (the lower the number, the better the healer).
How it works
HHTD uses the combat log events to detect friendly and enemy healers who are currently healing other players (during the last 60s). HHTD detects specialized healers spells (for human players only) and differentiates specialized healers from hybrid ones.
HHTD also lets you choose a specified amount of healing healers have to reach before being marked as such (50% of your own health by default). This threshold is the only criterion used for NPCs.
When a healer is identified it will be marked with a healer symbol above their nameplate. If the healer is specialized, the symbol's background will be colored according to their class. In other cases the background will be grey.
In all cases a number in the center of the symbol indicates the rank of the healer, the lowest the number the better the healer (ie: '1' represents the most effective healer while '9' is the least effective).
You can force HHTD to only report specialized healers through HHTD's options (/hhtdg).
Needless to say that self-heals and heals to pets are filtered out.
Commands
/HHTDP (or /hhtdp) posts healers name to the raid channel ordered by effectiveness for all to see (Will use the Raid Warning channel if possible).
You need to configure the messages in the announce module options first.
You can bind the above command to a key (WoW key-bindings interface)
/HHTDG opens option panel
/HHTD gives you access to the command line configuration interface (useful for changing settings through macros...)
Planned features
- Detection when a friendly healer is being attacked and alert others through /yell, /say and emote.
Compatibility
HHTD is only compatible with nameplate add-ons which have been coded responsibly and do not modify internal parts of Blizzard nameplates (a very selfish behaviour as it prevents any other add-on from re-using them).
HHTD will detect these incompatibilities and report to you so that you can ask the culprit add-on authors to fix their code and make it compatible with ALL nameplate add-ons.
Guidelines for other add-on authors:
Do not call :Hide() or :Show() on nameplates' base frame. This breaks nameplate tracking for other add-ons by unduly firing OnHide/OnShow hooks...
Instead, make its sub-frames invisible by changing their size and/or setting them to the empty (not nil) texture. (check out how TidyPlates does)
Do not call :SetParent() on nameplates' subframes, this would prevent other add-ons from finding and hooking nameplate elements.
Do not use SetScript() EVER. You don't need it. :SetScript() shall only be used on frames YOU create. You can simply replace all your SetScript() calls by HookScript().
Videos
Here is a video by Hybridpanda featuring HHTD in the Eye of the Storm battleground:
YouTube - This makes me a sad Panda
Articles
Here are two excellent articles about HHTD by Cynwise (A must read if you have some doubts about the fairness of this add-on!) :
HHTD and the PvP Addons Arms Race
Using HHTD to Protect Friendly Healers
Here is another article written by Gevlon (a PVP healer).
type /hhtdg to open the configuration interface, or /hhtd for command-line access
Comments and suggestions are welcome :-)
To report issues or ask for new features, use the ticket system.
Bitcoin donation address: 1JkA5Ns1dMQLM4D8HUsbXyka6yhp312KnN
I wanna change my spec now...
First, thanks for this great addon, I use it since years. I have a little question, is it possible to disable the messages that pop in the middle of my screen for example when a friendly healer is attacked. I want to use hhtd only for the red cross above nameplates.
Thanks in advance for your reply,
Regards.
To disable these alerts type /HHTDG and uncheck 'Protect friendly helears'
Thanks for this fast reply Archarodim, It was helpful^^
It has been showing all hybrid classes as healers..dpsers etc EG: shadow priest .just a fyi .thanks
Please read the changelog. Now, non specialized healers have a dark grey backround on their icon while "real" healers have their respective class color. Moreover each healer is ranked according to the effective amount of healing done.
You can revert back to the old behaviour by checking the "specialized healers only" option.
Finaly, you can also check this page: http://www.wowace.com/addons/healers-have-to-die/pages/specialized-healers-spells/ if you see something wrong there, leave a comment on that page so it can be fixed.
How do I revert back to the old minimalist symbols? I'm not a fan of the new round frame around the red cross icons.
By editing \Interface\AddOns\Healers-Have-To-Die\Artwork\healers_icons.tga. You'd need to replace all the symbols by the same one (be careful to use a different symbols for friendly/enemy healers though). If you clone the repository from WoWAce you will have access to a .psd which is easier to edit...
Probably a stupid question, but would this actually be necessary for someone who only plays as heals? I don't tank anymore, and I absolutely refuse to DPS. I'm just asking since I normally just look at the default raid UI to see who other heals on my team are, and just look at what the enemy players are doing to guess if they're heals. <shrugs>
Thanks for your time!
Regards,
Cammy Bear.
Only you can answer this question. Just try it out and see for yourself...
True. Sorry... Thanks for the reply.
Regards,
Cammy Bear.
I dont know why but i cant seem to get the addon to post announcments to chat. I am not getting an errors. It just isnt working right.
I just tested and it works for me. Have you properly mapped a key to this function, have you checked the announcer's options in /hhtdg panel?
Addon now registers all potential classes that can heal, as a healer. Boomys register as restos. Elementals register as restos. ret pallys register as holy pallys. Only bgtargets correctly identifies class rolls.
Please read the changelog. Now, non specialized healers have a dark grey backround on their icon while "real" healers have their respective class color. Moreover each healer is ranked accroding to the effective amount of healing done.
You can revert back to the old behaviour by checking the "specialized healers only" option.
Finaly, you can also check this page: http://www.wowace.com/addons/healers-have-to-die/pages/specialized-healers-spells/ if you see something wrong there, leave a comment on that page so it can be fixed. Just to be sure I've just checked all holy paladin spells and from what I could see on wowhead they're all from the holy school, correct me if I'm wrong.
@shuiliu_wo
This is fixed in the latest alpha
hi,it can not work with aloft.please check.
I'm using the latest alpha and getting this:
41x Healers-Have-To-Die-2.2.2-1-gd0d655a\NamePlateHooker.lua:660: attempt to index field "?" (a nil value)
Healers-Have-To-Die-2.2.2-1-gd0d655a\NamePlateHooker.lua:660: in function "UpdateRanks"
Healers-Have-To-Die-2.2.2-1-gd0d655a\NamePlateHooker.lua:257: in function "?"
libs\CallbackHandler-1.0\CallbackHandler-1.0-6.lua:147: in function <libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147>
<string>:"safecall Dispatcher[3]":4: in function <string>:"safecall Dispatcher[3]":4
<in C code>
<string>:"safecall Dispatcher[3]":13: in function "?"
libs\CallbackHandler-1.0\CallbackHandler-1.0-6.lua:92: in function "SendMessage"
Healers-Have-To-Die-2.2.2-1-gd0d655a\Core.lua:1039: in function <Healers-Have-To-Die\Core.lua:924>
Healers-Have-To-Die-2.2.2-1-gd0d655a\Core.lua:1237: in function "?"
libs\CallbackHandler-1.0\CallbackHandler-1.0-6.lua:147: in function <libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147>
<string>:"safecall Dispatcher[25]":4: in function <string>:"safecall Dispatcher[25]":4
<in C code>
<string>:"safecall Dispatcher[25]":13: in function "?"
libs\CallbackHandler-1.0\CallbackHandler-1.0-6.lua:92: in function "Fire"
...\DataStore\libs\AceEvent-3.0\AceEvent-3.0-3.lua:120: in function <...\DataStore\libs\AceEvent-3.0\AceEvent-3.0.lua:119>
Locals:
nil
Thanks for reporting this, This should be fixed in the latest alpha I've just released.
this addon should be banned, only loser that need to cheat use this.