Cleric Heal bot + Magician nuke+send pet bot :-) (((SEXY)))

Post your completed (working) macros here. Only for macros using MQ2Data syntax!

Moderator: MacroQuest Developers

xantan2
a lesser mummy
a lesser mummy
Posts: 51
Joined: Sat Apr 08, 2006 6:51 pm
Location: nv
Contact:

Cleric Heal bot + Magician nuke+send pet bot :-) (((SEXY)))

Post by xantan2 » Wed Aug 09, 2006 12:19 am

Hi, i stole this code from some dude who posted a simple cleric healbot on here somewhere but am too lazy to say who did it, anyways, heres the cleric portion:
O and it tells the group exactly what your doing, get rid of all the /g's if you dont want this, definitely want to if your not in a group with people you know.
Theres a few things you need to fill in, it will say where.
Oh and memorize a bigger heal in gem 1 and a smaller heal in gem 2 :-)
Memorize gate in slot 3, Memorize divine aura or a harmshield in slot 8


{Heres how i used to have the macro setup before i had just me and my other friends in a group, Delete the whole /tar (YOUR FRIENDS NAME) stuff and just click on whoever is hurt, if your in a group, just stay clicked on your tank and hope nobody else gets hurt, or edit it simply so it checks more then 1 person to heal. Have it setup to check 3 peoples health, myself, my friend, and the other.

It likes to sit down alot.
|PL-Easy, KISS Continuous Heal stolen and modified By Xantan2 (
#turbo

Sub Main
/echo Healing Targets you specify within me.
/g healmacro on. ${Me.PctMana}%m =\
:loop
/if (${Me.PctHPs}<10) /goto :heal4
/if (${Me.PctHPs}<75) /goto :heal3
/if (${Me.PctMana} < 24) /goto :oom
/delay 4
/tar pc (This is your TANK in your group)
/delay 1
/if (${Target.ID}==FALSE) /goto :loop
/if (${Me.Casting.ID}) /goto :loop
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 1
/if (${Target.PctHPs}<60) /goto :heal5
/delay 4
/tar pc (This isnt your tank, but someone who has less hp. If you want to add more people to the heal list, well, just use your head.)
/delay 1
/if (${Target.ID}==FALSE) /goto :loop
/if (${Target.PctHPs}<80) {
/goto :heal
} else {
/if (${Me.PctHPs}<55) /goto :heal2
/goto :loop
}


:heal
/if (${Target.Distance}>85) /goto :loop
/if (${Me.PctMana} < 13) /goto :oom
}
/cast 2
/delay 15
/delay 5
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
}
/if (${Me.PctHPs}<55) {
/goto :heal2
} else {
/delay 37
/goto :loop
}



:oom
/g I'm [[OOM!]] ...Meditating... ${Me.PctMana}%M
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/g Don't pull for a bit unless you want to [[die]].Medding.
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 50
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/g Ok Im at ${Me.PctMana}%M, [[Pull]], But [[go easy]].
/delay 10
/goto :loop


:heal2
/if (${Me.PctMana} < 14) /goto :oom
/if (${Me.PctHPs}<11) /goto :heal4
/target (YOUR NAME)
/cast 1
/delay 72
/goto :loop


:heal3
/if (${Me.PctMana} < 14) /goto :oom
/if (${Me.PctHPs}<11) /goto :heal4
/target (YOURSELF)
/cast 2
/delay 50
/goto :loop


:heal4
/cast 8 (RID OF THIS IF YOU DONT HAVE A HARMSHIELD LIKE SPELL)
/delay 10
/keypress forward
/delay 1
/keypress back hold
/delay 1
/t (YOUR FRIENDS NAME) You let me get to 10% hp. I'm Gating.
/delay 1
/cast 3 (PUT GATE IN SLOT 3)
/delay 300
/t (your friends name) Hi, im at my bind point. Going to camp in 30 seconds unless (YOURNAME) wakes up.
/delay 30
/t (OTHER FRIENDS NAME) Hi, im at my bind point. Going to camp in 30 seconds unless (YOURNAME) wakes up.
/delay 10
/camp
/delay 100
/echo Wake up! You are camping!
/delay 190
/endmacro


