 |
02/07/09, 9:43 PM
|
#16
|
|
Glass Joe
Human Paladin
Defias Brotherhood (EU)
|
Yeah, you can enter the same priority, but I'm gonna go ahead and believe you won't
I COULD include a part that takes care of that, but I don't really believe anyone is going to believe anything that comes out of the application with different prioritys set to the same. I might include some "error checking" in the weekend.
I'm gonna include exo in the next version. I decided to go out and have a couple of beers instead tonight. I might make a new version tomorrow including exo. Or on monday.
The prioritys already set in the application is purely to demonstrate what kind of data you should put in. You're welcome to put anything between 0-3 in any of the fields, and it should work out fine. As earlier stated I will include exorcism in the next "version", where 0-4 would be ok.
I'm thinking about making an application where you get a choice to use every ability as you wish, depending on CD, GCD and such... Where you kind off simulate a whole fight and use your abilities as you would in reality. So you can see the difference between using CS before JoM every time, and using CS before JoM the time the cooldowns clash, and so on. There's a lot of scenarios where a simple priority isn't right for a whole fight. For example you might want to use JoM first in a fight, but you might want to use CS before JoM for the rest of the fight to avoid CD clashes or something like that.
Anyways, I'm not promising anything. It's an interesting idea though. I'm guessing there won't be much done until Monday on my part. 
|
|
|
|
|
02/10/09, 11:28 AM
|
#17
|
|
Glass Joe
Human Paladin
Defias Brotherhood (EU)
|
I made a new version today, including exorcism and with a mechanism that checks if you entered the priorities correctly.
Can be found on this link: RapidShare: Easy Filehosting
And should be downloadable more then 10 times.
|
|
|
|
|
02/25/09, 12:11 PM
|
#18
|
|
Von Kaiser
|
I've been using this cycle of J > CS > Consc > DS recently and noticed every other cycle you skip Divine Storm for Judgement because they arrive on cooldown at the same time (roughly) while you're on a global cooldown for Consecration. Should I be using Judgement since it has damage priority or stick to using Divine Storm because its how the rotation functions?
|
|
|
|
|
02/25/09, 1:01 PM
|
#19
|
|
Don Flamenco
Draenei Paladin
Darkspear
|
You should be using Judgement.
|
|
|
|
|
02/25/09, 6:09 PM
|
#20
|
|
Don Flamenco
Blood Elf Paladin
The Venture Co (EU)
|
Originally Posted by Musclebound
I've been using this cycle of J > CS > Consc > DS recently and noticed every other cycle you skip Divine Storm for Judgement because they arrive on cooldown at the same time (roughly) while you're on a global cooldown for Consecration. Should I be using Judgement since it has damage priority or stick to using Divine Storm because its how the rotation functions?
|
It's not a rotation - it's a priority list. You don't skip any ability, ever, you simply delay them when a higher-priority attack is available.
|
|
|
|
|
03/09/09, 12:48 PM
|
#21
|
|
Von Kaiser
|
Minor bug in:
elif (round(time-lastHammer,2) >= cooldownCS) and hammer:
numHammer += 1
if numHammer == 1: firstHammer = time
cooldownCS should be cooldownHammer
EDIT to avoid double post:
Is there any reason re-sealing happens every 90 seconds? I'm guessing the script was written before seals got buffed to 30 min duration? The variable cooldownSoB is not used in the first instance of testing for SoB (why is it tested twice?).
I re-wrote parts of the script so I could search through all the priorities (700+ combinations for undead) and found that DS -> Exo -> Cons -> CS -> HW -> Judge produced the best dps. That's right, Judgment as the last priority. The cooldowns produced were (10 min run-time, undead, no hammer, t7, 0 latency, SoB cooldown 1800 seconds):
Judgement: 7.55 sec
Crusader Strike: 7.53 sec
Consecrate: 10.08 sec
Divine Storm: 10.08 sec
Exorcism: 15.13 sec
Holy Wrath: 30.26 sec
Divine Plea: 60.5 sec
with a 87.25% GCD density. There was a 57.67 dps increase with the default numbers, which translates to ~1.5% dps increase.
I tried out the rotation in a heroic today, and I was going oom like crazy. Maybe I need more practice, especially hitting DP in the correct order. I guess if you're min-maxing, using the above rotation will squeeze every last ounce of dps out in AoE heavy fights (i.e. no mana concerns), but I'm not sure it's worth it for most fights in general.
Last edited by Rurahk : 03/11/09 at 2:08 AM.
|
|
|
|
|
03/18/09, 3:15 PM
|
#22
|
|
Piston Honda
|
That is pretty interesting as I had been testing judgment as a last priority due to the sensitive nature of early aggro pulls. Obviously these FCFS scripts are base use but what happens when you throw the Libram into the equation?
I have been leading CS with my [Deadly Gladiator's Libram of Fortitude] so I have the extra AP for a full rotation. With the change on PTR Deadly Gladiator's Libram of Fortitude going to a 10 second buff, You should be able to maintain 100% uptime if you can give CS enough priority to not clip other CD's.
I realize you aren't including Librams buffs and so forth but I would be curious to see a CS priority on your new system and what the DPS change is vs leading with DS.
|
"They thought bosses just fell over the first night because of the tag over their head, and the most important thing was how much damage they could do at all times. Newsflash - it doesn't work like that."
|
|
|
03/18/09, 4:24 PM
|
#23
|
|
Bald Bull
Human Paladin
Scarlet Crusade
|
I was immediately impressed by Left's work. After several weeks of tinkering with it, I decided it was an excellent guideline to generate every possible effective cooldown for every possible prioritization.
So I wrote something to specifically generate this. It goes like this vs Undead/Demons:

import sys
undead = False
count = 0
step = 0.1
runTime = 21600.0
nest1 = 0
nest2 = 0
nest3 = 0
nest4 = 0
tempAve = 0
tempSolo = 0
tempName = ''
tempCD = 0
AbilityAve1 = 101
AbilitySolo1 = 100
AbilityName1 = 'Judgement'
AbilityCD1 = 8
AbilityAve2 = 101
AbilitySolo2 = 100
AbilityName2 = 'Consecration'
AbilityCD2 = 10
AbilityAve3 = 101
AbilitySolo3 = 100
AbilityName3 = 'Crusader Strike'
AbilityCD3 = 6
AbilityAve4 = 101
AbilitySolo4 = 100
AbilityName4 = 'Divine Storm'
AbilityCD4 = 10
AbilityAve5 = 101
AbilitySolo5 = 100
AbilityName5 = 'Exorcism'
AbilityCD5 = 15
cooldownHW = 30
timeAbility1 = 0
gcd = 1.5
lastAbilityTime = -gcd
timeAbility1 = -(AbilityCD1 + 1)
timeAbility2 = -(AbilityCD2 + 1)
timeAbility3 = -(AbilityCD3 + 1)
timeAbility4 = -(AbilityCD4 + 1)
timeAbility5 = -(AbilityCD5 + 1)
timeHW = -(cooldownHW +1)
time = 0
numAbility1 = 0
numAbility2 = 0
numAbility3 = 0
numAbility4 = 0
numAbility5 = 0
numHW = 0
DPS = 0
soloDPS = 0
BestDPS = 0
BestSoloDPS = 0
skip = True
while nest1 < 5:
if nest1 > 2:
tempAve = AbilityAve3
tempSolo = AbilitySolo3
tempName = AbilityName3
tempCD = AbilityCD3
AbilityAve3 = AbilityAve1
AbilitySolo3 = AbilitySolo1
AbilityName3 = AbilityName1
AbilityCD3 = AbilityCD1
AbilityName1 = tempName
AbilityCD1 = tempCD
AbilityAve1 = tempAve
AbilitySolo1 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
elif nest1 > 0:
tempAve = AbilityAve2
tempSolo = AbilitySolo2
tempName = AbilityName2
tempCD = AbilityCD2
AbilityAve2 = AbilityAve1
AbilitySolo2 = AbilitySolo1
AbilityName2 = AbilityName1
AbilityCD2 = AbilityCD1
AbilityName1 = tempName
AbilityCD1 = tempCD
AbilityAve1 = tempAve
AbilitySolo1 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
nest1 += 1
count +=1
nest2 = 0
while nest2 < 4:
if not skip:
tempAve = AbilityAve3
tempSolo = AbilitySolo3
tempName = AbilityName3
tempCD = AbilityCD3
AbilityAve3 = AbilityAve2
AbilitySolo3 = AbilitySolo2
AbilityName3 = AbilityName2
AbilityCD3 = AbilityCD2
AbilityName2 = tempName
AbilityCD2 = tempCD
AbilityAve2 = tempAve
AbilitySolo2 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
if nest2 == 3:
tempAve = AbilityAve5
tempSolo = AbilitySolo5
tempName = AbilityName5
tempCD = AbilityCD5
AbilityAve5 = AbilityAve2
AbilitySolo5 = AbilitySolo2
AbilityName5 = AbilityName2
AbilityCD5 = AbilityCD2
AbilityName2 = tempName
AbilityCD2 = tempCD
AbilityAve2 = tempAve
AbilitySolo2 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
nest2 += 1
count += 1
nest3 = 0
while nest3 < 3:
if not skip:
tempAve = AbilityAve4
tempSolo = AbilitySolo4
tempName = AbilityName4
tempCD = AbilityCD4
AbilityAve4 = AbilityAve3
AbilitySolo4 = AbilitySolo3
AbilityName4 = AbilityName3
AbilityCD4 = AbilityCD3
AbilityName3 = tempName
AbilityCD3 = tempCD
AbilityAve3 = tempAve
AbilitySolo3 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
nest3 += 1
count += 1
nest4 = 0
while nest4 < 2:
if not skip:
tempAve = AbilityAve5
tempSolo = AbilitySolo5
tempName = AbilityName5
tempCD = AbilityCD5
AbilityAve5 = AbilityAve4
AbilitySolo5 = AbilitySolo4
AbilityName5 = AbilityName4
AbilityCD5 = AbilityCD4
AbilityName4 = tempName
AbilityCD4 = tempCD
AbilityAve4 = tempAve
AbilitySolo4 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
nest4 += 1
count += 1
skip = False
timeAbility1 = -(AbilityCD1 + 1)
timeAbility2 = -(AbilityCD2 + 1)
timeAbility3 = -(AbilityCD3 + 1)
timeAbility4 = -(AbilityCD4 + 1)
timeAbility5 = -(AbilityCD5 + 1)
timeHW = -(cooldownHW +1)
lastAbilityTime = 0
time = 0
numAbility1 = 0
numAbility2 = 0
numAbility3 = 0
numAbility4 = 0
numAbility5 = 0
numHW= 0
while time <= runTime:
# Check for Global Cooldown
if round(time-lastAbilityTime,2) < gcd:
time += step
continue
# Priority 1
if round(time-timeAbility1,2) >= AbilityCD1:
numAbility1 += 1
timeAbility1 = time
lastAbilityTime = time
# Priority 2
elif round(time-timeAbility2,2) >= AbilityCD2:
numAbility2 += 1
timeAbility2 = time
lastAbilityTime = time
elif round(time-timeAbility3,2) >= AbilityCD3:
numAbility3 += 1
timeAbility3 = time
lastAbilityTime = time
# Priority 4
elif round(time-timeAbility4,2) >= AbilityCD4:
numAbility4 += 1
timeAbility4 = time
lastAbilityTime = time
# Priority 5
elif round(time-timeAbility5,2) >= AbilityCD5:
numAbility5 += 1
timeAbility5 = time
lastAbilityTime = time
# Priority 6
elif (round(time-timeHW,2) >= cooldownHW) and undead:
numHW += 1
timeHW = time
lastAbilityTime = time
elif undead == False:
numHW = 2
timeHW = 0
time += step
continue
# If nothing was off cooldown...
else:
time += step
continue
lastAbilityTime = time
time += step
print AbilityName1, ',', AbilityName2, ',', AbilityName3, ',', AbilityName4, ',', AbilityName5, ',', round((timeAbility1-1.5)/(numAbility1-1),2), ',', round((timeAbility2-1.5)/(numAbility2-1),2), ',', round((timeAbility3-1.5)/(numAbility3-1),2), ',', round((timeAbility4-1.5)/(numAbility4-1),2), ',', round((timeAbility5-1.5)/(numAbility5-1),2), ',', round((timeHW-1.5)/(numHW-1),2)
DPS = (((AbilityAve1 * numAbility1) + (AbilityAve2 * numAbility2) + (AbilityAve3 * numAbility3) + (AbilityAve4 * numAbility4) + (AbilityAve5 * numAbility5))/runTime)
soloDPS = (((AbilitySolo1 * numAbility1) + (AbilitySolo2 * numAbility2) + (AbilitySolo3 * numAbility3) + (AbilitySolo4 * numAbility4) + (AbilitySolo5 * numAbility5))/runTime)
# print 'DPS = ', DPS
# print 'Solo DPS = ', soloDPS
if DPS > BestDPS:
BestDPS1 = AbilityName1
BestDPS2 = AbilityName2
BestDPS3 = AbilityName3
BestDPS4 = AbilityName4
BestDPS5 = AbilityName5
BestDPS = DPS
if soloDPS > BestSoloDPS:
SoloBestDPS1 = AbilityName1
SoloBestDPS2 = AbilityName2
SoloBestDPS3 = AbilityName3
SoloBestDPS4 = AbilityName4
SoloBestDPS5 = AbilityName5
BestSoloDPS = soloDPS
print 'Best Raid DPS', 'was', BestDPS
print BestDPS1, BestDPS2, BestDPS3, BestDPS4, BestDPS5
print 'Best Solo DPS', 'was', soloDPS
print SoloBestDPS1, SoloBestDPS2, SoloBestDPS3, SoloBestDPS4, SoloBestDPS5
No exorcism (i.e. 3.0.9 vs. something not undead/demon)

import sys
undead = False
count = 0
step = 0.1
runTime = 21600.0
nest1 = 0
nest2 = 0
nest3 = 0
nest4 = 0
tempAve = 0
tempSolo = 0
tempName = ''
tempCD = 0
AbilityAve1 = 101
AbilitySolo1 = 100
AbilityName1 = 'Judgement'
AbilityCD1 = 7
AbilityAve2 = 101
AbilitySolo2 = 100
AbilityName2 = 'Consecration'
AbilityCD2 = 10
AbilityAve3 = 101
AbilitySolo3 = 100
AbilityName3 = 'Crusader Strike'
AbilityCD3 = 6
AbilityAve4 = 101
AbilitySolo4 = 100
AbilityName4 = 'Divine Storm'
AbilityCD4 = 10
AbilityAve5 = 101
AbilitySolo5 = 100
AbilityName5 = 'Exorcism'
AbilityCD5 = 21500
cooldownHW = 30
timeAbility1 = 0
gcd = 1.5
lastAbilityTime = -gcd
timeAbility1 = -(AbilityCD1 + 1)
timeAbility2 = -(AbilityCD2 + 1)
timeAbility3 = -(AbilityCD3 + 1)
timeAbility4 = -(AbilityCD4 + 1)
timeAbility5 = -(AbilityCD5 + 1)
timeHW = -(cooldownHW +1)
time = 0
numAbility1 = 0
numAbility2 = 0
numAbility3 = 0
numAbility4 = 0
numAbility5 = 0
numHW = 0
DPS = 0
soloDPS = 0
BestDPS = 0
BestSoloDPS = 0
skip = True
while nest1 < 5:
if nest1 > 2:
tempAve = AbilityAve3
tempSolo = AbilitySolo3
tempName = AbilityName3
tempCD = AbilityCD3
AbilityAve3 = AbilityAve1
AbilitySolo3 = AbilitySolo1
AbilityName3 = AbilityName1
AbilityCD3 = AbilityCD1
AbilityName1 = tempName
AbilityCD1 = tempCD
AbilityAve1 = tempAve
AbilitySolo1 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
elif nest1 > 0:
tempAve = AbilityAve2
tempSolo = AbilitySolo2
tempName = AbilityName2
tempCD = AbilityCD2
AbilityAve2 = AbilityAve1
AbilitySolo2 = AbilitySolo1
AbilityName2 = AbilityName1
AbilityCD2 = AbilityCD1
AbilityName1 = tempName
AbilityCD1 = tempCD
AbilityAve1 = tempAve
AbilitySolo1 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
nest1 += 1
count +=1
nest2 = 0
while nest2 < 4:
if not skip:
tempAve = AbilityAve3
tempSolo = AbilitySolo3
tempName = AbilityName3
tempCD = AbilityCD3
AbilityAve3 = AbilityAve2
AbilitySolo3 = AbilitySolo2
AbilityName3 = AbilityName2
AbilityCD3 = AbilityCD2
AbilityName2 = tempName
AbilityCD2 = tempCD
AbilityAve2 = tempAve
AbilitySolo2 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
if nest2 == 3:
tempAve = AbilityAve5
tempSolo = AbilitySolo5
tempName = AbilityName5
tempCD = AbilityCD5
AbilityAve5 = AbilityAve2
AbilitySolo5 = AbilitySolo2
AbilityName5 = AbilityName2
AbilityCD5 = AbilityCD2
AbilityName2 = tempName
AbilityCD2 = tempCD
AbilityAve2 = tempAve
AbilitySolo2 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
nest2 += 1
count += 1
nest3 = 0
while nest3 < 3:
if not skip:
tempAve = AbilityAve4
tempSolo = AbilitySolo4
tempName = AbilityName4
tempCD = AbilityCD4
AbilityAve4 = AbilityAve3
AbilitySolo4 = AbilitySolo3
AbilityName4 = AbilityName3
AbilityCD4 = AbilityCD3
AbilityName3 = tempName
AbilityCD3 = tempCD
AbilityAve3 = tempAve
AbilitySolo3 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
skip = True
nest3 += 1
count += 1
nest4 = 0
while nest4 < 2:
if not skip:
tempAve = AbilityAve5
tempSolo = AbilitySolo5
tempName = AbilityName5
tempCD = AbilityCD5
AbilityAve5 = AbilityAve4
AbilitySolo5 = AbilitySolo4
AbilityName5 = AbilityName4
AbilityCD5 = AbilityCD4
AbilityName4 = tempName
AbilityCD4 = tempCD
AbilityAve4 = tempAve
AbilitySolo4 = tempSolo
tempName = ''
tempCD = 0
tempSolo = 0
TempAve = 0
nest4 += 1
count += 1
skip = False
timeAbility1 = -(AbilityCD1 + 1)
timeAbility2 = -(AbilityCD2 + 1)
timeAbility3 = -(AbilityCD3 + 1)
timeAbility4 = -(AbilityCD4 + 1)
timeAbility5 = -(AbilityCD5 + 1)
timeHW = -(cooldownHW +1)
lastAbilityTime = 0
time = 0
numAbility1 = 0
numAbility2 = 0
numAbility3 = 0
numAbility4 = 0
numAbility5 = 0
numHW= 0
while time <= runTime:
# Check for Global Cooldown
if round(time-lastAbilityTime,2) < gcd:
time += step
continue
# Priority 1
if round(time-timeAbility1,2) >= AbilityCD1:
numAbility1 += 1
timeAbility1 = time
lastAbilityTime = time
# Priority 2
elif round(time-timeAbility2,2) >= AbilityCD2:
numAbility2 += 1
timeAbility2 = time
lastAbilityTime = time
elif round(time-timeAbility3,2) >= AbilityCD3:
numAbility3 += 1
timeAbility3 = time
lastAbilityTime = time
# Priority 4
elif round(time-timeAbility4,2) >= AbilityCD4:
numAbility4 += 1
timeAbility4 = time
lastAbilityTime = time
# Priority 5
elif round(time-timeAbility5,2) >= AbilityCD5:
numAbility5 += 1
timeAbility5 = time
lastAbilityTime = time
# Priority 6
elif (round(time-timeHW,2) >= cooldownHW) and undead:
numHW += 1
timeHW = time
lastAbilityTime = time
elif undead == False:
numHW = 2
timeHW = 0
time += step
continue
# If nothing was off cooldown...
else:
time += step
continue
lastAbilityTime = time
time += step
print AbilityName1, ',', AbilityName2, ',', AbilityName3, ',', AbilityName4, ',', AbilityName5, ',', round((timeAbility1-1.5)/(numAbility1-1),2), ',', round((timeAbility2-1.5)/(numAbility2-1),2), ',', round((timeAbility3-1.5)/(numAbility3-1),2), ',', round((timeAbility4-1.5)/(numAbility4-1),2), ',', round((timeAbility5-1.5)/(numAbility5-1),2), ',', round((timeHW-1.5)/(numHW-1),2)
DPS = (((AbilityAve1 * numAbility1) + (AbilityAve2 * numAbility2) + (AbilityAve3 * numAbility3) + (AbilityAve4 * numAbility4) + (AbilityAve5 * numAbility5))/runTime)
soloDPS = (((AbilitySolo1 * numAbility1) + (AbilitySolo2 * numAbility2) + (AbilitySolo3 * numAbility3) + (AbilitySolo4 * numAbility4) + (AbilitySolo5 * numAbility5))/runTime)
# print 'DPS = ', DPS
# print 'Solo DPS = ', soloDPS
if DPS > BestDPS:
BestDPS1 = AbilityName1
BestDPS2 = AbilityName2
BestDPS3 = AbilityName3
BestDPS4 = AbilityName4
BestDPS5 = AbilityName5
BestDPS = DPS
if soloDPS > BestSoloDPS:
SoloBestDPS1 = AbilityName1
SoloBestDPS2 = AbilityName2
SoloBestDPS3 = AbilityName3
SoloBestDPS4 = AbilityName4
SoloBestDPS5 = AbilityName5
BestSoloDPS = soloDPS
print 'Best Raid DPS', 'was', BestDPS
print BestDPS1, BestDPS2, BestDPS3, BestDPS4, BestDPS5
print 'Best Solo DPS', 'was', soloDPS
print SoloBestDPS1, SoloBestDPS2, SoloBestDPS3, SoloBestDPS4, SoloBestDPS5
I used this info to populate the Bellator's spreadsheet I maintain (links over in Ret thread initial post). The spreadsheet will automatically run through and find the best priority based on your stats. I've found the best typically has Judgement last, but an alternate sequence with Judgement first is only 1 DPS lower. Going from maximum 5501 to 5500 DPS isn't bad. I found this after testing Judgement last in priority for a week and having some mana problems (fights tend to screw up perfect rotation unless they're Patchwerk).
Set undead to True for Holy Wrath to be added (it impacts effective cooldowns as it can and will be used while another ability has .5 or 1 second left on cooldown, therefore the GCD delays another ability).
If you want it to calculate what is the best DPS plug in your average ability damage in the appropriate fields - should be self explanatory.
No warranties, real or implied.
Last edited by Exemplar : 03/20/09 at 4:05 PM.
|
Rock: "We're sub-standard DPS. Nerf Paper, Scissors are fine."
Paper: "OMG, WTF, Scissors!"
Scissors: "Rock is OP and Paper are QQers. We need PvP buffs."
|
|
|
03/20/09, 3:57 PM
|
#24
|
|
Von Kaiser
Draenei Paladin
Proudmoore
|
So after all this simulation what do we have? What's the answer to spell priority?
My armory: The World of Warcraft Armory
|
|
|
|
|
03/20/09, 4:12 PM
|
#25
|
|
Bald Bull
Human Paladin
Scarlet Crusade
|
Generically following Judgement, Consecration, Crusader Strike, Divine Storm in 3.0.9 is fairly effective. Whether your target is an Undead/Demon or not (for use of Exorcism and HW) typically changes the desirable priority.
In 3.1 it looks like Judgement, Crusader Strike, Consecration, Divine Storm, Exorcism is fairly effective.
If you want what's best for your gear you can try the spreadsheet.
My blunt opinion is, unless you have 0 latency and perfect reaction time, most priorities will be equivalent. As long as you're not backwards (putting Holy Wrath or Divine Storm as most important) you're probably about equally effective. I found not having Judgement as first priority affected my mana regen, which would not occur if latency was 0 and reaction time 0. Since it was it was occasionally delayed extra GCD by other abilities due to latency and imperfect human at the keyboard, it hurt.
TLDR: J, Cons, CS, DS, Exo remains "good enough" if not ideal.
|
Rock: "We're sub-standard DPS. Nerf Paper, Scissors are fine."
Paper: "OMG, WTF, Scissors!"
Scissors: "Rock is OP and Paper are QQers. We need PvP buffs."
|
|
|
03/21/09, 10:06 AM
|
#26
|
|
Glass Joe
Human Paladin
Defias Brotherhood (EU)
|
With mana regen in mind, we pretty much have to use Judgement as our top priority, which is supported by it being our top DPS spell.
My conclusion after quite a lot of testing is that the best priority, concerning damage AND mana regen would be:
J > Consecration > Crusader Strike > Divine Storm > Exorcism
This does have an execption though, and that is if CS and J cooldowns would clash mid-fight it's always best to use CS first. This is assuming cons won't go off CD during GCD if you cast judgement before CS.
|
|
|
|
|
|