• 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

Spell Casting Skills Macro

armysoldier

Well-known member
Joined
Jun 26, 2005
RedCents
101¢
This macro is so you can sit some where and cast spells over and over .. until you come back

this will work good for the toon your PLing

or you just wanna max your casting skills

its simple and works..

you could also add this to some other macros I am sure

8-)

Rich (BB code):
|--- Macro Castskills.mac
|--- Written by Armysoldier 
|--- for REDGUIDES!!!
|--- 
|--- Work your casting skills while AFK
|--- or while on the toon being PLed
|---
|--- usage /mac Castskills
|--- Park yourself in a safe place - 
|--- I like PoK .. you don't take damage from casting nukes on yourself

#include spell_routines.inc
#turbo

#Event Zoned "#*#You have entered#*#"
#Event Mana "#*#Insufficient Mana#*#"

|--- Set for spells to be in slots 1 -5
|--- one spell for each ability you want to work
|--- Ensure you save the spell set as CS or edit line 13 to your spellset name
Sub Main
        /memspellset CS
        /delay 20s
	:begin
 	/target myself
	/call cast "${Me.Gem[1]}" gem1
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[2]}" gem2
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[3]}" gem3
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[4]}" gem4
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[5]}" gem5
        /delay 5s
        /autoinventory
        /doevents
	/goto :begin

/return


Sub Event_Zoned 
       /echo died or instanced ended.. time to go 
       /twist off  
       /circle off  
       /delay 5s  
       /sit  
       /camp desk  
       /endmac 
/return

Sub Event_Mana
       	/sit
       	:loop
	/delay 15S
       	/echo checking my mana 
       	/if ( ${Me.PctMana}==100 ) /return
     	/goto :loop
:endloop
/return
 
tks cade.. first one i have done that works as intended 8-)

MY CHERRY IS BROKEN!!!!


8-)
 
this works on all toons with any spell

you can rem ( | ) the memspell list ..

i do that because i am always forgetting to change the spells from grp spells .. to lvl 1 spells

you can change the gems to what you need to work and save as cs again..

simple and effective

no issues what-so-ever

add the zoned event if your using in an instanced and want to camp out when u finish
 
This is what I use it will do all the fun stuff for you, aslong as you have the right spells/lvl. Some guy posted this on MQ2 forums awhile ago and I edited it to actually work.
Rich (BB code):
Sub Main 
  
  /declare Maxskill int outer 
  /declare AlterationSpell outer 
  /declare AbjurationSpell outer 
  /declare EvocationSpell outer 
  /declare DivinationSpell outer 
  /declare ConjurationSpell outer 
  /declare SingSong outer 
  /declare DrumSong outer 
  /declare StringSong outer 
  /declare WindSong outer 
  /declare BrassSong outer 

  /varset Maxskill 235
  
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /goto :Skspells 
  /if (${Me.Class.Name.Equal[Bard]}) /goto :Brdspells 
  /if (${Me.Class.Name.Equal[Beastlord]}) /goto :Bstspells 
  /if (${Me.Class.Name.Equal[Cleric]}) /goto :Clrspells 
  /if (${Me.Class.Name.Equal[Druid]}) /goto :Druspells 
  /if (${Me.Class.Name.Equal[Enchanter]}) /goto :Encspells 
  /if (${Me.Class.Name.Equal[Magician]}) /goto :Magspells 
  /if (${Me.Class.Name.Equal[Necromancer]}) /goto :Necspells 
  /if (${Me.Class.Name.Equal[Paladin]}) /goto :Palspells 
  /if (${Me.Class.Name.Equal[Ranger]}) /goto :Rngspells 
  /if (${Me.Class.Name.Equal[Shaman]}) /goto :Shmspells 
  /if (${Me.Class.Name.Equal[Wizard]}) /goto :Wizspells 

:Brdspells 
  /varset SingSong Jonthan's Whistling Warsong 
  /varset DrumSong Anthem de Arms 
  /varset StringSong Hymn of Restoration 
  /varset WindSong Tarew`s Aquatic Ayre 
  /varset BrassSong Denon`s Disruptive Discord 
 /if (${Me.Level}<18) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 18. 
    /endmacro 
  } 
