From my debugging, it appears that kissassist treats the shaman BP (CotF and TDS, and maybe earlier) as a group heal, instead of an intervention type heal.
http://lucy.allakhazam.com/item.html?id=140305 (Raid BPs are XXXXXX Spiritwalker Coat)
http://www.raidloot.com/Spells.aspx?name=rejuvenation+of+the+ancestors
Here is my INI, Tideworn Coat of the Diviner is the item in question
As an FYI, I'm thinking of lowing the HP threshold for intervention and coat.
Here is my working, although rough patch:
As you can see, this is a bit rough and only supports the group version of the shaman BP. Older shaman BPs with same naming convention have a different self only damage absorb buff. Perhaps it would be possible to check if it's a shaman BP, and spell is a v2 group target instead of string comparison.
I have two bonus questions as well.
1. If everything was up, and the tank suddensly went to 10% health, which heal would be used? Is it deterministic?
2. Krasir's Recourse - I don't see the shaman ever using this. This is the next thing I'm looking into, any know if this works?
For my homework, I'm working on a holyshit that will use force rejuvenation if both Intervention and coat are on cooldown.
Thanks,
Winnower
http://lucy.allakhazam.com/item.html?id=140305 (Raid BPs are XXXXXX Spiritwalker Coat)
http://www.raidloot.com/Spells.aspx?name=rejuvenation+of+the+ancestors
Here is my INI, Tideworn Coat of the Diviner is the item in question
Rich (BB code):
[Heals]
Help=Format Spell|% to heal at i.e. Devout Light Rk. II|50
HealsOn=1
Heals1=Tideworn Coat of the Diviner|45
Heals2=Historian's Intervention|40
Heals3=Reckless Regeneration|50
Heals4=Krasir's Recourse|70
Heals5=Krasir's Mending|70
Heals6=Union of Spirits|20|MA
Heals7=NULL
Heals8=NULL
Heals9=NULL
Heals10=NULL
Heals11=NULL
Heals12=NULL
Heals13=NULL
Heals14=NULL
Heals15=NULL
XTarHeal=0
AutoRezOn=1
AutoRezWith=Call of the Wild
As an FYI, I'm thinking of lowing the HP threshold for intervention and coat.
Here is my working, although rough patch:
Rich (BB code):
diff --git a/kissassist.mac b/kissassist.mac
index 957c013..1825889 100644
--- a/kissassist.mac
+++ b/kissassist.mac
@@ -2795,7 +2795,7 @@ Sub CheckPetBuffs
/if (${Spawn[${SHealThem}].Type.Equal[Pet]} && (${HealSpell.Find[Aegis of Superior Divinity]} || ${HealSpell.Find[Harmony of the Soul]} || ${HealSpell.Find[Divine Arbitration]})) /goto :SNextHeal
/if (!${Spawn[${SHealName} ${SHealType} group].ID} && (${HealSpell.Find[Aegis of Superior Divinity]} || ${HealSpell.Find[Harmony of the Soul]} || ${HealSpell.Find[Divine Arbitration]})) /goto :SNextHeal
| intervention and survival lines only work on group members
- /if (!${Spawn[${SHealName} ${SHealType} group].ID} && ${Select[${Me.Class.Name},Druid,Shaman]} && (${HealSpell.Find[Intervention]} || ${HealSpell.Find[Survival]})) /goto :SNextHeal
+ /if (!${Spawn[${SHealName} ${SHealType} group].ID} && ${Select[${Me.Class.Name},Druid,Shaman]} && (${HealSpell.Find[Intervention]} || ${HealSpell.Find[Coat of the Diviner]} || ${HealSpell.Find[Survival]})) /goto :SNextHeal
| Check For Life Taps
/if (${SHealTag.Find[Tap]}) {
/if (!${Pulled} && ${CombatStart} && ${Me.PctHPs}<=${SHealPct} && ${Spawn[${MyTargetID}].ID} && ${Spawn[${MyTargetID}].Distance}<=${SHealRange} && ${Spell${i}GM0}==0) {
@@ -5051,7 +5051,7 @@ Sub FindSingleHeals
/varset SingleHeal[${SHCount}] ${Heals[${i}]}
/goto :NextSH
}
- /if (${Select[${Me.Class.Name},Druid,Shaman]} && (${HealSpell.Find[Intervention]} || ${HealSpell.Find[Survival]})) {
+ /if (${Select[${Me.Class.Name},Druid,Shaman]} && (${HealSpell.Find[Intervention]} || ${HealSpell.Find[Coat of the Diviner]} || ${HealSpell.Find[Survival]})) {
/varcalc SHCount ${SHCount}+1
/varset SingleHeal[${SHCount}] ${Heals[${i}]}
/goto :NextSH
@@ -5085,7 +5085,7 @@ Sub FindGroupHeals
/if (${Debug}) /echo ${HealSpell}
/if (!${HealSpell.Length} || ${HealSpell.Equal[null]} || ${Select[${Spell[${HealSpell}].TargetType},Single,Self]} || ${Spell[${FindItem[${HealSpell}].Spell}].TargetType.Find[self]} || ${HealSpell.Find[Aegis of Superior Divinity]} || ${HealSpell.Find[Harmony of the Soul]}) /goto :NextGH
/if (${HealSpell.Find[Burst of Life]} || ${HealSpell.Find[Focused Celestial Regeneration]}) /goto :NextGH
- /if (${Me.Class.Name.Equal[Shaman]} && ${Spell[${HealSpell}].Name.Find[Intervention]} || ${Me.Class.Name.Equal[Druid]} && ${Spell[${HealSpell}].Name.Find[Survival]}) /goto :NextGH
+ /if (${Me.Class.Name.Equal[Shaman]} && (${Spell[${HealSpell}].Name.Find[Intervention]} || ${HealSpell.Find[Coat of the Diviner]}) || ${Me.Class.Name.Equal[Druid]} && ${Spell[${HealSpell}].Name.Find[Survival]}) /goto :NextGH
/if (${Spell[${HealSpell}].TargetType.Find[group]} || ${Spell[${FindItem[${HealSpell}].Spell}].TargetType.Find[group]} || ${Spell[${HealSpell}].TargetType.Find[Targeted AE]} && !${Select[${Heals[${i}].Arg[3,|]},MA,ME]}) {
/varcalc GHCount ${GHCount}+1
/varset GroupHeal[${GHCount}] ${Heals[${i}]}
As you can see, this is a bit rough and only supports the group version of the shaman BP. Older shaman BPs with same naming convention have a different self only damage absorb buff. Perhaps it would be possible to check if it's a shaman BP, and spell is a v2 group target instead of string comparison.
I have two bonus questions as well.
1. If everything was up, and the tank suddensly went to 10% health, which heal would be used? Is it deterministic?
2. Krasir's Recourse - I don't see the shaman ever using this. This is the next thing I'm looking into, any know if this works?
For my homework, I'm working on a holyshit that will use force rejuvenation if both Intervention and coat are on cooldown.
Thanks,
Winnower
Last edited by a moderator:

