A good place to check out would be the EJ Macros Thread the only problem I found while searching this thread is looking through the 20+ pages trying to find the information I was looking for.
So to get start I will post a few macros that I currently use as a MM Troll Hunter.
The All-in-One Pet
Quote:
#showtooltip
/cast [combat] Heart of the Phoenix
/cast [nopet, modifier:ctrl] Revive Pet
/cast [nopet] Call Pet; [target=pet, dead] Revive Pet
/castsequence [pet, nomodifier, button:1] reset=15 Mend Pet, null
/cast [combat] Heart of the Phoenix
/cast [nopet, modifier:ctrl] Revive Pet
/cast [nopet] Call Pet; [target=pet, dead] Revive Pet
/castsequence [pet, nomodifier, button:1] reset=15 Mend Pet, null
This is a very simple macro to use and can be altered anyway you would like. The tooltip shows Call Pet, at least for me, but you could add Mend Pet or whatever you like to see. If your pet is dead and you are in combat it will cast Heart of the Phoenix. If your pet is dead and not targetable you will need to hold down a modifier, in this case ctrl and it will revive your pet. If it not out and alive it will call it, if it is targetable and dead then it will cast Revive Pet, lastly it will Mend Pet if it's alive and out the reset is at 15 so that you're not wasting mana overlapping mends.
Aspect Switching
Quote:
#showtooltip Aspect of the Dragonhawk
/cast Aspect of the Dragonhawk
/script UIErrorsFrame:Hide()
/castsequence Aspect of the Viper, Aspect of the Dragonhawk
/cast Aspect of the Dragonhawk
/script UIErrorsFrame:Hide()
/castsequence Aspect of the Viper, Aspect of the Dragonhawk
Now I know there are addons that will do this for you but I like to save memory and just simply press my hotkey. It probably doesn't need to the first /cast but I was having problems with it not switching between Dragonhawk and Viper, and I still do sometimes in raids. Simply put, it will cast Aspect of the Dragonhawk if not already cast. It will cast Aspect of the Viper on the second click, and clicking again will put Aspect of the Dragonhawk back on. I have had some problems in raids where when needing to go into Viper it would either cast Dragonhawk again or cancel them. Any help would be appreciated.
Misdirection
Quote:
#showtooltip Misdirection
/focus [modifier:ctrl] target
/stopmacro [modifier:alt]
/cast [target=focus, help] Misdirection; [target=pet] Misdirection
/focus [modifier:ctrl] target
/stopmacro [modifier:alt]
/cast [target=focus, help] Misdirection; [target=pet] Misdirection
I find this misdirection very simple and easy to follow and prevents people from having to go into /m and altering a tanks name evertime they need to MD. Simple to use, click your target and hold the modifier and click, this will set focus to your target and cast MD onto them. If you don't hold the modifier it will cast MD onto your pet.
Hunter Buffs
Quote:
#showtooltip Rapid Fire
/cast Rapid Fire
/cast Berserking
/cast Readiness
/cast Rapid Fire
/cast Berserking
/cast Readiness
I know some people will do this alot differently than I have right now, wanting to save their Readiness and such for a specific time like BL or Heroism. This is for a troll hunter but could remove the /cast berserking and leave Rapid Fire and Readiness. The reason I did it this way is because with Rapid Killing my Rapid Fire cooldown is 3 minutes, this means that when I cast this. All three spells are on a 3 minute cooldown. With the exception of course that I just realized Readiness removes the cooldown of both Rapid Fire and Berserking so they could be used again as soon as they wear off. If Readiness is on your actionbars you could simply click again when you see that the cooldown is off. Like I said I'm sure there are better ways to do this, feel free to post.
Hunter's Mark
Quote:
#showtooltip
/stopmacro [noexists]
/cast Hunter's Mark
/run for i=1,GetNumTrackingTypes() do local n, t, a, c = GetTrackingInfo(i); if string.find(n, UnitCreatureType("target")) then if t~=GetTrackingTexture(i) then SetTracking(i); end end end
/stopmacro [noexists]
/cast Hunter's Mark
/run for i=1,GetNumTrackingTypes() do local n, t, a, c = GetTrackingInfo(i); if string.find(n, UnitCreatureType("target")) then if t~=GetTrackingTexture(i) then SetTracking(i); end end end
This was supposed to be an autotracking Hunter's Mark macro. It works perfectly in a solo situation but I can not seem to get it to work while in a raid. Also I have heard that you don't even need to track the specific target anymore to get the bonus but I have not found an official post on that, if anyone has one that would be great. If you are in a solo situation you can add /petattack at the end so when you cast hunter's mark your pet will be on his way.
Steady Shot
Quote:
#showtooltip Steady Shot
/console Sound_EnableSFX 0
/cast !Auto shot
/cast [target=pettarget, exists] Kill command
/cast Silencing Shot
/cast Steady Shot
/script UIErrorsFrame:Hide()
/console Sound_EnableSFX 1
/console Sound_EnableSFX 0
/cast !Auto shot
/cast [target=pettarget, exists] Kill command
/cast Silencing Shot
/cast Steady Shot
/script UIErrorsFrame:Hide()
/console Sound_EnableSFX 1
This is a steady shot macro with silencing shot in it. You can macro silencing shot into any of your shots to make sure whenever it's off cooldown that it will be used right away. Since silencing shot is not on the GCD it will be shot and you will also begin to cast Steady Shot. Also if your pet is alive and has a target it will use Kill Command. Some people like to save Kill Command I always just go ahead and use it when it comes up.
Those are what I have currently and use please feel free to post your own and I will update this thread with your additions!
Edited, Jul 22nd 2009 2:03pm by Hyolith