Siddin
Rikk-tikk-tikki-tikki-tchk!
- Joined
- Feb 6, 2005
- RedCents
- 504¢
As you all have prolly guessed by now, when i can't sleep i write macros, these are made from scratch as i haven't been back to my friend's to pick up the ones i wrote there. If you have any suggestions for things for me to write or additions to these, please post. Doesn't currently loot, if you want it to loot just ask i'll post an addendum to it that you can add so it'll loot.
start by targeting the cleric and running the macro
hopefully this all works, if it does, tell me what you think and if it doesn't, tell me what went wrong.
Tank.mac
not sure if this checking buff code will work, never tried it this way. hopefully it does. I realize for loops would make it easier, but i hate them anyhow :P
target the pc you want to powerlvl and have at it. ok, simply stated, you cannot do Target.Buff so i'll be doing timers
Healer.mac
start by targeting the cleric and running the macro
hopefully this all works, if it does, tell me what you think and if it doesn't, tell me what went wrong.
Tank.mac
Rich (BB code):
#event exp "You gain experience!!"
#event wait "#*#casting please wait#*#"
#event pause "#*#Pause for mana#*#"
#event continue "#*#You may continue#*#"
Sub Main
/declare waiting int outer 0
/declare mytargetid int outer
/target (your healer's name here)
:Start
/squelch /stick 10
/if (${Target.Distance}>=15) /goto :Start
/if (${Me.PctHPs}<80) /if (!${Target.ID}) /goto :Start
/if (!${Target.ID}) /target npc radius 1500
/if (${Target.Level}>=46) {
/target clear
/delay 2s
/goto :Start
}
/varset mytargetid ${Target.ID}
:distancecheck
/squelch /stick 10
/if (${Target.Distance}>=11) /goto :distancecheck
/stick off
/attack on
/delay 1s
/attack off
/varset waiting 0
:gotosafezone
/if (${Me.State.Equal[SIT]}) /stand
/face fast loc -3530,-1219
/look
/if (${Math.Distance[-3530,-1219]}>2) /nomodkey /keypress forward hold
/if (${Math.Distance[-3530,-1219]}<=2) {
/nomodkey /keypress forward
/goto :Safe
}
/goto :gotosafezone
:Safe
/target npc id ${mytargetid}
/face
:distancecheck2
/delay 1s
/varcalc waiting ${waiting}+1
/if (${waiting}>=20) {
/target clear
/goto :Start
}
/if (${Target.Distance}>=20) /goto :distancecheck2
/attack on
:KillStart
/delay 5
/if (${Target.ID}) {
/squelch /stick 13 uw
/goto :KillStart
}
/attack off
/doevents
/target (healer's name here)
/delay 5
/goto :Start
/return
Sub Event_exp
/target clear
/return
Sub Event_wait
/echo waiting for 20 seconds...
/delay 20s
/doevents
/return
Sub Event_pause
/varset waiting 1
:waiting
/doevents
/if (${waiting}==1) /goto :waiting
/return
Sub Event_continue
/varset waiting 0
/return
not sure if this checking buff code will work, never tried it this way. hopefully it does. I realize for loops would make it easier, but i hate them anyhow :P
target the pc you want to powerlvl and have at it. ok, simply stated, you cannot do Target.Buff so i'll be doing timers

Healer.mac
Rich (BB code):
Sub Main
/declare MyTankName string outer ${Target.CleanName}
/declare pauseformana int outer 0
/declare donecasting int outer 0
/declare SoT int outer 3
/declare SLN int outer 4
/declare SoW int outer 5
/declare Chlo int outer 8
/target ${MyTankName)
:Start
/if (${Target.Distance}<=200) /if (${Target.PctHPs}<=79) {
/if (${Me.State.Equal[SIT]}) /stand
/cast 1
/delay 6s
/target ${MyTankName)
}
/if (${pauseformana}==1) /if (${Me.PctMana}>=80) {
/varset pauseformana 0
/tell ${MyTankName) You may continue
}
/if (${donecasting}==1) /if (${Me.PctMana}<=20) {
/tell ${MyTankName) Pause for mana
/varset donecasting 0
/varset pauseformana 1
}
/if (${pauseformana}==1)/goto :Start
/if (${Target.Distance}<=80) /if (${Me.Buff[${Me.Gem[${SoT}].Name}].Duration}<=6) {
/if (${Me.State.Equal[SIT]}) /stand
/tell ${MyTankName) casting please wait...
/target ${MyTankName)
/cast ${SoT}
/delay 7s
/target ${Me}
/cast ${SoT}
/delay 7s
/target ${MyTankName)
}
/if (${Target.Distance}<=80) /if (${Me.Buff[${Me.Gem[${SLN}].Name}].Duration}<=6) {
/if (${Me.State.Equal[SIT]}) /stand
/tell ${MyTankName) casting please wait...
/target ${MyTankName)
/cast ${SLN}
/delay 11s
/target ${Me}
/cast ${SLN}
/delay 11s
/target ${MyTankName)
}
/if (${Target.Distance}<=80) /if (${Me.Buff[${Me.Gem[${SoW}].Name}].Duration}<=6) {
/if (${Me.State.Equal[SIT]}) /stand
/tell ${MyTankName) casting please wait...
/target ${MyTankName)
/cast ${SoW}
/delay 10s
/target ${Me}
/cast ${SoW}
/delay 10s
/target ${MyTankName)
}
/if (${Target.Distance}<=80) /if (${Me.Buff[${Me.Gem[${Chlo}].Name}].Duration}<=6) {
/if (${Me.State.Equal[SIT]}) /stand
/tell ${MyTankName) casting please wait...
/target ${MyTankName)
/cast ${Chlo}
/delay 11s
/target ${Me}
/cast ${Chlo}
/delay 11s
/target ${MyTankName)
/varset donecasting 1
}
/if (${Me.State.Equal[Stand]}) /sit
/goto :Start
/return
Last edited:



