Page 1 of 1

Simple Mob Camper

Posted: Mon Aug 16, 2004 2:40 pm
by Scary_Penguin
I've been out of the loop for 4 or 5 months and totally did not follow up on all of the parameter changes :/ I was curious if anyone could write a simple macro for me to kill a specified mob every time it spawns? I would like to be able to edit the mob name in the macro, and from there I can figure out how to add commands to snare/root/nuke etc. Any help would be appreciated, thanks! (Mob is a timed static spawn that does not wander if that matters)

Posted: Mon Aug 16, 2004 7:55 pm
by Tuna
lol

Posted: Mon Aug 16, 2004 8:55 pm
by aChallenged1
I'm amazed, not a single flame.

You sir can consider yourself lucky, so far.

What you are asking for is an AFK macro, and that is against the policies of the Devs and Mods here.

Posted: Thu Aug 19, 2004 5:33 am
by Scary_Penguin
I'm not asking for an AFK macro, and like I said, if I knew all of the changes to MQ2Data and MQ2Params, I would have modified a pre-existing macro I created.

See >>Here<<

If you feel the need to flame me, go ahead. :) What I'm asking for is no more against the rules than say, a hunter macro.

Posted: Thu Aug 19, 2004 6:39 am
by aChallenged1
Plost the macro you have or pm it to me and I'll try to fix it.
Up to you.

Posted: Thu Aug 19, 2004 6:20 pm
by Night Hawk
Should just about do it. Not tested or anything, pretty much just a strait conversion. I've never used /alert but I think I got the general idea of it.

Code: Select all

| Stormfeather Camper by Scary Penguin
| 1.19.04
|
| Set Up to utilize Shadowknight Unholy Aura and Harmtouch.
| More class specifics to be added later.
|
| Main code based off of: Spawnchecker macro by wilso132
| USAGE: /macro stormfeather <beep/kill> will beep a number of times to alert you of spawn every
| 5 minutes untill dead, or target, kill, and loot the mob for you.



Sub Main
   /echo Stormfeather Camper by Scary Penguin
   
   /declare CorpseLoot int outer
   /declare x int outer
   /declare alerts int outer
   /declare BeepKill string outer
   
   /varset x 0
   /varset alerts 1
   
   /if (${Param0.Equal["beep"]}) {
      /varset BeepKill "beep"
      /echo Camping Stormfeather! You have chosen to [[ALERT]] when Stormfeather spawns!
   } else /if (${Param0.Equal["kill"]}) {
      /varset BeepKill "kill"
      /echo Camping Stormfeather! You have chosen to [[KILL]] when Stormfeather spawns!
   } else {
      /echo USAGE: /macro stormfeather <beep/kill> will beep a number of times to alert you of spawn every
      /echo 5 minutes untill dead, or target, kill, and loot the mob for you.
      /end
   }

   /alert clear ${alerts}
   /alert add ${alerts} npc radius 10000 "Stormfeather"
   :SpawnCheckLoop
   /if (${alerts} {
      /echo Stormfeather is UP!
      /echo Time of spawn is ${Time.Time24}
      /target npc "Stormfeather"

      /call ${BeepKill}  |- this will either /call beep, or /call kill, as defined above
      
   } else {
      /goto :SpawnCheckLoop
   }
/return

Sub Loot
/varset CorpseLoot 0
      /lootn never
      /target "Stormfeather's corpse"
      /delay 1s
      /call Move
      /loot
         :lootloop
         /delay 1s
         /if n @CorpseLoot>=8 /goto :lootend
         /click left corpse @CorpseLoot
         /delay 1s
         /if "$cursor()"!="TRUE" /goto :lootend
         /autoinventory
         /varadd CorpseLoot 1
         /goto :lootloop
      :lootend
         /lootn always
         /varset CorpseLoot 0
         /press esc
         /press esc
         /press esc
         /press esc
/endmac

Sub Move
   :moveloop
      /if (${Target.Distance}>12) {
         /keypress forward hold
      }
      /if (${Target.Distance}<=10) {
         /keypress forward
         /return
      }
   /goto :moveloop
/return


Sub Beep
   /for x 0 to 35
      /beep
   /next x
   /delay 5m
/return

Sub Kill
   /echo Engaging ${Target.Name} !!
   /if (${Me.State.Equal["SIT"]}) /stand
   /if (${Me.State.Equal["FEIGN"]}) /stand
   /delay 1s
   /face fast
   /call Move
   /if (${Target.Distance}<=100) {
      /keypress forward
      /disc Unholy
      /delay 2s
      /doability Harmtouch
   }
   /call Move
   /if (!${Target.ID} /Call Loot
   /attack on
   :combatloop
   /face fast
   /if (${Target.Distance}>12) {
      /keypress forward
   }
   /if (${Target.Distance}<10) {
      /keypress back
   }
   /face fast
   /if (${Target.ID} /goto :combatloop
   /if (!${Target.ID} /Call Loot
/return
Goodluck.

*EDIT* Only thing I didn't update was the looting. There's a loot mac out there somwhere I'm sure you can use.

Posted: Fri Aug 20, 2004 6:49 pm
by Scary_Penguin
Thanks, will give it a try :)

Posted: Sun Aug 29, 2004 3:02 pm
by Runamuck
This still work because I hate that damn bird!!

Posted: Mon Aug 30, 2004 5:50 pm
by Scary_Penguin
It worked for me and a few others in the old code set so if the conversion is right it should still work, yes :) I have not had the time to try it yet.