/goto :Songreqs 

:Bstspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Inner Fire 
  /varset EvocationSpell Blast of Frost 
  /varset DivinationSpell Flash of Light 
  /varset ConjurationSpell Sicken 
 /if (${Me.Level}<15) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 15. 
    /endmacro 
  } 
/goto :Prereqs 

:Clrspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Courage 
  /varset EvocationSpell Strike 
  /varset DivinationSpell Flash of Light 
  /varset ConjurationSpell Summon Drink 
 /if (${Me.Level}<5) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 5. 
    /endmacro 
  } 
/goto :Prereqs 

:Druspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Skin like Wood 
  /varset EvocationSpell Burst of Flame 
  /varset DivinationSpell See Invisible
  /varset ConjurationSpell Stinging Swarm 
 /if (${Me.Level}<5) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 5. 
    /endmacro 
  } 
/goto :Prereqs 

:Encspells 
  /varset AlterationSpell Strengthen 
  /varset AbjurationSpell Minor Shielding 
  /varset EvocationSpell Chaotic Feedback 
  /varset DivinationSpell True North 
  /varset ConjurationSpell Mesmerize 
 /if (${Me.Level}<8) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 8. 
    /endmacro 
  } 
/goto :Prereqs 

:Magspells 
  /varset AlterationSpell Renew Elements 
  /varset AbjurationSpell Minor Shielding 
  /varset EvocationSpell Burst of Flame 
  /varset DivinationSpell True North 
  /varset ConjurationSpell Summon Drink 
 /if (${Me.Level}<8) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 8. 
    /endmacro 
  } 
/goto :Prereqs 

:Necspells 
  /varset AlterationSpell Lifetap 
  /varset AbjurationSpell Minor Shielding 
  /varset EvocationSpell Ward Undead 
  /varset DivinationSpell True North 
  /varset ConjurationSpell Disease Cloud 
 /if (${Me.Level}<4) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 4. 
    /endmacro 
  } 
/goto :Prereqs 

:Palspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Courage 
  /varset EvocationSpell Cease 
  /varset DivinationSpell Flash of Light 
  /varset ConjurationSpell Hammer of Wrath 
 /if (${Me.Level}<15) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 15. 
    /endmacro 
  } 
/goto :Prereqs 

:Rngspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Skin like Wood 
  /varset EvocationSpell Flame lick 
  /varset DivinationSpell Camouflage 
  /varset ConjurationSpell Dance of the fireflies 
 /if (${Me.Level}<15) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 15. 
    /endmacro 
  } 
/goto :Prereqs 

:Skspells 
  /varset AlterationSpell Lifetap 
  /varset AbjurationSpell Numb the dead 
  /varset EvocationSpell Ward Undead 
  /varset DivinationSpell Sense the Dead 
  /varset ConjurationSpell Disease Cloud 
 /if (${Me.Level}<22) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 22. 
    /endmacro 
  } 
/goto :Prereqs 

:Shmspells 
  /varset AlterationSpell Minor Healing 
  /varset AbjurationSpell Inner Fire 
  /varset EvocationSpell Burst of Flame 
  /varset DivinationSpell Flash of Light 
  /varset ConjurationSpell Tainted Breath 
 /if (${Me.Level}<9) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 9. 
    /endmacro 
  } 
/goto :Prereqs 

:Wizspells 12 
  /varset AlterationSpell Fade 
  /varset AbjurationSpell Minor Shielding 
  /varset EvocationSpell Shock of Frost 
  /varset DivinationSpell True North 
  /varset ConjurationSpell Halo of Light 
  /if (${Me.Level}<12) { 
    /echo This macro won't function correctly until your ${Me.Class} is level 12. 
    /endmacro 
  } 
