• 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

(UPDATED): Shammy PL-macro V2.0. Stand alone. Shammy and another toon!

nijhal

Member
Joined
Feb 22, 2006
RedCents
10¢
Ok guys, this macro is becoming bigger and bigger and I am learning more and more thanks to pm's and help from both you guys and reading other macros. What does this mean? It means theres a new macro writer coming out of the woodwork. This is version 2.0, added crippling, slowing, pet attack, canni using spell and AA. Big thanks to all for your help, big thankks if anyone uses it and likes it. Please post if you like it and you use it I would really like to know my work is appriciated. Unfortunatly, it will only heal shammy and powerlevelee at this time. Heres a list of what it does...

  • Heal Powerlevelee and Shaman
  • Send pet in at 60 percent of mob hp
  • Buff self, powerlevelee and pet
  • Rebuff powerlevelee, self and pet
  • Macro will end if you zone
  • Will know if your in indoor and or outdoor zones and use mount/sit based on that.
  • Will /fade if shammy is hit (comment this out if you dont want it)
  • Will slow mobs
  • Will cripple mobs.

To run it...


  • Target Powerlevelee /macro shammy
  • Change spells in the spell list /declare to the spells you use
  • Change mount in the mount declare to the mount you own.
  • If you want slow make sure DoSlow is True
  • If you want Cripple make sure DoCripple is TRUE
  • IT will heal at 40 percent, if you want this higher or lower change this line /if (${Target.PctHPs}<40) /call Heal
  • It will heal over time at 65 percent, if you want this higher or lower change this line |/if (${Target.PctHPs}<65) /call Hot
  • It will Canni at 40 percent, to change this change this line /if (${Me.PctMana}<40) /call Canni
  • It will use the Canni AA, if you dotn want to use this, comment this line out /if (${Me.PctMana}<25) /call Canni2
  • To change heal over time on shaman from 70 percent change this line /if (${Me.PctHPs}<70) /call HotMe
  • To change the heal percentage for shaman change this line /if (${Me.PctHPs}<40) /call HealMe
  • It slows at 90 percent if you want to change this, change this line /if (${Target.ID} && !${MobSlowed} && ${DoSlow} && ${Target.PctHPs}<90) /call event_Slow
  • It Cripples at 60 percent, to change it, change this line /if (${Target.ID} && !${MobCrippled} && ${DoCripple} && ${Target.PctHPs}<60) /call event_Cripple
  • It sends pet in at 60 percent, if you want to change this change this line /if (${Target.ID} && !${Engaged} && ${Target.PctHPs}<60) /call PetKill
  • To not use pet, comment this line out /if (${Target.ID} && !${Engaged} && ${Target.PctHPs}<60) /call PetKill


Thats it, it is completely automated. It will even wait till target is within range before it tries to recast spells. It is dependant on having the shammy canni AA, as well as being level 70+. You can change your spell lineup and you will need to.

Known issues Im working on. It will not slow adds!! Remeber, it will NOT SLOW ADDS! Not untill current mob is dead anyways.

Any suggestions to code or things to add, please post them here. If you find this macro useful, let me know. Remember, it only works for a shammy and another toon!!

Enjoy...

Rich (BB code):
|--------------------------------------------------------------------------------
|Nijhals Shammy Buffbot macro v2.0
|
|Usage /macro shammy
|
|Change spell names to reflect the spells you want to use.  
|Make sure you have your toon targeted when running this macro.
|
|Things to add:
|Group Support
|Slowing multiple adds
|
|--------------------------------------------------------------------------------
#include Spell_Routines.inc

#chat group
#chat tell

#event HotReset		  "#*#Your Quiescence spell has worn off of #*#
#event Cripple		  "#*#resisted the crippling spasm#*#
#event Cripple		  "#*#Your Crippling Spasm spell has worn off of #*#
#event Slow		  "#*#resisted the togor's insects#*#
#event Slow 		  "#*#Your Togor's Insects spell has worn off of #*#
#event Immune		  "#*#is immune to changes#*#"
#event Haste 		  "#*#Your Talisman of Celerity spell has worn off of #*#
#Event HPBuff 		  "#*#Your Focus of Soul spell has worn off of #*#"
#Event Avatar 		  "#*#Your Ferine Avatar spell has worn off of #*#"
#event Hit 		  "#*#hits you for#*#"
#event Hit 		  "#*#punches you for#*#"
#event Hit 		  "#*#strikes you for#*#"
#event Hit 		  "#*#crushes you for#*#"
#event Hit 		  "#*#slashes you for#*#"
#event Hit                "#*#pierces you for#*#"
#event Hit                "#*#kicks you for#*#"
#event HPbuffPet          "#*#Your pet's Focus of Soul#*#"
|#event PetHaste          "#*#Your pet's Talisman of Celerity spell has worn#*#
#event OutDoor            "#*#outdoors#*#"
#event OutDoor            "You can not summon a mount here."
#event Reset 		  "#*#has been slain by#*#"
#event Reset		  "#*#died#*#"
#event Cure		  "#*#has contracted an illness#*#"

