This is a little confusing.
#showtooltip [mod:shift] Hunter’s Mark
/petfollow [mod:shift]
/stopmacro [mod:shift]
/use [@mouseover,harm] [] Hunter’s Mark
/petattack [@mouseover,harm] []
Pet attack doesn’t make your pet attack faster than just sending your pet to attack something. It also can’t be castsequenced as it’s not a “spell” or an “item.”
Hunter’s Mark is on GCD and so is Kill Command, so you’d run into trouble there.
You might be thinking of the BASIC attack for each pet class, which should be macro’d in, but doesn’t need a castsequence. Those aren’t on GCD or at least they’re not on the HUNTER’s GCD (there may be some similar mechanic going on for Pet abilities).
It looks like you’re trying put your “Oh, crap” response (pet runs after the wrong mob) under the same macro with the shift modifier as well.
I’m not going to address the advisability of that, only the feasability of what I think you’re asking for.
#showtooltip
/petfollow [mod:shift]
/petpassive [mod:shift]
/stopmacro [mod:shift]
/petattack [@mouseover,harm,nodead][harm,nodead]
/cast [@mouseover,harm,nodead,mod]Hunter's Mark;[@mouseover,harm,nodead]Kill Command
/stopmacro [@mouseover,harm,nodead]
/petassist
/cast [harm,nodead,mod][]Hunter's Mark;[harm,nodead]Kill Command
That’s obviously too long, but it does everything your macro does (or should do). It’s just that trying to mix Hunter’s Mark and Kill Command and mix in pet controls at the same time is a bit . . . bulky. Plus, it still doesn’t add in your pet’s basic attacks.
What I recommend is macro chaining instead.
This is how I handle pet management, the “Oh, Crap!” button, and targeted ability macros.
First the “Oh, Crap!” macro:
#showtooltip
/cleartarget
/stopattack
/petpassive
/petstay [mod]
/petfollow [nomod]
/stopcasting
/stopcasting
/cast [nomod]Fetch
Put this under some easily reachable button and any time you need to just CEASE FIRE and recall your pet, hit it. If you need your pet to stay there and die in place, do hit it with a modifier (any one will do). If there is anything in range to loot, and you haven’t used a modifier, your pet will do that on the way to returning to your side.
I am putting the macros up without the chaining part first. I’ll handle that at the end.
Semi-Automatic Targeting macro:
/dismount
/cleartarget [help][noharm,exists][dead][mod]
/targetenemy [help][noexists][noharm][dead][mod]
This one assumes you will always assign your Tank or even an unofficial tanky toon as your Focus unit.
Semi-Automatic Aggro Management macro:
/petautocaston [nogroup:raid][@focus,exists,nohelp][@focus,noexists][@focus,dead]Growl\n/petautocastoff [group,@focus,help,nodead][group:raid]Growl
/cast [nogroup:raid,group,@focus,help,nodead][@pet,exists,nodead]Misdirection
Every-Attack Manual Pet Basic Attack macro:
#showtooltip
/petattack [@mouseover,harm,nodead][harm,nodead]
/cast [@mouseover,harm]Bite
/cast [@mouseover,harm]Claw
/cast [@mouseover,harm]Smack
/stopmacro [@mouseover,harm,nodead]
/petassist
/cast Bite
/cast Claw
/cast Smack
Don’t really need the “nodead” on the mouseover Bite/Claw/Smack because your pet won’t attack a dead thing anyway.
Okay, here’s how macro chaining works…
You can use the /click
command to simulate a mouse click on virtually any clickable frame in the game. For the purposes of this, I’m gonna just deal with clicking “buttons” on your action bars.
You’ll need to set aside three always-visible buttons (they can be in the bars that are dynamically hidden - those are shared buttons and you can only click “buttons”, not “action slots”).
I’m gonna call those ButtonFrameName1, ButtonFrameName2, and ButtonFrameName3 but you’ll have to use the /framestack
or /fstack
command to discover the exact (capitalization counts) button frame names you’ve set aside (and probably it would be a good idea to write them on a none card or something).
Modify the Semi-Automatic Targeting macro as follows:
/dismount
/cleartarget [help][noharm,exists][dead][mod]
/targetenemy [help][noexists][noharm][dead][mod]
/click ButtonFrameName2
/click ButtonFrameName3
Place THAT macro into ButtonFrameName1
Place the Semi-Automatic Aggro Management macro into ButtonFrameName2.
Place the Every-Attack Manual Pet Basic Attack macro into ButtonFrameName3.
For each targeted attack or ability you have that can hit an enemy, structure the macro like this:
#showtooltip
/click ButtonFrameName1
/cast [@mouseover,harm,nodead][harm,nodead][]Atttack Name
Macros Explained:
The Oh, Crap! macro drops your target unconditionally, stops any attack, puts your pet into passive mode (by default), has it return to you, and if there is loot in range, grabs it along the way. If you hold a mod key down your pet stays where it is instead of returns and it doesn’t loot. That’s helpful if you realize your pet took a funky path in an instance and pulled.
The S-A Targeting macro:
- Drops your Target Unit if it is helpable, not harmable and exists, dead, or you have any modifier key pressed.
- Grabs the nearest enemy Unit in your forward cone to be your Target if your Target Unit is helpable, does not exist, is not harmable, is dead, or you have any modifier key pressed.
- Clicks the button for the S-A Aggro Management macro.
- Clicks the button for the Every-Attack Manual Pet Basic Attack macro.
The S-A Aggro Management macro:
This assumes that you don’t want to EVER Growl in raids (almost universally true), that you will always put your Tank or a tanky toon as your Focus Unit, and that if that Unit is dead or charmed that you want your pet to take over as Tank until the situation is resolved (Tank resurrection, charm lifted, or encounter ended).
- Turns ON pet autocast of Growl if you are not in a raid group or your Focus Unit exists and is not helpable or you have no Focus Unit or your Focus unit is dead.
- Turns OFF pet autocast of Growl if you are grouped and have a live, helpable Focus unit or you are in a raid group.
- Misdirection is cast on your Focus Unit if you are in a non-raid group and that unit exists, is helpable and is not dead, otherwise it is cast on your pet.
The Every-Attack Manual Pet Basic Attack macro:
I made an attempt to deal with mouseover intelligently here. I don’t generally use it except for some specialized situations (crowd control and interrupts). I may change that if this works (I’ll be testing a version of this for my own MegaMacros).
- Pet will attack your live, harmable Mouseover Unit if it exists or it will attack your live harmable target if not.
- Your pet’s basic attack will be manually cast at your harmable Mouseover unit (three lines, one for each attack - whichever is relevant will cast).
- The macro will stop if you have a live, harmable Mouseover Unit.
- If you do not, your pet will go into assist mode and then the relevant basic attack will be manually cast.
I use a macro modifier addon that allows me to stack all of this into one big macro so there’s the chance that I typo’d something breaking it up to fit normal macro sizes. Let me know if you have any problems with it.
Oh, you can pick up “Fetch” and “Play Dead” in the Legion Hunter’s Hall. Worth getting there for both of them. Play Dead is the pet equivalent to Feign Death although it takes a specific cast to cause them to “Wake Up” (the spell name for that cast).