• 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 Skill-up macro

a_troll_01

Active member
Joined
Oct 5, 2006
RedCents
21¢
Work your spell casting skills after powerleveling or for that matter just leveling.

spell_skills.mac
Rich (BB code):
// 
// Name: spell_skills.Mac
//
// Author: a_troll_01
//
// Purpose: Max your spell casting skills
//
// Include file: spell_skills.inc

#turbo

#Event Undead "This spell only works on the undead." 


#DEFINE INIFILE spell_skills.ini
#DEFINE DEBUG_1 /SQUELCH /ECHO

#DEFINE ALTERATION 1
#DEFINE ABJURATION 2
#DEFINE CONJURATION 3
#DEFINE DIVINATION 4
#DEFINE EVOCATION 5


#include spell_routines.inc

Sub Main 
      /declare ToonClass int outer
      /declare CastDelay int outer
      /declare i int local

      /declare Maxskill int outer 
      /declare MySpellList[5] outer
      /declare MySpellDesc[5] outer
      /declare SkillMaxed[5] bool
      /declare PetSpell outer


  
    /varset MySpellDesc[ALTERATION] Alteration
    /varset MySpellDesc[ABJURATION] Abjuration
    /varset MySpellDesc[CONJURATION] Conjuration
    /varset MySpellDesc[DIVINATION] Divination
    /varset MySpellDesc[EVOCATION] Evocation

    /varset Maxskill ${Math.Calc[(${Me.Level}*5)+4]}
    /If (${Maxskill} > 314) /Varset Maxskill 314


    /call loadspells


    /IF (${Target.ID} == NULL) /target ${Me}    
      

:mainloop
    /doevents

    | Let's see if we maxed anything that round
    /for i ALTERATION TO EVOCATION
        /IF (${Me.Skill[${MySpellDesc[${i}]}]}>${Maxskill}) /varset SkillMaxed[${i}] TRUE
        /next i
    

     | If everything is maxed we can end this macro
    /If (${SkillMaxed[1]} && ${SkillMaxed[2]} && ${SkillMaxed[3]} && ${SkillMaxed[4]} && ${SkillMaxed[5]}) {
        /Echo All Skill up completed!!!
        /Endmacro
        }
   

    | Cast our spells    
    /for i ALTERATION TO EVOCATION
        /IF (${Target.ID} == NULL) /target ${Me} 
        /IF (!${SkillMaxed[${i}]}) /Call CastSpell ${i}
        /next i    

    /autoinventory
        
    /goto :mainloop

/return




sub MedBreak
    /Echo Med Break!!!!
   :Medup 
  /if (!${Me.Sitting}) /sit 

:KeepMedding
   /doevents

  /if (${Me.CurrentMana} < ${Me.MaxMana}) {
    /delay 5s
    /goto :KeepMedding
    }

/return


sub loadspells
    /declare spellID int local
    /declare i int local

    /Echo Loading ${Me.Class.Name} spells.  Please Wait .....

    /for i ALTERATION TO EVOCATION  
        /Echo Loading Spell Gem ${i} for ${MySpellDesc[${i}]}
        /varset MySpellList[${i}] ${Ini[INIFILE, ${Me.Class.Name}, ${MySpellDesc[${i}]}]}
        /IF (${MySpellList[${i}].Equal[NULL]}) {
                /varset SkillMaxed[${i}] TRUE
                /Echo No spell loaded for ${MySpellDesc}.  Please check INI for class ${Me.Class.Name}.
            } else {
                /memspell ${i} "${MySpellList[${i}]}" 
                /delay 25
            }
        /next i


    /Echo ${MySpellList[ALTERATION]}, ${MySpellList[ABJURATION]}, ${MySpellList[CONJURATION]}, ${MySpellList[DIVINATION]}, ${MySpellList[EVOCATION]} 


| Load the Pet spell but don't complain if we don't have one.
    /varset PetSpell ${Ini[INIFILE, ${Me.Class.Name}, Pet]}
    /IF (!${PetSpell.Equal[NULL]}) {
        /Echo Summoning ${PetSpell}.  Please Wait........
        /memspell 6 "${PetSpell}"
        
:petnotready
        /IF (!${Me.SpellReady[${PetSpell}]}) {
            /delay 1s
            /goto :petnotready
            }

        /call Cast "${PetSpell}" 6
        /varset spellID ${Spell[${PetSpell}].ID} 
        /varcalc CastDelay ${Spell[${spellID}].RecoveryTime}

        /Echo Spell Information Cast Time: ${Spell[${spellID}].MyCastTime}, Recover Time: ${Spell[${spellID}].RecoveryTime}
        /Echo ${CastDelay}s

        /delay ${CastDelay}s
        /tar ${me.pet}

        }

