Something for a druid

JDEKnox

Knox
Joined
Jul 22, 2008
Messages
358
Reaction score
5
Points
18
okay, so because i suck at getting ModBot to work and all the other cool things, here is what i decided to do, i took the Wizard Mindless Nuke macro made by GummySquirrel and modified it for my druid, It's not special, its not going to heal you it's just going to do some debuffs and then start dotting the mob and nuking until its dead.

Now to start off i use the following Downshits to do my buffs

Code:
downshit0=/if (${Spell[Aura of Pure Arcanum].Stacks[5]} && !${Me.Casting}) /casting 85571 |Item
downshit1=/if (${Spell[Expanding Mind II].Stacks[5]} && !${Me.Casting}) /casting 110960 |Item
downshit2=/if (${Spell[Form of Defense VI].Stacks[5]} && !${Me.Casting}) /casting 56120 |Item
downshit3=/if (${Spell[Knowledge of the Past V].Stacks[5]} && !${Me.Casting}) /casting 107029 |Item
downshit4=/if (!${Me.Buff[Heartwood Skin Rk. III].ID} && !${Me.Invis} && !${Heartwood Skin Rk. III].ID} && !${Me.Moving}) /multiline ; /target yourtoonnamehere; /casting "Heartwood Skin Rk. III" gem11
downshit5=/if (!${Me.Buff[Mask of the Raptor Rk. II].ID} && !${Me.Invis} && !${Mask of the Raptor Rk. II].ID} && !${Me.Moving}) /casting "Mask of the Raptor Rk. II" gem11
downshit6=/if (!${Me.Buff[Brierbloom Coat Rk. III].ID} && !${Me.Invis} && !${Brierbloom Coat Rk. III].ID} && !${Me.Moving}) /casting "Brierbloom Coat Rk. III" gem11
downshit7=/if (!${Me.Buff[Preincarnation Rk. II].ID} && !${Me.Invis} && !${Preincarnation Rk. II].ID} && !${Me.Moving}) /casting "Preincarnation Rk. II" gem11
downshitif=${If[${Zone.ID}!=345 && ${Zone.ID}!=344 && !${Me.Song[Elevator Music].ID} && !${Me.CombatState.Equal[COMBAT]} && !${Me.Invis},1,0]}
downshit8=/if (!${Me.Casting.ID} &&  !${Me.CombatState.Equal[COMBAT]} && !${Me.Moving} &&  !${Me.Sitting} && ${Cast.Ready}) /sit on
downshit9=/if (${Me.PctMana}<95  &&  !${Me.Casting.ID} &&  !${Me.CombatState.Equal[COMBAT]} && !${Me.Moving} &&  !${Me.Sitting}) /sit on
downshit10=/if (${Me.PctMana}>98) /stand on
downshit11=/if (${Me.PctMana}<95 && ${Spell[Spirit of the Black Wolf].Stacks[5]}  && ${Me.AltAbilityReady[Spirit of the Black Wolf]}) /multiline ; /target yourtoonnamehere; /stand; /Alt act 1092
downshit12=/if (${Me.PctMana}<95 &&  !${Me.AltAbilityReady[Spirit of the Black Wolf]}  &&  ${Spell[Group Spirit of the Black Wolf].Stacks[5]}  &&  ${Me.AltAbilityReady[Group Spirit of the Black Wolf]}) /multiline ; /target Yourtoonnamehere; /stand; /Alt act 10397

so that just does some simple stuff, and also pops spirit of the black wolf whenever its ready and same with Group spirit of the wolf so long as you've already used Spirit of the black wolf, and you can modify the mana %'s to w/e you want, i just liked this because it typically keeps Black wolf up for the mana regen

then i use this macro alongside it, (its fucking ugly i know, i suck at this shit, but it works for me), also side note, if you don't have these aa's then you'll have to modify it to your druid cause i sure as fuck don't know how to make it check all that stuff, you also need to have Hand of Ro AA and Fixation of Ro, the 2 new AA's introduced with the latest patch because that is part of its debuff, also you need Entrap,(another side note, there are plenty of things in it that are completely unnecessary and probably don't do a damn thing, but i didn't care about pretty i just wanted it to do certain things anyways

Code:
|-----------------------------|
|-------Idea Cheater010-------|
|---Written by GummySquirrel--|
|------Edited by JDEKnox------|
|-----------------------------|

#include spell_routines.inc

#Event SnareWornOff "Your |${Snare}| spell has worn off#*#"
#Event Slain "has been slain"
#Event Slainbyme "You have slain"

Sub Main

|-------------------------------|
|-- Edit These To Your Liking --|
|-------------------------------|

