bu_ba_911: I did some more testing of your Holy Paladin profiles (based on the latest sources on your googlecode site). Have a few more recommendations.
1. Add a Mark of the Wild check to your Blessing of Kings rotation entry in the Holy PvP. It can turn into buff-fight between a druid recasting MotW and you recasting BoK repeatedly. This way it will fall through to the Blessing of Might entry if MotW is on you.
I changed it to this:
Code:
local BoK = UnitBuff("player", "Blessing of Kings")
local BoM = UnitBuff("player", "Blessing of Might")
local MoW = UnitBuff("player", "Mark of the Wild")
if BoK == nil and BoM == nil and MoW == nil then
return true
end
2. This would change in 4.3 anyways, but currently when low on mana it falls into casting Holy Light when it might be more beneficial to use Judgement in order to get enough mana back to cast more spells. Maybe a higher priority Judgement entry if mana < 10 that overrides some other spells?
3. Cleanse code might need to be changed to a list of specific PvP dispellable buffs rather than going by buff types. There are plenty of debuffs it gets stuck in a loop on because it can't dispel them, or because it's a 5-stack hunter poison or something that only lasts 5 seconds anyways but seems to remove 1 stack at a time, which is a bit of a waste (especially as the cost of a single holy shock is less than a single cleanse, and the poison does less damage then a holy shock, yet it'll spam until all stacks are gone). AoE debuffs it'll sometimes fall into a loop on too.
4. Add Lay on Hands and Hand of Sacrifice to the rotations (PvE and PvP/Arena), and maybe Hammer of Justice too if the target is in range (save the tank some damage, or HoJ someone chasing you in arena/pvp)
5. You're missing forbearance debuff checks on Divine Shield, you might be missing it somewhere else too. This could cause problems maybe. (unless PQR counts that as a reason to return false for a rotation entry)
I'll keep testing and get back to you if I see anything else.
Xelper: Have you considered whether or not you'll be adding that reset modifier to the PQR_IsMoving() function in the future?