/return


Sub CastSpell(SKILL)
    /declare spellID local int
    /varset spellID ${Spell[${MySpellList[${SKILL}]}].ID} 


:waitforspell
     DEBUG_1 CastSpell ${MySpellList[${SKILL}]}, ${Me.SpellReady[${SKILL}]}, Mana: ${Me.CurrentMana}  ${Spell[${MySpellList[${SKILL}]}].Mana}

    /IF (!${Me.SpellReady[${SKILL}]}) {
        /delay 1s
        /goto :waitforspell
        }

    /IF (${Me.CurrentMana} < ${Spell[${MySpellList[${SKILL}]}].Mana}) /Call MedBreak

    /Cast "${MySpellList[${SKILL}]}"

    /varcalc CastDelay 10*${Spell[${spellID}].RecoveryTime}      

    /delay ${CastDelay}
    /doevents
/return


/Sub event_undead
    /Target ${Me.Pet}
/return

spell_skills.inc
Rich (BB code):
[Beastlord] 
Alteration= Minor Healing 
Abjuration= Inner Fire 
Evocation= Spirit Strike
Divination= Flash of Light 
Conjuration= Sicken 
Pet =



[Cleric] 
Alteration= Minor Healing 
Abjuration= Courage 
Evocation= Strike 
Divination= True North
Conjuration= Halo of Light  


[Druid] 
Alteration= Minor Healing 
Abjuration= Skin like Wood 
Evocation= Firefist
Divination= See Invisible
Conjuration= Summon Drink 

[Enchanter] 
Alteration= Strengthen 
Abjuration= Minor Shielding 
Evocation= Chaotic Feedback
Divination= See Invisible 
Conjuration= Summon Companion 


[Magician]
Alteration= Renew Elements 
Abjuration= Minor Shielding 
Evocation= Flare
Divination= True North 
Conjuration= Summon Drink 
Pet =


[Necromancer] 
Alteration= Impart Strength
Abjuration= Minor Shielding 
Evocation= Ward Undead 
Divination= Sense The Dead 
Conjuration= ColdLight
Pet = Cavorting Bones
ManaRegen = Allure of Death
ManaBuff = 


[Paladin] 
Alteration= Minor Healing 
Abjuration= Courage 
Evocation= Cease 
Divination= Flash of Light 
Conjuration= Hammer of Wrath 


[Ranger]
Alteration= Minor Healing 
Abjuration= Skin like Wood 
Evocation= Flame lick 
Divination= Camouflage 
Conjuration= Dance of the fireflies 
 

[Shadow Knight] 
Alteration= Lifetap 
Abjuration= Numb the dead 
Evocation= Ward Undead 
Divination= Locate Corpse
Conjuration= Disease Cloud 
Pet =


[Shaman] 
Alteration= Minor Healing 
Abjuration= Inner Fire 
Evocation= Burst of Flame 
Divination= Flash of Light 
Conjuration= Tainted Breath 
Pet = Companion Spirit
ManaRegen = Cannibalize II

[Wizard]
Alteration= Fade 
Abjuration= Minor Shielding 
Evocation= Blast of Cold
Divination= True North 
Conjuration= Halo of Light
Pet =

Include File:
Spell_Routines.Inc
 
Last edited:
Nice work.

Just a thought for the INC:

For Clerics, try True North or Sense Undead for Divination and Halo of Light for Conjuration (Since it's lore theres no need to delete a cursor item)
 
Is evocation still effective? I thought I noticed that my self-damage spells weren't landing.
 
find an open zone where you can nuke yourself. Use lower lvl nukes. At least in the past that is what I always did.
 
RedDog said:
For Clerics, try True North or Sense Undead for Divination and Halo of Light for Conjuration (Since it's lore theres no need to delete a cursor item)

That's a pretty good option; I'll make the change for the general populous

Spartan said:
I do not think that you can skill up Evocation on yourself anymore.

You can cast detrimental spells on yourself outside of most non-agro zones (i.e., PoK, GH, GL, etc.)
 
Hi All,

Druid/Ranger can skill up evocation using firefist...is a buff but evocation so you can do it in GH, etc...

Cheers,
Melon
 
Sweet. Now I just gotta figure out how to compile these. I hate doing spell school skillups. Incoming red cent.
 
bama75 said:
Sweet. Now I just gotta figure out how to compile these. I hate doing spell school skillups. Incoming red cent.

Ya don't need to compile these, Bama. Macros can be pasted (using Notedpad) into a new textfile and 'saved as' 'Spellskills.mac' or whatever. Same with the 'inc', altho 'spellskills.inc'. Bung em in the 'macros' subfolder of your MQ2 folder. Then run tem from MQ2 window '/mac spellskills'
 
Thanks BP. Must have really been out of it, lol. Thanks for being patient with my early morning stupidity. =-)
 
K, I'm gettin "Subroutine Main wasn't found. The current macro has ended." when I try to run this. As I've never actually ran a macro before (though I've been usin MQ2 for a while), I'm at a loss as to what's goin on. Sorry. Don't mean to be such an obvious newb, lol.
 
bama75 said:
K, I'm gettin "Subroutine Main wasn't found. The current macro has ended." when I try to run this. As I've never actually ran a macro before (though I've been usin MQ2 for a while), I'm at a loss as to what's goin on. Sorry. Don't mean to be such an obvious newb, lol.


Most likely an error while cutting and pasting. I've added a zip file to make it easy for everyone.

Cheers
 
K, now I'm gettin the message "Couldn't open include file: C:\Program Files\Macroquest\Macros\spell_routines.inc The current macro has ended. Unable to add macro line." Is there somethin else I need to download? I'm usin the latest Redquest compile. I even DLed it again, emptied my MQ2 folder and unzipped it for a clean slate. No joy.
 
You just need to unzip both files into your macro directory, After you unzip the file, check your macro directory to make sure both files are there.
 
Spartan said:
I do not think that you can skill up Evocation on yourself anymore
You can if you go to some non-city zone. I go to one of the newbie starter zones, like Gr Fey and just cast away
 
After the TSS release they raised some of the skill caps and my Chanter couldnt cast the new mezz bewilderment without fizzeling forever. Thats just cant happen.
So I used this macro and it worked great except for the Chanter conjuration spell that is selected is summon companion which I dont have and couldnt find any info on. Does it esist? Since all the other pet spells require tiny daggers to summon that wont work unless you have a million daggers. So I used horrifying visage and it worked fine.
I put it on and went to bed and woke with maxed skills :)
 
... except for the Chanter conjuration spell that is selected is summon companion which I dont have and couldnt find any info on. Does it esist?


Summon Companion is a Level 43 spell which is probably a little high to be effective for this macro.
Summon Companion
 
Hi, a_troll_01 was wondering if you can help me please....New at this...I downloaded the fiel to my computer and then unziped to macros filder....both filles are there...one is a .mac file and the other one is a config. file...I have MacroQuest2 running while playing EQ...I type in /marco spell_skills or spellskills or spell skills and nothing happends...it say's " Couldn't open file...then, " The current Macro has ended"...Then, " Unable to add Macro lines"...I really would like to run this...Remember I'm new...thanks
 
I've been having the same problem. Are there places in the macro we need to edit according to what class and what spells it will be using? Do we need mem spells ahead or does macro do it? I memmed spells in right gems and edited macro where it has the spell desc. Still no success.
 
bama75 said:
K, now I'm gettin the message "Couldn't open include file: C:\Program Files\Macroquest\Macros\spell_routines.inc The current macro has ended. Unable to add macro line." Is there somethin else I need to download? I'm usin the latest Redquest compile. I even DLed it again, emptied my MQ2 folder and unzipped it for a clean slate. No joy.

I'm getting the same problem? does anyone know what I'm doing wrong?

Nvm.. i didn't see the second page to this thread. i fixed it working perfectly now. thank you
 
Spartan said:
I do not think that you can skill up Evocation on yourself anymore
I've found that evocation/conjuration (dots) work on pets still which is cool. If you don't have a pet, make friends with a high end pet class, /duel him and cast away on his pet. Just make sure they have pet hold. :D Also good for training up weapon/range skills as well.
 
Hello.

This mac is very nice, thanks a ton. However, there is one small issue with it.

It does not correctly set the Maxskill value correctly.

/varset Maxskill ${Math.Calc[(${Me.Level}*5)+4]}

I had to manualy set the Maxskill variable by commenting that line out nad hard coding it for the toon i was working on.

It works fine up to lvl 45, however, past that.. it fails to calculate the correct maxskill value because the skill cap is raising 2 per level after 45.

