Brian Koponen

Programming and Tech Tips

Custom Hunter Macros for World of Warcraft: Classic

The Hunter is arguably the easiest class to play solo in World of Warcraft: Classic, but it is also easy to play poorly. Especially when soloing, you need quick, direct access to a lot of skills when an encounter starts to turn for the worse. It is amazing the kind of situations a Hunter can deal with when you have your full arsenal of tools readily available.

Many Hunter abilities are very situational and the most effective way to use them is with a lot of macros. Many of these are advanced macros that bind many skills to a single key. These take some practice to get used to, but I promise it is worth the time and effort.

These are adapted from my original Vanilla Hunter macros which were made for the original 1.12 client. The new macro engine for World of Warcraft: Classic is far more restrictive than what we had back in 2004. Unfortunately, that means a lot of old macros simply don't have an equivalent in Classic.

You can't do things like check if a buff is active on a target or check your distance to a target. That really hurts the Hunter class in dealing with Aspects and whether to use melee skills or ranged skills. This will amount to needing a few more keybinds than before, but we can still do quite a lot with the new macros.


Hunter attacks in World of Warcraft: Classic are separated by Melee and Ranged attacks. You can't use your ranged attacks if you are too close to the enemy, so one of your main concerns as a Hunter is keeping your distance from an enemy. A good Hunter will only rarely need to use their melee attacks, which lets us bind all those abilities to one key that will largely go unused.


This macro handles all your melee attacks. It targets an enemy if you don't have one, casts Raptor Strike, Counterattack and Mongoose Bite if they are available and starts your auto attack. If you hold down a modifier key and activate it, it will cast Aspect of the Monkey if you don't already have it.

/cast [mod] !Aspect of the Monkey
/cleartarget [dead][help]
/targetenemy [noexists]
/startattack [harm]
/cast [harm] Raptor Strike
/cast [harm] Counterattack
/cast [harm] Mongoose Bite


This is the basic Auto Shot macro that targets an enemy and casts Auto Shot. It won't turn off Auto Shot if you spam it. If you hold a modifier key, it casts Aspect of the Hawk if you don't already have it.

#showtooltip Auto Shot
/cleartarget [dead][help]
/targetenemy [noexists]
/cast [mod] !Aspect of the Hawk
/cast [harm] !Auto Shot

Arcane Shot

This macro casts Arcane Shot normally, but if you hold down a modifier, this will cast only Rank 1 and immediately clears your target so you don't fire an auto shot as well. This is useful for pulling a target while generating the least amount of threat as possible.

#showtooltip Arcane Shot
/cast [nomod] Arcane Shot; [mod] Arcane Shot(Rank 1)
/cleartarget [mod]


This will cast a Sting on your target, including a mouseover target. It casts Serpent Sting with no modifier and Viper Sting with a modifier key held down.

#showtooltip Serpent Sting
/cast [@mouseover, harm, nomod] Serpent Sting; [harm, nomod] Serpent Sting
/cast [@mouseover, harm, mod] Viper Sting; [harm, mod] Viper Sting

You can actually put all the stings onto one key by using specific modifiers for each Sting, but you have to aggressively save characters to make it fit in the 255 character macro limit.

/cast [@mouseover,nomod]Serpent Sting; [nomod]Serpent Sting
/cast [@mouseover,mod:ctrl]Viper Sting; [mod:ctrl]Viper Sting
/cast [@mouseover,mod:shift]Scorpid Sting; [mod:shift]Scorpid Sting
/cast [@mouseover,mod:alt]Wyvern Sting; [mod:alt]Wyvern Sting

Wing Clip / Concussive Shot

Both Wing Clip and Concussive Shot are used to gain distance from your target, so I really want them bound to a single key. This was trivial in the 1.12 client, but requires the use of the GSE-Classic Addon in the Classic client.

This lets you bind Wing Clip and Concussive Shot to a single key. You have to spam it, but then it will cast either spell depending on your distance to the target. I bind this to my scroll wheel to make it easy to spam.

In GSE, use these two lines as the sequence.

/cast [harm] Concussive Shot
/cast [harm] Wing Clip

Hunter's Mark

This macro targets an enemy if you don't already have one and casts Hunter's Mark. In 1.12 it was possible to check if the target already had Hunter's Mark on it, but that has been removed in Classic.

#showtooltip Hunter's Mark
/cleartarget [dead][help]
/targetenemy [noexists]
/cast [harm] Hunter's Mark

Pet Management

Use this macro to command your pet to attack the enemy you have targeted, including a mouseover target. If you hold a modifier key while activating it, your pet return to you. This was much more elaborate back in 1.12, but this about all we can do in Classic. If you are in a group, it won't turn Growl autocast on, so your pet doesn't pull aggro off the tank.

/petattack [@mouseover, harm, nomod] [harm, nomod]
/petautocaston [nogroup] Growl
/petpassive [mod]
/petfollow [mod]
/petautocastoff [mod] [group] Growl

This macro handles all the other pet actions. Activate it with no modifier to call your pet if it has been dismissed. Hold down shift to revive a dead pet or cast Mend Pet. Hold down control to feed your pet using the food in the upper left corner of your backpack.

/cast [nomod, nopet] Call Pet
/cast [mod:shift, @pet, dead][mod:shift, nopet] Revive Pet; [mod:shift, nochanneling] Mend Pet
/cast [mod:ctrl, pet, nodead] Feed Pet
/use [mod:ctrl, pet, nodead] 0 1

Threat Management

When you are soloing with your pet, it's nice to be able to pull a target off your pet or have your pet pull a target off you. These macros use a combination of Distracting Shot, Disengage, Growl and Cower to raise and lower your threat level compared to your pet.

Threat Up

Raises your threat level by casting Distracting Shot and lowers your pet's threat by enabling Cower and disabling Growl.

#showtooltip Distracting Shot
/petautocaston [harm] Cower
/petautocastoff [harm] Growl
/cast [harm] Distracting Shot

Threat Down

Lowers your threat level by casting Disengage and raises your pet's threat by enabling Growl, disabling Cower and having your pet attack your current target.

#showtooltip Disengage
/petattack [harm]
/petautocaston [harm] Growl
/petautocastoff [harm] Cower
/cast [harm] Disengage


Potions and Bandages

This is an easy way to bind Health Potions, Mana Potions and Bandages to a single button. Pressing it normally will use a Health potion, holding down control will use a Mana potion and holding down shift will use a bandage.

Don't forget to change which type of potion and bandage it uses as you are leveling up.

/use [mod:shift] Wool Bandage
/use [mod:ctrl] Lesser Mana Potion
/use [nomod] Lesser Healing Potion


When I started creating all these macros, it really transformed the game for me. I found it much easier to solo content and survive situations that were otherwise too much for me. I hope these have the same effect for you as well.

To make the most of these macros, I highly recommend trying The Best Control Scheme for World of Warcraft. It allows you to use tons of keybinds very easily, which is useful when you have a lot of macros like this.

Question or Comment?