/declare Debuff1 string outer Fixation of Ro
/declare Debuff2 string outer Hand of Ro
/declare Debuff3 string outer Withering Sunray Rk. III
/declare Snare string outer Entrap
/declare Dot1 string outer Horde of Fireants Rk. II
/declare Dot2 string outer Sunsinge Rk. III
/declare Dot3 string outer Horde of the Hive Rk. III
/declare Dot4 string outer Nature's Searing Wrath Rk. III
/declare Nuke1 string outer Remote Manaflux Rk. II
/declare Nuke2 string outer Morning's Glory Rk. III
/declare Nuke3 string outer Summer Solstice Rk. III



/declare SnareAt int outer 97
/declare DebuffAt int outer 95
/declare NukeAt int outer 80
/declare FixationAfter int outer 1
/declare MedAt int outer 30
/declare ReAssist timer outer 10s

|--------------|
|-- END EDIT --|
|--------------|


/call Initialize

/echo Beginning Mindless druid shit...

:MainLoop

/call CheckTarget
/call Debuff
/call NukeDot
/call Snare
/call CheckMana
/doevents
/goto :MainLoop
/return


Sub Initialize
/if (!${Target.ID} || ${Target.Type.NotEqual[PC]} || ${Target.ID}==${Me.ID}) {
  /echo Please target the main tank before running the macro
  /end
}
/declare MainTank int outer ${Target.ID}
/declare NAG int outer ${Me.Gem[${Nuke2}]}
/declare DCG int outer ${Me.Gem[${Dot3}]}
/declare DAG int outer ${Me.Gem[${Dot1}]}
/declare DDG int outer ${Me.Gem[${Dot4}]}
/declare DBG int outer ${Me.Gem[${Dot2}]}
/declare NBG int outer ${Me.Gem[${Nuke1}]}
/declare NCG int outer ${Me.Gem[${Nuke3}]}
/declare DEG int outer ${Me.Gem[${Debuff3}]}


/declare NAB bool outer FALSE
/declare NBB bool outer FALSE
/declare NCB bool outer FALSE


/declare SG int outer ${Me.Gem[${Snare}]}
/declare CBC int outer 0
/declare TarID int outer
/declare SIM int outer 0
/declare Snared int outer 0
/if (!${NAG} || !${NBG} || !${NCG} || !${DAG} || !${DBG} || !${DCG} || !${DDG} || !${DEG}) /multiline ; /echo Missing A Spell! ; /end
/return


Sub CheckBuffs


/return


Sub CheckTarget
 /if ((!${Target.ID} || ${Target.Type.NotEqual[NPC]} || !${ReAssist}) && ${Spawn[id ${MainTank} radius 200].ID}) {
   /assist ${Spawn[id ${MainTank}]}
   /varset ReAssist ${ReAssist.OriginalValue}
 }
 /if (${Target.ID} && ${Target.Type.Equal[NPC]} && ${Target.ID}!=${TarID}) {
   /varset TarID ${Target.ID}
   /varset CBC 0
   /varset Snared 0
   /varset NAB FALSE
   /varset NBB FALSE
   /varset NCB FALSE
   /memspellset Twincast Heals
 }
/return


//10424=Hand of Ro
//10425=Fixation of Ro
Sub Debuff
 /if (${Target.PctHPs}<=${DebuffAt} && ${Target.ID} && ${Target.Type.Equal[NPC]}) {
 /if (${Target.PctHPs}<=${DebuffAt} && ${Target.ID} && ${Target.Type.Equal[NPC]}  &&  !${Target.Buff[Hand of Ro].ID}  &&  ${Me.AltAbilityReady[${Debuff2}]} && ${Target.Distance}<=${Spell[${Debuff2}].Range} && ${Target.LineOfSight}  &&  ${CBC}==0 && ${Snared}==1) {
	/alt act 10424
	}
	/if (${Target.Buff[Hand of Ro].ID}) /varset CBC 1
 /if (${Target.PctHPs}<=${DebuffAt} && ${Target.ID} && ${Target.Type.Equal[NPC]}  &&  !${Target.Buff[Fixation of Ro].ID}  &&  ${Me.AltAbilityReady[${Debuff1}]} && ${Target.Distance}<=${Spell[${Debuff1}].Range} && ${Target.LineOfSight}  && ${CBC}==1) {
	/alt act 10425
	}
	/if (${Target.Buff[Fixation of Ro].ID}) /varset CBC 2
 /if (${Target.PctHPs}<=${DebuffAt} && ${Target.ID} &&  !${Target.Buff[Withering Sunray Rk. III].ID}  &&   ${Target.Type.Equal[NPC]}  &&  ${Me.SpellReady[${Debuff3}]} && ${Target.Distance}<=${Spell[${Debuff3}].Range} && ${Target.LineOfSight}  && ${CBC}==2) {
	/call cast "${Debuff3}" gem${DEG}
	}
	/if (${Target.Buff[Withering Sunray Rk. III].ID}) /varset CBC 3
 }