I think there are three stages of skill max caps based upon level range ( not 100% positive ).

From 1 to 45, it should be ((level x 5) + 5), from level 46 to 70 i believe its just +2 max cap skill per level gained, and then its a different max cap per level from 70 to 75.

I'm not exactly sure of that, but if i remember right.. pretty close.

Could anyone please confirm how many different stages of skill max caps there are ( and at what level range the cap max per level changes ).

This way i can modify the macro to accomodate this, and never have to manualy alter the file again.

I'd be happy to post the re-write when done.
 
ranjadown said:
Level 2 mez is conjuration isn't it? Mez your pet over and over.
(See above thread)


this seems like a simple change if it would in fact work. how can i change it to memorize/ cast this spell instead of the summon pet spell for enchs? is it just as simple as going in to the file and typing the name of the spell i want to change it to? or is there other stuff to take in to account.

or better yet! one of you red guide people should do it for me lol since i pay you guys and all lol.

edit: here is the link to the spell on lucy http://lucy.allakhazam.com/spell.html?id=292&source=Live
 
or better yet! one of you red guide people should do it for me lol since i pay you guys and all lol

Ouch LOL. Ok all, better cover your eyes and ears for what's probably to come after that ROFL.
 
TreeHuginDruid73 said:
Hello.

This mac is very nice, thanks a ton. However, there is one small issue with it.

It does not correctly set the Maxskill value correctly.

/varset Maxskill ${Math.Calc[(${Me.Level}*5)+4]}

I had to manualy set the Maxskill variable by commenting that line out nad hard coding it for the toon i was working on.

It works fine up to lvl 45, however, past that.. it fails to calculate the correct maxskill value because the skill cap is raising 2 per level after 45.

I think there are three stages of skill max caps based upon level range ( not 100% positive ).

From 1 to 45, it should be ((level x 5) + 5), from level 46 to 70 i believe its just +2 max cap skill per level gained, and then its a different max cap per level from 70 to 75.

I'm not exactly sure of that, but if i remember right.. pretty close.

Could anyone please confirm how many different stages of skill max caps there are ( and at what level range the cap max per level changes ).

This way i can modify the macro to accomodate this, and never have to manualy alter the file again.

I'd be happy to post the re-write when done.
Try something like this...
Rich (BB code):
 /if (${Me.Level}>=46) { 
/varset Maxskill ${Math.Calc[(45*5)+${Math.Calc[(${Me.Level}-45)*2]}+4]}
} else {
/varset Maxskill ${Math.Calc[(${Me.Level}*5)+4]}
}
 
Ok,

Now that I actualy took the time to figure out the top level objects and their subs, I re-wrote a small portion of the Spell_Skills.mac to take advantage of the SpellCap object. Now the program will automaticly determine your spell skill cap without the need for any calculations.

I also fixed the memspell section, that was formated to use the instamem.dll plugin. Now it works with the standard memspell structure, with no need for external plugin.

Works like a charm.

Rich (BB code):
// 
// Name: spell_skills.Mac
//
// Author: a_troll_01
//
// Heavily revamped and altered by TreeHuginDruid.
//
// Purpose: Max your spell casting skills
//
// Include file: spell_routines.inc

#turbo

#Event Undead 		"This spell only works on the undead." 
#Event SkillUp      	"You have become better at #1#! (#2#)"

#DEFINE INIFILE spell_skills.ini
#DEFINE DEBUG_1 /SQUELCH /ECHO

#DEFINE ALTERATION 1
#DEFINE ABJURATION 2
#DEFINE CONJURATION 3
#DEFINE DIVINATION 4
#DEFINE EVOCATION 5


#include spell_routines.inc
#turbo 25

|-------------------------------------------------------------------------------- 
| SUB: Main
|--------------------------------------------------------------------------------
Sub Main

/declare CastDelay int outer
/declare i int local

/declare MySpellList[5] outer
/declare MySpellDesc[5] outer
/declare SkillMaxed[5]  bool
/declare PetSpell outer

/varset MySpellDesc[ALTERATION]  Alteration
/varset MySpellDesc[ABJURATION]  Abjuration
/varset MySpellDesc[CONJURATION] Conjuration
/varset MySpellDesc[DIVINATION]  Divination
/varset MySpellDesc[EVOCATION]   Evocation

/echo Spell casting skillcap is: (${Me.SkillCap[Abjuration]})

/call LoadSpells

/if (${Target.ID}==NULL) /target ${Me}