Sub Main 
  /if (!${Target.ID}) /call End
  /echo |-----------------------------------------------------------------|
  /echo |Shammy Powerlevel Bot Coming Online Now... 
  /echo |                       Version 2.0                    
  /echo |                                           
  /echo |                  Written by Nijhal                
  /echo |     Props the the guys at Redguides       
  /echo |               for all their teachings.          
  /echo |-----------------------------------------------------------------|


  /declare StartZone            int outer    ${Zone.ID}
  /declare Hpbuff	        string outer "focus of soul"		
  /declare Pet	        	string outer "farrel's companion"	
  /declare Canni	        string outer "pained memory"		
  /declare Haste                string outer "talisman of celerity"	
  /declare HoT                  string outer "quiescence"		
  /declare Heal                 string outer "yoppa's Mending"		
  /declare Avatar	        string outer "ferine avatar"		
  /declare Slow			string outer "togor's insects"		
  /declare Cripple		string outer "crippling spasm"		
  /declare Mount                outer 	     "Collapsable Roboboar"	
  /declare DoSlow             	outer TRUE				
  /declare DoCripple           	outer TRUE				
  /declare Player1              string outer ${Target}
  /declare Player1ID            int outer    ${Target.ID}
  /declare OutDoors             outer TRUE
  /declare MobSlowed            outer FALSE
  /declare Engaged        	outer FALSE
  /declare MobCrippled		outer FALSE
  /declare PlayerHot		outer FALSE

  /if (!${Me.Mount.ID} && ${OutDoors}) /call cast ${Mount} item 5s
  /call event_Avatar
  /call event_HPBuff
  /call event_Haste
  /call event_HPbuffPet
  |/call event_PetHaste
  /call SelfBuffs

  :loop
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
  /target ${Player1}
  /delay 1s
  /call SelfBuffs
  /if (${Target.PctHPs}<40) /call Heal
  |/if (${Target.PctHPs}<65) /call Hot
  /if (!${PlayerHot} && ${Target.PctHPs}<90) /call Hot
  /if (${Me.PctHPs}<40) /call HealMe
  /if (${Me.PctHPs}<70) /call HotMe
  /if (${Me.PctMana}<40) /call Canni
  /if (${Me.PctMana}<25) /call Canni2
  /if (${Zone.ID}!=${StartZone}) /call Done
  /doevents
  /call GMCheck
  /keypress esc
  /assist ${Player1}
  /delay 1s
  /if (!${Target.ID}) /call event_Reset
  /if (${Target.ID} && !${MobSlowed} && ${DoSlow} && ${Target.PctHPs}<90) /call event_Slow
  /if (${Target.ID} && !${MobCrippled} && ${DoCripple} && ${Target.PctHPs}<60) /call event_Cripple
  /if (${Target.ID} && !${Engaged} && ${Target.PctHPs}<60) /call PetKill
  /goto :loop
/return

|--------------------------------------------------------------------------------
|Sub Haste
|--------------------------------------------------------------------------------
Sub event_Haste
  /echo Casting Haste
  /target ${Player1}
  :haste
  /if (${Target.Distance}>100) /goto :haste
  /delay 1
  /cast ${Haste}
  /delay 8s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub PetHaste
|--------------------------------------------------------------------------------
Sub event_PetHaste
  /echo Casting Haste on Pet
  /target pet
  :pethaste
  /if (${Target.Distance}>50) /goto :pethaste
  /delay 1
  /cast ${Haste}
  /delay 8s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub HPBuff