:heal5
/if (${Target.Distance}>85) /goto :loop
/if (${Me.PctMana} < 23) /goto :oom
}
/keypress 1
/delay 20
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
}
/if (${Me.PctHPs}<55) {
/goto :heal2
} else {
/delay 37
/goto :loop
}
Ok and heres the magician part, my friend used this then played the tank, it casts 1 nuke and sends the pet, and if it gets attacked it just stands and doesnt move or attack for awhile, if it is LOM on mana it will check for targets nearby and send pet, otherwise it will just go full out OOM and not do anything for 20 seconds. It likes to sit down alot.

Mem a nuke in... Slot 1, its gonna cast it alot, well sorta, unless you change the delays in :nuke
Mem gate in... slot 3
I dont remember the rest, just look at the code and see.
GL
|Continuous Nuke and send pet By Xantan, modified a simple heal target macro to make this

#turbo

Sub Main
/echo Nuking targets in range of me, 60.
:loop
/if (${Me.PctHPs}<10) /goto :heal4
/if (${Me.PctHPs}<70) /goto :heal2
/if (${Me.PctMana} < 20) /goto :oom
/delay 4
/if (${Me.Casting.ID}) /goto :loop
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 1
/if (${Target.ID}==FALSE) /tar NPC radius 60
/if (${Target.PctHPs}<100) /goto :nuke
/delay 4
/if (${Target.ID}==FALSE) /tar NPC radius 60
/delay 1
/if (${Target.PctHPs}<100) {
/goto :nuke
} else {
/if (${Me.PctHPs}<11) /goto :heal4
/goto :loop
}


:nuke
/delay 1
/if (${Target.ID}==FALSE) /goto :loop
/delay 1
/pet attack
/delay 1
/if (${Me.PctMana} < 15) /goto :oom
/delay 1
/if (${Target.Distance}>70) /goto :loop
/delay 1
/if (${Me.PctMana} < 13) /goto :oom
/delay 1
/if (${Me.PctHPs}<87) /goto :heal2
}
/g [[Nuke+Pet]] on a %t ${Me.PctMana}%M
/delay 1
/cast 1
/delay 40
/if (${Me.PctHPs}<87) /goto :heal2
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
}
/if (${Me.PctHPs}<80) {
/goto :heal2
} else {
/delay 70
/goto :loop
}


:oom
/g I'm LOM, ${Me.PctMana}[[%M]] but ill still be operating my [[Pet]] if there is a target in radius [[60]]...
/delay 2
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Target.ID}==FALSE) /tar NPC radius 60
/delay 30
/if (${Target.ID}==FALSE) /goto :oom2
/delay 2
/pet attack
/delay 2
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/delay 30
/delay 20
/goto :loop




:oom2

/g I'm [[OOM!]] ...Meditating... ${Me.PctMana}%M (i wont be operating pet for 30 seconds or casting)
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Me.PctHPs}<80) /goto :heal2
/if (${Me.PctHPs}<10) /goto :heal4
/delay 25
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Me.PctHPs}<10) /goto :heal4
/delay 25
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Me.PctHPs}<10) /goto :heal4
/delay 10
/g Don't pull for a bit unless you want to [[die]].Medding.
/delay 100
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Me.PctHPs}<10) /goto :heal4
/delay 60
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Me.PctHPs}<10) /goto :heal4
/delay 60
/g Ok ${Me.PctMana}%M, [[Pull]], But [[go easy]].
/if (${Me.PctHPs}<10) /goto :heal4
/delay 10
/goto :loop


:heal2
/if (${Me.PctMana} < 14) /goto :oom
/if (${Me.PctHPs}<10) /goto :heal4
/if (${Me.Sitting} && !${Me.Mount.ID}) /stand
/delay 32
/g -- ${Me.PctMana}[[%M]] --
/if (${Me.PctHPs}<10) /goto :heal4
/delay 40
/goto :loop