:mainloop
    /doevents

    | Let's see if we maxed anything that round
    /for i ALTERATION TO EVOCATION
        /if (${Me.Skill[${MySpellDesc[${i}]}]} == ${Me.SkillCap[${MySpellDesc[${i}]}]}) {
            /varset SkillMaxed[${i}] TRUE
            |/echo ${MySpellDesc[${i}]} is maxed at (${Me.SkillCap[${MySpellDesc[${i}]}]}).
        }
    /next i
    
     | If everything is maxed we can end this macro
    /if (${SkillMaxed[1]} && ${SkillMaxed[2]} && ${SkillMaxed[3]} && ${SkillMaxed[4]} && ${SkillMaxed[5]}) {
        /echo All Skill up completed!!!
        /if (${Me.Mount.ID}) /dismount
        /delay 1s
        |/timed 1000 /campdesktop
        /timed 1000 /exit
        /end
    }

    | Cast our spells    
    /for i ALTERATION TO EVOCATION
        /if (${Target.ID}==NULL) /target ${Me}
        /if (!${SkillMaxed[${i}]}) /Call CastSpell ${i}
    /next i    

    /if (${Cursor.ID}) {
        /echo Destroying (${Cursor.Name}).
        /destroy
        /delay 5
    }
        
/goto :mainloop

/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
| SUB: LoadSpells
|--------------------------------------------------------------------------------
Sub LoadSpells

    /declare spellID int local
    /declare k int local

    /echo Loading ${Me.Class.Name} spells if needed. Please Wait ...

    |---------------------------------------------
    /for k ALTERATION TO EVOCATION  

        /varset MySpellList[${k}] ${Ini[INIFILE,${Me.Class.Name},${MySpellDesc[${k}]}]}
        
        /if (${MySpellList[${k}].Equal[NULL]}) {
                /varset SkillMaxed[${k}] TRUE
                /echo No spell loaded for ${MySpellDesc[${k}]}.  Please check INI for class ${Me.Class.Name}.
        } else {        	
        	/if (${Me.Book[${MySpellList[${k}]}]}) {        	        	            	            	            	    
        	    |/echo ${k} - (${Me.Gem[${k}].Name}) - (${Me.Gem[${k}].Name.NotEqual[${MySpellList[${k}]}]}) - (${Me.Gem[${k}].ID}==NULL)        	    
        	    /if (${Me.Gem[${k}].Name.NotEqual[${MySpellList[${k}]}]} || (${Me.Gem[${k}].ID}==NULL)) {        	    
        	        /echo Loading Spell "${MySpellList[${k}]}" in Gem${k} for ${MySpellDesc[${k}]}
		        /memspell ${k} "${MySpellList[${k}]}"
                        /delay 25
                    }                                                           
                } else {
                    /echo Skipping (${MySpellDesc[${k}]}), "${MySpellList[${k}]}" is not in your spell book!
                }
        }
    /next k
    |---------------------------------------------

    /echo ${MySpellList[ABJURATION]}, ${MySpellList[ALTERATION]}, ${MySpellList[CONJURATION]}, ${MySpellList[DIVINATION]}, ${MySpellList[EVOCATION]} 

   | Load the Pet spell but don't complain if we don't have one.
    /varset PetSpell ${Ini[INIFILE,${Me.Class.Name},Pet]}
    /if (!${PetSpell.Equal[NULL]} && ${Me.Book[${PetSpell}]} && !${Me.Pet.ID}) {
        /echo Summoning ${PetSpell}.  Please Wait........
        /memspell 6 "${PetSpell}"
        
   :petnotready
        /if (!${Me.SpellReady[${PetSpell}]}) {
            /delay 1s
            /goto :petnotready
        }
        
        /if (!${Me.Pet.ID}) /call Cast "${PetSpell}" 6 30s
        
        /if (!${Me.Pet.ID}) /goto :petnotready
        
        /varset spellID ${Spell[${PetSpell}].ID} 
        /varcalc CastDelay ${Spell[${spellID}].RecoveryTime}

        /echo Spell Information Cast Time: ${Spell[${spellID}].MyCastTime}, Recover Time: ${Spell[${spellID}].RecoveryTime}

        /delay ${CastDelay}s               
    }
    
    /if (${Me.Pet.ID}) {
        :TargetPet
        /echo Targeting pet.
        /target ${Me.Pet}
        /if (!${Target.ID} || ${Target.ID}!=${Me.Pet.ID}) /goto :TargetPet    
    }

