Oh wait - I found it - and cleaned it up a bit - but I havent tested it.
I think the original idea/code was stolen with pride from Hatchery.mac
This is a few years old and it may not work in its current form -so please test it in a lower level zone first: but Basically it should do the following:
1. Look through your spells to determine which of them is a "Terror"
2. Starting from point 1 - Run to 8 predefined nap points and then run back to point 1
3. Cast your Terror Spell at anything in range.
Pre-requsites:
1. You need to be an SK (Or change the spell to something else)
2. You will need to make waypoints yourself. Starting at 1 for the Camp location.
3. You should have a bandolier called NoRipo and remove all DS if pulling lowevr level mobs for PL purposes.
4. You should turn off/pause your current automation.
5. You need to have some basic stuff like
MQ2Cast, and
MQ2NAV and
MQ2Advpath loaded...
This is probably a good basis for a Generic "TrainPull" lua
Copy this code to a text file. Call it something like Train.mac and save it in your Macro folder.
#turbo 40
#include MQ2Cast_Spell_Routines.inc
#define CASTMODE "MQ2Cast"
sub Main
/declare pull[13] int outer
/declare I int outer 0
/declare J int outer 0
/declare K int outer 0
/varset J 0
/varset K 0
/for I 1 to 13 {
/if (${Me.Gem[${I}].Name.Find[Terror ]}) {
/varcalc J ${J} + 1
/varset pull[${J}] ${I}
/continue
}
}
/next I
/bandolier activate NoRipo
/delay 1s
/call NavigatePLZone
/delay 10s (${SpawnCount[npc targetable radius 60 zradius 50 noalert 15]}==0)
:Wait
/if (${SpawnCount[npc targetable radius 60 zradius 50 noalert 3]}==0) /goto :Killed
/if (${Me.XTarget[1].ID}) /goto :Wait
:Killed
/return
Sub Move(int x)
/nav wp ${x}
/delay 300s !${Navigation.Active}
/squelch /target clear
/delay 10s !${Target.ID}
/target ID ${NearestSpawn[npc].ID}
/delay 10s ${Target.ID}
/for I 1 to 4 {
/if (${pull[${I}]}) {
/if (${Me.SpellReady[${pull[${I}]}]}) {
/call CASTMODE "${Me.Gem[${pull[${I}]}].Name}" "gem${pull[${I}]}"
/break
}
}
}
/next I
/squelch /target clear
/return
Sub NavigatePLZone
/call Move 1
/call Move 2
/call Move 3
/call Move 4
/call Move 5
/call Move 6
/call Move 7
/call Move 8
/call Move 1
/delay 300s !${Navigation.Active}
/return