List of Awesome Classic WoW Resources

Hunter Guide


TODO

Add-ons


Reference

  1. Risen UI

  2. Questie

  3. Informant

  4. Super Macro

  5. Zorlen

  6. Smart Restore

  7. Equip Compare

  8. YaHT

  9. Aux

  10. Cartographer -- UNINSTALL

  11. OmniCC -- UNINSTALL

Macros


  1. Main Attack

Targets the nearest enemy and then attacks appropriately based on the distance to the target.

/run if GetUnitName("target")==nil then TargetNearestEnemy() end
/run if CheckInteractDistance("target", 3) then RunMacro("Melee") else RunMacro("Range") end

Melee Macro

/run if(not isMonkActive()) then castMonkey();end
/run castAttack()
/run castRaptor()
/run castMong()
/run castClip()

Ranged Macro

/run if(not isMarked()) then castMark();end
/run if(not isHawkActive()) then castHawk();end
/run castAutoShot()

Pull / Kite

/script CastSpellByName(“Arcane Shot(Rank 1)”); SpellStopCasting();
  1. Stings

castSting() will choose the appropriate sting for the target. It will also not cast Serpent Sting if a mob is immune or is below 20% health to conserve mana. That is why I have the modifier cast Serpent Sting directly. If I have to kite a mob, I can force that sting.

/run --CastSpellByName("Serpent Sting")
/run if GetUnitName("target")==nil then TargetNearestEnemy() end
/run if IsShiftKeyDown() then CastSpellByName("Serpent Sting") else castSting() end
  1. Wing Clip / Concussive Shot

This is a simple one that casts either Wing Clip or Concussive Shot depending on distance. If the target is already Wing Clipped, it won’t cast Concussive Shot.

/run --CastSpellByName("Concussive Shot")
/run if CheckInteractDistance("target", 3) then castClip() else castCon() end
  1. Pet Attack and Recall

Pet Command Situation
Attack Hunter’s target is an enemy.
Assist Hunter’s target is an ally.
Recall Hunter and Pet have same target or Hunter has no target.
/script
if UnitExists("target") then
  if UnitIsFriend("player","target") then
    AssistUnit("target"); zFuriousHowl(); PetAttack(); zDash(); zDive();
  else if UnitExists("pettarget") and UnitIsUnit("target", "pettarget") then
    PetFollow(); zDash(); zDive();
  else
    zCowerAutocastOff(); zGrowlAutocastOn(); zFuriousHowl(); PetAttack(); zDash(); zDive();
  end;
end;
else PetFollow(); zDash(); zDive();
end;
  1. Pet Feed / Mend / Revive / Call / Dismiss

The second macro handles all the other pet commands in one macro. This requires SuperMacro’s Extended Lua function to work.

Effect Situation
Call Pet Pet isn’t out.
Revive Pet Pet is dead.
Mend Pet (Max Level) Pet is in combat and has target
Mend Pet (Most Efficient) Shift Modifier.
Feed Pet Pet is out of combat and not happy. (Special Case: Pet is in combat without a target. Often after reviving, the pet is still marked as in combat even though it isn’t.)
Dismiss Pet Pet is happy and not in combat.

Feed Pet

/sr feed

PetCare

/run PetCare();

Extended Lua

function PetCare()
    if( IsShiftKeyDown()) then
      castMend();
    elseif (not UnitExists("pet")) then
      CastSpellByName("Call Pet");
    elseif (UnitHealth("pet")==0) then
      CastSpellByName("Revive Pet");
    elseif (Zorlen_petInCombat()) then
      if UnitExists("pettarget") then
        castMaxMend()
      else
        RunMacro("Feed Pet")
      end
    elseif (GetPetHappiness()~=3) then
      RunMacro("Feed Pet");
    else
      CastSpellByName("Dismiss Pet");
    end
end
  1. Threat Management

    Hunter Increase Threat
/run --CastSpellByName("Distracting Shot")
/run castDistract();
/run zCowerAutocastOn();
/run zGrowlAutocastOff();

Pet Increase Threat

/run --CastSpellByName("Disengage")
/run zCowerAutocastOff();
/run zGrowlAutocastOn();
/run PetAttack();
/run castDisengage();
  1. Traps

Explosive / Immolation

/run --CastSpellByName("Immolation Trap")
/run if (canTrap()) then if IsShiftKeyDown() then castExplosiveTrap() else castImmolationTrap() end else castFeign() end

Frost / Freezing

/run --CastSpellByName("Freezing Trap")
/run if UnitAffectingCombat("player") then castFeign(); PetFollow(); PetPassiveMode(); ClearTarget(); TargetLastEnemy(); else if IsShiftKeyDown() then castFrostTrap(); else CastSpellByName("Freezing Trap");end end
  1. Aspects

This macro casts Aspect of the Monkey or Aspect of the Hawk based on the distance to the target.

/run if CheckInteractDistance("target", 3) then castMonkey() else castHawk() end
  1. Feign Death

This casts Feign Death only if the hunter is in combat.

/run --CastSpellByName("Feign Death")
/run if UnitAffectingCombat("player") then castFeign() end
  1. General

Zorlen will save enough mana to cast Feign Death if you use its functions, so I make a macro for basically every shot.

/run --CastSpellByName("Arcane Shot")
/run if GetUnitName("target")==nil then TargetNearestEnemy() end
/run castArcane()

This will only cast Hunter’s Mark if the target is not already marked.

/run --CastSpellByName("Hunter's Mark")
/run if(not isMarked()) then castMark();end
  1. Healing

This uses the SmartRestore add-on to use a potion depending on need. Hold shift to use a bandage.

/run if IsShiftKeyDown() then SR_Bandage(); else SR_SmartUse(); end