|--------------------------------------------------------------------------------
Sub event_HPBuff
  /echo Casting Hit Point Buff
  /target ${Player1}
  :hpbuff
  /if (${Target.Distance}>100) /goto :hpbuff
  /delay 1
  /cast ${Hpbuff}
  /delay 9s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub HPbuffPet
|--------------------------------------------------------------------------------
Sub event_HPbuffPet
  /echo Casting Pet Hit Point Buff
  /target pet
  :pethpbuff
  /if (${Target.Distance}>100) /goto :pethpbuff
  /delay 1
  /cast ${Hpbuff}
  /delay 9s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub Avatar
|--------------------------------------------------------------------------------
Sub event_Avatar
  /target ${Player1}
  :avatar
  /if (${Target.Distance}>100) /goto :avatar
  /echo Casting Avatar
  /delay 1
  /cast ${Avatar}
  /delay 7s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub Heal
|--------------------------------------------------------------------------------
Sub Heal
  /echo Casting Heal
  /target ${Player1}
  :heal
  /if (${Target.Distance}>100) /goto :heal
  /delay 1
  /cast ${Heal}
  /delay 6s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub Hot
|--------------------------------------------------------------------------------
Sub HotMe
  /echo Casting Heal over time
  /Keypress F1
  /delay 4
  /cast ${HoT}
  /delay 6s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
  /varset PlayerHot TRUE
/return

|--------------------------------------------------------------------------------
|Sub HealMe
|--------------------------------------------------------------------------------
Sub HealMe
  /echo Casting Heal
  /keypress F1
  /delay 4
  /delay 1
  /cast ${Heal}
  /delay 6s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub Hot
|--------------------------------------------------------------------------------
Sub Hot
  /echo Casting Heal over time
  /target ${Player1}
  :hot
  /if (${Target.Distance}>100) /goto :hot
  /delay 1
  /cast ${HoT}
  /delay 6s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
  /varset PlayerHot TRUE
/return

|--------------------------------------------------------------------------------
|Sub Canni
|--------------------------------------------------------------------------------
Sub Canni
  /echo Casting Canni....
  /delay 1
  /cast ${Canni}
  /delay 5s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub Canni2
|--------------------------------------------------------------------------------
Sub Canni2
  /echo Casting AA Canni....
  /delay 1
  /aa act cannibalization
  /delay 5s
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub CastPet
|--------------------------------------------------------------------------------
Sub CastPet
  |/echo Summoning a Pet...
  |/delay 1
  |/cast ${Pet}
  |/delay 15s
  |/sit
/return

|--------------------------------------------------------------------------------
|Sub Self Buffs
|--------------------------------------------------------------------------------
Sub SelfBuffs
  /if (${Me.Buff[${Hpbuff}].Duration} !> ${MF_BuffTicks}) { 
    /keypress F1
    /delay 4
    /cast ${Hpbuff}
  /delay 6s
  }

  /if (${Me.Buff["Aura of Eternity"].Duration} !> ${MF_BuffTicks}) { 
    /keypress F1
    /delay 4
    /keypress 8
  /delay 6s
  }

  /if (${Me.Buff["Elixir of Clarity X"].Duration} !> ${MF_BuffTicks}) { 
    /keypress 7
  /delay 3s
  }
  /if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

|--------------------------------------------------------------------------------
|Sub event_Hit
|--------------------------------------------------------------------------------
Sub event_Hit
  /fade
  /varset MobSlowed FALSE
  /varset MobCrippled FALSE
  /varset Engaged FALSE
  /delay 20s
  /doevents flush
/return

|--------------------------------------------------------------------------------
|Sub PetKill
|--------------------------------------------------------------------------------
Sub PetKill
  :pet kill
  /if (${Target.Distance}>100) /goto :petkill
  /pet kill
  /varset Engaged TRUE
/return

|--------------------------------------------------------------------------------
|Sub Slow
|--------------------------------------------------------------------------------
Sub event_Slow
  :slow
  /if (${Target.Distance}>100) /goto :slow
  /echo Casting Slow....
  /cast ${Slow}
  /delay 8s
  /doevents
  /varset MobSlowed TRUE
/return

|--------------------------------------------------------------------------------
|Sub Cripple
|--------------------------------------------------------------------------------
Sub event_Cripple
  :cripple
  /if (${Target.Distance}>100) /goto :cripple
  /echo Casting Cripple....
  /cast ${Cripple}
  /delay 7s
  /doevents
  /varset MobCrippled TRUE
