Download
(3 Kb)
Download
Updated: 02-08-11 11:43 AM
Pictures
File Info
Updated:02-08-11 11:43 AM
Created:01-20-11 09:30 AM
Downloads:3,490
Favorites:13
MD5:
Druid Mastery
Version: 1.09
by: kameelyan [More]
*Please post any bugs/lua errors you are receiving in the comments section off this addon.*

I wrote this addon in order to begin to understand how much of my healing was affected by Resto Druid's mastery values. Basically, it tracks your combat log looking for heals that are currently affected by Mastery and then saves them into a data table. Lastly, it'll compare your "mastery healing" versus your "total healing" for each spell as well as total.

Hopefully this helps other Resto Druids analyze their healing benefits from mastery.

Currently the following slash commands exist:
/dm - shows available slash commands
/dm reset - resets data in data tables
/dm combat - enables the addon to only collect in combat [enabled by default on addon load]
/dm nocombat - enables the addon to collect while out of combat
/dm ticks - shows the tick/cast count data table
/dm healing - shows the overall healing data table
/dm mastery - shows effective mastery healing [no overheals] versus effective total healing [no overheals]
/dm masterycrit - shows effect mastery healing [crits only] versus effective
/dm masteryonly - shows effective mastery healing versus total mastery healing
/dm nomastery - shows healing values (affected versus non affected) but has heal values gained from mastery removed [suggested by slourette]

Future Plans:
Add in Mastery Heals Per Mana versus Total Heals Per Mana
Add in actual UI Frame features for tables/buttons/filters, etc.
Any user requests will be strongly considered

Changed in 1.09:
  • Updated Mastery rating to be 1.45% per point as opposed to the original 1.25%

Changed in 1.08:
  • Added Version Number when /dm is done.
  • Added in /dm nomastery

Changed in 1.07:
  • Updated printout function to be much more simplified and detailed.

Changed in 1.06:
  • Added /dm masteryonly to the command list.
  • Added rounding to any printout that needed it.

Changed in 1.05:
  • Continuing to work on maximizing it's efficiency and reduce any lua errors found.

Changed in 1.04:
  • Updated how mastery was determined to fix certain lua errors being generated (not promising they're all fixed - given how combat log events fire, it's a work in progress)
  • Fixed a bug causing 3% extra mastery to be applied inappropriately.

Changed in 1.03:
  • Fixed bug where LB ticks would not count as mastery after refreshing it with an existing HoT and the stack count was less than three. (thanks Kluian)

Changed in 1.02:
  • Fixed some minor lua errors.

Changed in 1.01:
  • Added new slash commands and data tables.
Optional Files (0)


Archived Files (9)
File Name
Version
Size
Author
Date
1.08
3kB
kameelyan
01-27-11 07:06 PM
1.07
3kB
kameelyan
01-25-11 11:23 PM
1.06
3kB
kameelyan
01-24-11 01:33 PM
1.05
3kB
kameelyan
01-22-11 08:54 AM
1.04
3kB
kameelyan
01-22-11 12:07 AM
1.03
3kB
kameelyan
01-20-11 06:28 PM
1.02
3kB
kameelyan
01-20-11 04:27 PM
1.01
3kB
kameelyan
01-20-11 02:51 PM
1.0
3kB
kameelyan
01-20-11 09:30 AM


Post A Reply Comment Options
Old 06-30-11, 10:01 AM  
Nihlo
A Murloc Raider

Forum posts: 5
File comments: 125
Uploads: 0
Maybe a 4.2 update ? A timer to keep up harmony and statistics for the uptime would be cool.
Nihlo is offline Report comment to moderator  
Reply With Quote
Old 05-30-11, 09:53 AM  
ingnoon
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
not working

looks like this add-on is not working. Maybe the new logfile changes are not used?
ingnoon is offline Report comment to moderator  
Reply With Quote
Old 02-04-11, 12:59 PM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
Originally posted by Lyelu
On the contrary, it's exactly what I wanted to know. Additionally, Vollus over at mmo-champion, might come out with an addon that calculates the percentage raid contribution from Dark Intent buff, which would be nice. From all these, I can calculate much more clearly the exact haste number I want for different gear levels.

May I suggest as a feature then, to add Nature's Grace, and its actual healing contribution. If I have NG up at the right time, and I have the right haste numbers on my gear, I'll reach 14th tick of Lifebloom, 10th tick of Regrowth and maybe 6th tick of Rejuv. But then, i tend to forget and hit Regrowth whenever I have a clearcast, so I don't really know how often I'm getting to 10th ticks WG, and therefore whether or not I should consider it in Haste breakpoints.
What you're looking for is something like TreeCalcs over at ElitistJerks. This addon is only and will only be used to track mastery values added, not overall healing gains from things besides mastery as well.

