Page 1 of 1

tryed everything

Posted: Wed May 05, 2004 4:48 am
by cobra
I have no programing knowledge i did my best to convert my one and only macro to the new system but it still will not work
it will not do anything when the assisthealth is reached it is supposed to cast and send pet but it does nothing if you can please help fix the problem i would be very gratefull
i have highlighted where i think the problem is but i could be wrong i have read and reread the boards looking for a sinppet of hope but i am afraid i have come to a dead end . thank you in advance to any kind soul who helps me

my old macro (use to work with old param system)

Code: Select all


#chat tell 
#chat group 
#include spellcast.inc 
#include routines.mac 
#turbo 75 

Sub Main 
   /declare tankname global 
   /declare nukename global 
   /declare mobhp global 
   /declare tempvar global 
   /declare assisthealth global 
    
   /echo "Macro Starting" 
   /varset assisthealth @Param1 
   /varset tankname @Param0 
   /varset nukename black steel 
   /echo "@tankname is assist tank." 
   /varset tempvar 0 
    
   
   :top 
   

   /doevents 
   /if (${Me.State.Equal[DUCK]}) { 
      /pet back off 
      /endmacro 
   } 
    
   /if (${Me.State.Equal[SIT]}) { 
         /pet back off 
         /endmacro 
   } 
   /echo starting TOP Assisitng @tankname 
   /assist @tankname 
   /delay 10 
    
   /if (!${Target.ID}) { 
      /echo Nothing on @tankname Target 
      /target @tankname 
      /goto :top 
   } 
    
   /if (${Target.Type.NotEqual[NPC]}) /goto :top 
    
   /if (@tempvar!=${Target.PctHPs}) /echo ${Target.CleanName} targeted at ${Target.PctHPs}% at distance ${Target.Distance}. 
   /varset tempvar ${Target.PctHPs} 
    
   /if (${Target.PctHPs}>=@assisthealth) { 
      /echo Time to start working 
      /goto :top 
   } else { 
      /echo Target Acquired: ${Target.CleanName} 
      /if (${Target.PctHPs}<=95) { 
         /delay 5 
         /echo Casting Malosinia 
         /call cast "malosinia" 
         /echo sending Pet IN to KILL ${Target.CleanName} 
         /pet attack 
         /echo Checking for MOD ROD 
         /if (!${FindItem[Rod Of Mystical Transvergance].ID}) { 
            /echo Making mod rod 
            /keypress F1 
            /call cast "Rod Of Mystical Transvergance" 
            /delay 5 
            /autoinv 
            /delay 5 
         } 
         /echo going to Nuke 
         /goto :nuke 
      } 
   } 

   | ---Nuking--- 
   :nuke 
   /if (${Me.State.Equal[DUCK]}) { 
      /pet back off 
      /endmacro 
   } 
    
   /if (${Me.State.Equal[SIT]}) { 
      /pet back off 
      /endmacro 
   } 
   /echo Starting Nuke 
    
   /if (${Target.Type.Equal[NPC]}) { 
      /echo Nuking ${Target.CleanName}. It is a level ${Target.Level} ${Target.Race} 
      /call Cast "Rock of Taelosia" 
      /delay @Param2 
      /if (!${Target.ID}) { 
         /target @tankname 
         /echo using Mod rod 
         /cast item "Rod of Mystical Transvergance" 
      } 
      /goto :nuke 
   } 
   /goto :top 
    
   /return
   
   /goto :top


Sub Event_Chat(MsgType,MsgFrom,MsgData) 
   /if (${String[@MsgData].Find["rod"]}) { 
       /beep
       /delay 50 
       /echo @MsgFrom needs a rod. 
       /delay 50 
       /target pc @MsgFrom 
       /stand 
       /cast 8 
   } 
/return


my attempt to convert

Code: Select all

#chat tell 
#chat group 
#include spellcast.inc 
#include routines.mac 
#event DamageShield "Your pet's maelstrom of ro spell has worn off" 

