Jump to content

Recommended Posts

Hi,

First of all, this is for vanilla.
I have set up a party bot consisting of a main (me playing) and bots that have me on follow, in party settings.
Everything is working fine, he heals all party members, but is not healing himself based on my configured conditions (flash heal or shield). He is buffing himself with Power Word:Fortitude tho.

This is my current fight class:
 

<?xml version="1.0" encoding="utf-16"?>
<FightClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <FightClassGeneralSettings>
    <FightClassName>Fight config name</FightClassName>
    <Range>30</Range>
    <FramePerSecond>25</FramePerSecond>
  </FightClassGeneralSettings>
  <FightClassSpells>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>CSharpCode</ContionType>
          <Param xsi:type="FightClassConditionString">
            <Value>Lua.LuaDoString&lt;bool&gt;(@"for i=1,25 do local dt, da, dty  = UnitDebuff('player',i); if dty == 'Magic' then TargetUnit('player'); return true end end")</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Mana</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>BiggerOrEqual</Type>
            <Value>200</Value>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Dispel Magic</SpellName>
      <Priority>11</Priority>
      <IsBuff>true</IsBuff>
      <CombatOnly>false</CombatOnly>
      <CheckIfSpellUsable>false</CheckIfSpellUsable>
      <CheckSpellDistance>false</CheckSpellDistance>
      <CheckIfView>false</CheckIfView>
      <Timer>2000</Timer>
      <LockFrame>false</LockFrame>
      <CastOnSelf>true</CastOnSelf>
      <CastOn>player</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>CSharpCode</ContionType>
          <Param xsi:type="FightClassConditionString">
            <Value>Lua.LuaDoString&lt;bool&gt;(@"for i=1,25 do local dt, da, dty  = UnitDebuff('party1',i); if dty == 'Magic' then return true end end")</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Mana</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>BiggerOrEqual</Type>
            <Value>200</Value>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Dispel Magic</SpellName>
      <Priority>10</Priority>
      <IsBuff>true</IsBuff>
      <CombatOnly>false</CombatOnly>
      <CheckIfSpellUsable>false</CheckIfSpellUsable>
      <Timer>2000</Timer>
      <TargetFriends>true</TargetFriends>
      <CanMoveDuringCast>Yes</CanMoveDuringCast>
      <LockFrame>false</LockFrame>
      <CastOn>party1</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>TargetDistance</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>Smaller</Type>
            <Value>30</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>TargetBuff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Power Word: Fortitude</Name>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>CSharpCode</ContionType>
          <Param xsi:type="FightClassConditionString">
            <Value>ObjectManager.Me.InCombatFlagOnly == false</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Buff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Drink</Name>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Buff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Food</Name>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Power Word: Fortitude</SpellName>
      <Priority>7</Priority>
      <CombatOnly>false</CombatOnly>
      <TargetFriends>true</TargetFriends>
      <CastOn>party1</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>CSharpCode</ContionType>
          <Param xsi:type="FightClassConditionString">
            <Value>ObjectManager.Me.InCombatFlagOnly == false</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Buff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Power Word: Fortitude</Name>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>TargetUnit('player');CastSpellByName("Power Word: Fortitude", onSelf);</SpellName>
      <Priority>6</Priority>
      <IsBuff>true</IsBuff>
      <CombatOnly>false</CombatOnly>
      <NotSpellIsLuaScript>true</NotSpellIsLuaScript>
      <LockFrame>false</LockFrame>
      <CastOnSelf>true</CastOnSelf>
      <CastOn>player</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>HealthPercent</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>SmallerOrEqual</Type>
            <Value>75</Value>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>TargetUnit('player');CastSpellByName("Flash Heal", onSelf);</SpellName>
      <CombatOnly>false</CombatOnly>
      <CheckIfKnow>false</CheckIfKnow>
      <CheckIfSpellUsable>false</CheckIfSpellUsable>
      <CheckSpellDistance>false</CheckSpellDistance>
      <LockFrame>false</LockFrame>
      <CastOnSelf>true</CastOnSelf>
      <CastOn>player</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>Buff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Power Word: Shield</Name>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>Buff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Weakened Soul</Name>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Power Word: Shield</SpellName>
      <Priority>4</Priority>
      <LockFrame>false</LockFrame>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>TargetHealthPercent</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>SmallerOrEqual</Type>
            <Value>60</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>TargetDistance</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>Smaller</Type>
            <Value>40</Value>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Greater Heal</SpellName>
      <Priority>3</Priority>
      <CombatOnly>false</CombatOnly>
      <TargetFriends>true</TargetFriends>
      <CastOn>party1</CastOn>
    </FightClassSpell>
    <FightClassSpell>
      <FightClassConditions>
        <FightClassCondition>
          <ContionType>ManaPercent</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>BiggerOrEqual</Type>
            <Value>5</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>TargetHealthPercent</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>SmallerOrEqual</Type>
            <Value>75</Value>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>TargetBuff</ContionType>
          <Param xsi:type="FightClassConditionStringBool">
            <Name>Renew</Name>
          </Param>
        </FightClassCondition>
        <FightClassCondition>
          <ContionType>TargetDistance</ContionType>
          <Param xsi:type="FightClassConditionNumber">
            <Type>Smaller</Type>
            <Value>40</Value>
          </Param>
        </FightClassCondition>
      </FightClassConditions>
      <SpellName>Renew</SpellName>
      <Priority>2</Priority>
      <IsBuff>true</IsBuff>
      <CombatOnly>false</CombatOnly>
      <TargetFriends>true</TargetFriends>
      <CastOn>party1</CastOn>
    </FightClassSpell>
  </FightClassSpells>
</FightClass>

 

Link to comment
https://wrobot.eu/forums/topic/7338-healer-not-healing-himself/
Share on other sites

I found that the healer option in party bot wasn't too helpful. I made a fightclass that would mainly heal in party, but dps otherwise and works great. It's not very complicated as it only has a few spells, but feel free to pick it apart and try to make it work for you. It's for Legion btw too.

[Mike] Priest - Holy - Party Healer and DPS [Surge of Light].xml

  • 4 weeks later...
1 hour ago, ScWe said:

Hi thanks for the heads up I tried this rotation but for some reason the movement seems flawed it lets me run for 2 or 3 steps then it stops then lets me run again for 2 or 3 steps and then it stops again any ideas?

If your using mine, it may be the clear target spell I added. I found it doesn't like to swap between party members and itself to heal very efficiently. Never had it stop me from running though. 

  • 11 months later...
On 10/13/2017 at 7:06 AM, KnightRyder said:

I found that the healer option in party bot wasn't too helpful. I made a fightclass that would mainly heal in party, but dps otherwise and works great. It's not very complicated as it only has a few spells, but feel free to pick it apart and try to make it work for you. It's for Legion btw too.

[Mike] Priest - Holy - Party Healer and DPS [Surge of Light].xml

That clear target macro is great. Helping me slowly un-fuck the limitations of party mode

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...