Hunter Macro (v1.3 UPDATED 06-07-2004 12:51pm PST)

Post your completed (working) macros here. Only for macros using MQ2Data syntax!

Moderator: MacroQuest Developers

tanner
a lesser mummy
a lesser mummy
Posts: 51
Joined: Fri Feb 04, 2005 11:39 am
Contact:

Hunting in Crystal Caverns

Post by tanner » Sat Feb 19, 2005 12:50 am

This macro works like a charm in open/flat areas. Tried it in Crystal Caverns and ended up stuck on a wall, dead end, etc.

Is the detection of the mob, then movement to that mob LOS?

Any way to make the movement code under all 3 dimensions?

wozzie
orc pawn
orc pawn
Posts: 25
Joined: Mon Feb 14, 2005 12:02 am

Post by wozzie » Tue Feb 22, 2005 11:27 pm

I was just wondering if I did this right, I attempted to change this Combat part to work with my wizard. What I want is to cast Icebane instead of attacking and to keep casting untill the mob is dead. Any feedback on this would be greatly appericated.

Code: Select all

|--------------------------------------------------------------------------------
|SUB: Combat
|--------------------------------------------------------------------------------
Sub CombatSub

   /echo Attacking Mob NOW!
   /varset RV_Fighting 1
   /varset RV_TargetDead 0
   /cast "Icebane"
   /if (${Target.PctHPs}<= 0 ) {
      /cast "Icebane"
   }

   /doevents
   /if (!${Target.ID}) {
      |/keypress forward
      |/keypress back
      /varset RV_TargetDead 1
      /varset RV_Fighting 0
      /delay 1s
      /echo Finding bodies...
      /target radius ${Math.Calc[${RV_Range}+${RV_Fuzzy}+20]} corpse
      /delay 1s
      /if (!${Target.ID}) {
         /call ResetSub
         /return
      }
      /face fast
   }
   /call MoveToMob
   /call SpecialIT
 
   /if (!${RV_TargetDead}) {
      /goto :CombatLoop
   }
   
/return 

User avatar
Stein
decaying skeleton
decaying skeleton
Posts: 2
Joined: Wed Mar 09, 2005 7:23 am
Location: Houston, TX
Contact:

Somthign to think about

Post by Stein » Fri Mar 11, 2005 8:43 am

Somthing i have come across when useing this is i run out of my key mobs to hunt and it sits there for while till they respawn. Somthing i have been trying to write would be a huntermob2.ini that when your key mobs are all down it will kill othre mobs to make the respawns happen faster. So Once the /echo says waiting for respawn. Add somthing so that it goes to Huntermob2.ini finds the other mobs kill them, then reverts back to the mobhunter.ini to search for the key mobs if none r up then go back to huntermob2.ini and kill aomthing else. I think this will speed up the spawn time. In the zones i am useing this, no one is there for 23 out of the 24 hours in a day so the spawn get slow after i hunt and kill all my key mobs.

Second idea is to on the huntermob.ini make them list in importance. Like

mob1= a rat
mob2= a snake

Have the macro look for all rats before snakes.

Then reason i bring this up is i tried to include other mobs in my huntermob.ini so spawn will happen faster or have a faster chance to happen, but instead of picking my mob1 it just finds the closest mob on the list. I would like to have it either do the idea above or maybe have huntermob.ini list mobs in importance so it search the whole range for mob 1 then goes to mob 2 so on and so. I just starting editing macros today so i might be talking nonsense. But just and idea. Would make my day if i can get to two huntermob.ini for key mobs then a second list for trash t clear for the key mobs i want.

leptoid
a lesser mummy
a lesser mummy
Posts: 35
Joined: Tue May 11, 2004 4:47 pm

Post by leptoid » Tue Mar 15, 2005 2:14 am

I been looking at this macro forever... was always scared ot try it cause I thought it'd be hard to set up. I was wrong. It was easy and works pretty good with the occasional hiccup, but that's why I'm at the kb when it's running anyhow. It'd be scary to go afk... I'd be wondering what happened to me.