/goto :Prereqs 
:Songreqs 
 /if (${Bool[${Me.Book[${SingSong}]}]}==FALSE) { 
    /echo You don't have ${SingSong}.  
    /echo Please check the songs listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${DrumSong}]}]}==FALSE) { 
    /echo You don't have ${DrumSong}.  
    /echo Please check the songs listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${StringSong}]}]}==FALSE) { 
    /echo You don't have ${StringSong}.  
    /echo Please check the songs listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${WindSong}]}]}==FALSE) { 
    /echo You don't have ${WindSong}.  
    /echo Please check the songs listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${BrassSong}]}]}==FALSE) { 
    /echo You don't have ${BrassSong}.  
    /echo Please check the songs listed in the macro for what you need. 
    /endmacro 
  } 
/goto :Bardsongprep 
:Prereqs 


  

  /if (${Bool[${Me.Book[${AlterationSpell}]}]}==FALSE) { 
    /echo You don't have ${AlterationSpell}.  
    /echo Please check the spells listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${AbjurationSpell}]}]}==FALSE) { 
    /echo You don't have ${AbjurationSpell}.  
    /echo Please check the spells listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${EvocationSpell}]}]}==FALSE) { 
    /echo You don't have ${EvocationSpell}.  
    /echo Please check the spells listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${DivinationSpell}]}]}==FALSE) { 
    /echo You don't have ${DivinationSpell}.  
    /echo Please check the spells listed in the macro for what you need. 
    /endmacro 
  } 

  /if (${Bool[${Me.Book[${ConjurationSpell}]}]}==FALSE) { 
    /echo You don't have ${ConjurationSpell}.  
    /echo Please check the spells listed in the macro for what you need. 
    /endmacro 
  } 
      
  /if (${Me.Class.Name.Equal[Magician]}) /goto :Getpet 
  /if (${Me.Class.Name.Equal[Shadowknight]}) /goto :Getpet 
  /if (${Me.Class.Name.Equal[Necromancer]}) /goto :Getpet 
  
/goto :Castingprep 

:Getpet 
  /notify CastSpellWnd CSPW_Spell5 rightmouseup  
  /if (${Me.Class.Name.Equal[Magician]}) { 
    /call Cast "Elementalkin: Water" gem6 
  } Else { 
    /call Cast "Leering Corpse" gem6 
  } 
  /goto :Castingprep 
:Bardsongprep 
  /mem 1 "${SingSong}" 
  /delay 5s 
  /mem 2 "${DrumSong}" 
  /delay 5s 
  /mem 3 "${StringSong}" 
  /delay 5s 
  /mem 4 "${WindSong}" 
  /delay 5s 
  /mem 5 "${BrassSong}" 
  /delay 5s 
  /goto :Singing 

:Singing 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Skill[Sing]}>=${MaxSkill}) /goto :Percussion 
  /if (${Me.SpellReady[${SingSong}]})   /Cast "${SingSong}" 
  /goto :Singing 

:Percussion 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Skill[Percussion Instruments]}>=${MaxSkill}) /goto :Stringed 
  /if (${Me.SpellReady[${DrumSong}]})   /Cast "${DrumSong}" 
  /goto :Percussion 

:Stringed 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Skill[Stringed Instruments]}>=${MaxSkill}) /goto :Wind 
  /if (${Me.SpellReady[${StringSong}]})   /Cast "${StringSong}" 
  /goto :Stringed 

:Wind 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Skill[Wind Instruments]}>=${MaxSkill}) /goto :Wind 
  /if (${Me.SpellReady[${WindSong}]})   /Cast "${WindSong}" 
  /goto :Wind 

:Brass 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Skill[Brass Instruments]}>=${MaxSkill}) { 
    /echo Skills are all at max! 
    /endmacro 
  } 
  /if (${Me.SpellReady[${BrassSong}]})   /Cast "${BrassSong}" 
  /goto :Brass 

:Castingprep 
  
  /memspell 1 "${AlterationSpell}" 
  /delay 5s 
  /memspell 2 "${AbjurationSpell}" 
  /delay 5s 
  /memspell 3 "${EvocationSpell}" 
  /delay 5s 
  /memspell 4 "${DivinationSpell}" 
  /delay 5s 
  /memspell 5 "${ConjurationSpell}" 
  /delay 5s 
  /goto :Alteration 