TreeCalcs is an amazing utility for resto druids:
http://elitistjerks.com/f73/t116144-resto_treecalcs/
kameelyan is offline Report comment to moderator  
Reply With Quote
Old 02-04-11, 09:28 AM  
Lyelu
A Cyclonian
AddOn Author - Click to view AddOns

Forum posts: 44
File comments: 26
Uploads: 10
On the contrary, it's exactly what I wanted to know. Additionally, Vollus over at mmo-champion, might come out with an addon that calculates the percentage raid contribution from Dark Intent buff, which would be nice. From all these, I can calculate much more clearly the exact haste number I want for different gear levels.

May I suggest as a feature then, to add Nature's Grace, and its actual healing contribution. If I have NG up at the right time, and I have the right haste numbers on my gear, I'll reach 14th tick of Lifebloom, 10th tick of Regrowth and maybe 6th tick of Rejuv. But then, i tend to forget and hit Regrowth whenever I have a clearcast, so I don't really know how often I'm getting to 10th ticks WG, and therefore whether or not I should consider it in Haste breakpoints.
Lyelu is offline Report comment to moderator  
Reply With Quote
Old 02-04-11, 08:20 AM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
Originally posted by Lyelu
How's this work?

You read the combatlog, looking for what exactly? Is the combatlog always in the correct order? Would there be any way outside of raid to double check my results, ie, with a worldoflogs report ?

I ask because the druids are checking their uptimes with this and gearing accordingly now, so accuracy will be important.
How can you tell how accurate this is? I mean, I'm asking where do the calculations take place, what does it say in combatlog, and are the two always the same? Is it not calculated server side? Is my combatlog the results?

Correct, your combat log is the results. How this works is there is an event that your combat log spits out every time it's updated with any line. We read those events, looking for specific ones (basically when heals and auras (buffs) are applied to players). From there, we can look at the event and determine if the cast owner is the player (you). If it is, we can then capture more information on that spell. How much it healed for, how much it overhealed for, how much mana it cost, etc.

So what we do with that information is save it into what are called Lua tables.

Now, the tricky part is actually determining if mastery was applied to the heal. There is currently nothing in the WoW API that just returns true or false, so we have to do it manually. So what we do there is use a seperate Lua Table to track when hots are on players.

Let's say you cast Rejuv on a Player X. It would create a spell entry for Player X in the Rejuv table that says "ture" (for yes, there's a hot on the player). Once the combat log tells the addon that Rejuv has faded, it goes in and says "false".

What that allows us to do is every time a heal is done by the player (you), we check the table that contains all the active hots. If one is active on the player we just healed, we know mastery was applied and handle it accordingly.

Unfortunately, because the way mastery works, I do not believe there is any other log system out there to compare this data to. I do know it's being tested by many over at elitistjerks.com though.

Lastly, I would say this addon has 99.9% accuracy. There are times when the combat log (due to latency) tells your client that the Rejuv wore off before the last tick of the heal. Because of that, the addon will not apply mastery to the last tick of Rejuv for that case. This IS NOT occurring for all spells cast, and happens very occasionally. Given the overall base size of the hots at the end of the recording period, the affect on the data will be minimal.

Lastly, the data currently tracks only while you're in combat. You can disable this using the options if you wanted. All that info can be found on the main page.

This was probably more info than you wanted, but enjoy.
kameelyan is offline Report comment to moderator  
Reply With Quote
Old 02-04-11, 07:13 AM  
Lyelu
A Cyclonian
AddOn Author - Click to view AddOns

Forum posts: 44
File comments: 26
Uploads: 10
How's this work?

You read the combatlog, looking for what exactly? Is the combatlog always in the correct order? Would there be any way outside of raid to double check my results, ie, with a worldoflogs report ?

I ask because the druids are checking their uptimes with this and gearing accordingly now, so accuracy will be important.
How can you tell how accurate this is? I mean, I'm asking where do the calculations take place, what does it say in combatlog, and are the two always the same? Is it not calculated server side? Is my combatlog the results?

Last edited by Lyelu : 02-04-11 at 07:16 AM.
Lyelu is offline Report comment to moderator  
Reply With Quote
Old 01-30-11, 12:07 AM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
Originally posted by Nihlo
Actually I gimped to have a look at my report cause I logged out to upload WoL and after relogin every data is gone. Could the data be saved after log out and you get kind of message if you join a new raid and print a suggestion to reset the data ?
This will probably be in future releases. As of now, I'm not sure how useful this addon will be in say 3 months when we start to understand exactly where mastery fits in our overall healing. I think we're all starting to get a good feel of how good it is now.