/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
| SUB: CastSpell
|--------------------------------------------------------------------------------
Sub CastSpell(SKILL)

|/echo GemSlot=(${SKILL})
|/echo SpellName=(${MySpellList[${SKILL}]})
|/echo ${MySpellList[${SKILL}]}
|/echo ${String[${Me.Gem[${SKILL}]}].Equal[${MySpellList[${SKILL}]}]}

/declare spellID local int
/varset spellID ${Spell[${MySpellList[${SKILL}]}].ID} 

/if (${String[${Me.Gem[${SKILL}]}].NotEqual[NULL]} && ${String[${Me.Gem[${SKILL}]}].Equal[${MySpellList[${SKILL}]}]}) {

    :waitforspell
        DEBUG_1 CastSpell ${MySpellList[${SKILL}]}, ${Me.SpellReady[${SKILL}]}, Mana: ${Me.CurrentMana}  ${Spell[${MySpellList[${SKILL}]}].Mana}       

        /if (!${Me.SpellReady[${SKILL}]}) {
            /delay 1s
            /goto :waitforspell
        }
        
        /if (${Me.PctHPs} < 15) /Call HPBreak 
        /if (${Me.CurrentMana} < ${Spell[${MySpellList[${SKILL}]}].Mana}) /Call MedBreak 
        
        /call cast "${MySpellList[${SKILL}]}" 7s    
        /varcalc CastDelay 10*${Spell[${spellID}].RecoveryTime}      
        /delay ${CastDelay}    
}    
    
/doevents
/if (${Cursor.ID}) {
    /echo Destroying (${Cursor.Name}).
    /destroy
    /delay 5
}

/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
| SUB: MedBreak
|--------------------------------------------------------------------------------
Sub MedBreak

   /echo I'm low on mana (${Me.PctMana}%), medding to full!

    :KeepMedding1   
    /doevents
    /if (!${Me.CombatState.Equal[COMBAT]} && (${Me.CurrentMana}<${Me.MaxMana})) {
	/echo Mana now at (${Me.PctMana}%) ...
        /if (${Me.Standing} && !${Me.Mount.ID}) /sit
        /delay 6s               
        /goto :KeepMedding1
    } else {
        /if (${Me.Sitting} && !${Me.Mount.ID}) /stand
    }
  
/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
|SUB: HPBreak
|-------------------------------------------------------------------------------- 
Sub HPBreak 

   /echo I'm low on health (${Me.PctHPs}%), medding to full!
   
   :KeepMedding2
   /doevents
   /if (!${Me.CombatState.Equal[COMBAT]} && (${Me.PctHPs}<100)) {
	/echo PctHPs now at (${Me.PctHPs}%) ...
        /if (${Me.Standing} && !${Me.Mount.ID}) /sit
        /delay 6s               
        /goto :KeepMedding2
    } else {
        /if (${Me.Sitting} && !${Me.Mount.ID}) /stand
    }

/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
| SUB: Event_Undead
|--------------------------------------------------------------------------------
Sub Event_Undead

    /target ${Me.Pet}
    
/return
|--------------------------------------------------------------------------------

|-------------------------------------------------------------------------------- 
| SUB: Event_SkillUp
|-------------------------------------------------------------------------------- 
Sub Event_SkillUp(string Line, string SkillName, string SkillVal)

    /echo (${SkillName}) skill raised to (${SkillVal}/${Me.SkillCap[${SkillName}]}).

/return
|--------------------------------------------------------------------------------
 

Attachments

Last edited:
When I ran the last mac file I kept getting /varset failed, variable 'SkillMaxed' not found.
Also in the first mac by troll and this last one I get this error:
[MQ2] No spell loaded for NULL Please check INI for class Magician.
After this line appears for the five attempts to load the basic types of spells, its final line is
[MQ2] NULL, NULL, NULL, NULL, NULL

Then the whole thing runsaway with this line, over and over, until I break it:

You do not seem to have that spell memorized.

Now, I memorized the first five gem spots with the low level spells called for. I don't know what is wrong. I wish I could figure out how to paste the mq2 text window into here so you could see exactly what it says but I must be too dumb cause I tried every program I have to copy the text but this window wouldn't let me paste it. ((

Any ideas or suggestions for better information?
Toejam ))
Thanx in advance by the way. ))
 
Paste your Macroqust.ini and spell_skills.inc.

What class are you running this on?
 
Spell Casting Skill-up macro

Users who are viewing this thread

Back
Top
Cart