[RestoSham] Mp5 and Haste

Topics: Rawr.RestoSham
Jan 29, 2010 at 6:31 PM

I will gladly fill out a bug report if this turns out to be one, but I bet it makes sense and I just can't figure out why.  I'm looking at the sustained relative stat values for my resto shammy (I know I know, insert warnings here about relative stat values), and it gives a high number for mp5.  I believe that means that if I were to spam continuously I would run out of mana, so I have to slow down, but wouldn't have to slow down as much if I had more mp5.  However, it ALSO gives a small sustained value for haste.  How could haste help me if I have to slow down casting anyway to conserve mana?

Jan 29, 2010 at 6:35 PM

Probably because haste naturally increases your HPS, and the extra OOM penalty you get for casting (and OOMing) faster just doesn't outweigh the HPS benefit as far as the model is concerned.

Jan 29, 2010 at 6:49 PM

Oh so maybe I just don't understand the way it handles OOM.  If it spams until OOM then waits, you could get outside the 5 second rule and regen extra mana, so yeah in that case haste could be increasing the "sustained" number (thought that doesn't sound very "sustained" to me).  But if it does not account for the 5 second rule, then I don't see how haste could increase the amout of mana you can convert in heals (thus increasing your average hps in an OOM situation).

Jan 29, 2010 at 9:21 PM
Edited Jan 29, 2010 at 9:27 PM

As far as I can tell (this part of the code is still very confusing for me), all it does is divide MAPS by MUPS use that as a factor to penalize sustained HPS. It doesn't do any rotation or FSR simulation or anything.

The reason you're seeing positive value on sustained is basically because a given amount of haste is unlikely to increase your MAPS/MUPS factor fast enough to counteract the direct HPS benefit casting faster gives.

To test, you can set both healing styles to the same setting (I used RT+HW since it's a mana beast) and check again, if you're on a setup that goes OOM, sustained should be less than burst. Change the "Time Spent Casting" just until MP5 disappears off the list. Haste should be pretty much equal on both sides now (you can't get it perfect with the 1% granularity of the slider).

(EDIT: Actually, after writing this, I understand that code a lot better! ^^
Still kind-of weird the way it is set up though >.> )

Jan 29, 2010 at 11:02 PM

Ah HA!  Using your formula, sHPS

= bHPS * MAPS / MUPS

then adding in effects from haste:

= bHPS*addedHasteFactor * (MAPS+manaFromExtraCrits) / MUPS*addedHasteFactor

= bHPS * (MAPS+manaFromExtraCrits) / MUPS

I verified this is indeed what's happening by removing the Improved Water Shield talent, which gave haste no value.  As soon as I add it back in, haste has value.  Thanks for the help figuring this out!  So it looks like the problem is that MAPS is being calculated as if you will not go OOM, but can spam for the entire fight.  I'll post this as a bug tonight when I have time.  Perhaps by then I can also think about a correct formula to use and offer it as a suggestion.

Developer
Jan 31, 2010 at 5:24 AM
xemnosyst wrote:

Oh so maybe I just don't understand the way it handles OOM.  If it spams until OOM then waits, you could get outside the 5 second rule and regen extra mana, so yeah in that case haste could be increasing the "sustained" number (thought that doesn't sound very "sustained" to me).  But if it does not account for the 5 second rule, then I don't see how haste could increase the amout of mana you can convert in heals (thus increasing your average hps in an OOM situation).

Spirit based regen was removed a long time ago in the shaman model.  It's so minor that realistically it's just not worth throwing back in (yet).  The way it determines your healing done for sustained works this way.  First, it takes the base rating for your sustained sequence.  At this point, it is exactly equal to Burst.  Then, it finds the mana it would take to cast that sequence non-stop in the time allotted.  If you have enough mana to cast it non-stop, then it will indeed continue to equal burst.  If you do not have the mana, then the percentage of mana you have compared to the mana you need (Say, 80%), is set as the number the HPS will be multiplied by to get your HPS.  So, if you had 10k burst, after mana % is added you would have 8k sustained.  I'm working on a few ways to clean this up.

Developer
Jan 31, 2010 at 8:17 AM

As of recent commit, this was cleaned up a bit.  I've renamed that very confusing variable Converter to something that should make more sense, ESDowntime.  This simply multiplies the Burst or Sustained value by the % of the fight you are NOT casting ES.  This makes it easier to add in ES's healing in the final formula, and not have it as part of the rotations (Especially if say, later, they change it to be on more targets then one).

Developer
Feb 1, 2010 at 12:03 AM

After looking through things, haste should be knocked down a little bit more when you are going oom in this most recent commit, however from current review I can't find a case where an item with say High Int, High MP5, and Crit is being valued more then an item the same level that has Haste instead of crit.  So, unless haste begins to have a value that begins to make Rawr choose equal level haste gear over equal level crit gear, I'm more inclined to not do a full re-write to change it.