Keep up the good work.

irascible
orc pawn
orc pawn
Posts: 12
Joined: Sun Mar 20, 2005 1:32 am

Re: ...

Post by irascible » Sun Mar 20, 2005 11:16 am

robdawg wrote:if you can wait till tomorrow night I will be releasing the next version. Something that you can pass peram's into.

/macro Hunter <LootAll, 1 or 0> <ShowStats, 1 or 0> <KillEverything, 1 or 0>

Of course KillEverything might be dangerous but you never know, might want that.
Was this ever added? this is the only post I can find on it. If so, please post the more updated command line with the options. If I missed it, I apologize.

Bardlover
a lesser mummy
a lesser mummy
Posts: 52
Joined: Sun Oct 10, 2004 5:32 pm

Post by Bardlover » Wed Apr 06, 2005 10:34 am

Very cool, question though, I really liked the Priority section on page 2-3, but when I put it in I got an error:

Unparsable in Calculation: 'l"
hunter.mac#130 (Get target): /if
(($Int[{Target.pcthps}]}&lr;'100)&&(!${RV_hurttarget}}}
{
Hunter.mac@89 (Main): /call gettarget
Macro has ended
Failed to parse /if condition'((100<'100)&&(!NULL)',
Non-numeric encountered



Here is the way I placed it:

Code: Select all

Sub GetTarget 

   /declare RV_CurrentRadius   int local 
   /declare RV_TargetSub   int local 
   :Acquire 
   /for RV_TargetSub 1 to ${RV_MobArray.Size} 
      /for RV_CurrentRadius 100 to ${RV_MaxRadius} step 100    
         /target radius ${RV_CurrentRadius} nopcnear notid ${RV_InvalidTargetID} npc "${RV_MobArray[${RV_TargetSub}]}" 
         /varset RV_MyTargetID ${Target.ID} 
         /varset RV_MyTargetDead 0 
         /if (${Target.ID}) { 
            /if ((${Int[${Target.PctHPs}]}<100)&&(!${RV_HurtTarget})) { 
               /echo Mob NOT a Full Health, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /if (${Int[${Target.Z}]}<${RV_MinZRange}) { 
               /echo Mob is BELOW Min Z Range, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /if (${Int[${Target.Z}]}>${RV_MaxZRange}) { 
               /echo Mob is ABOVE Max Z Range, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /varset RV_HasTarget 1 
            /varset RV_MyTargetName ${Target.Name} 
            /echo Acquired ${Target.Name} at range ${Int[${Target.Distance}]} 
            /return 
         } 
      /next RV_CurrentRadius 
      /delay 2 
   /next RV_TargetSub 

   /if (!${Target.ID}) { 
      /delay 2s 
      /varcalc RV_FailCounter ${RV_FailCounter}+1 
      /echo Failed to Acquire Target in Range ${RV_MaxRadius} ${RV_FailCounter} Time(s) 
      /if (${RV_FailCounter}>=${RV_FailMax}) { 
         /echo Waiting for Respawns, Resetting Failure Counter... 
         /delay 60s 
         /varset RV_FailCounter 0 
      } 
      /goto :Acquire 
   } 
/return 
but what I was really hoping for is a way to start the mob list over after every kill so that it would pull junk PH till my mob spawns then immediatally go after that next kill. After 16 hours of manually camping the Goblin ring in LoIO, ready to cheat :)

And to reiterate others feelings, an anchor point would be nice. Not that it always pulls back to that place, but doesn't target things 1500 in the wrong direction once I am already at edge of the 1500 range, that way I don't end up swimming across the lake :)[/code]

robdawg
a ghoul
a ghoul
Posts: 114
Joined: Tue Mar 23, 2004 11:54 am
Contact:

Post by robdawg » Mon Apr 18, 2005 2:02 pm

finally installing EQ again and I will revamp this hunter macro to be more efficient and feature rich.

so give me a few and I should take care of a lot of problems.
ROBDAWG

[url=http://www.seathound.com]Seat Hound[/url]
[url=http://www.sportsrumormill.com]Sports Rumor Mill[/url]
[url=http://www.packerforum.com]Packer Forum[/url]

cloud123cloud
decaying skeleton
decaying skeleton
Posts: 5
Joined: Fri May 06, 2005 12:43 pm
Location: N.Y
Contact:

Can Anyone Configure this Hunter Macro for a level 70 Druid

Post by cloud123cloud » Fri May 06, 2005 4:21 pm

Im Stumped and confused about this macro Hunter, I tryed it on my druid and for some reason it thinks im a necro or something.. Another problam im haveing is the fact that it doezent kill anything unless i target it first. Im realy confused about it and I would like it, If someone would paste the code I need (THE FULL CODE) Below this post.. Also can anyone fix the target thing I dont want to have to sit and target every mob in site.. I would love it if it is fully automated somehow... Maby it is. maby its just me not understanding how it works in all im realy stumped on it and need help bad.. thanx :roll: If someone can trow me some bones im what im doing wrong tell me :wink:
the current code im useing is this code bellow!

Code: Select all



| Hunter Macro 
| Hunter.mac 
| Author      : robdawg 
| Version     : v1.3 2004-05-13 10:06pm PST 
| Useage      : /macro Hunter 
| Description : This macro will run your character around killing any mobs in your 
|      RV_MobArray.  Then it will attempt to loot all items in your 
|      RV_LootArray.  This is definitely a work in progress and I am sure 
|      someone can think of plenty of upgrades for this. 
|------------------------------------------------------------------------------------ 
#include spellcast.inc 

#turbo 10 

Sub Main 

   |------------------------------------------------------------ 
   |How many times should aquire target fail before delaying? 
   |------------------------------------------------------------ 
   /declare RV_FailMax          int outer  3 
   |------------------------------------------------------------ 
   |How far would you like to target a mob? 
   |------------------------------------------------------------ 
   /declare RV_MaxRadius        int outer  3000 
   |------------------------------------------------------------ 
   |How far is the fast movement range? 
   |------------------------------------------------------------ 
   /declare RV_FastRange        int outer  40 
   |------------------------------------------------------------ 
   |How far is the maximum combat range? 
   |------------------------------------------------------------ 
   /declare RV_RangeMax         int outer  80 
   /declare RV_Range         int outer  60 
   /declare RV_Fuzzy         int outer  20 
   |------------------------------------------------------------ 
   |How far is the minimum combat range? 
   |------------------------------------------------------------ 
   /declare RV_RangeMin         int outer  60 
   |------------------------------------------------------------ 
   |What is the minimum Z Value of mobs I should target? 
   |------------------------------------------------------------ 
   /declare RV_MinZRange        int outer  -1000 
   |------------------------------------------------------------ 
   |What is the maximum Z Value of mobs I should target? 
   |------------------------------------------------------------ 
   /declare RV_MaxZRange        int outer  1000 
   |------------------------------------------------------------ 
   |Should I loot all items? 
   |------------------------------------------------------------ 
   /declare RV_LootAllItems     int outer  0 
   /declare RV_FindAllCorpses   int   outer  1 
   |------------------------------------------------------------ 
   |Loot Array Information. 
   |------------------------------------------------------------ 
   /call ReadINI HunterMob.ini "${Zone.Name}" 
   /if (!${Defined[RV_MobArray]}) { 
      /echo Mob Array Creation Error, ending macro... 
      /endmacro 
   } 

   |------------------------------------------------------------ 
   |Mob Array Information. 
   |------------------------------------------------------------ 
   /call ReadINI HunterLoot.ini "${Zone.Name}" 
   /if (!${Defined[RV_LootArray]}) { 
      /echo No Loot Array Created... 
   } 

   |------------------------------------------------------------ 
   |Variables that you don't need to worry about. 
   |------------------------------------------------------------ 
   /declare RV_FailCounter      int outer  0 
   /declare RV_MyTargetID       int outer  0 
   /declare RV_MyTargetName     string outer 
   /declare RV_MyTargetDead     int outer  0 
   /declare RV_InvalidTargetID  int outer  0 
   /declare RV_HasTarget        int outer  0 
   /declare RV_RandomWait       int outer  0 
   /declare RV_LootSlot         int outer  0 
   /declare RV_CheckLook        int outer  0 
   /declare RV_Fighting         int outer  0 
   /declare RV_TargetDead       int outer  0 
   /declare RV_MyXLOC           int outer  0 
   /declare RV_MyYLOC           int outer  0 
   /declare RV_ObstacleCount    int outer  0 
   /declare RV_NumberOfBuffs int outer 3 
   /declare RV_MyBuffs[${RV_NumberOfBuffs}] string outer 
   /declare RV_NumberOfPetBuffs int outer 3 
   /declare RV_PetBuffs[${RV_NumberOfPetBuffs}] string outer 
   /declare RV_SummonPetRange   int outer  150 
   /declare RV_CastNow          int outer  1 
   /declare RV_PetSpellName string outer "Aeldorb's Animation" 

|Buffs to be kept up on self 
/varset RV_MyBuffs[1] "Voice of Quellious" 
/varset RV_MyBuffs[2] "Arcane Rune" 
/varset RV_MyBuffs[3] "Shield of Maelin" 


|Buffs to be kept up on pet    
/varset RV_PetBuffs[1] "Night`s Dark Terror" 
/varset RV_PetBuffs[2] "Speed of Vallon" 
/varset RV_PetBuffs[3] "Uproar" 
   /fastdrop on 
   /lootn never 
   /call maintainbuffs 
  
   :Start 
   /doevents 
   /call GMCheck 
   /call GetTarget 

   :KillAdds 
   /if (${RV_HasTarget}) /call MoveToMob 
   /if (${RV_HasTarget}) /call CombatSub 
   /if (${RV_HasTarget}) /call MoveToMob 
   /if (${RV_HasTarget} && (${Defined[RV_LootArray]} || ${RV_LootAllItems})) /call LootMob 
   /call ResetSub 

   /varset RV_RandomWait ${Math.Rand[5]} 
   /varcalc RV_RandomWait ${RV_RandomWait}+1 
   /echo Paranoia - Waiting ${RV_RandomWait} seconds before resuming 
   /delay ${RV_RandomWait}s 
    
   /if (${Target.ID}) { 
      /echo Looks like something is attacking us, killing it... 
      /delay 1s 
      /varset RV_HasTarget 1 
      /goto :KillAdds 
   } 
    
   /goto :Start 
    
/return 

|-------------------------------------------------------------------------------- 
|SUB: Aquire Target 
|-------------------------------------------------------------------------------- 
Sub GetTarget 

   /declare RV_CurrentRadius   int local 
   /declare RV_TargetSub   int local 
   :Acquire 
   /for RV_CurrentRadius 200 to ${RV_MaxRadius} step 200 
      /for RV_TargetSub 1 to ${RV_MobArray.Size} 
         /target radius ${RV_CurrentRadius} nopcnear notid ${RV_InvalidTargetID} npc "${RV_MobArray[${RV_TargetSub}]}" 
         /varset RV_MyTargetID ${Target.ID} 
         /varset RV_MyTargetDead 0 
         /if (${Target.ID}) { 
            /if (${Int[${Target.PctHPs}]}>100) { 
               /echo Mob NOT a Full Health, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /if (${Int[${Target.Z}]}<${RV_MinZRange}) { 
               /echo Mob is BELOW Min Z Range, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /if (${Int[${Target.Z}]}>${RV_MaxZRange}) { 
               /echo Mob is ABOVE Max Z Range, picking another... 
               /varset RV_InvalidTargetID ${Target.ID} 
               /call ResetSub 
               /goto :Acquire 
            } 
            /varset RV_HasTarget 1 
            /varset RV_MyTargetName ${Target.Name} 
            /echo Acquired ${Target.Name} at range ${Int[${Target.Distance}]} 
            /return 
         } 
      /next RV_TargetSub 
      /delay 2 
   /next RV_CurrentRadius 

   /if (!${Target.ID}) { 
      /delay 2s 
      /varcalc RV_FailCounter ${RV_FailCounter}+1 
      /echo Failed to Acquire Target in Range ${RV_MaxRadius} ${RV_FailCounter} Time(s) 
      /if (${RV_FailCounter}<=${FailMax}) { 
         /echo Waiting for Respawns, Resetting Failure Counter... 
         /if (${RV_FindAllCorpses}==1) { 
            /echo Trying to find unlooted corpses... 
            /for RV_CurrentRadius 200 to ${RV_MaxRadius} step 200 
               /for RV_TargetSub 1 to ${RV_MobArray.Size} 
               /target corpse radius ${RV_CurrentRadius} nopcnear "${RV_MobArray[${RV_TargetSub}]}" 
               /if (${Target.ID}) { 
                  /call LootMob 
                  /call ResetSub 
               } 
               /next RV_TargetSub 
               /delay 2 
            /next RV_CurrentRadius 
         } else { 
            /delay 30s 
         } 
         /varset RV_FailCounter 0 
      /goto :Acquire 
   } 
/return 

|-------------------------------------------------------------------------------- 
|SUB: Moving 
|-------------------------------------------------------------------------------- 
Sub MoveToMob 

   /varset RV_MyXLOC ${Int[${Me.X}]} 
   /varset RV_MyYLOC ${Int[${Me.Y}]} 
   /declare RV_DistanceTimer timer 15 
    
   /doevents 
    
   :MovementLoop 

   /if ((!${RV_Fighting})&&(!${RV_TargetDead})&&(${Target.PctHPs}<100)) { 
      /echo Mob not at full health, picking another... 
      /varset RV_InvalidTargetID ${Target.ID} 
      /varset RV_HasTarget 0 
      /call ResetSub 
      /return 
   } 

   /if (${Target.ID}) { 
      /face fast 
   } 
   /if (${Int[${Target.Distance}]}>${RV_FastRange}) { 
      /keypress forward hold 
   } 
   /if (${Int[${Target.Distance}]}<${RV_FastRange}&&${Int[${Target.Distance}]}>${RV_RangeMax}) { 
      /keypress forward 
   } 
   /if (${Int[${Target.Distance}]}<${RV_RangeMin}) { 
      /keypress back 
   } 
   /if (!${RV_DistanceTimer}) { 
      /if ((${RV_MyXLOC}==${Int[${Me.X}]})&&(${RV_MyYLOC}==${Int[${Me.Y}]})) /call HitObstacle 
      /varset RV_MyXLOC ${Int[${Me.X}]} 
      /varset RV_MyYLOC ${Int[${Me.Y}]} 
      /varset RV_DistanceTimer 15 
      /goto :Movementloop 
   } 
   /if (${Int[${Target.Distance}]}>${RV_FastRange}) /goto :MovementLoop 

/return 

|-------------------------------------------------------------------------------- 
|SUB: Combat 
|-------------------------------------------------------------------------------- 
Sub CombatSub 

   /echo Attacking Mob NOW! 
   /varset RV_Fighting 1 
   /varset RV_TargetDead 0 
   /cast "Forlorn Deeds" 
   /pet attack 
   :CombatLoop 
   /if (${Me.PctMana}<50&&${Target.PctHPs}<70) { 
      /delay 4s 
   } 
    
   /doevents 
   /if (!${Target.ID}) { 
      |/keypress forward 
      |/keypress back 
      /varset RV_TargetDead 1 
      /varset RV_Fighting 0 
      /delay 1s 
      /echo Finding bodies... 
      /target radius ${Math.Calc[${RV_Range}+${RV_Fuzzy}+20]} corpse 
      /delay 1s 
      /if (!${Target.ID}) { 
         /call ResetSub 
         /return 
      } 
      /face fast 
   } 
   /call MoveToMob 
   /call SpecialIT 
  
   /if (!${RV_TargetDead}) { 
      /goto :CombatLoop 
   } 
    
/return 

|-------------------------------------------------------------------------------- 
|SUB: Looting 
|-------------------------------------------------------------------------------- 
Sub LootMob 

   /declare LootSlot    int inner  0 
   /declare LootCheck   int inner  0 
   /declare LootTotal   int inner  0 
    
   /varset RV_ObstacleCount 0 
   :LootMoveLoop 
   /varcalc RV_ObstacleCount ${RV_ObstacleCount}+1 
   /face fast 
   /if (${Int[${Target.Distance}]}<=5) { 
      /keypress forward hold 
      /delay 5 ${Target.Distance}>5 
      /keypress forward 
   } 
   /if (${Math.Calc[${RV_ObstacleCount}%5]}==0) { 
      /call CheckObstacle 
      /goto :LootMoveLoop 
   } 

   /if (${Int[${Target.Distance}]}<=5) /goto :LootMoveLoop 
    
   /delay 1s 
   /loot 
   /delay 1s 
   /if (!${Corpse.Items}) { 
      /echo NO LOOT! Cheap Bastard! 
      /return 
   } 

   /varset LootTotal ${Corpse.Items} 
   /for LootSlot 1 to ${LootTotal} 
      /itemnotify loot${LootSlot} leftmouseup 
      /delay 1s 
      /if (${RV_LootAllItems}) { 
         /echo Keeping a ${Cursor.Name}... WOOT! 
         /autoinventory 
         /delay 1s 
      } else { 
         /for LootCheck 1 to ${RV_LootArray.Size} 
            /if (${Cursor.Name.Find[${RV_LootArray[${LootCheck}]}]}) { 
               /echo Keeping a ${Cursor.Name}... WOOT! 
               /autoinventory 
               /delay 1s 
            } 
         /next LootCheck 
      } 
      /if (${Cursor.ID}) { 
         /echo Destroying a ${Cursor.Name}... 
         /destroy 
         /delay 1s 
      } 
   /next LootSlot 
    
/return 

|-------------------------------------------------------------------------------- 
|SUB: Reset 
|-------------------------------------------------------------------------------- 
Sub ResetSub 

   /keypress esc 
   /keypress esc 
   /keypress esc 
   /keypress esc 
    
   /varset RV_HasTarget 0 
   /varset RV_TargetDead 0 
   /varset RV_Fighting 0 
    
/return 

|-------------------------------------------------------------------------------- 
|SUB: Obstacle Check 
|-------------------------------------------------------------------------------- 
Sub CheckObstacle 

   /if ((${RV_MyXLOC}==${Int[${Me.X}]})&&(${RV_MyYLOC}==${Int[${Me.Y}]})) /call HitObstacle 
   /varset RV_MyXLOC ${Int[${Me.X}]} 
   /varset RV_MyYLOC ${Int[${Me.Y}]} 
   /varset RV_ObstacleCount 0 
  
/return 

|-------------------------------------------------------------------------------- 
|SUB: Obstacle Avoidance 
|-------------------------------------------------------------------------------- 
Sub HitObstacle 
   /echo Obstacle hit, moving around it... 
   /keypress forward 
   /keypress back hold 
   /delay ${Math.Calc[${Math.Rand[5]}+5]} 
   /keypress back 
   /if (${Math.Rand[2]}) { 
     /keypress strafe_right hold 
   } else { 
     /keypress strafe_left hold 
   } 
   /delay ${Math.Calc[${Math.Rand[15]}+5]} 
   /keypress strafe_right 
   /keypress strafe_left 
/return 

|-------------------------------------------------------------------------------- 
|SUB: Special Combat 
|-------------------------------------------------------------------------------- 
Sub SpecialIt 
   /if ((${Int[${Me.PctHPs}]}<75)&&(${Me.Gem["Drain Spirit"]})&&(${Me.SpellReady["Drain Spirit"]})) { 
      /keypress forward 
      /keypress back 
      /echo Casting Drain Spirit because of low health... 
      /cast "Forlorn Deeds" 
      /delay 4s 
   } 
/return 

|-------------------------------------------------------------------------------- 
|SUB: GM Check 
|-------------------------------------------------------------------------------- 
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: Reading from an INI File 
|-------------------------------------------------------------------------------- 
Sub ReadINI(FileName,SectionName) 

   /echo Attempting to read section "${SectionName}" from ${FileName}... 
   /delay 1s 
    
   /if (${Ini[${FileName},${SectionName},-1,NO].Equal[NO]}) { 
      /echo "${SectionName}" is not a Valid Section for FILE:${FileName}, ending macro... 
      /delay 1s 
      /return 
   } 
   /declare nValues     int local  1 
   /declare nArray      int local  0 
   /declare KeySet      string local  ${Ini[${FileName},${SectionName}]} 

   :CounterLoop 
   /if (!${KeySet.Arg[${nValues},|].Length}) { 
      /varcalc nValues ${nValues}-1 
      /goto :MakeArray 
   } 
   /varcalc nValues ${nValues}+1 
   /goto :CounterLoop  

   :MakeArray 
   /if (!${nValues}) /return 
   /if (${FileName.Equal["HunterMob.ini"]}) { 
      /echo Declaring Mob Array... 
      /declare RV_MobArray[${nValues}] string outer 
   } 
   /if (${FileName.Equal["HunterLoot.ini"]}) { 
      /echo Declaring Loot Array... 
      /declare RV_LootArray[${nValues}] string outer 
   } 
   /for nArray 1 to ${nValues} 
      /if (${FileName.Equal["HunterMob.ini"]}) /varset RV_MobArray[${nArray}] ${Ini[${FileName},${SectionName},${KeySet.Arg[${nArray},|]},NULL]} 
      /if (${FileName.Equal["HunterLoot.ini"]}) /varset RV_LootArray[${nArray}] ${Ini[${FileName},${SectionName},${KeySet.Arg[${nArray},|]},NULL]} 
   /next nArray 
    
   /echo "${SectionName}" read from ${FileName}... 
   /delay 1s 
    
/return 

|-------------------------------------------------------------------------------- 
|SUB: MaintainBuffs 
|-------------------------------------------------------------------------------- 
Sub MaintainBuffs 
/declare PetBuffLoop    int inner  0 
/declare MyBuffLoop    int inner  0 
/declare iCount int 1 
/declare tmp 
/doevents 
   /for MyBuffLoop 1 to ${RV_NumberOfBuffs} 
      /if (!${Me.Buff[${RV_MyBuffs[${iCount}]}].ID}) { 
         /target ${Me} 
         /call Cast ${RV_MyBuffs[${iCount}]} 
         /delay 1s 
         /if (${iCount}==5) /delay 20s 
         /doevents 
      } 
      /varcalc iCount ${iCount}+1 
   /next MyBuffLoop 

   /varset iCount 1 

   |If we have pet, make one      
   /if ( !${Me.Pet.ID} ) { 
         /echo Creating new pet 
         /call Cast ${RV_PetSpellName} 
         /delay 1s 
         /target ${Me.Pet.Name} 
         /call Cast "Tiny companion"  
   } 
    
      
   /if ( ${Me.Pet.Distance}<${RV_SummonPetRange}) { 
        /echo Summoning pet. Its range is ${Me.Pet.Distance} 
        /call Cast "Summon Companion" 
        /delay 1s    
   } 
   /for PetBuffLoop 1 to ${RV_NumberOfPetBuffs} 
      /if (!${Me.PetBuff[${RV_PetBuffs[${iCount}]}]}) { 
         /target ${Me.Pet.Name} 
         /call Cast ${RV_PetBuffs[${iCount}]} 
         /delay 1s 
         /doevents 
      } 
      /varcalc iCount ${iCount}+1 
   /next PetBuffLoop 
/keypress esc 
/return 

Hunterloot.ini

[Eastern Plains of Karana]
Loot1=griffon feathers

Huntermob.ini

Code: Select all


[Eastern Plains of Karana] 
Mob1=griffawns 
Mob2=griffon
I cant get it to work right and sometimes it says no mobs in range but when I track theres lots of them. I just want it to be all Automated. I also would like it to suport druid buffs and auto Succor if in Danger...

Thanx guys for the help... Please don't be harsh if I dont understand... Im new
A dumb Question, is a question never asked.

cloud123cloud
decaying skeleton
decaying skeleton
Posts: 5
Joined: Fri May 06, 2005 12:43 pm
Location: N.Y
Contact:

Woops!

Post by cloud123cloud » Fri May 06, 2005 4:25 pm

Ment to put Hunterloot.ini inside its own little code box not the Macro box lol this is what i have in my Hunterloot.ini section

Code: Select all

[Eastern Plains of Karana] 
Loot1=griffon feathers 

A dumb Question, is a question never asked.

DigitalMocking
a grimling bloodguard
a grimling bloodguard
Posts: 620
Joined: Mon Apr 04, 2005 5:53 pm

Post by DigitalMocking » Fri May 06, 2005 5:03 pm

AFK macroing is much frowned upon on these boards, if you want to do afk, that's up to you, don't expect help when a macro doesn't work to let you afk.

Read a little, learn a little, try to figure out what the macro is doing instead of just throwing your hands in the air and saying "I don't understand, will someone hold my hand?!?!"

wrangler
a ghoul
a ghoul
Posts: 93
Joined: Fri Nov 28, 2003 3:07 pm

Post by wrangler » Fri May 06, 2005 6:00 pm

did you even fucking read thru the code at all?

you see any reference to druid spells in there?

cloud123cloud
decaying skeleton
decaying skeleton
Posts: 5
Joined: Fri May 06, 2005 12:43 pm
Location: N.Y
Contact:

Post by cloud123cloud » Sat May 07, 2005 12:23 am

Was wondering if it can be configured. I didint ask if there were druid buffs in the macro I just wanted it more or less to have a nice buff system and to ato track mobs insted of me traking them my self I didint want it like to be a afk mac but sometimes want to just relax in stuff like i do when i forage in stuff... But i was wondering how to configure it to do buffs in stuff cuz for some reason it thinks im a necro and i have a pet or something cuz it tries to summon a pet that dozent exzist then tryes to cast Tiny companion on it.. All I want to know is how do i get it to buff me and to autotarget mobs in stuff.... Isin't macroing suposed to make your Life easyer in the game in stuff...
A dumb Question, is a question never asked.

cloud123cloud
decaying skeleton
decaying skeleton
Posts: 5
Joined: Fri May 06, 2005 12:43 pm
Location: N.Y
Contact:

heh sigh

Post by cloud123cloud » Sat May 07, 2005 12:26 am

And like I said be for Im new to the Macroing thing, I Just expected a little help not Just to get tossed around all i wanted was for someone to help me I R NOOB TO MACROING.
A dumb Question, is a question never asked.

anon456
a lesser mummy
a lesser mummy
Posts: 30
Joined: Sun Dec 12, 2004 3:22 pm

Post by anon456 » Sat May 07, 2005 9:04 pm

Cloud, where did you get this code?? The original code is melee only, no spells or buffs or pets. Although, if you have a pet up. it will help you melee the mob. The code at the begining of the thread is what you want, but like I said, it is melee only.

cloud123cloud
decaying skeleton
decaying skeleton
Posts: 5
Joined: Fri May 06, 2005 12:43 pm
Location: N.Y
Contact:

4th page on this Topic

Post by cloud123cloud » Sun May 08, 2005 5:49 pm

On the 4th page of the post the Version 1.3 :D it trys to summon and buff pet then i get a messege saying I dont have a pet lol Its weard..
A dumb Question, is a question never asked.