Sub Main 
   /declare tankname string outer 
   /declare nukename string outer 
   /declare mobhp int outer 
   /declare tempvar int outer 
  [color=red]/declare assisthealth int outer [/color]

   /echo "Macro Starting" 
  [color=red] /varset assisthealth ${Int[Param1} [/color]
   /varset tankname ${Param0} 
   /varset nukename black steel 
   /echo ${tankname} is assist tank. 
   /varset tempvar 0 

   :top 
   /doevents 
   /if (${Me.State.Equal[DUCK]}) { 
      /pet back off 
      /endmacro 
   } 

   /if (${Me.State.Equal[SIT]}) { 
         /pet back off 
         /endmacro 
   } 
   /echo starting TOP Assisitng ${tankname} 
   /assist ${tankname} 
   /delay 10 

   /if (!${Target.ID}) { 
      /echo Nothing on ${tankname} Target 
      /target ${tankname} 
      /goto :top 
   } 

   /if (${Target.Type.NotEqual[NPC]}) /goto :top 

/if (${tempvar}!=${Target.PctHPs}) /echo ${Target.CleanName} targeted at ${Target.PctHPs}% at distance ${Target.Distance}. 
/varset tempvar ${Target.PctHPs} 

 [color=red]/if (${Target.PctHPs}>=${assisthealth}) {[/color]     
     /echo Time to start working 
     /goto :top 
   } else { 
      /echo Target Acquired: ${Target.CleanName} 
      /if (${Target.PctHPs}<=95) { 
         /delay 5 
         /echo Casting Malosinia 
         /call cast "malosinia" 
         /echo sending Pet IN to KILL ${Target.CleanName} 
         /pet attack 
         /echo Checking for MOD ROD 
         /if (!${FindItem[Rod Of Mystical Transvergance].ID}) { 
            /echo Making mod rod 
            /tar myself 
            /call cast "Rod Of Mystical Transvergance" 
            /delay 5 
            /autoinv 
            /delay 5 
         } 
         /echo going to Nuke 
         /goto :nuke 
      } 
   } 

   | ---Nuking--- 
   :nuke 
   /if (${Me.State.Equal[DUCK]}) { 
      /pet back off 
      /endmacro 
   } 

   /if (${Me.State.Equal[SIT]}) { 
      /pet back off 
      /endmacro 
   } 
   /echo Starting Nuke 

   /if (${Target.Type.Equal[NPC]}) { 
      /echo Nuking ${Target.CleanName}. It is a level ${Target.Level} ${Target.Race} 
      /call Cast "Rock of Taelosia" 
      /delay ${Param2.Int} 
      /if (!${Target.ID}) { 
         /target ${tankname} 
         /echo using Mod rod 
         /cast item "Rod of Mystical Transvergance" 
      } 
      /goto :nuke 
   } 
   /goto :top 

/return 

Sub Event_Chat(MsgType,MsgFrom,MsgData) 
   /if (${MsgData.Find["rod"]}) { 
       /beep 
       /delay 50 
       /echo ${MsgFrom} needs a rod. 
       /delay 50 
       /target pc ${MsgFrom} 
       /stand 
       /cast 8 
   } 
/return 

Sub Event_DamageShield 
      /echo Casting Damage Shield on my pet 
      /target ${Me.Pet.ID} 
      /cast 1 
/return 


Please Help me get this working again Thank you

Posted: Wed May 05, 2004 4:52 am
by Chyld989
Well, I don't do much with macros, so I'm not sure about the other parts, but I think you'd at least want this:

Code: Select all

/varset assisthealth ${Int[Param1}
to be this:

Code: Select all

/varset assisthealth ${Int[Param1[color=red]][/color]}
If that doesn't fix it, what error messages are you getting?

Posted: Wed May 05, 2004 4:59 am
by Lax
you dont even need to ${Int}, but Param1 needs to be in ${}

/varset assisthealth ${Param1}
works fine

thank you

Posted: Wed May 05, 2004 7:13 am
by cobra
Thank You very much its finally working :)
Also special thanks to Wassup for all his help you are the BEST