chanter 2 boxed just to slow and cripple

Have a macro idea but not sure where to start? Ask here.

Moderator: MacroQuest Developers

EQwhat
a lesser mummy
a lesser mummy
Posts: 57
Joined: Sat Jun 18, 2005 6:55 pm
Location: UK

chanter 2 boxed just to slow and cripple

Post by EQwhat » Mon Mar 13, 2006 8:28 am

ok here is what i have but the Synapsis Spasm part seams to end the macro. I cant see whats wrong and i wounder if fresh eyes will see. Please help.

Code: Select all

|usage: /Macro encbot <Start Health> <Tank Name> 
#include spellcast.inc 


#Event Zoned           "#*#You have entered#*#" 
#Event Exp             "#*#You gain#*#experience#*#" 
#Event Exp             "#*#slain #*#" 
#Event Exp             "#*#Corpse#*#" 
#Event resist       "Your target resisted the Forlorn Deeds spell#*#" 
#Event resist       "Your Forlorn Deeds spell has worn off#*#" 
#Event notweak       "Your Synapsis Spasm spell has worn off#*#" 
#Event Slowsuccess    "#*#slows down#*#" 
#Event Weaksuccess    "#*#is weak#*#" 
#Event Immune       "#*#changes in its run speed#*#" 
#Event EndMacro      #*#rest now#*#" 

Sub Main 
/echo usage: /Macro encbot <Start Health> <Tank Name>
/echo Enchanter Slow Bot started
/1 Taking over slowing duties
/deletevar TargetHealth 
/deletevar Assist 

/declare TargetHealth int global 
/declare Assist string global 
/declare auto_fire int outer 0 
/declare IsSlowed int outer 0 
/declare Isweak int outer 0 

/varset TargetHealth ${Param0} 
/varset Assist ${Param1} 

:MainLoop 
   /doevents 
   /call Nuke 
   /delay 50
   /goto :MainLoop 
   /return 

Sub Nuke 
   /assist ${Assist} 
   /delay 5 
   /if (${IsSlowed}==0 && ${Target.PctHPs}<=95) /call Cast "Forlorn Deeds" gem2 
   /if (${IsWeak}==0 && ${Target.PctHPs}<=90) /call Cast "Synapsis Spasm" gem1 
   /if (${Target.Type.NotEqual[NPC]}) { 
      /if (${auto_fire}==1) /call cast "Insanity" gem3
      /delay 5 
      /return 
   } 
   /if (${Target.PctHPs}<=${TargetHealth} && ${Target.Distance}>30) { 
      /face 
      /if (${auto_fire}==0) /call cast "Insanity" gem3
      /call Slow 
   } 
   /return 
    
Sub Slow 
   /if (${IsSlowed}==0 && ${Target.PctHPs}<=95) /call Cast "Forlorn Deeds" gem2 
   /return

Sub Weak 
   /if (${Isweak}==0 && ${Target.PctHPs}<=90) /call Cast "Synapsis Spasm" gem1 
   /return

Sub Event_Zoned 
   /echo Zoned...Helper is off 
   /varset IsSlow 0 
   /varset IsWeak 0 
   /endmacro
   /return 

Sub Event_Exp 
   /tar ${Assist}
   /varset IsSlowed 0
   /varset IsWeak 0 
   /1 Next Victim please
   /return 

Sub Event_resist 
   /return 

Sub Event_Endmacro
   /1 Resting :)
   /endmacro 
   /return 

Sub Event_Slowsuccess 
   /1 ${Target.CleanName} slowed 
   /varset IsSlowed 1 
   /return

Sub Event_Weaksuccess 
   /1 ${Target.CleanName} Weakend 
   /varset IsWeak 1 
   /return 

Sub Event_Immune 
   /echo ${Target.CleanName} slow immune 
   /varset IsSlowed 1 
   /return 

bardomatic
a ghoul
a ghoul
Posts: 131
Joined: Thu Apr 29, 2004 12:09 am

Post by bardomatic » Mon Mar 13, 2006 9:25 am

Just a guess but where is Sub Event_notweak.?

EQwhat
a lesser mummy
a lesser mummy
Posts: 57
Joined: Sat Jun 18, 2005 6:55 pm
Location: UK

edited

Post by EQwhat » Mon Mar 13, 2006 11:04 am

oh yeah and it used to be a ranger macro if it dont make sense for *changes to its runspeed*. but i left it in since its not doing anything. I think the event i missed is just if its resisted. well it dont get that far so i guess its not that. i'll give it a day to see what other help i can get.

DeeGee
a ghoul
a ghoul
Posts: 116
Joined: Wed Sep 22, 2004 4:51 pm

Post by DeeGee » Mon Mar 13, 2006 11:45 am

Have you ever cast Synapsis Spasm on a mob? Where does it say #*#is weak#*#

Read Me

DeeGee
a ghoul
a ghoul
Posts: 116
Joined: Wed Sep 22, 2004 4:51 pm

Post by DeeGee » Mon Mar 13, 2006 12:00 pm