/return

|--------------------------------------------------------------------------------
|Sub event OutDoor
|--------------------------------------------------------------------------------
Sub event_Outdoor
  /echo This is an indoor zone.  Setting mount off.
  /varset OutDoors TRUE
/return

|--------------------------------------------------------------------------------
|Sub event Immune
|--------------------------------------------------------------------------------
Sub event_Immune
  /varset MobSlowed TRUE
  /echo Mob Immune to Slow!
/return
  
|--------------------------------------------------------------------------------
|Sub Reset
|--------------------------------------------------------------------------------
Sub event_Reset
  /varset MobSlowed FALSE
  /varset MobCrippled FALSE
  /varset Engaged FALSE
/return
  
|--------------------------------------------------------------------------------
|Sub HotReset
|--------------------------------------------------------------------------------
Sub event_HotReset
  /varset PlayerHot FALSE
  /echo Ready to cast Heal over time again!
/return
  
|--------------------------------------------------------------------------------
|Sub End
|--------------------------------------------------------------------------------
Sub End
  /popup You must have a Player targeted to run this macro!!!
  /echo You must have a player targeted to run this macro!!!
  /beep
/endmacro

|--------------------------------------------------------------------------------
|Event Done
|--------------------------------------------------------------------------------
Sub Done
  /echo We left the powerleveling zone, ending the macro...
/endmacro
|-------------------------------------------------------------------------------- 
|SUB: GM Check 
|-------------------------------------------------------------------------------- 
Sub GMCheck 

   /if (${Spawn[gm].ID}) { 
      /beep 
      /beep 
      /beep 
      
      /echo GM has entered the zone! 
      /echo FUCK HIM but ending the macro... 

      /endmacro 
   } 
    
/return

N
 
Last edited:
Re: Overhaul: Shammy PL-Group macro. Stand alone. (need some help too pls read)

Bump for updated macro. And so someone will read for the help I need.

Didnt goto questions due to its a working macro.

N
 
Re: Overhaul: Shammy PL-Group macro. Stand alone. (need some help too pls read)

I also need to know if there is a way to have him get on a mount if its an outdoor zone. If anyone can please help with this, this will complete this powerlevel macro and make it a stand alone grouping macro.



Rich (BB code):
/declare Mount          "WHATEVER YOUR MOUNT CAST ITEM IS"


/if (!${Me.Mount.ID} && ${OutDoors}) /call cast ${Mount} item 4s

This should work

And so someone will read for the help I need.
lol
 
Updated to use mount, cripple, slow, pet kill, ect ect.

Let me know what you guys think, maybe I can get my own sticky thread for all my macros!! Yippie!!

If you have a macro you want created let me know what exactly you want it to do and I will be sure to try and write it. Be sure if you PM for a macro, be specific, let me know exactly what you want, I am not a mind reader. All information needed should be included in the PM, be short but specific, if I have any questions on what you want, I will pm you back. If I dont you will see it posted when I have it done!!

N
 
I tried this mac and I am having the following bug.

Keeps casting SoW on me and keeps trying to cast Intensity of the Resolute over and over.
 
I know what your problem is, I forgot about this. Gonna need to edit my post. It is using some keypresses to activate certain items, like clarity potions and clicky mana regen legs. I will have to update this....here the line of conde you need to change or comment out...

Rich (BB code):
|--------------------------------------------------------------------------------
|Sub Self Buffs
|--------------------------------------------------------------------------------
Sub SelfBuffs
  /if (${Me.Buff[${Hpbuff}].Duration} !> ${MF_BuffTicks}) { 
    /keypress F1
    /delay 4
    /cast ${Hpbuff}
  /delay 6s
  }

  /if (${Me.Buff["Aura of Eternity"].Duration} !> ${MF_BuffTicks}) { 
    /keypress F1
    /delay 4
    /keypress 8
  /delay 6s
  }
  /if (${Me.Buff["Elixir of Clarity X"].Duration} !> ${MF_BuffTicks}) { 
    /keypress 7
  /delay 3s
  }  
/if (${Me.Standing} && !${Me.Mount.ID}>0) /sit
/return

N
 
(UPDATED): Shammy PL-macro V2.0. Stand alone. Shammy and another toon!

Users who are viewing this thread

Back
Top
Cart