basically i group a cleric and druid while playing solo with the twink in command of both.
any help/ideas MUCH appreciated =)
here is my current macs im using
first cleric.mac
Code: Select all
| cleric.mac
| cleric pl petbot
|
| Courtesy of Rahn
|
| Special thanks:
| Dirtface
| Wes
| Fippy
| Valerian
| Sparr
| Plazmic
| L124RD
| Everyone else i took code from ;-)
|
| spell gem order
|------------------
| 1. fast heal
| 2. ot heal
| 3. ch
| 4. root
| 5. buff
| 6. gate
| 7. mor - sometimes i put rez here
| 8. da
| mok is available via bp #9 hotkey
|
| Usage: /macro cleric.mac <character in control>
|
| commands: ( ie.. /tell cleric fh = fast heal me /tell cleric fht = fast heal my target)
| [fh] - fast heal, [fht] - fast heal target, [sh] - slow heal, [sht] - slow heal target
| [ch] - complete heal, [cht] - complete heal target,[root] - root target,
| [buff] - ac/hp buff, [bufft] - ac/hp buff trarget, [gate] - gate,
| [mor] - Mark of Retribution target, [da] - divine aura, [mok] - Mark of Karn target,
| [Mana] - Report Mana/HP, [report] - Report Mana/HP, [Follow] - Follow,
| [Stop] - Stop Follow, [Setcamp] - Set camp spot, [Return] - Return to camp,
| [Sit] - Sit/Stand, [LFG] - LFG ON, [come] - Come, [Camp] - Camp, [chelp] - display commands
|
| notes: the cleric will /tell you and /g when buffs wear off
#turbo
#define GroupMember v93
#define GroupMax v90
#define ChatCommand p2
#define XLOC v52
#define YLOC v53
#define $GroupClass $spawn($group($GroupMember),class)
#include SpellSub.mac
#include Common.mac
#chat tell
#Event Invited "To join the group, click on the 'FOLLOW' option, or 'DISBAND' to cancel"
#Event ClarityGone "Your mind returns to normal."
#Event TranqGone "The tranquil breeze fades."
#Event InvisGone "You feel yourself starting to appear"
#Event RootGone "Your Greater Immobilize spell has worn off."
#Event FollowOff "You are no longer auto-following "
#Event SowGone "The spirit of wolf leaves you."
#Event LostSkin "Your skin returns to normal."
#Event LostStr "Your strength fades."
#Event LostRegen "You have stopped regenerating."
Sub Main
/varset v69 $p0
:chkevent
/doevents
| *** AutoHeal ***
/varcalc GroupMax $group(count)-1
/for GroupMember 0 to $GroupMax
/if n $spawn($group($GroupMember),hp,pct)<41 {
/if n $spawn($group($GroupMember),hp,pct)<1 /goto :nextmember
/if n $group($GroupMember)==$char(id) /press F1
/if n $group($GroupMember)!=$char(id) /target id $group($GroupMember)
/delay 11
/g Healing %T
/call SpellSub 1 50
/sit
:nextmember
}
/next GroupMember
/goto :chkevent
/return
Sub Event_Chat
:Commands
| *** fast Heal ***
/if "$ChatCommand"=="fh" {
/target $p1
/delay 11
/g Healing %T
/tell $p1 Healing %T
/call SpellSub 1 50
/sit
/call Report
/press esc
} else /if "$ChatCommand"=="fht" {
/assist $p1
/delay 11
/g Healing %T
/tell $p1 Healing %T
/call SpellSub 1 50
/sit
/call Report
/press esc
| *** HEAL OVER TIME ***
} else /if "$ChatCommand"=="sh" {
/target $p1
/delay 11
/g Supernal Elixir on %T
/tell $p1 Supernal Elixir on %T
/call SpellSub 2 45
/sit
/call Report
/press esc
} else /if "$ChatCommand"=="sht" {
/assist $p1
/delay 11
/g Supernal Elixir on %T
/tell $p1 Supernal Elixir on %T
/call SpellSub 2 45
/sit
/call Report
/press esc
| *** Complete Heal ***
} else /if "$ChatCommand"=="ch" {
/target $p1
/delay 11
/g COMPLETE HEAL on %T in 10seconds
/tell $p1 COMPLETE HEAL on %T in 10seconds
/call SpellSub 3 105
/sit
/call Report
/press esc
} else /if "$ChatCommand"=="cht" {
/assist $p1
/delay 11
/g COMPLETE HEAL on %T in 10seconds
/tell $p1 COMPLETE HEAL on %T in 10seconds
/call SpellSub 3 105
/sit
/call Report
/press esc
| *** Root ***
} else /if "$ChatCommand"=="root" {
/assist $p1
/assist $p1
/delay 11
/g Rooting %T
/tell $p1 Rooting %T
/call SpellSub 4 40
/sit
/call Report
/press esc
| *** virtue ***
} else /if "$ChatCommand"=="buff" {
/target $p1
/delay 11
/g Virtue on %T
/tell $p1 Virtue on %T
/call SpellSub 5 150
/sit
/call Report
/press esc
} else /if "$ChatCommand"=="bufft" {
/assist $p1
/assist $p1
/delay 11
/g casting virtue on %T
/tell $p1 casting virtue on %T
/call SpellSub 5 105
/sit
/call Report
/press esc
| *** GATE ***
} else /if "$ChatCommand"=="gate" {
/g Gating
/tell $p1 Gating
/call SpellSub 6 55
| *** MoR ***
} else /if "$ChatCommand"=="mor" {
/assist $p1
/assist $p1
/delay 11
/g casting mor on %T
/tell $p1 casting mor on %T
/call SpellSub 7 105
/sit
/call Report
/press esc
| *** Divine Aura ***
} else /if "$ChatCommand"=="da" {
/target myself
/delay 11
/g Casting DA!
/tell $p1 Casting DA!
/call SpellSub 8 55
/sit
/call Report
/press esc
| *** Report Mana ***
} else /if "$ChatCommand"=="mana" {
/call Report
| *** Beep ***
} else /if "$ChatCommand"=="beep" {
/call Beep
| *** AUTOFOLLOW ***
} else /if "$ChatCommand"=="follow" {
/target $p1
/face
/sit off
/follow
/tell $p1 Lead on %T
/varset v10 0
| *** Define Camp Spot ***
} else /if "$ChatCommand"=="setcamp" {
/target myself
/delay 5
/varset XLOC $char(x)
/varset YLOC $char(y)
/tell $p1 Ok. Here I sit.
| *** AUTORETURN (to camp)***
} else /if "$ChatCommand"=="return" {
:return
/stand
/face loc $YLOC,$XLOC
/call GotoLoc $YLOC,$XLOC
/sit
| *** AUTOSTOP ***
} else /if "$ChatCommand"=="stop" {
/press down
/press up
/varset v10 1
/tell $p1 Stopping here.
| *** SIT/STAND ***
} else /if "$ChatCommand"=="sit" {
/sit
| *** report ***
} else /if "$ChatCommand"=="report" {
/call Report
| *** MoK ***
} else /if "$ChatCommand"=="mok" {
/assist $p1
/stand
/assist $p1
/face
/delay 5
/tell $p1 INC MoK on %t, no other actions possible in the next 9 Seconds!
/press 9
/delay 105
/tell $p1 MOK done
| /sit on
/call Report
/press esc
| *** LFG ON ***
} else /if "$ChatCommand"=="LFG" {
/delay 10
/target myself
/delay 10
/disband
/delay 10
/lfg on
/tell $p1 LFG now.
| *** Come ***
} else /if "$ChatCommand"=="come" {
/target $p1
/stand
/face
/g omw %T
/tell $p1 omw %T
/target $p1
/call GotoTarg
/g I am here %T
/tell $p1 I am here %T
/press esc
| *** CAMP ***
} else /if "$ChatCommand"=="camp" {
/sit off
/sit
/camp
/delay 10
/unload
| *** COMMAND HELP ***
} else /if "$ChatCommand"=="chelp" {
/tell $p1 [fh] - fast heal, [sh] - slow heal, [ch] - complete heal, [root] - root target, [buff] - ac
/hp buff, [gate] - gate, [mor] - Mark of Retribution, [da] - divine aura, [bufft] - ac/hp buff trarget, [
mok] - Mark of Karn, [Mana] - Report Mana, [Follow] - Follow, [Stop] - Stop Follow, [Setcamp] = Set camp
spot, [Return] - Return to camp, [Sit] - Sit/Stand, [LFG] - LFG ON, [come] - Come, [Camp] - Camp
}
/return
Sub Event_Invited
/delay 20
/invite
/return
Sub Event_ClarityGone
/g Clarity just faded...
/return
Sub Event_TranqGone
/g Clarity just faded...
/return
Sub Event_InvisGone
/g Invis is wearing off.
/return
Sub Event_RootGone
/r Root Wore off.
/g Root Wore off.
/return
Sub Event_FollowOff
/if n $v10==1 {
/tell $p1 Parked.
} else {
/g Lost ya.
/sendkey down up
:KeepRunning
/face
/if n $target(distance)<50 {
/sendkey up up
/follow
/varset v10 0
/g Back on Auto-Follow. go ahead.
} else {
/goto :KeepRunning
}
}
/return
Sub Event_SowGone
/r lost sow
/g lost sow
/return
Sub Report
/target myself
/delay 5
/g Mana: $char(mana,pct) HP: $char(hp,pct)
/r Mana: $char(mana,pct) HP: $char(hp,pct)
/delay 5
/press esc
/return
Sub Event_LostSkin
/r lost Skin
/g lost Skin
/return
Sub Event_LostStr
/r lost Str
/g lost Str
/return
Sub Event_LostRegen
/r lost regen
/g lost regen
/return
Code: Select all
| druid.mac
| druid pl petbot
|
| Courtesy of Rahn
|
| Special thanks:
| Dirtface
| Wes
| Fippy
| Valerian
| Sparr
| Plazmic
| L124RD
| Everyone else i took code from ;-)
|
| spell gem order
|------------------
| 1. str buff
| 2. skin buff
| 3. damage shield
| 4. snare/ensanre
| 5. heal
| 6. regen
| 7. gate
| 8. sow
|
| Usage: /macro druid.mac <character in control>
|
| commands: ( ie.. /tell druid heal = heal me /tell druid healt = heal my target)
| [str] - Strength BUff, [strt] - Strength BUff target, [skin] - Skin Buff,
| [skint] - Skin Buff target, [ds] - Damage Shield, [dst] - Damage Shield target,
| [snare] - Snare Target, [heal] - Fast Heal, [healt] - Fast Heal target,
| [regen] - HP Regeneration Buff, [regent] - HP Regeneration Buff target,
| [gate] - Gate out, [sow] - Run Speed Buff,[sowt] - Run Speed Buff target,
| [mana] - Report Mana, [report] - Report Mana, [follow] - Follow,
| [stop] - Stop Follow, [setcamp] = Set camp spot, [return] - Return to camp,
| [Sit] - Sit/Stand, [lfg] - LFG ON, [camp] - Camp, [chelp] - display commands
|
| notes: the druid will autorebuff whatever self buffs they started with
| and /tell you and /g when other buffs wear off
#turbo
#define GroupMember v93
#define GroupMax v90
#define ChatCommand p2
#define XLOC v52
#define YLOC v53
#define $GroupClass $spawn($group($GroupMember),class)
#include SpellSub.mac
#include Common.mac
#chat tell
#Event Invited "To join the group, click on the 'FOLLOW' option, or 'DISBAND' to cancel"
#Event ClarityGone "Your mind returns to normal."
#Event InvisGone "You feel yourself starting to appear"
#Event RootGone "Your Instill spell has worn off."
#Event FollowOff "You are no longer auto-following "
#Event SowGone "The spirit of wolf leaves you."
#Event TranqGone "The tranquil breeze fades."
#Event LostSkin "Your skin returns to normal."
#Event LostStr "Your strength fades."
#Event LostRegen "You have stopped regenerating."
Sub Main
/varset v69 $p0
:chkevent
/doevents
| *** AutoHeal ***
/varcalc GroupMax $group(count)-1
/for GroupMember 0 to $GroupMax
/if n $spawn($group($GroupMember),hp,pct)<41 {
/if n $spawn($group($GroupMember),hp,pct)<1 /goto :nextmember
/if n $group($GroupMember)==$char(id) /press F1
/if n $group($GroupMember)!=$char(id) /target id $group($GroupMember)
/stand
/delay 11
/face
/g Healing %T
/call SpellSub 5 50
/sit
:nextmember
}
/next GroupMember
/goto :chkevent
/return
Sub Event_Chat
:Commands
| *** Strength ***
/if "$ChatCommand"=="str" {
/target $p1
/delay 11
/g str on %T
/r str on %T
/call SpellSub 1 105
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="strt" {
/assist $p1
/delay 11
/g str on %T
/r str on %T
/call SpellSub 1 105
/sit on
/call Report
/press esc
| *** Regen ***
} else /if "$ChatCommand"=="regen" {
/target $p1
/delay 11
/g Regen on %T
/r Regen on %T
/call SpellSub 6 65
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="regent" {
/assist $p1
/delay 11
/assist $p1
/g Regen on %T
/r Regen on %T
/call SpellSub 6 65
/sit on
/call Report
/press esc
| *** GATE ***
} else /if "$ChatCommand"=="gate" {
/stand
/g Gating
/r Gating
/call SpellSub 7 55
| *** SLN ***
} else /if "$ChatCommand"=="skin" {
/target $p1
/delay 11
/g SLN on %T
/r SLN on %T
/call SpellSub 2 65
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="skint" {
/assist $p1
/delay 11
/assist $p1
/g SLN on %T
/r SLN on %T
/call SpellSub 2 65
/sit on
/call Report
/press esc
| *** Heal ***
} else /if "$ChatCommand"=="Heal" {
/target $p1
/delay 11
/g Healing %T
/r Healing %T
/call SpellSub 5 50
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="Healt" {
/assist $p1
/delay 11
/assist $p1
/g Healing %T
/r Healing %T
/call SpellSub 5 50
/sit on
/call Report
/press esc
| *** Sow ***
} else /if "$ChatCommand"=="Sow" {
/target $p1
/delay 11
/r sow on %T
/g sow on %T
/call SpellSub 8 55
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="Sowt" {
/assist $p1
/delay 11
/assist $p1
/r sow on %T
/g sow on %T
/call SpellSub 8 55
/sit on
/call Report
/press esc
| *** DS ***
} else /if "$ChatCommand"=="DS" {
/target $p1
/delay 11
/g DS on %T
/r DS on %T
/call SpellSub 3 45
/sit on
/call Report
/press esc
} else /if "$ChatCommand"=="DST" {
/assist $p1
/delay 11
/assist $p1
/g DS on %T
/r DS on %T
/call SpellSub 3 45
/sit on
/call Report
/press esc
| *** Snare ***
} else /if "$ChatCommand"=="snare" {
/assist $p1
/delay 11
/assist $p1
/g Snaring %T
/r Snaring %T
/call SpellSub 4 40
/sit on
/call Report
/press esc
| *** Report HP/Mana ***
} else /if "$ChatCommand"=="mana" {
/call Report
/press esc
} else /if "$ChatCommand"=="report" {
/call Report
/press esc
| *** AUTOFOLLOW ***
} else /if "$ChatCommand"=="follow" {
/target $p1
/sit off
/face
/follow
/r Lead on %T
/varset v10 0
| *** Define Camp Spot ***
} else /if "$ChatCommand"=="setcamp" {
/target myself
/delay 5
/varset XLOC $char(x)
/varset YLOC $char(y)
/r Ok. Here I sit.
| *** AUTORETURN (to camp)***
} else /if "$ChatCommand"=="return" {
:return
/stand
/face loc $YLOC,$XLOC
/call GotoLoc $YLOC,$XLOC
/target $p1
/face
/sit
/press esc
/sit
| *** AUTOSTOP ***
} else /if "$ChatCommand"=="stop" {
/press down
/press up
/varset v10 1
/r Stopping here.
| *** SIT/STAND ***
} else /if "$ChatCommand"=="sit" {
/target $p1
/face
/sit
/press esc
| *** Come ***
} else /if "$ChatCommand"=="come" {
/target $p1
/stand
/face
/g omw %T
/r omw %T
/target $p1
/call GotoTarg
/g I am here %T
/r I am here %T
/press esc
| *** LFG ON ***
} else /if "$ChatCommand"=="LFG" {
/delay 10
/target myself
/delay 10
/disband
/delay 10
/lfg on
/r LFG now.
| *** CAMP ***
} else /if "$ChatCommand"=="camp" {
/sit off
/sit
/camp
/r camping
/delay 10
/unload
| *** COMMAND HELP ***
} else /if "$ChatCommand"=="chelp" {
/reply [str] - Strength BUff, [skin] - Skin Buff, [ds] - Damage Shield, [snare] - Snare Target, [heal] - Fast Heal,
[regen] - HP Regeneration Buff, [gate] - Gate out, [sow] - Run Speed Buff, [mana] - Report Mana, [follow] - Follow, [
stop] - Stop Follow, [setcamp] = Set camp spot, [return] - Return to camp, [Sit] - Sit/Stand, [lfg] - LFG ON, [camp] -
Camp
}
/return
Sub Event_Invited
/delay 20
/invite
/return
Sub Event_ClarityGone
/g Clarity just faded...
/return
Sub Event_InvisGone
/g Invis is wearing off.
/return
Sub Event_RootGone
/g Root Wore off.
/return
Sub Event_FollowOff
/if n $v10==1 {
/r Parked.
} else {
/g Lost ya.
/sendkey down up
:KeepRunning
/face
/if n $target(distance)<50 {
/sendkey up up
/follow
/varset v10 0
/g Back on Auto-Follow. go ahead.
} else {
/goto :KeepRunning
}
}
/return
Sub Event_SowGone
/target myself
/r casting sow on myself
/call SpellSub 8 50
/delay 20
/sit on
/return
Sub Event_TranqGone
/g Clarity just faded...
/return
Sub Report
/target myself
/delay 5
/g Mana: $char(mana,pct) HP: $char(hp,pct)
/r Mana: $char(mana,pct) HP: $char(hp,pct)
/delay 5
/press esc
/return
Sub Event_LostSkin
/target myself
/r casting skin on myself
/call SpellSub 2 65
/delay 20
/sit on
/call Report
/press esc
/return
Sub Event_LostStr
/target myself
/r casting str on myself
/call SpellSub 1 55
/delay 20
/sit on
/call Report
/press esc
/return
Sub Event_LostRegen
/target myself
/r casting regen on myself
/call SpellSub 6 65
/delay 20
/sit on
/call Report
/press esc
/return
Code: Select all
| Common.mac
| Common subs to my .macs
|
| Courtesy of Rahn
|
| Special thanks:
| Dirtface
| Wes
| Fippy
| Valerian
| Sparr
| Plazmic
| L124RD
| Everyone else i took code from ;-)
|
Sub BackPedal
/if $p0==$v79 /return
/varset v79 $p0
/if $p0==1 /sendkey down up
/if $p0==0 /sendkey up up
/return
| ----------------------------
Sub AutoRun
/if $p0==$v80 /return
/varset v80 $p0
/if $p0==1 /sendkey down up
/if $p0==0 /sendkey up up
/return
| ----------------------------
Sub GotoLoc
/varset v91 $rand(5)
:GotoLocLoop
/face loc $p0
/if "$p1"=="u" /Press u
/call AutoRun 1
/if n $distance($p0)>$v91 /goto :GotoLocLoop
/call AutoRun 0
/return
| ----------------------------
Sub GotoTarg
/varset v91 $rand(5)
| /target $p0
:GotoTargLoop
/face
/if "$p1"=="u" /Press u
/call AutoRun 1
/if n $target(distance)>$v91 /goto :GotoTargLoop
/call AutoRun 0
/return
| ----------------------------
| End of Common.mac
