• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Cleric CH Chain Macro

Joined
Dec 7, 2005
RedCents
1,033¢
start this with

/mac chain.mac
then /tank1 toonname
/tank2 toonname
/nextcleric tooname
/chdelay numsecs


First cleric then does

/varset myturn true

All clerics need to be in the same irc channel


Rich (BB code):
#Event IRCMYTURN     "<#1##*#Next #2# #*#"

#CHAT chat

#turbo 40

Sub Main
    /declare ChatChannel        string outer ${Ini[MyCleric.ini,General,ChatChan]}
    /declare ReportChannel      string outer ${Ini[MyCleric.ini,General,ReportChan]}
    /declare HealChannel        string outer ${Ini[MyCleric.ini,General,HealChan]}
    /declare ReportInterrupts   string outer ${Ini[MyCleric.ini,General,ReportInterrupts]}
    /declare FastHeal           string outer ${Ini[MyCleric.ini,Spells,FastHeal]}
    /declare CompleteHeal       string outer ${Ini[MyCleric.ini,Spells,CompleteHeal]}
    /declare YaulpSpell         string outer ${Ini[MyCleric.ini,Spells,YaulpSpell]}

    /declare EndCCH         bool    outer FALSE
    /declare myturn         bool    outer FALSE
    /declare Delay          int     outer 0
    /declare nextcleric     string  outer NULL
    /declare tank1          string  outer NULL
    /declare tank2          string  outer NULL
    /declare CHMsg          string  outer >>> CH on 
    /declare DArbMsg        string  outer >>> Attempting to Cast Divine Arb <<<

    /squelch /alias /tank1 /varset tank1
    /squelch /alias /tank2 /varset tank2
    /squelch /alias /nextcleric /varset nextcleric
    /squelch /alias /chdelay /varset Delay
   
    /echo CH spell is ${CompleteHeal}
    /echo Fast Heal spell is ${FastHeal}
    /echo CH Spell assumed to be in Gem1
    /echo Fastheal assumed to be in Gem2
    /echo Divine arb only works if all of the clerics are in the same
    /echo group It also only fires if its currently there turn to be casting CH
    /echo .
    /echo .
    /echo /tank1 Bob
    /echo /tank2 Frank
    /echo /nextcleric Healbitch
    /echo /chdelay 10               
 
     :loop
    /doevents
    |/delay 1
    /if (${Delay} > 0) {
        /call DO_CH ${tank1} ${tank2} ${nextcleric} ${Delay} ${CHMsg}
    }
    /goto :loop
/return

Sub DO_CH(TankOne, TankTwo, NextCleric, Delay, CHMsg)
    /delay 5 !${Me.Moving}

    /if (${Spawn[pc ${TankOne}].ID}) {
        /target pc ${TankOne}
    } else {
        /varset TankOne ${TankTwo}
    }
    /doevents IRCMYTURN
    /if (${EndCCH}) {
        /endmacro
    }
   
    /doevents IRCMYTURN
      /if (!${EndCCH}) {
           /if (!${myturn}) {
                /if (!${Me.Buff[${YaulpSpell}].ID} && ${Me.SpellReady[${YaulpSpell}]}) {
                /casting "${YaulpSpell}"
                }
            }
      /if (${myturn}) {
           /varset myturn FALSE
           /delay ${Delay}s
           /if (${Target.Distance}<120) {
               /if (${Target.PctHPs}<30)  /call DoDivArb
               /i say ${Time.Hour}:${Time.Minute}:${Time.Second}  --- ${CHMsg} ${TankOne} <<< Next ${NextCleric} in ${Delay}
               /casting "${CompleteHeal}" -maxtries|2
           } else /if (${Target.Distance}<230) {
               /i say Tank was out of Range for that cycle!! Casting ${FastHeal}
               /i say ${Time.Hour}:${Time.Minute}:${Time.Second}  --- ${CHMsg} ${TankOne} <<< Next ${NextCleric} in ${Delay}
               /delay 55
               /casting "${FastHeal}" -maxtries|2
           }
       }
    }
/return
    
Sub Event_IRCMYTURN(IRCLine,IRCSender,IRCNextCleric)
   /if (${IRCNextCleric.Find[${Me}]}) {
       /varset myturn TRUE
   }
/return


Sub DoDivArb
    /if (${Me.Casting.ID}) /call DoInterrupt
    /i say ${DArbMsg}
    /if ((!${FindItem[Harmony of the Soul].Timer} && ${FindItem[Harmony of the Soul].ID}) || (!${FindItem[Aegis of Superior Divinity].Timer} && ${FindItem[Aegis of Superior Divinity].ID})) {
        /if (${FindItem[Harmony of the Soul].ID}) /casting "Harmony of the Soul" item
        /if (${FindItem[Aegis of Superior Divinity].ID}) /casting "Aegis of Superior Divinity" item
    } else {
        /casting "Divine Arbitration" alt
    }
    /delay 1s ((${Target.PctHPs}<30) || (${Me.Casting.ID}))
    /casting ${FastHeal} -maxtries|2
/return

Sub DoInterrupt
    /if (${Me.Casting.ID}) {
        /if (${ReportInterrupts.Equal[True]}) /2 Interrupting ${Me.Casting}
        /Interrupt
        /delay 1s !${Me.Casting.ID}
    }
/return
Rich (BB code):
[General] 
ChatChan=1 
ReportChan=1 
HealChan=2 
ReportInterrupts=True 


[Spells] 
FastHeal=Pious Light
CompleteHeal=Complete Healing
YaulpSpell=Yaulp VII
 
Last edited:
Cleric CH Chain Macro

Users who are viewing this thread

Back
Top
Cart