That's not to say I wont' support or improve this addon in time, but I'm not actively working on it currently. The next release probably wont' happen until a few weeks after the patch.

But I can certainly look into adding some saved variables in and an option to reset the data on zone in.
kameelyan is offline Report comment to moderator  
Reply With Quote
Old 01-28-11, 04:59 AM  
Nihlo
A Murloc Raider

Forum posts: 5
File comments: 125
Uploads: 0
Actually I gimped to have a look at my report cause I logged out to upload WoL and after relogin every data is gone. Could the data be saved after log out and you get kind of message if you join a new raid and print a suggestion to reset the data ?
Nihlo is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 04:59 PM  
Pyrates
A Theradrim Guardian
 
Pyrates's Avatar
AddOn Author - Click to view AddOns

Forum posts: 66
File comments: 114
Uploads: 3
Yeah don't worry about table size here, they'll even be small when you're playing a month straight. If you're really concerned you could find the events for people joining your party/raid and only put those in the tables as well, and destroy them on leave... or destroy them on zone change or whatever. I'd not do it

Besides, just table = {} doesn't do a lot for your afaik (or setting it to nil as well), you'd need to use the lua function wipe. I don't know why that's the case though.
__________________
" ... and the Vogon will do things to you that you wish you'd never been born, or, if you're a clearer minded thinker, that the Vogon had never been born."
Pyrates is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 02:59 PM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
I added in two new slash commands in the latest version.

Can now track effective mastery versus effective healing as well as just for crits.

I'm still seeing errors when the SPELL_AURA_REMOVED fires BEFORE SPELL_PERIODIC_HEAL for some reason. In reality they should never fire out of order, but after talking to some people, I guess it's quite common.

Probably going to stop removing players/spells from the tables, which will increase their size. The table would only exist on the session and doing /dm reset would clear the table so I'm not too worried about it.

Still need to test it out and see if it stops the errors I'm occasionally getting.
kameelyan is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 01:20 PM  
Pyrates
A Theradrim Guardian
 
Pyrates's Avatar
AddOn Author - Click to view AddOns

Forum posts: 66
File comments: 114
Uploads: 3
He extended the functionality of mine by actually keeping track of the amounts healed. I will not develop my addon any further, you should use this one.
__________________
" ... and the Vogon will do things to you that you wish you'd never been born, or, if you're a clearer minded thinker, that the Vogon had never been born."
Pyrates is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 01:06 PM  
Nihlo
A Murloc Raider

Forum posts: 5
File comments: 125
Uploads: 0
Hmm...is there any difference between your addons ? In my eyes you just made the same right ? Kame & Pyra
Nihlo is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 12:22 PM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
Originally posted by Pyrates
Exactly I'll want the same number for crit, and by just a bit more computation one can easily put out how much one gained from each point of mastery vs each point of crit, which is an interesting thing to know
Alright, so we'll have one value for "effective mastery healing" versus "total effective healing" [including crits] and we'll have another data table that does the same thing, but just for crits? That should be pretty easy.

I've got the code written for the first one, just going to work on the crit one now and then test it. Should have this addon updated in a few hours.
kameelyan is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 11:55 AM  
Pyrates
A Theradrim Guardian
 
Pyrates's Avatar
AddOn Author - Click to view AddOns

Forum posts: 66
File comments: 114
Uploads: 3
EDIT:
Thinking about it more, we'd want to use the actual heals without overhealing right? So then we could say my mastery accounted for X of Y of my total effective healing. Right? [/b]
Exactly I'll want the same number for crit, and by just a bit more computation one can easily put out how much one gained from each point of mastery vs each point of crit, which is an interesting thing to know
__________________
" ... and the Vogon will do things to you that you wish you'd never been born, or, if you're a clearer minded thinker, that the Vogon had never been born."
Pyrates is offline Report comment to moderator  
Reply With Quote
Old 01-20-11, 11:46 AM  
kameelyan
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 17
Uploads: 2
Ok, I'm with you now. I wasn't thinking about dividing by 1.10 (with 10%) to get back to the original heal.

Summing that should be pretty easy. What about the total value we should compare to? What heal value should I be summing there? Total heal including over heal, just the total mastery including overheal, just the total actual healing done excluding overheal?

I see what your formula is doing, but how is it useful when we compare it against X (where X is the above choices)?

EDIT:
Thinking about it more, we'd want to use the actual heals without overhealing right? So then we could say my mastery accounted for X of Y of my total effective healing. Right?
Last edited by kameelyan : 01-20-11 at 11:50 AM.
kameelyan is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

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.