:heal4
/if (${Me.Sitting} && !${Me.Mount.ID}) /stand
/delay 1
/keypress forward
/delay 1
/keypress back hold
/delay 3
/t (friend1) You let me get to 10% hp. I'm Gating.
/delay 4
/cast 3
/delay 300
/t (friend1) Hi, im at my bind point. Going to camp in 30 seconds unless (your name) wakes up.
/delay 30
/t (friend2) Hi, im at my bind point. Going to camp in 30 seconds unless (your name) wakes up.
/delay 10
/camp
/delay 100
/echo Wake up! You are camping!
/delay 190
/endmacro
Have fun now! :-)
Here what i'd do if i were you, Make a mage, Make a Cleric, Make a Tank, or get friends to do one of those 3 and use this macro . its cool.
Hopefully someone fines this useful.
Last edited by xantan2 on Fri Aug 11, 2006 2:53 am, edited 1 time in total.
----------------
http://SCII.us
Xantan

User avatar
aChallenged1
a grimling bloodguard
a grimling bloodguard
Posts: 1804
Joined: Mon Jun 28, 2004 10:12 pm

Post by aChallenged1 » Wed Aug 09, 2006 5:56 am

You know, posting other people's work here without their consent or credit is highly frowned upon.

On top of that, you used QUOTE brackets, not CODE, there is a difference.
Fuck writing MQ2 macros. Go with IS scripts; IS Rules!

xantan2
a lesser mummy
a lesser mummy
Posts: 51
Joined: Sat Apr 08, 2006 6:51 pm
Location: nv
Contact:

Post by xantan2 » Wed Aug 09, 2006 10:19 pm

honestly about 8 lines of the code is there work, and atleast i have the decency to say its stolen, lol.
Yeah, well, im just not too smart, deal with it.

Oh, and credit for the macro, or sort of, comes from this macro here, by MacroFest:

Code: Select all

|PL-Easy, KISS Continuous Heal
----------------------------------------
|Where it says "PctHPs}<70) {" Change the 70 to What % You Want To Heal At
|Where it says "/cast 8", make sure you replace with whatever spell slot you'd like to continually cast @ that percent
|Where it says "/target", make sure you replace with whoever you're trying to heal
---------------------------------------------------
|v1.01 Added the "/if (${Me.Casting.ID})" Command to keep from spamming if you're already casting (thanks A_Druid_00)
---------------------------------------------------
|v1.02 Added a "/target" command just put whoever you're looking to heal after /target (IE. /target Iamnoob)
---------------------------------------------------
|v1.03 Changed some things to work correctly (thx lum and LPW)
---------------------------------------------------
|v1.04 Changed to work with/without Mounts, will Auto-Sit Now. (thx peach and summar)
-----------------------------

#turbo

Sub Main

:loop
/if (${Me.Casting.ID}) /goto :loop
/target
/if (${Target.PctHPs}<70) {
/goto :heal
} else {
/goto :loop
}


:heal
/cast 8
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
}

/goto :loop
----------------
http://SCII.us
Xantan

neurocrime
decaying skeleton
decaying skeleton
Posts: 6
Joined: Sun Apr 29, 2007 11:18 pm

modified

Post by neurocrime » Mon Apr 30, 2007 12:39 pm

modification, special thanks JimJohnson and ccomp5950

Code: Select all

Sub Main
/declare DudeImHealing int outer ${Target.ID}
:loop
/if (${Me.Standing} && !${Me.Mount.ID}) /sit
/if (${Target.ID}!=${DudeImHealing}) {
     /target ID ${DudeImHealing}
     /delay 2s ${Target.ID}==${DudeImHealing}
}
/if (${Target.PctHPs}<70) /call heal
/goto :loop
/return
 
sub heal
/cast 1
/delay 1s ${Me.Casting.ID}
/delay 10s !${Me.Casting.ID}
/return