Missing an attack doesn't automatically restores the runes you lost. In retail they would reload in less than a GCD.
I have to add parry/dodge/blocked etc not only miss.
Since this problem has been there for a lot of time (even in the old tracker) I may consider it is really difficult to fix. I have not much idea about these things but how about this?
-In each spell of the DK that consumes runes, add some code than when it miss/dodged/parried/blocked it restores instantly the runes the spell has costed. In retail I think it will show the runes reloading at great speed in aproximately the same time of a gcd in unholy presence, but that's just aesthetics.
Not sure about miss, but sure about parry/dodge.
Your runes go on cd after your attacks are dodged/parried.
After dodge/parry your runes should go on GCD(1s-UH,1.5s-FP,BP).
I think the trick with the runes should be done on Spell::CheckRuneCost, adding some code like:
Or something like that, idk, just giving a shot in the darkness :P
Edit: or maybe something on Spell:TakePower()
if (hit && powerType == POWER_RUNE)
C'mon devs, this shouldn't be a thing so hard to fix :D
Core/Spells: Fixes the rune cooldown when a hit mises the target
Signed-off-by: Subv <firstname.lastname@example.org>