Spell trainers?

Help section from before the user variable changes that broke all macros

Moderator: MacroQuest Developers

Raven
decaying skeleton
decaying skeleton
Posts: 1
Joined: Wed Aug 20, 2003 2:26 pm

Spell trainers?

Post by Raven » Wed Aug 20, 2003 2:30 pm

For the past few hours, I've been trying to figure out how to get an AFK spell trainer working. First I tried making my own, and when that didn't work I came here.

The problem I get is that every time I try to start the macro, it casts once, then ends. I've tried all of them that you can find on this forum plus my own, and it's all the same. No error, it just doesn't work.

http://macroquest2.com/phpBB2/viewtopic ... trainspell is one of the ones I tried, since I'm a druid. They all end the same.
"
Cleared the following: Timers Vars Arrays
The current macro has ended.
"

Any ideas?

User avatar
Imperfect
Macro Author
Macro Author
Posts: 319
Joined: Fri Jun 14, 2002 1:52 am

Post by Imperfect » Wed Aug 20, 2003 7:48 pm

You are a druid? here is something I used to train up on my ranger. You will have to modify some of the spell names but, it will work just fine. This also forages since I can see no reason not to while I was practicing spells.

Code: Select all


| This is my macro. Please give me credit if you use my code Imperfect

#turbo
#event Fizzle "Your spell fizzles!"
#event Fizzle "You haven't recovered yet..."
#event Fizzle "Spell recovery time not yet met."
#event Fizzle "Your spell is interrupted."
#event NightOnly "Spell can only be cast during the night."

#event LoM "Insufficient Mana to cast this spell!"

#event updatesaved " saved"
#event Needtostand "You must be standing "

#define CASTTIMER t0
#define CASTNEXTTIMER t1
#define WAITFORNIGHTTIMER t2

#define OKTOCAST v80
#define FIZZLECHECK v83

Sub Main
	
	/varset a(0,0) "Skin Like Wood"
	/varset a(1,0) "Abjuration"
	
	/varset a(0,1) "Minor Healing"
	/varset a(1,1) "Alteration"
	
   	/varset a(0,2) "Dance of the Fireflies"
	|/varset a(0,2) "Stinging Swarm"
   	/varset a(1,2) "Conjuration"
   	
   	/varset a(0,3) "Glimpse"
   	/varset a(1,3) "Divination"
   	
	/varset a(0,4) "Flame Lick"
	/varset a(1,4) "Evocation"
	
	/varset OKTOCAST 1
	/varset l0 $int($char(level)*5+5)
	
	:Loop
	/for v0 0 to 4
		/if n $char(skill,"$a(1,$v0)")<235 /if n $char(skill,"$a(1,$v0)")<$int($char(level)*5+5) /call CastSpell
		/call Doabilities
		/doevents
		/if $cursor()==TRUE /click left auto
		/if $cursor()==TRUE /delay 10
	/next v0
	/goto :Loop
/return

Sub Event_Timer
   /if $p0==1 /varset OKTOCAST 1
/return

Sub Event_Fizzle
   /varset FIZZLECHECK 1
/return

Sub CastSpell
   | $p0: id to cast on 
   | $p1: spell to cast

   :DoCast

	|/if n $WAITFORNIGHTTIMER==0 /varset a(0,2) "Dance of the Fireflies"
   /varset OKTOCAST 1
   /stand
   /varset OKTOCAST 0
   /varset FIZZLECHECK 0
   /cast "$a(0,$v0)"
   /varset CASTTIMER $int($spell("$a(0,$v0)",casttime)*10+15)
   :WaitCast
      /doevents
   /if n $FIZZLECHECK==0 /if n $CASTTIMER>0 /goto :WaitCast
   /if n $FIZZLECHECK==0 /goto :Exit
   /delay 1
   /goto :DoCast
   
   :Exit
   /varset CASTNEXTTIMER $int($spell("$a(0,$v0)",recoverytime)*10+5)
/return

Sub DoAbilities
	/if n $char(ability,Forage)>0 /doability Forage
	/if n $char(ability,"Sense Heading")>0 /if n $char(skill,"Sense Heading")<200 /doability "Sense Heading"
	/if n $char(level)>25 /if n $calc($char(speed))==0 /if n $char(ability,Hide)>0 /if n $char(skill,Hide)<75 /if n $char(skill,Hide)<$v99 /doability Hide
	/if n $char(skill,Sneak)<75 /if n $char(skill,Sneak)<$v99 /doability Sneak
	/if n $char(ability,Tracking)>0 /if n $char(skill,Tracking)<200 /if n $char(skill,Tracking)<$v99 /doability Tracking
/return

Sub Event_NightOnly
	/varset a(0,2) "Stinging Swarm"
	/call CastSpell
	/varset a(0,2) "Dance of the Fireflies"
/return

Sub Event_LoM
	/sit
	:Wait
	/delay 0
	/call Doabilities
	/if n $char(mana,pct)<100 /goto :Wait
	/stand
/return

Sub Event_updatesaved
   /update
/return

Sub Event_Needtostand
	/stand
	/call Doabilities
	/sit
/return