• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Archery macro

Adamthebob

New member
Joined
Jul 10, 2007
RedCents
Would someone please make me a macro that does the following...

When a mob gets within X distance, my ranger will autofire until mob goes down.

At 50%, will cast X spell, then cast X spell.

Should be pretty simple. All help is appreciated. Will redcent when we get a working macro.

Thanks :D
 
I hacked up an old puller macro

added a command for mq2melee to turn on auto ranged attack .. /cough i think

and added the 2 spell castings

UNTESTED... me no have EQ to test with

ARMY

Rich (BB code):
#include spell_routines.inc
#turbo 10
#Event Slain "#*# slain#*#"
#Event Zoned "LOADING, PLEASE WAIT..."


Sub Main

   |------------------------------------------------------------
   |How far would you like to target a mob?
   |------------------------------------------------------------
   /declare RV_MaxRadius        int outer  300
   /declare Spell1		string outer "NAME HERE"
   /declare Spell2		string outer "NAME HERE"

   |------------------------------------------------------------
   |Variables that you don't need to worry about.
   |------------------------------------------------------------
   /declare RV_MyTargetID       int outer  0
   /declare RV_MyTargetName     string outer
   /declare RV_MyTargetDead     int outer  0
   /declare RV_HasTarget        int outer  0

   |------------------------------------------------------------
   |I think this is the right MQ2MElee Command to turn on 
   |automatic Ranged attacks to be with in your desired range.
   |------------------------------------------------------------
   /melee range ${RV_MaxRadius}
 
   :Start
      /doevents
      /call GMCheck
      /call GetTarget
      /if (${RV_HasTarget}) /call CombatSub
      /call ResetSub
      /goto :Start
/return

|--------------------------------------------------------------------------------
|SUB: GMCheck
|--------------------------------------------------------------------------------
Sub GMCheck
   /if (${Spawn[gm].ID}) {
      /beep
      /beep
      /beep
      /echo GM has entered the zone!
      /echo FUCK HIM but ending the macro...
      /keypress forward
      /keypress back
      /quit
      /endmacro
   }
/return

|--------------------------------------------------------------------------------
|SUB: Get Target
|--------------------------------------------------------------------------------
Sub GetTarget
   /doevents
   /declare RV_CurrentRadius   int local
   /declare RV_TargetSub       int local
   /echo Looking for Mobs
        /doevents
      /for RV_CurrentRadius 100 to ${RV_MaxRadius} step 5
      /if (${Target.ID}) {
           /squelch /target radius ${RV_CurrentRadius} npc
           /varset RV_MyTargetID ${Target.ID}
           /varset RV_MyTargetName ${Target.Name}
           /echo Acquired ${Target.Name} at range ${Int[${Target.Distance}]}
           /varset RV_HasTarget=1
           /return
           }

      /next RV_CurrentRadius
   
/return



|--------------------------------------------------------------------------------
|SUB: Combat
|--------------------------------------------------------------------------------
Sub CombatSub
   /doevents
   /echo Attacking Mob NOW!
   :CombatLoop
      /if (!${Me.Combat}) /attack on
      /if (${Target.PctHPs}<50) /call cast "${Spell1}"
      /if (${Target.PctHPs}<50) /call cast "${Spell2}"
      /if (!${Target.ID}) /return
      /if (!${RV_TargetDead}) /goto :CombatLoop
      /doevents
/return


|--------------------------------------------------------------------------------
|SUB: Slain
|--------------------------------------------------------------------------------

Sub Event_Slain
   /varset RV_TargetDead 1
   /target clear
   /keypress forward
   /keypress back
/return

|--------------------------------------------------------------------------------
|SUB: Zoned
|--------------------------------------------------------------------------------
Sub Event_Zoned
  /echo Zoned
  /delay 60s
  /quit
  /endmacro

|--------------------------------------------------------------------------------
|SUB: Reset
|--------------------------------------------------------------------------------
Sub ResetSub
   /doevents
   /varset RV_HasTarget 0
   /varset RV_TargetDead 0
/return
 
No, this is for when I am playing the character in a group and all I have to do is shoot/snare/dot. I just want it automated is all.

Gonna test it and get back to you.
 
[MQ2] Looking for mobs
/varset failed, variable 'RV_TargetDead' not found
arch.mac@123(ResetSub): /varset RV_TargetDead 0
arch.mac@35(Main): /call ResetSub

over and over again.
 
There is a good ranja macro on mq2 site. My buddy uses it all the time. He of course had me modify it to fit his needs but for the most part it works right out the box.
 
Archery macro

Users who are viewing this thread

Back
Top
Cart