/return

//varcalc CBC ${CBC}+1


Sub NukeDot
 /if (${Target.PctHPs}<=${NukeAt} && ${Target.ID} && ${Target.Type.Equal[NPC]}  &&  ${CBC}==3) {
    /if (${Me.CurrentMana}>=${Spell[${Nuke1}].Mana} && ${Me.SpellReady[${Nuke1}]} && ${Target.Distance}<=${Spell[${Nuke1}].Range} && ${Target.LineOfSight}  && !${NAB}) {
      /call cast "${Nuke1}" gem${NAG} 1s
    }
    /if (${Me.CurrentMana}>=${Spell[${Dot1}].Mana} && ${Me.SpellReady[${Dot1}]} &&  !${Target.Buff[Horde of Fireants Rk. II].ID} && ${Target.Distance}<=${Spell[${Dot1}].Range} && ${Target.LineOfSight}) {
      /call cast "${Dot1}" gem${DAG} .5s
    }
    /if (${Me.CurrentMana}>=${Spell[${Dot2}].Mana} && ${Me.SpellReady[${Dot2}]} &&  !${Target.Buff[Sunsinge Rk. III].ID} && ${Target.Distance}<=${Spell[${Dot2}].Range} && ${Target.LineOfSight}) {
      /call cast "${Dot2}" gem${DBG} .5s
    }
    /if (${Me.CurrentMana}>=${Spell[${Dot4}].Mana} && ${Me.SpellReady[${Dot4}]} &&  !${Target.Buff[Nature's Searing Wrath Rk. III].ID} && ${Target.Distance}<=${Spell[${Dot4}].Range} && ${Target.LineOfSight}) {
      /call cast "${Dot4}" gem${DDG} 2s
    }
    /if (${Me.CurrentMana}>=${Spell[${Dot3}].Mana} && ${Me.SpellReady[${Dot3}]} &&  !${Target.Buff[Horde of the Hive Rk. III].ID} && ${Target.Distance}<=${Spell[${Dot3}].Range} && ${Target.LineOfSight}) {
      /call cast "${Dot3}" gem${DCG} .5s
    }
    /if (${Me.CurrentMana}>=${Spell[${Nuke2}].Mana} && ${Me.SpellReady[${Nuke2}]} && ${Target.Distance}<=${Spell[${Nuke2}].Range} && ${Target.LineOfSight}  && !${NBB}) {
      /multiline ; /call cast "${Nuke2}" gem${NBG} 2s ; /varset NBB TRUE
    }
    /if (${Me.CurrentMana}>=${Spell[${Nuke3}].Mana} && ${Me.SpellReady[${Nuke3}]} && ${Target.Distance}<=${Spell[${Nuke3}].Range} && ${Target.LineOfSight}  && !${NCB}) {
      /multiline ; /call cast "${Nuke3}" gem${NCG} 2s ; /varset NCB TRUE
    }
    /if (${Me.CurrentMana}>=${Spell[${Nuke1}].Mana} && ${Me.SpellReady[${Nuke1}]} && ${Target.Distance}<=${Spell[${Nuke1}].Range} && ${Target.LineOfSight}  && ${NAB}) {
      /call cast "${Nuke1}" gem${NAG} 1s
    }
}
/return

Sub Snare
  /if (${Target.PctHPs}<=${SnareAt} && ${Target.ID} && ${Target.Type.Equal[NPC]} && ${Snared}==0) {
     /alt act 219
     /varset Snared 1
  }
/return


Sub CheckMana
  /if (${Me.Song[Gift of Radiant Mana].ID}) /return
  /if (${Me.PctMana}<${MedAt}) {
    /echo Mana is below ${MedAt}% .. medding up
    :Cycle
    /if (!${Me.Mount.ID} && ${Me.State.Equal[STAND]} && ${Me.CombatState.NotEqual[COMBAT]}) /sit
    /if (${Me.PctMana}<100) /goto :Cycle
    /echo Finished medding.
  }
/return

Sub Event_SnareWornOff
  /varset Snared 0
  /call Snare
/return
Sub Event_Slain
  /varset CBC 0
/return
Sub Event_Slainbyme
  /varset CBC 0
/return

and to use target the main tank or main assist /macro (whateveryounameit)
 
Last edited: