RageATM0998
New member
- Joined
- Dec 24, 2006
- RedCents
- 0¢
Hey guys, I used to be a member over at Redguides and just recently found my way to this site. Anyway, I figured I'd post a mac I've been working on lately.
I play quite a few alts, and hate having to work up Dranik Loyalist faction in order to do Anguish armor turn-in's (particularly the BP). I made a macro to help mass kill nocs, kyvs, and ukuns in Dranik Scar. I originally made this for my monk, but when I decided to post it I cleaned it up a bit and made it applicable to more classes.
I'm posting both my monk version, and a version that should work for pretty much any class. There's variables at the top that can be edited based on what settings you want to use.
Currently it allows you to use any combination of auto attack, one combat disc (damage disc such as Clawstriker's), one combat ability such as Flying Kick, and one spell. The spell can be anything, but a DD works best. Also, nukes with fast cast / recast timers should work the best.
The monk version of the macro does not have spell casting ability, but will automatically keep up Fists of Wu when in combat and will also hit whichever endurance regen disc you define (such as Second Wind).
I used pretty simplistic PC and GM checks. If it detects a GM in the zone, it will gate and end the macro immediately. You can define the maximum number of PCs allowed in the zone before the macro takes any action. When that number is reached, it will zone to Bloodfields and pause for 5 minutes before zoning back and continuing killing in Dranik Scar.
I hope people find these as useful as they have been for me. I was able to go from KoS to Ally in about 15-20 hours of running this macro over two days. I'm not new at writing macros, but just recently have really started working on making my macros more useful and complex. I look forward to any feedback people have, especially suggestions on ways I could improve them.
This macro requires spell_routines.inc. They can be run afk, but I work best if you are at the computer. For example, I used them to grind faction on one char while I was raiding on another. Sometimes the char will get stuck on geometry, and you might need to manually move to get them unstuck. Also, I recommend using an envirofall docrack, because occasionally it tries to warp to a character under the world and can 200k.
This does use WARP in an open zone, so use it at your own risk. However, I did my best to make the PC detection fire before the macro does anything noticeable. I spent a while watching the traffic in Dranik Scar before running this macro, and found that it was empty almost all the time. Your server may be different, so be smart when using this.
###GENERAL MACRO###
###MONK SPECIFIC MACRO###
I play quite a few alts, and hate having to work up Dranik Loyalist faction in order to do Anguish armor turn-in's (particularly the BP). I made a macro to help mass kill nocs, kyvs, and ukuns in Dranik Scar. I originally made this for my monk, but when I decided to post it I cleaned it up a bit and made it applicable to more classes.
I'm posting both my monk version, and a version that should work for pretty much any class. There's variables at the top that can be edited based on what settings you want to use.
Currently it allows you to use any combination of auto attack, one combat disc (damage disc such as Clawstriker's), one combat ability such as Flying Kick, and one spell. The spell can be anything, but a DD works best. Also, nukes with fast cast / recast timers should work the best.
The monk version of the macro does not have spell casting ability, but will automatically keep up Fists of Wu when in combat and will also hit whichever endurance regen disc you define (such as Second Wind).
I used pretty simplistic PC and GM checks. If it detects a GM in the zone, it will gate and end the macro immediately. You can define the maximum number of PCs allowed in the zone before the macro takes any action. When that number is reached, it will zone to Bloodfields and pause for 5 minutes before zoning back and continuing killing in Dranik Scar.
I hope people find these as useful as they have been for me. I was able to go from KoS to Ally in about 15-20 hours of running this macro over two days. I'm not new at writing macros, but just recently have really started working on making my macros more useful and complex. I look forward to any feedback people have, especially suggestions on ways I could improve them.
This macro requires spell_routines.inc. They can be run afk, but I work best if you are at the computer. For example, I used them to grind faction on one char while I was raiding on another. Sometimes the char will get stuck on geometry, and you might need to manually move to get them unstuck. Also, I recommend using an envirofall docrack, because occasionally it tries to warp to a character under the world and can 200k.
This does use WARP in an open zone, so use it at your own risk. However, I did my best to make the PC detection fire before the macro does anything noticeable. I spent a while watching the traffic in Dranik Scar before running this macro, and found that it was empty almost all the time. Your server may be different, so be smart when using this.
###GENERAL MACRO###
Rich (BB code):
#include spell_routines.inc
Sub Main
/declare doMelee int outer 1
/declare doNuke int outer 0
/declare doDisc int outer 1
/declare doCAbility int outer 1
/declare nameDisc outer Wheel of Fists
/declare nameCAbility outer Flying Kick
/declare nameNuke outer Bite of the Ukun Rk. II
/declare checkGM int outer 1
/declare checkPC int outer 1
/declare maxPC int outer 1
:loop
/if (!(${Zone.ID}==301 || ${Zone.ID}==302)) /endmac
/call safeChecks
/hidecorpse all
/squelch /target npc "an ukun"
/squelch /target npc "a kyv"
/squelch /target npc "a noc"
:attack
/if (${Target.ID}) {
/call safeChecks
/if (${Target.Distance} > 100) /warp b t
/stick 5
/face
/if (${doMelee} && ${Target.Distance} < 20) {
/attack on
/if (${doCAbility} && ${Me.AbilityReady[${nameCAbility}]}) {
/delay 1s
/doability "${nameCAbility}"
}
/if (${doDisc} && ${Me.CombatAbilityReady[${nameDisc}]} && ${Me.PctEndurance} > 15) {
/delay 1s
/disc ${nameDisc}
}
}
/if (${doNuke} && ${Target.LineOfSight} && ${Me.SpellReady[${nameNuke}]}) {
/call cast "${nameNuke}"
}
}
/if (!${Target.Type.Equal[NPC]}) /keypress esc
/if (${Target.ID} || ${Me.CombatState.Equal[COMBAT]}) /goto :attack
/goto :loop
Sub safeChecks
/if (${checkGM} && ${Spawn[gm].ID}) /call GM
/if (${checkPC} && ${SpawnCount[pc]} > ${maxPC}) /call PC
/return
Sub GM
/gate
/endmac
/return
Sub PC
/beep
/who
/echo Another player in zone!
/echo Zoning to Bloodfields for 5 minutes
/zone bloodfields
/delay 5m
/zone dranikssar
/return
###MONK SPECIFIC MACRO###
Rich (BB code):
#include spell_routines.inc
Sub Main
/declare doMelee int outer 1
/declare doDisc int outer 1
/declare doCAbility int outer 1
/declare nameDisc outer Wheel of Fists
/declare nameCAbility outer Flying Kick
/declare nameEndurReg outer Third Wind Rk. II
/declare checkGM int outer 1
/declare checkPC int outer 1
/declare maxPC int outer 1
:loop
/if (!(${Zone.ID}==301 || ${Zone.ID}==302)) /endmac
/call safeChecks
/hidecorpse all
/squelch /target npc "an ukun"
/squelch /target npc "a kyv"
/squelch /target npc "a noc"
:attack
/if (!${Me.Song[Fists of Wu].ID} && ${Me.CombatAbilityReady["Fists of Wu"]} && ${Me.PctEndurance} > 10) {
/delay 1s
/disc Fists of Wu
}
/if (${Me.PctEndurance} < 85 && ${Me.CombatAbilityReady[${nameEndurReg}]}) {
/delay 1s
/disc ${nameEndurReg}
}
/if (${Target.ID}) {
/call safeChecks
/if (${Target.Distance} > 100) /warp b t
/stick 5
/face
/if (${doMelee} && ${Target.Distance} < 20) {
/attack on
/if (${doCAbility} && ${Me.AbilityReady[${nameCAbility}]}) {
/delay 1s
/doability "${nameCAbility}"
}
/if (${doDisc} && ${Me.CombatAbilityReady[${nameDisc}]} && ${Me.PctEndurance} > 15) {
/delay 1s
/disc ${nameDisc}
}
}
}
/if (!${Target.Type.Equal[NPC]}) /keypress esc
/if (${Target.ID} || ${Me.CombatState.Equal[COMBAT]}) /goto :attack
/goto :loop
Sub safeChecks
/if (${checkGM} && ${Spawn[gm].ID}) /call GM
/if (${checkPC} && ${SpawnCount[pc]} > ${maxPC}) /call PC
/return
Sub GM
/gate
/endmac
/return
Sub PC
/beep
/who
/echo Another player in zone!
/echo Zoning to Bloodfields for 5 minutes
/zone bloodfields
/delay 5m
/zone dranikssar
/return