Totally untested and you'll need to customize it obviously, but I think this will work alot better for you

Code: Select all

#include spell_routines.inc

#Event CrippleOff "#*#synapsis spasm spell has worn off#*#"
#Event SlowOff "#*#forlon deeds spell has worn off#*#"
#Event Exp "#*#party experience!#*#"
#Event Exp "#*#gain experience!#*#"

Sub Main
	/declare Slowed bool outer FALSE
	/declare Crippled bool outer FALSE
	/declare MainAssist outer Goober
	:loop
	/doevents
	/if (!${Target.ID}) /assist ${MainAssist}
	/delay 1s
	/if (${Target.ID} && ${Target.PctHPs}<95 && !${Slowed}) /call Slow
	/if (${Target.ID} && ${Target.PctHPs}<90 && !${Crippled} && ${Slowed}) /call Cripple
	/if (${Slowed} && ${Crippled} && ${Target.ID} && ${Target.PctHPs}<90 && ${Me.PctMana}>30) /call Nuke
	/goto :loop
/return

Sub Slow
	/call cast "Forlorn Deeds" gem2
	/if (${Macro.Return.Equal[CAST_SUCCESS]} || ${Macro.Return.Equal[CAST_IMMUNE]}) /varset Slowed TRUE
/return

Sub Cripple
	/call cast "Synapsis Spasm" gem1
	/if (${Macro.Return.Equal[CAST_SUCCESS]} || ${Macro.Return.Equal[CAST_IMMUNE]}) /varset Slowed TRUE
/return

Sub Nuke
	/call cast "Insanity" gem3
	/delay 1s
/return

Sub Event_CrippleOff
	/varset Crippled FALSE
/return

Sub Event_SlowOff
	/varset Slowed FALSE
/return

Sub Event_Exp
	/declare Slowed FALSE
	/declare Crippled FALSE
/return

added the include
Last edited by DeeGee on Mon Mar 13, 2006 12:37 pm, edited 1 time in total.

A_Druid_00
Macro Maker Extraordinaire
Posts: 2378
Joined: Tue Jul 13, 2004 12:45 pm
Location: Rolling on the Lawn Farting

Post by A_Druid_00 » Mon Mar 13, 2006 12:33 pm

You'll need to put

Code: Select all

#include spell_routines.inc
at the top of the macro as well.
[quote]<DigitalMocking> man, A_Druid_00 really does love those long ass if statements
<dont_know_at_all> i don't use his macro because i'm frightened of it[/quote]
[quote][12:45] <dont_know_at_all> never use a macro when you can really fuck up things with a plugin[/quote]

EQwhat
a lesser mummy
a lesser mummy
Posts: 57
Joined: Sat Jun 18, 2005 6:55 pm
Location: UK

thanks

Post by EQwhat » Mon Mar 13, 2006 4:42 pm

thank you so much. it looks a load cleaner then my version. /em bow

EQwhat
a lesser mummy
a lesser mummy
Posts: 57
Joined: Sat Jun 18, 2005 6:55 pm
Location: UK

question

Post by EQwhat » Tue Mar 14, 2006 1:19 pm

am i right in saying Deegee's version is a set MA so i would need to change the name in the macro manually if i was using this macro on different MA's? or did i just get the wrong end of the stick.

AEbard
a lesser mummy
a lesser mummy
Posts: 43
Joined: Fri Jan 30, 2004 10:53 am

Post by AEbard » Tue Mar 14, 2006 2:38 pm

you are correct, will need to change the ma manually in the macro for it to work on different ones.

DeeGee
a ghoul
a ghoul
Posts: 116
Joined: Wed Sep 22, 2004 4:51 pm

Post by DeeGee » Tue Mar 14, 2006 7:33 pm

Just change 'Goober' to ${Param0} and run the macro with /mac slowbot Tankdude

Zoydburg
a lesser mummy
a lesser mummy
Posts: 34
Joined: Wed Jul 21, 2004 3:30 am

Post by Zoydburg » Tue Mar 14, 2006 7:36 pm

Also change

Code: Select all

Sub Cripple 
   /call cast "Synapsis Spasm" gem1 
   /if (${Macro.Return.Equal[CAST_SUCCESS]} || ${Macro.Return.Equal[CAST_IMMUNE]}) /varset Slowed TRUE 
/return 
to

Code: Select all

Sub Cripple 
   /call cast "Synapsis Spasm" gem1 
   /if (${Macro.Return.Equal[CAST_SUCCESS]} || ${Macro.Return.Equal[CAST_IMMUNE]}) /varset [color=red]Crippled[/color] TRUE 
/return 

Scaring`
a lesser mummy
a lesser mummy
Posts: 32
Joined: Mon Mar 20, 2006 6:30 pm

Partial

Post by Scaring` » Mon Mar 20, 2006 6:33 pm

Have not used this yet but from my experiences there are alot of times that mobs are only partially slowed.. maybe incorperationg some sort of notification of how slowed mob is may be usefull