:Manacheck 
  /if (${Me.CurrentMana}>=100) { 
    /goto :Alteration 
  } Else { 
    /goto :Medup 
  }  

:Medup 
  /if (${Me.Sitting}) { 
  } Else { 
    /sit 
  } 
  /if (${Me.CurrentMana}==${Me.MaxMana}) /goto :Manacheck 
  /goto :Medup 



:Alteration 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Class.Name.Equal[Magician]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Necromancer]}) /target ${Me.Pet}  
  /if (${Me.Skill[Alteration]}>=${MaxSkill}) /goto :Abjuration 
  /if (${Me.SpellReady[${AlterationSpell}]})   /Cast "${AlterationSpell}" 
  /goto :Manacheck 

:Abjuration 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Class.Name.Equal[Magician]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Necromancer]}) /target ${Me.Pet} 
  /if (${Me.Skill[Abjuration]}>=${Maxskill}) /goto :Evocation 
  /if (${Me.SpellReady[${AbjurationSpell}]})   /Cast "${AbjurationSpell}" 
  /goto :Manacheck 

:Evocation 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Class.Name.Equal[Magician]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Necromancer]}) /target ${Me.Pet} 
  /if (${Me.Skill[Evocation]}>=${Maxskill}) /goto :Divination 
  /if (${Me.SpellReady[${EvocationSpell}]})   /Cast "${EvocationSpell}" 
  /goto :Manacheck 
    
:Divination 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Class.Name.Equal[Magician]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Necromancer]}) /target ${Me.Pet} 
  /if (${Me.Skill[Divination]}>=${Maxskill}) /goto :Conjuration 
  /if (${Me.SpellReady[${DivinationSpell}]})   /Cast "${DivinationSpell}" 
  /goto :Manacheck 

:Conjuration 
  /if (${Me.Sitting}) /sit off 
  /targ ${Me} 
  /if (${Me.Class.Name.Equal[Magician]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Shadow Knight]}) /target ${Me.Pet} 
  /if (${Me.Class.Name.Equal[Necromancer]}) /target ${Me.Pet} 
  /if (${Me.Skill[Conjuration]}>=${Maxskill}) { 
    /echo All spellcasting skills are at max! 
    /endmacro 
  } 
  /if (${Me.Class.Name.Equal[Ranger]}) { 
    /if (${Time.Night}) { 
    } Else { 
      /echo It's daytime and you can't summon globes now. 
      /echo Try again when it's nighttime, 
      /echo or get level 30 and use stinging swarm as your conjuration spell. 
      /endmacro 
    } 
  } 
  /if (${Me.SpellReady[${ConjurationSpell}]}) { 
    /Cast "${ConjurationSpell}" 
    /delay 1s 
  } 
  /if (${Cursor.Name.Find[Halo of Light]}) /destroy 
  /if (${Cursor.Name.Find[Globe of Water]}) /destroy 
  /if (${Cursor.Name.Find[Firefly Globe]}) /destroy 
  /if (${Cursor.Name.Find[Hammer of Wrath]}) /destroy 
  
  /goto :Manacheck 
  
/Endmacro

Edit the maxskill if you are under 60. I usually plvl a toon to lvl 60 before running this for a night in bazaar or wherever, so that is why I took away the guys /varcalc for the maxskill, because past a certain lvl the Maxskill would get set as some impossible #.
 
Change Line
:Wizspells 12
to
:Wizspells

Change Line
/varset EvocationSpell Shock of Frost
to
/varset EvocationSpell Shock of Ice

Change Line
/varset EvocationSpell Strike
to
/varset EvocationSpell Furor

Occationally I don't get spells memed right but all and all this is awsome. However, I have noticed as of today Halo of light increases skill one time and no more even after hour or so.
 
see thats why i made mine simple...

you work the spells you want and cast away .. all night .. or all day .. no chaging anything.. except the spellset you memorize..


tosssed in the zoned sub .. cause well i hate peeps sitting at FH ZI ..

there are several .. and they all do the same thing.. so choose the one that fits you .. and enjoy ...

point is to max your cast skills 8-)
 
That was my first post here. I love this macro. Thanks for putting it up. Sorry if I didn't say that first. The changes I posted were ones I had to make to fix a call error and spells that don't exist any more. I prefer this one to the others I have seen, just because I don't have to change anything before I go in. I can skill up my clr, wiz, etc whenever I feel like it.

My next adventure is to try the zoning ones. I don't understand how they work yet. Off to my next adventure.
 
Hey Army, your short Mac works just great.

But however, after a certain time my toons start to only cast one spell out of the five for which they have enough mana.
They never trigger the Insuff mana Event.
So I added a line to the Mainloop.

Rich (BB code):
/if (${Me.PctMana}<3) /call Event_Mana

If you have the same Problem this line should fix it.
Best regards and thx again Army for this mac.
 
new issues have arisin.. you can not nuke yourself in POK...

this still works .. just use low level nuke.. and in a semi agro free zone..

simple is nice 8-)
 
I recommend changing Shock of Ice [Level 8, 23 mana, 58 max damage] to Frost Bolt [Level 1, 6 Mana, 14 max damage]. Besides, if you target yourself in a normal fighting zone as a lower level character, you could actually kill yourself after awhile. ;) It also lowers the Wizard level requirement from 12 down to 9.

If you want a mob to damage, try the "Inactive Clockworks" just outside the entrance to the Minotaur Mines in Steamfont. Poor 'lil bugger just takes a beating and never complains... Inexplicably, you WILL do damage to what appears to be a level one mob with limitless hit points. I watched a whole group of 51-65 characters beak the heck out that mob, literally kicked it halfway up the mountain and never dropped it below 99% health.

I wonder if it would drop anything if you ever could kill it? nah, prob not.
 
..oh, and I have used Halo of Light to get skill up as recently as last night. At level 65 it still works great for Conjuration skills.
 
armysoldier said:
This macro is so you can sit some where and cast spells over and over .. until you come back

this will work good for the toon your PLing

or you just wanna max your casting skills

its simple and works..

you could also add this to some other macros I am sure

8-)

Rich (BB code):
|--- Macro Castskills.mac
|--- Written by Armysoldier 
|--- for REDGUIDES!!!
|--- 
|--- Work your casting skills while AFK
|--- or while on the toon being PLed
|---
|--- usage /mac Castskills
|--- Park yourself in a safe place - 
|--- I like PoK .. you don't take damage from casting nukes on yourself

#include spell_routines.inc
#turbo

#Event Zoned "#*#You have entered#*#"
#Event Mana "#*#Insufficient Mana#*#"

|--- Set for spells to be in slots 1 -5
|--- one spell for each ability you want to work
|--- Ensure you save the spell set as CS or edit line 13 to your spellset name
Sub Main
        /memspellset CS
        /delay 20s
	:begin
 	/target myself
	/call cast "${Me.Gem[1]}" gem1
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[2]}" gem2
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[3]}" gem3
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[4]}" gem4
        /delay 5s
        /autoinventory
        /doevents
        /call cast "${Me.Gem[5]}" gem5
        /delay 5s
        /autoinventory
        /doevents
	/goto :begin

/return


Sub Event_Zoned 
       /echo died or instanced ended.. time to go 
       /twist off  
       /circle off  
       /delay 5s  
       /sit  
       /camp desk  
       /endmac 
/return

Sub Event_Mana
       	/sit
       	:loop
	/delay 15S
       	/echo checking my mana 
       	/if ( ${Me.PctMana}==100 ) /return
     	/goto :loop
:endloop
/return
WHERE DOO I GO AND WHAT DO I DO TO GET THIS DONE ??????
 
READ young pada-won

|--- Set for spells to be in slots 1 -5
|--- one spell for each ability you want to work
|--- Ensure you save the spell set as CS or edit line 13 to your spellset name

Right in the Quote you posted....


also

|--- usage /mac Castskills
|--- Park yourself in a safe place -
|--- I like PoK .. you don't take damage from casting nukes on yourself



if you don't understand all that.. then .. um ... there is a deeper rooted problem

8-)


send a PM
 
Spell Casting Skills Macro

Users who are viewing this thread

Back
Top
Cart