Jump to content


Photo

On the Value of Haste


  • Please log in to reply
59 replies to this topic

#41 Squeakster

Squeakster

    Piston Honda

  • Members
  • 106 posts

Posted 12 February 2010 - 08:54 PM

How useful is it to know how many more crits imp. FH gave you? I also believe that Overhealing as long as you do not go OOM is not harmful, which means knowing overhealing is not that vital. Spells cast while Haste Capped could be interesting to know, but for the most time, they only happen during Heroism. How many people die when you are trying to heal them is not relevant, as thats pretty generic.

Overwritten SoL procs, BT hasted casts etc could be displayed easily. Don't know if it will change your gearing choices however. And this is perhaps better for a log parser than a theory tool.

The Custom Role is designed to let you know how to improve your Throughput and Sustainability given a specific fight you found challenging. Since we all know the game is highly random based, every fight will not end up being exactly the same, so I did try to avoid having you be too detailed.


First of all, I apologize if my post came across as an attack on your work or anything like that, because that was not my intention. I think you have done a great job with the priest module and it's something that I personally use all the time.

Knowing the number of crits Improved Flash Heal adds is necessary to understanding the value of the talent. What if I find out that it's getting me only an extra couple of crits each night? I guess I can't really see myself dropping the talent, but I still like to know exactly what I'm getting.

I agree that mana is not a huge concern for most players right now, and therefore overhealing probably isn't either. However, it's still useful data. What if 75% of your heals are either partially or completely overhealing? Or 90% have at least some overhealing? That has big implications in the value of spell power; any heal that was overhealing to begin with will not benefit from more SP (or crit, ignoring DA).

Number of GCD spells cast while at < or = 1 sec GCD is probably only useful for holy priests during heroism, but is a pretty big concern for disc priests. The value of haste because of Borrowed Time haste is often debated here, and data like that would be very important in answering that question.

The number of times your target died while you were in the process of casting a heal seems pretty important and relevant to me. Many people like to make the argument that stacking haste is the best approach to gearing because it lessens the chance that your target will die just before your heal lands. The validity of that could be investigated by seeing just how often that kind of thing occurs, and comparing between players with different levels of haste.

Again, I did not mean any of that to be an indictment of your work on Rawr. I still find that program to be a powerful tool and one that I use frequently. I just think there is the potential for a lot more.

#42 The Not So Evil

The Not So Evil

    Piston Honda

  • Members
  • 246 posts

Posted 12 February 2010 - 10:14 PM

On the topic of Haste preventing deaths. If 10% of deaths happen between 0.001 and 0.2s of you completing a cast, another 20% happens between 0.0201 and 0.04, and remaining happens with > 0.04 or no heal incoming at all, you'd think that getting your haste up enough to 0.2s less would be a good thing? Well, once you get your haste up that 0.2s, you suddenly see that between 0.001 and 0.2 suddenly 22% of deaths happen before you finish your heal. That just means your statistics for deaths caused by too late heals went worse.

Yes, hasted heals may keep someone alive from time to time, I'm just not sure its possible or feasible to model it.

And on the topic of overheals. If 75% of your heals are overhealing, that just means 25% were not. If you are worried about players going dead, those non-overhealing heals might have saved him by having him topped off if you had more spellpower to toss it up to an overheal. Same goes for crit. This is why I don't consider overhealing a problem at all as long as it doesn't hurt your ability to sustain healing. If you toss a heal, its because someone needed it.

And regarding imp. FH. There is a slider in Rawr that allows you to tell Rawr how many % of your heals land on people <=50%. You'd need to have a parser that knew peoples hitpoints and then give you the %. I cannot guesstimate this in a model, you do need to figure it out yourself and apply.

And Disc and GCD capping. Personally I feel its more important to look at your haste while not buffed with Heroism nor Power Infusion nor Borrowed Time. Thats the heals that may be sluggish and need attention. Being capped will diminish the value of haste for Instant spells. Spells with cast time however, will still land faster.

I did not take your post as an attack on my work on Rawr, I'm actually happy to try to explain my point of view on why I do things the way I do, and I'm open to suggestions on how to improve it. And you do not need to agree with me.
Rawr - Coder of HolyPriest (Healer) and ShadowPriest (DPS) Modules.
Get Your Rawr 2.3.x!

#43 Miarose

Miarose

    Von Kaiser

  • Members
  • 67 posts

Posted 14 February 2010 - 01:26 AM

Going back to what Squeakster and Enqi briefly hit on: "If your Penance is 1.5 second cast time you are running with a total of 33% haste. Borrowed Time will give you an additional 25% haste, making the new cast time 2/(1.33*1.25) = 1.2 seconds, a savings of 0.3 seconds.

Penance is a very powerful heal, and to cut off 0.3 seconds of its channeled cast time is invaluable. Especially when you start to consider lag, and the fact that even though the first tick is "instant' it still has a travel time similar to POM. Even if it takes 0.1-0.3 seconds for the first tick to occur with lag, which very well may be a large over exaggeration but for discussion sake, the first tick is still hitting before the GCD is up, making this the fastest and largest spell we have.

Like The Not So Evil had said, I'm slightly more concerned with haste in regards to not having BT up, especially while tank healing. With assumed raid buffs of Wrath of Air totem and Swift Retribution/Imp Moonkin, and Enlightenment, this brings penance down to 1.454 seconds with assumed gear having 20% haste. 2/(1.06)(1.05)(1.03)(1.20). At 30% haste from gear its further reduced to 1.342 seconds.

In regards to 'hasted heals keeping someone alive from time to time', the basis of healing is to keep people alive, but if we're thinking of haste with regards to crit/regen/sp, then buffs such as Grace, Inspiration, and DA also should be considered. Having the highest uptime we can on these spells directly improves throughput and mitigation.

#44 Guest_alister_*

Guest_alister_*
  • Guests

Posted 17 February 2010 - 09:56 AM

hello,

firstly, I'will grant you to be patient with my english (I'm no native speaker) and with my reflexions, this is my first post.

I think we need the math parts, in order to help us choose gears, gems and so on. I read with interest the haste topic, I had long discussions with a friend of mine playing discipline too and we do not agree about it (I'm currently 700 and he was tending to a lower cap).
But currently I'm a bit confused, part of the topic seems to me very far away from my real life in the game. Let me explain it : I raid quasi strictly 10-men raids, I'm the main healer of the guild, mostly I work hand-in-hand with a palaheal, and we can have some help as 3° healer by a shaman (when she's there) or a drood (the two of them dps in first specialisation). My guild, it's part of the real life, is mostly made of armor lovers (full of wars, and paladins) and we have a lot of dwarf hunters, so for example, we have down saurcroc with 3 wars (1 prot + 2 dps), 2 pal (1 prot + 1 heal), 1 dk, 1 mag, 2 hunters and me, what this means is that most of the time I do not have any of the usual raids buffs ... so discussing about BT with heroism is no help for me.
So I'm not the disci spamming shields on the raid in a 25-men, I'm not staying just focused on the tank, and I do not benefit from part of the "normal" raid buffs ...

I was tending to a 800 haste cap (cap decides from the reading of previous post), and now, after all of those maths, I don't know what I can or must do ! (perhaps it's due to my poor english and miscomprehension?)
For me this discussion is important, and as I'm not able to do the math part and if we - as priest- need further data I volunteer to implement a data saver in my log and to propose this to other priests in my realm.

#45 Elimbras

Elimbras

    Don Flamenco

  • Members
  • 477 posts

Posted 17 February 2010 - 01:15 PM

If you're not spamming shield, your haste cap will be a 50% haste, with raids buffs and enlightment. Recall that haste is multiplicative with gear and different effects (for example, 6% enlightment, 5% wrath of the air totem, and 10% from gear would be 1.06*1.05*1.1 = 1.2243 = 22.43% haste).

You don't need absolutely to be at that cap. But haste is one of the best throughput stats if you have enough mana (which you should).

#46 kamaia

kamaia

    Glass Joe

  • Members
  • 19 posts

Posted 17 February 2010 - 05:23 PM

Overhealing as long as you do not go OOM is not harmful, which means knowing overhealing is not that vital.

...

The Custom Role is designed to let you know how to improve your Throughput and Sustainability given a specific fight you found challenging. Since we all know the game is highly random based, every fight will not end up being exactly the same, so I did try to avoid having you be too detailed.


While I agree, "Overhealing as long as you do not go OOM is not harmful," your conclusion that "knowing overhealing is not that vital," does not follow. Overhealing reduces the effectiveness of spellpower, so if you're trying to decide how to itemize, knowing your overhealing rate is vital. Consider the limit of very high spellpower. If every FH you cast heals for 100k, then getting enough spellpower to bump that up to 101k wouldn't make any difference in your throughput at all. This is a problem with Rawr, and indeed most healing theory crafting, that it tends to make the rather unrealistic assumption that you have an unlimited bucket of health to heal into.

#47 The Not So Evil

The Not So Evil

    Piston Honda

  • Members
  • 246 posts

Posted 17 February 2010 - 07:24 PM

However problematic you think theorycrafting assumption about unlimited bucket of health is, your assumption is equally problematic. Right now no healer can fill up a tank with 1 heal. Thus there is possibility for more extra bonus healing to have its effect. You can't fight a non-extreme with an extreme.
Rawr - Coder of HolyPriest (Healer) and ShadowPriest (DPS) Modules.
Get Your Rawr 2.3.x!

#48 kamaia

kamaia

    Glass Joe

  • Members
  • 19 posts

Posted 24 February 2010 - 06:30 PM

However problematic you think theorycrafting assumption about unlimited bucket of health is, your assumption is equally problematic. Right now no healer can fill up a tank with 1 heal. Thus there is possibility for more extra bonus healing to have its effect. You can't fight a non-extreme with an extreme.


Obviously not 100% of heals cast result in an overheal. I used the extreme example only to illustrate the problem with the assumption, not because I considered it a realistic situation. From my empirical observation, at least in ICC-10, the number is closer to 50%. I would welcome anyone else who can provided numbers to do so, since there are obviously methodological issues with mine, but it's the best I have at the moment. Note that the key number here is the percent of heals that result in an overheal (however small) and not the percent of overhealing.

With the no-overhealing assumption you are over-estimating the value of spellpower considerably. I'm not sure how much of a code change it would require, but it would be very nice if Rawr had a parameter like this.

#49 The Not So Evil

The Not So Evil

    Piston Honda

  • Members
  • 246 posts

Posted 25 February 2010 - 04:26 PM

No matter how we deal with this we're going to end down the path of Heal and Damage granularity, which I want to avoid because there are too many variables to deal with it.

The reason I find that Haste and Crit is *less* worth than Spell Power even in your scenario with 50% overheal, is that this extra Haste may just cause another healer (who earlier landed the heal in front of you causing your overheal) to overheal.

And when it all comes down to individual stats, its Regen stats (Int/Spi/MP5) vs Throughput stats (SP/Hst/Crt). If you can sustain your current healing, more Regen stats is not needed. Crit is generally unreliable, which can be an issue. That leaves us with Haste and SP. More haste can lead to less overhealing or more overhealing, but it is a way to make sure you land a heal faster. SPP makes your heals hit harder.

So what is the value of haste?

(This is where I let the reader realize that it has to be up to ones individual style to make this final decision.)
Rawr - Coder of HolyPriest (Healer) and ShadowPriest (DPS) Modules.
Get Your Rawr 2.3.x!

#50 Glowyrm

Glowyrm

    Glass Joe

  • Members
  • 9 posts

Posted 26 February 2010 - 12:15 AM

I really don't like the kind of argument saying "Haste increases the number of heals you cast, therefore your holy concentration uptime".
Technically, this is really true.
But the effect is marginal, and people shall not count on it. If you want to increase your holy concentration uptime, you gear for crit, and/or you change your spells selections (with short spells that can trigger it). You don't gem for haste.
The gain in holy concentration uptime is far from the loss of the increased number of cast.

Just for a quick numerical evaluation :
HC is an 8s buff that procs after any crit.
I'll take the best situation for haste : the charater currently has no haste, 30% crit, and can choose between 10% haste and 10% crit.
He maintains a cycle of 1 POM - 1 COH - Renew - Renew - SOL-FH, that takes roughly 8s (including lag).
In 8s, 2 spells can triggers HC.
The current downtime is 0.7^2 = 0.49. Uptime is 51%.

With 10% more crit, downtime is 0.6^2 = 0.36. Uptime is 64%. The gain is 13% uptime.
With 10% haste, the character can know cast 2.2 HC-friendly spells per 8s. Downtime is 0.7^2.2=0.456. Uptime is 54.4%. The gain is 3.4% uptime for 10% haste, in a really favorable scenario.


I'm not sure but I think I see something wrong with this. You can't apply the 10% haste to the amount of spells you cast but you have to apply it to the GCD and casting times then look at how many spells you can cast.

The problem is casting 2 HC procing spells in 8 seconds with 0 haste and then only casting 2.2 with 10% haste.

If you have 0 haste your GCD is 1.5. Let's say you cast a cycle of PoM, CoH, Renew, Renew, Flash Heal. It takes about 8 seconds to spam those 5 spells. (With your cycle, it should only take about 6 seconds since the last spell is instant, even with some lag)

If you gain 10% haste, your GCD is now 1.36. In that same 8 second window, you can cast 5.9 spells, we'll say 6 spells though since it really takes slightly less than a full 8 seconds to cast the original 5 spell cycle.

Adding 10% haste allowed a whole extra spell to be cast in the same window of time.

So adding 10% haste really should look like .7^3 = 0.343 or 34.3% downtime and a 65.7% uptime. That is a 14.7% increase over 0 haste.

If I'm completely off let me know, maybe you could do a few more examples and explain your math more in depth for me?

#51 gillisthom

gillisthom

    Glass Joe

  • Members
  • 2 posts

Posted 26 February 2010 - 01:15 AM

Actually there is no softcap for disc priest, atm I have over 700 haste and after casting PWS GCD is reduced below 1.0 sec. Even with 700+ haste and using engineering glove enchant my FHs are 0.8s and still slightly slower than the GCD.
I believe that at hard cap, 1180 haste (36% from gear), it will be at 0.75 sec. It seems even thought the tooltip says spellhaste the mechanics are the same as PI or Heroism/Bloodlust.

#52 Glowyrm

Glowyrm

    Glass Joe

  • Members
  • 9 posts

Posted 26 February 2010 - 02:30 AM

Actually there is no softcap for disc priest, atm I have over 700 haste and after casting PWS GCD is reduced below 1.0 sec. Even with 700+ haste and using engineering glove enchant my FHs are 0.8s and still slightly slower than the GCD.
I believe that at hard cap, 1180 haste (36% from gear), it will be at 0.75 sec. It seems even thought the tooltip says spellhaste the mechanics are the same as PI or Heroism/Bloodlust.


There is a limit on the GCD and that is 1 second.

Whatever you are seeing, either you're looking at it wrong or there is latency issues.

#53 Elimbras

Elimbras

    Don Flamenco

  • Members
  • 477 posts

Posted 26 February 2010 - 02:49 PM

I'm not sure but I think I see something wrong with this. You can't apply the 10% haste to the amount of spells you cast but you have to apply it to the GCD and casting times then look at how many spells you can cast.
[...]
If you have 0 haste your GCD is 1.5. Let's say you cast a cycle of PoM, CoH, Renew, Renew, Flash Heal. It takes about 8 seconds to spam those 5 spells. (With your cycle, it should only take about 6 seconds since the last spell is instant, even with some lag)


That's a minor point, but even for an instant, you need to take the GCD into account. You will be locked for that time, and even if your last SOL heal occurs a T=6s, the next sequence will starts at T=7.5s (or T=8s with some lag).

If you gain 10% haste, your GCD is now 1.36. In that same 8 second window, you can cast 5.9 spells, we'll say 6 spells though since it really takes slightly less than a full 8 seconds to cast the original 5 spell cycle. Adding 10% haste allowed a whole extra spell to be cast in the same window of time.


In fact, we're back into granularity questions, and cycle changes. These are tricky point with haste, and there are no real proper way to handle them in a general case.
You could well argue that you would use your cycle with 10% haste.
You could also argue that with 10% haste, my previous cycle requires 6.81s, and including lag, it will be more that 7s, and you will keep the same cycle. Then in an arbitrary 8s interval, you'll have in mean really 2.2 HC-friendly casts.

I think that if you want to treat it correctly, but in a general way, the following approach would be the correct one :
1/ Determine which frequence you use PoM / COH (can be 7s at best). That leads to a cycle length T, which should not really depend on your haste.
2/ Determine how many cast you can squeeze in that period : you get a real value N = T * (1+haste) / 1.5
3/ Consider that 2 cast at least are POM and COH, so you get at most T*(1+haste)/1.5 - 2 HC-friendly cast.
4/ Take into account your SOL casts : either with a fixed number A of cast, or with a proportion B of free casts.
5/ Your final number of HC-friendly cast is then either K=T*(1+haste)/1.5 - (2+A), or K = (1-B)*[T*(1+haste)/1.5 - 2]
6/ In 8s, you get in mean K*8.0/T HC-friendly cast.

If you want it rigorously, you need to get rid of real cast number, and consider the probability Pn of having cast exactly N HC-friendly spells in the last 8s, where the current time is taken uniformly in the cycle.
For example, assuming a 7.5s with COH - POM - SOL - Renew - Renew (and 0% haste)
my mean number of HC-spells in 8s is 2 / 7.5*8 = 2.13.
But if I consider t in [0-4.5] or in [5-6] or in [6.5-7.5], I have exactly 2 Renew cast in the last 8s before T. That's a probability p2 = 6.5/7.5= 0.866
If t is in [4.5 - 5] or [6 - 6.5], I have 3 Renew in the last 8s. Probability p3 is then p3 = 1/7.5 = 0.13333.
Note that we have exactly 2 * p2 + 3 * p3 = 2.1333, as it shall be.

Now, you can have precise HC uptime, with is
  HC_{Uptime} =  1 - HC_{Downtime} = 1 - \sum_{n=0}^\infty P_n * (1 - \%_{Crit})^{n}
But that's the kind of thing that are not really sexy to compute, and change in weird ways with haste.
Due to the convexity of x -> a^x function, the approximation HC ~ 1 - (1-Crit)^Mean is not exact, but it is not too far.

#54 kamaia

kamaia

    Glass Joe

  • Members
  • 19 posts

Posted 26 February 2010 - 10:57 PM

To investigate the effect of both haste and crit on Holy Concentration uptime, I decided to run a monte-carlo analysis. I assumed the rotation outlined above (ProM-CoH-Renew-Renew-FH) and calculated the uptime for a simulated five minute fight with zero haste. I ran thirty thousand simulation runs for each crit value and plotted the median and 90% confidence interval. The results are plotted below.

http://chart.apis.go...0&chxl=2:||Crit Chance||3:||HC Uptime|&chco=aaddff,0033ff,aaddff&chtt=Holy Concentration Uptime with 0% Hastehttp://chart.apis.google.com/chart?cht=lxy&chs=350x250&chd=e:AABRCjD1FHGZHrI9KPLhMzOEPWQoR6TMUeVwXCYUZma3cJdbetf.hRijj1lHmZnqo8qOrgsyuEvWwox6zM0d1v3B4T5l638J9b-t..,AABSD3HUKVNgQnTgWUY-bgd1gEiRkTmJn0pirJslt.vPwaxmynzl0e1V2L233h4M4x5T516R6r7H7e7y8H8a8s889L9W9j9v95-D-K,AABRCjD1FHGZHrI9KPLhMzOEPWQoR6TMUeVwXCYUZma3cJdbetf.hRijj1lHmZnqo8qOrgsyuEvWwox6zM0d1v3B4T5l638J9b-t..,AAEJI.M2QlUGXeaddZgCikkznBo.q4smuHvqxAyOzb0f1d2Y3O3.4t5Y5-6h7A7e758S8p889O9e9v98-I-U-e-n-v-2-8.E.K.P.U,AABRCjD1FHGZHrI9KPLhMzOEPWQoR6TMUeVwXCYUZma3cJdbetf.hRijj1lHmZnqo8qOrgsyuEvWwox6zM0d1v3B4T5l638J9b-t..,AAJBOMS6XIa8ebhekPm-pSratZvJw8yRzt092C3I3.415p6U677f8E8g839P9k93-J-W-j-v-5.C.J.Q.V.Z.d.g.i.l.m.n.o.r.r&chxt=x,y,x,y&chxr=0,0.00,50.00|1,0.00,100.00&chxl=2:||Crit Chance||3:||HC Uptime|&chco=aaddff,0033ff,aaddff&chtt=Holy Concentration Uptime with 25% Haste

I then repeated the analysis with 25% haste. The mean uptime value was nearly identical -- within the width of the line on one plot so not shown overlapping. The only noticeable effect was that the confidence interval narrowed slightly. This means that on the fights where you get very lucky or very unlucky with crit procs, haste will move HC uptime closer to the mean.

I can say with a fair degree of confidence that haste does not affect HC uptime in any meaningful way. I confirmed that the same is true for inspiration using a discipline rotation. I suspect that this true for any similar ability.

----
Edit: I replaced the word "mean" with "median," since that is what is actually plotted. I changed "95% confidence bounds" to "90%." The three lines corespond to the 5th, 50th, and 95th percentile of uptimes from the simulation runs. Thus the uptime you see in a given fight should fall between the top- and bottom-most lines 90% of the time.

#55 jdh79

jdh79

    Piston Honda

  • Members
  • 114 posts

Posted 18 March 2010 - 05:12 PM

One of the things that I think has to be considered in considering the value of haste is the impact of lag/latency/reaction time, especially for holy priests. For most people and most servers, I would be surprised if there was less than an average 200 ms combination of latency/server side lag/reaction time. That means that with 0% haste, you would not be able to fit in 3 renews between CoH cooldowns, since the time lost makes the effective GCD more like 1.7 seconds. Assuming 200 ms, you would need around 20% raid buffed haste (requires about 400 haste rating from gear + standard raid buffs) to be able to fit in a 3rd instant cast between CoH cooldowns. To get a 4th cast in, you would likely need to be close to the soft haste cap and close to 1100 haste from gear.

I question the value of stacking haste past about 400-500 when you are using a instant cast heavy renew-CoH-PoM playstayle. Obviously, if you are using a lot of FH and PoH, it becomes more valuable, but for the instant cast playstyle, it seems like there is little benefit to stacking haste that doesn't get you an extra spell cast. Once you can hit the threshold to be able to get that 4th instant cast in, obviously it becomes much more valuable. However, until I have access to almost all of the 264+ haste/spirit pieces (and only 2 T10 items have haste on them unfortunately), I don't think it makes sense for me to gem pure haste or pass on spirit/crit items that are a SP upgrade.

Another factor is, if you are in a 25 man raid environment where replenishment uptime isn't always optimal (i.e. often 0-1 replenishers in a 25 man raid), would that not decrease the value of haste since it will lead to mana issues? Right now, it seems that only ret pallies are the only remaining 100% reliable replenishers. End game hunters typically do not run SV anymore, apparently destro locks take a huge DPS hit from speccing for replenishment, and there seems to be a trend for shadow priests with T10 4 pc to ignore replenishment uptime, since maintaining it reduces DPS.

#56 Pasch

Pasch

    Glass Joe

  • Members
  • 20 posts

Posted 19 March 2010 - 11:27 AM

and there seems to be a trend for shadow priests with T10 4 pc to ignore replenishment uptime, since maintaining it reduces DPS.

Only during heroism/PI.

#57 Rubytrix

Rubytrix

    Glass Joe

  • Members
  • 1 posts

Posted 01 April 2010 - 08:07 AM

Since no one else bothered to do it, I parsed the ICC10 log file mentioned above for rates of overhealing. That is, fraction of spells cast that result in overhealing.

Looks like our disco buddy (Baptistine) had over healing rates around 50%, depending on the spell. But they ranged wildly from 8% for Greater Heal (how in the world?) to 93% for Holy Nova. 38% for CoH in Holy mode, 64% for Penance.

I don't know if I trust these numbers, as this is my first time digging around in the combat logs like this. GH should have a high Overheal%, but maybe it was only used on a fight with a particular mechanic. The other holy priest (Khunanya) had >90% overhealing rate on his GH's though.

For penance, you'd expect with 64% OH% that the second tick must have OH'd and the third tick would be useless, but the snipe rate for that is only 2%, i.e. only 2% of his penance dots did nothing, rather than the 33% expected. So perhaps there was a lot of damage in between ticks; I'm not sure.


Perl implementation started from the above snippet. I broke this down per/healer and per/spell for completeness.
#!/usr/bin/perl
use warnings;
use strict;

my $char = '"Swampdonky"'; # Character to analyze (use quotes)
#my $char = '"Baptistine"'; # Character to analyze (use quotes)

my %HEALS = ();

my ($heal, $overheal, $crit, $overcrit) = (0, 0, 0, 0);

my ($heal_count, $overheal_count, $crit_count, $overcrit_count) = (0, 0, 0, 0);

while (<STDIN>) {
    next unless /SPELL_HEAL/;
    my @event = split /,/;
    
    #next unless $event[2] eq $char;
    my $toon    = $event[2];
    my $spell   = $event[ 8];
    my $heal    = $event[10];
    my $over    = $event[11];
    my $is_crit = ($event[13] !~ /nil/);

    $toon =~ s/"//g;
    $spell =~ s/"//g;
   
    if ( not exists $HEALS{$toon}{$spell} ) { 
      $HEALS{$toon}{$spell} = {
        crit=>{ count=>0, size=>0, over_size=>0, over_count=>0, bad_size=>0, bad_count=>0 }, 
        heal=>{ count=>0, size=>0, over_size=>0, over_count=>0, bad_size=>0, bad_count=>0 }, 
      };
    }
    
    my $data;
    if ( $is_crit ) { $data = $HEALS{$toon}{$spell}{'crit'} } 
    else            { $data = $HEALS{$toon}{$spell}{'heal'} } 


    $data->{'count'}++;
    $data->{'size' } += $heal;

    if ( $over > 0 ) { 
      $data->{'over_size' } += $over;
      $data->{'over_count'}++;
    }

    if ( $heal == 0 ) { 
      $data->{'bad_size' } += $over;
      $data->{'bad_count'}++;
    }
}



printf "%-30s %-30s %10s %10s %10s | %10s %10s %10s | %10s %10s %10s | %10s %10s %10s\n",
        "Toon",
        "Spell",
        "Count",
        "RawHeals",
        "TotalHeals",
        "CritRate",
        "CritFrac",
        "SnipedRate",
        "ORate",
        "OHealRate",
        "OCritRate",
        "OFrac",
        "OHealFrac",
        "OCritFrac",



        ;
foreach my $toon ( sort keys %HEALS ) { 
  next if scalar keys %{$HEALS{$toon}} < 4;
  foreach my $spell ( sort keys %{$HEALS{$toon}} ) { 
    my $heal = $HEALS{$toon}{$spell}{'heal'};
    my $crit = $HEALS{$toon}{$spell}{'crit'};
    my $total_count = $heal->{'count'} + $crit->{'count'};
    my $total_heal_size  = $crit->{'size'} + $heal->{'size'};
    my $total_over_size = $crit->{'over_size'} + $heal->{'over_size'};
    my $total_size = $total_heal_size + $total_over_size;
    printf "%-30s %-30s %10u %9uk %9uk | %9.0f%% %9.0f%% %9.0f%% | %9.0f%% %9.0f%% %9.0f%% | %9.0f%% %9.0f%% %9.0f%%\n", 
            $toon, 
            substr($spell, 0, 30), 
            $total_count,
            $total_heal_size / 1000,
            $total_size / 1000,
            $crit->{'count'} / $total_count * 100,
            $crit->{'size' } / $total_size  * 100,
            ($crit->{'bad_count'} + $heal->{'bad_count'}) / $total_count * 100,
            ($heal->{'over_count'} + $crit->{'over_count'}) / $total_count * 100,
            $heal->{'over_count'} / ($heal->{'count'}||1) * 100,
            $crit->{'over_count'} / ($crit->{'count'}||1) * 100,
            ($heal->{'over_size' } + $crit->{'over_size' }) / $total_size  * 100,
            $heal->{'over_size' } / (($heal->{'size'}+$heal->{'over_size'})||1) * 100,
            $crit->{'over_size' } / (($crit->{'size'}+$crit->{'over_size'})||1) * 100,

            ;
  }
}


Toon: Who cast it
Spell: Spell cast
Count: Number of times cast
RawHeals: Real healing accomplished (i.e. excluding overheals)
TotalHeals: Total healing, including overheals

CritRate: % of casts resulting in crits
CritFrac: % of real healing resulting from crits
SnipedRate: % of casts resulting in 0 real healing (i.e. too slow or wrong target)

ORate: % of casts resulting in overhealing
OHealRate: % of non-crits resulting in overhealing
OCritRate: % of crits resulting in overhealing

OFrac: % of total that is overhealing
OHealFrac: % of non-crit subtotal that is overhealing
OCritFrac: % of crit subtotal that is overhealing

Toon                           Spell                               Count   RawHeals TotalHeals |   CritRate   CritFrac SnipedRate |      ORate  OHealRate  OCritRate |      OFrac  OHealFrac  OCritFrac
Adrianromero                   Death Coil                              9        60k        89k |         0%         0%         0% |        67%        67%         0% |        33%        33%         0%
Adrianromero                   Drain Life                             21        31k        36k |         0%         0%         0% |        24%        24%         0% |        14%        14%         0%
Adrianromero                   Fel Synergy                           891       436k       763k |         0%         0%         0% |        64%        64%         0% |        43%        43%         0%
Adrianromero                   Master Healthstone                      2         8k         8k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Adrianromero                   Siphon Life                          1785      3200k      5619k |         0%         0%         0% |        81%        81%         0% |        43%        43%         0%
Baptistine                     Binding Heal                           18       136k       182k |        72%        59%         6% |        44%        40%        46% |        25%        28%        24%
Baptistine                     Circle of Healing                     167       916k      1201k |        29%        31%         0% |        38%        32%        53% |        24%        21%        28%
Baptistine                     Desperate Prayer                        8        83k        93k |        50%        55%         0% |        38%        25%        50% |        11%        20%         5%
Baptistine                     Divine Hymn                            30       253k       327k |        40%        40%         0% |        67%        61%        75% |        23%        23%        22%
Baptistine                     Empowered Renew                       110       375k       418k |        35%        43%         0% |        19%        19%        18% |        10%        11%         9%
Baptistine                     Flash Heal                           2302     18804k     26917k |        44%        36%         1% |        58%        51%        67% |        30%        26%        34%
Baptistine                     Glyph of Power Word: Shield          1124      2369k      3315k |        43%        39%         0% |        44%        41%        48% |        29%        27%        30%
Baptistine                     Greater Heal                          168      3705k      3886k |        32%        36%         0% |         8%         9%         7% |         5%         5%         5%
Baptistine                     Holy Nova                             123       376k       720k |        41%        27%         0% |        93%        96%        90% |        48%        48%        47%
Baptistine                     Leeching Swarm                         65        87k        87k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Baptistine                     Penance                               782      3959k      6311k |        44%        34%         2% |        64%        62%        66% |        37%        37%        38%
Baptistine                     Prayer of Healing                     205      1084k      1608k |        44%        37%         0% |        58%        54%        64% |        33%        30%        35%
Baptistine                     Prayer of Mending                     892      5227k      6950k |        40%        39%         0% |        51%        46%        59% |        25%        21%        28%
Baptistine                     Spirit of Redemption                    8         0k         0k |        25%        33%         0% |         0%         0%         0% |         0%         0%         0%
Cassharn                       Ardent Defender                         4        50k        50k |        25%        31%         0% |         0%         0%         0% |         0%         0%         0%
Cassharn                       Holy Light                              5        36k        38k |         0%         0%         0% |        40%        40%         0% |         4%         4%         0%
Cassharn                       Lay on Hands                            3       187k       187k |        33%        27%         0% |         0%         0%         0% |         0%         0%         0%
Cassharn                       Leeching Swarm                         65        96k        96k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Cassharn                       Master Healthstone                      1         4k         4k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Cassharn                       Seal of Light                         118        91k       139k |         0%         0%         0% |        54%        54%         0% |        34%        34%         0%
Darklawlz                      Ancestral Awakening                     8        16k        22k |         0%         0%         0% |        38%        38%         0% |        23%        23%         0%
Darklawlz                      Chain Heal                            116       691k      1107k |        34%        26%         0% |        68%        66%        72% |        38%        35%        41%
Darklawlz                      Earth Shield                           26       122k       187k |        31%        30%         0% |        62%        67%        50% |        34%        38%        30%
Darklawlz                      Lesser Healing Wave                     6        45k        76k |        50%        34%         0% |        83%       100%        67% |        41%        50%        31%
Darklawlz                      Riptide                                13        56k        74k |        38%        36%         0% |        46%        38%        60% |        25%        24%        26%
Famous                         Beacon of Light                        14        99k       180k |         0%         0%         0% |        86%        86%         0% |        45%        45%         0%
Famous                         Flash of Light                         65       415k       612k |        43%        36%         0% |        58%        49%        71% |        32%        30%        34%
Famous                         Glyph of Holy Light                    10        15k        22k |         0%         0%         0% |        50%        50%         0% |        33%        33%         0%
Famous                         Holy Light                              5        84k       149k |        60%        38%         0% |       100%       100%       100% |        44%        48%        42%
Famous                         Holy Shock                             26       196k       279k |        42%        37%         0% |        58%        60%        55% |        30%        30%        30%
Kahoo                          Death Coil                              1         6k         6k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Kahoo                          Fel Synergy                           681       631k      1226k |         0%         0%         0% |        95%        95%         0% |        49%        49%         0%
Kahoo                          Leeching Swarm                         65        89k        89k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Kahoo                          Soul Leech                             65       147k       272k |         0%         0%         0% |        89%        89%         0% |        46%        46%         0%
Khunanya                       Binding Heal                            2         7k         7k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Khunanya                       Circle of Healing                     432      1560k      2365k |        27%        24%         0% |        62%        60%        69% |        34%        33%        35%
Khunanya                       Desperate Prayer                        1         6k         6k |       100%       100%         0% |         0%         0%         0% |         0%         0%         0%
Khunanya                       Devouring Plague                       38         5k        10k |         0%         0%         0% |        82%        82%         0% |        45%        45%         0%
Khunanya                       Empowered Renew                       235       488k       670k |        28%        27%         0% |        39%        36%        47% |        27%        25%        31%
Khunanya                       Flash Heal                             59       410k       603k |        10%        10%         0% |        64%        60%       100% |        32%        29%        44%
Khunanya                       Greater Heal                           16       235k       416k |        31%        24%         0% |        94%        91%       100% |        43%        45%        42%
Khunanya                       Holy Nova                               8        23k        37k |        12%        11%         0% |        62%        57%       100% |        38%        34%        50%
Khunanya                       Leeching Swarm                         65        88k        88k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Khunanya                       Prayer of Healing                       5        27k        53k |        20%        14%         0% |       100%       100%       100% |        48%        47%        50%
Khunanya                       Prayer of Mending                     111       784k      1064k |        31%        30%         0% |        53%        45%        71% |        26%        22%        32%
Ladsexington                   Lifebloom                              47       227k       438k |        19%        13%         0% |        94%        92%       100% |        48%        48%        48%
Ladsexington                   Living Seed                             2         5k         8k |         0%         0%         0% |        50%        50%         0% |        34%        34%         0%
Ladsexington                   Regrowth                               19       130k       216k |        53%        37%         0% |        79%        78%        80% |        40%        40%        40%
Ladsexington                   Swiftmend                               8        97k       133k |        38%        35%         0% |        75%        60%       100% |        27%        28%        25%
Lessa                          Leeching Swarm                         65        72k        72k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Lessa                          Lifebloom                             102       434k       816k |        15%         9%         0% |        95%        95%        93% |        47%        47%        45%
Lessa                          Living Seed                            52       137k       178k |         0%         0%         0% |        48%        48%         0% |        23%        23%         0%
Lessa                          Nourish                               159      1227k      2057k |        67%        44%         1% |        81%        79%        81% |        40%        38%        41%
Lessa                          Regrowth                               73       492k       850k |        60%        40%         3% |        81%        76%        84% |        42%        43%        42%
Lessa                          Tranquility                            34       220k       392k |         0%         0%         0% |        88%        88%         0% |        44%        44%         0%
Mirilyn                        Death Coil                              1         2k         4k |         0%         0%         0% |       100%       100%         0% |        50%        50%         0%
Mirilyn                        Fel Synergy                           497       305k       557k |         0%         0%         0% |        83%        83%         0% |        45%        45%         0%
Mirilyn                        Leeching Swarm                         65        81k        81k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Mirilyn                        Master Healthstone                      1         6k        12k |       100%        57%         0% |       100%         0%       100% |        43%         0%        43%
Mirilyn                        Soul Leech                            137       236k       409k |         0%         0%         0% |        75%        75%         0% |        42%        42%         0%
Nassah                         Healing Touch                           9       190k       222k |        22%        33%         0% |        33%        43%         0% |        15%        22%         0%
Nassah                         Lifebloom                             245      1501k      2376k |        13%         9%         0% |        70%        65%       100% |        37%        34%        48%
Nassah                         Living Seed                           200       688k       832k |         0%         0%         0% |        34%        34%         0% |        17%        17%         0%
Nassah                         Master Healthstone                      1         4k         4k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Nassah                         Nourish                               536      4963k      6119k |        40%        41%         0% |        33%        27%        41% |        19%        16%        22%
Nassah                         Regrowth                              218      1492k      2355k |        42%        33%         0% |        66%        60%        73% |        37%        34%        39%
Nassah                         Swiftmend                             139      1614k      1882k |        14%        15%         0% |        40%        40%        42% |        14%        15%        13%
Reanimated                     Ancestral Awakening                   102       234k       318k |         0%         0%         0% |        42%        42%         0% |        26%        26%         0%
Reanimated                     Chain Heal                           1243      8553k     13725k |        43%        33%         0% |        66%        61%        73% |        38%        35%        40%
Reanimated                     Earth Shield                          123       535k       618k |        27%        35%         0% |        29%        29%        30% |        13%        17%         9%
Reanimated                     Healing Wave                            3        32k        50k |         0%         0%         0% |        67%        67%         0% |        35%        35%         0%
Reanimated                     Leeching Swarm                         65        79k        79k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Reanimated                     Lesser Healing Wave                   100       706k      1160k |        60%        44%        10% |        70%        60%        77% |        39%        35%        41%
Reanimated                     Riptide                               109       474k       743k |        42%        33%         0% |        71%        65%        78% |        36%        35%        38%
Semirhagge                     Death Pact                              1        13k        13k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Semirhagge                     Death Strike                            1         3k         3k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Semirhagge                     Leeching Swarm                         61        83k        83k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Semirhagge                     Unholy Strength                       353       397k       665k |        28%        22%         0% |        71%        70%        72% |        40%        40%        40%
Themanone                      Beacon of Light                       228      1761k      3132k |         0%         0%         0% |        90%        90%         0% |        44%        44%         0%
Themanone                      Flash of Light                        169       900k      1557k |        58%        39%         0% |        84%        73%        92% |        42%        39%        44%
Themanone                      Holy Light                             47       717k      1309k |        51%        34%         0% |        94%        96%        92% |        45%        45%        45%
Themanone                      Holy Shock                             22       150k       257k |        50%        35%         0% |        91%        91%        91% |        42%        40%        42%
Touchmyclam                    Healing Touch                           1        10k        21k |         0%         0%         0% |       100%       100%         0% |        50%        50%         0%
Touchmyclam                    Living Seed                            24        60k        80k |         0%         0%         0% |        46%        46%         0% |        25%        25%         0%
Touchmyclam                    Nourish                                71       470k       700k |        51%        41%         0% |        58%        46%        69% |        33%        25%        37%
Touchmyclam                    Regrowth                               38       233k       399k |        53%        37%         0% |        84%        72%        95% |        41%        41%        42%
Utholas                        Beacon of Light                       324      3669k      6664k |         0%         0%         0% |        88%        88%         0% |        45%        45%         0%
Utholas                        Crazy Alchemist's Potion                3        13k        23k |        33%        24%         0% |       100%       100%       100% |        43%        37%        50%
Utholas                        Flash of Light                        188      1163k      2072k |        40%        28%         0% |        83%        79%        88% |        44%        42%        46%
Utholas                        Glyph of Holy Light                   459       792k      1431k |         0%         0%         0% |        79%        79%         0% |        45%        45%         0%
Utholas                        Holy Light                            182      3027k      5562k |        47%        31%         0% |        96%        95%        96% |        46%        45%        46%
Utholas                        Leeching Swarm                         52        73k        73k |         0%         0%         0% |         0%         0%         0% |         0%         0%         0%
Utholas                        Rejuvenation Potion                     2         9k        12k |        50%        50%         0% |        50%       100%         0% |        25%        50%         0%
Utholas                        Seal of Light                          24        21k        38k |         0%         0%         0% |        83%        83%         0% |        45%        45%         0%
Xaali                          Ancestral Awakening                   284      1475k      1677k |         0%         0%         0% |        23%        23%         0% |        12%        12%         0%
Xaali                          Chain Heal                            798      6010k      9060k |        34%        29%         0% |        68%        61%        80% |        34%        32%        36%
Xaali                          Earth Shield                          332      1584k      1944k |        36%        41%         0% |        38%        34%        45% |        19%        17%        20%
Xaali                          Healing Wave                          173      3993k      4291k |        33%        39%         0% |        17%        13%        26% |         7%         6%         8%
Xaali                          Lesser Healing Wave                   294      2341k      3044k |        52%        48%         0% |        38%        30%        46% |        23%        19%        25%
Xaali                          Riptide                               305      1655k      1999k |        27%        31%         0% |        31%        29%        39% |        17%        17%        18%
Ándras                        Ancestral Awakening                    18        36k        44k |         0%         0%         0% |        28%        28%         0% |        17%        17%         0%
Ándras                        Chain Heal                            271      1744k      2881k |        38%        27%         0% |        76%        76%        75% |        39%        39%        40%
Ándras                        Earth Shield                            4        14k        14k |        75%        82%         0% |         0%         0%         0% |         0%         0%         0%
Ándras                        Lesser Healing Wave                     4        28k        56k |        50%        31%         0% |       100%       100%       100% |        50%        50%        50%
Ándras                        Riptide                                35       177k       271k |        46%        37%         0% |        69%        74%        62% |        35%        38%        32%


#58 SpaceyX

SpaceyX

    Glass Joe

  • Members
  • 1 posts

Posted 11 April 2010 - 09:16 PM

Now that heals have been nerfed in pvp wouldn't haste result in a higher HPS in PVP?

#59 syeren

syeren

    Don Flamenco

  • Members
  • 280 posts

Posted 12 April 2010 - 01:38 AM

Now that heals have been nerfed in pvp wouldn't haste result in a higher HPS in PVP?


That's one of the reasons why good Priests get the haste offset for their PVP gear. Hydra posted a full gear guide and stuff on http://hydramist.net if you're interested in looking into it.

#60 moowalk

moowalk

    Don Flamenco

  • Members
  • 283 posts

Posted 12 April 2010 - 03:48 AM

Good priests don't get crit because so many of their defensive spells can't crit. And their offensive spells that can crit only crit at 1.5x damage before resilience.

Priest mana regen is peeling from team mates and drinking.

So spellpower and haste are left as a viable stacking stat. Some priests go spell power, some go haste. If you're part of a good team you'll play less of a healing role and more of an offensive/utility role. Haste is probably better for this.

Stacking haste has very little to do with the healing nerf in arena, as haste stacking happened long before that change was implemented.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users