General Hunter Macros

Post Reply
Ihavenoclothes
Posts: 7

General Hunter Macros

Post by Ihavenoclothes » Tue Feb 13, 2024 12:55 pm

- AutoShot

/script if GetUnitName("target")==nil then TargetNearestEnemy() end
/run if CheckInteractDistance("target", 3) and (not PlayerFrame.inCombat) then AttackTarget() elseif not IsAutoRepeatAction(12) then CastSpellByName("Auto Shot") end

--AutoAttack with Raptor Strike then Mongoose Bite

/run if (not PlayerFrame.inCombat) then AttackTarget() end
/cast Raptor Strike
/cast Mongoose Bite

-- Serpent Sting with AutoAttack and PetAttack

/script if (not PlayerFrame.inCombat) then AttackTarget() end
/cast Serpent Sting
/script PetAttack()

PetPassiveMode with PetFollow

/script PetPassiveMode();
/script PetFollow();

--AutoShot or Shoot (for wand)

/run if CheckInteractDistance("target", 3) and (not PlayerFrame.inCombat) then AttackTarget() elseif not IsAutoRepeatAction(12) then CastSpellByName("Auto Shot OR Shoot") end
Last edited by Ihavenoclothes on Tue Feb 13, 2024 1:06 pm, edited 1 time in total.

Ibux
Posts: 422
Has liked: 8 times
Likes: 3 times

Re: General Hunter Macros

Post by Ibux » Tue Feb 13, 2024 1:02 pm


Ihavenoclothes
Posts: 7

Re: General Hunter Macros

Post by Ihavenoclothes » Tue Feb 13, 2024 1:19 pm

Ibux wrote:
Tue Feb 13, 2024 1:02 pm
https://github.com/Meridaw/Vanilla-Macros
Thank You for adding that great resource link! I'm just posting a cumulative list of macro's I've found useful.

User avatar
Booglesz
Posts: 28

Re: General Hunter Macros

Post by Booglesz » Thu Apr 25, 2024 12:33 am

/script if UnitExists("target") then if a ==0 then PetAttack(target) a=1 else if UnitExists("pettarget") and UnitIsUnit("target","pettarget") then PetFollow("Leonhardtusk") a=0 else PetAttack(target) end;end; else PetFollow("Leonhardtusk") a=0 end;

Change "Leonhardtusk" to your name.
This is attack and if you press it again it turns on follow and brings them back to you. I have it bound to one of my mouse buttons for quick on off usage

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Sun Apr 28, 2024 7:57 pm

I'll share my macro, maybe someone will like it. Although it was made more than a year ago, it may still be working.

Shot + Aimed Shot, Trueshot/Arcane Shot or Attack + Raptor Strike, Mongoose Bite, Counterattack depending on the distance to the target.

/script local N,R,C;local UL=UnitLevel;if UnitExists("target")==nil then TargetNearestEnemy();end;if CheckInteractDistance("target",2)==1 then for C=1,200 do if IsAttackAction(C)then if not IsCurrentAction(C)then UseAction(C);end;C=200;end;end;if UL("player")>55 then LV="Rank 8" else if UL("player")>47 then LV="Rank 7" else if UL("player")>39 then LV="Rank 6" else if UL("player")>31 then LV="Rank 5" else if UL("player")>23 then LV="Rank 4" else if UL("player")>15 then LV="Rank 3" else if UL("player")>7 then LV="Rank 2" else if UL("player")>0 then LV="Rank 1" else LV="0" end;end;end;end;end;end;end;end; for C=1,200 do N,R=GetSpellName(C,"spell");if N=="Raptor Strike" and R==LV and GetSpellCooldown(C,"spell")==0 then CastSpellByName("Raptor Strike("..LV..")");C=200;end;end;if UL("player")>57 then LV="Rank 4" else if UL("player")>43 then LV="Rank 3" else if UL("player")>29 then LV="Rank 2" else if UL("player")>15 then LV="Rank 1" else LV="0" end;end;end;end;CastSpellByName("Mongoose Bite("..LV..")");if UL("player")>53 then LV="Rank 3" else if UL("player")>41 then LV="Rank 2" else if UL("player")>30 then LV="Rank 1" else LV="0" end;end;end;CastSpellByName("Counterattack("..LV..")");else if not IsAutoRepeatAction(58)then CastSpellByName("Auto Shot");end;if UL("player")>59 then LV="Rank 6" else if UL("player")>51 then LV="Rank 5" else if UL("player")>43 then LV="Rank 4" else if UL("player")>35 then LV="Rank 3" else if UL("player")>27 then LV="Rank 2" else if UL("player")>19 then LV="Rank 1" else LV="0" end;end;end;end;end;end;for C=1,200 do N,R=GetSpellName(C,"spell");if N=="Aimed Shot" and R==LV and GetSpellCooldown(C,"spell")==0 then CastSpellByName("Aimed Shot("..LV..")");C=200;end;end;for C=1,200 do N,R=GetSpellName(C,"spell");if N=="Trueshot" and GetSpellCooldown(C,"spell")==0 then CastSpellByName("Trueshot");C=200;end;end;if UL("player")>59 then LV="Rank 8" else if UL("player")>51 then LV="Rank 7" else if UL("player")>43 then LV="Rank 6" else if UL("player")>35 then LV="Rank 5" else if UL("player")>27 then LV="Rank 4" else if UL("player")>19 then LV="Rank 3" else if UL("player")>11 then LV="Rank 2" else if UL("player")>5 then LV="Rank 1" else LV="0" end;end;end;end;end;end;end;end; for C=1,200 do N,R=GetSpellName(C,"spell");if N=="Arcane Shot" and R==LV and GetSpellCooldown(C,"spell")==0 then CastSpellByName("Arcane Shot("..LV..")");C=200;end;end;end;

Ihavenoclothes
Posts: 7

Re: General Hunter Macros

Post by Ihavenoclothes » Tue May 07, 2024 10:47 am

Anyone have a good macro to bind Rapid Fire to another attack like Arcane Shot, so it automatically casts on CD?

Likaleo
Posts: 111

Re: General Hunter Macros

Post by Likaleo » Tue May 07, 2024 12:13 pm

/autoshot /afk

Ihavenoclothes
Posts: 7

Re: General Hunter Macros

Post by Ihavenoclothes » Wed May 08, 2024 12:34 pm

Thanks, but I am trying to have the tooltip show as Arcane shot, so it need it to be the first line.

I'd also like to integrate autoshot into the macro.

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Wed May 22, 2024 10:38 am

Does anyone know what happened to the "Auto Shot" skill and how to fix it? Now its activity cannot be checked with a macro.
Here's an example of a simple macro that previously worked well:
/script local x;for x=1,99 do if GetSpellName(x,"spell")=="Auto Shot"then if not IsAutoRepeatAction(x) then CastSpellByName("Auto Shot") end;end;end;

Ibux
Posts: 422
Has liked: 8 times
Likes: 3 times

Re: General Hunter Macros

Post by Ibux » Wed May 22, 2024 11:03 am

Ulukay wrote:
Wed May 22, 2024 10:38 am
Does anyone know what happened to the "Auto Shot" skill and how to fix it? Now its activity cannot be checked with a macro.
Here's an example of a simple macro that previously worked well:
/script local x;for x=1,99 do if GetSpellName(x,"spell")=="Auto Shot"then if not IsAutoRepeatAction(x) then CastSpellByName("Auto Shot") end;end;end;
this one work
/run for i=1,120 do if IsAutoRepeatAction(i) then return end end CastSpellByName("Auto Shot")

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Wed May 22, 2024 11:10 am

Ibux wrote:
Wed May 22, 2024 11:03 am
Ulukay wrote:
Wed May 22, 2024 10:38 am
Does anyone know what happened to the "Auto Shot" skill and how to fix it? Now its activity cannot be checked with a macro.
Here's an example of a simple macro that previously worked well:
/script local x;for x=1,99 do if GetSpellName(x,"spell")=="Auto Shot"then if not IsAutoRepeatAction(x) then CastSpellByName("Auto Shot") end;end;end;
this one work
/run for i=1,120 do if IsAutoRepeatAction(i) then return end end CastSpellByName("Auto Shot")

It's not that. The result is the same. When you press it again, the skill is deactivated. You might as well make /script CastSpellByName("Auto Shot").

Ibux
Posts: 422
Has liked: 8 times
Likes: 3 times

Re: General Hunter Macros

Post by Ibux » Wed May 22, 2024 11:16 am

Ulukay wrote:
Wed May 22, 2024 11:10 am
Ibux wrote:
Wed May 22, 2024 11:03 am
Ulukay wrote:
Wed May 22, 2024 10:38 am
Does anyone know what happened to the "Auto Shot" skill and how to fix it? Now its activity cannot be checked with a macro.
Here's an example of a simple macro that previously worked well:
/script local x;for x=1,99 do if GetSpellName(x,"spell")=="Auto Shot"then if not IsAutoRepeatAction(x) then CastSpellByName("Auto Shot") end;end;end;
this one work
/run for i=1,120 do if IsAutoRepeatAction(i) then return end end CastSpellByName("Auto Shot")

It's not that. The result is the same. When you press it again, the skill is deactivated. You might as well make /script CastSpellByName("Auto Shot").
make sure you got auto shot some place on your actionbar or it will not work.

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Wed May 22, 2024 1:11 pm

Ibux wrote:
Wed May 22, 2024 11:03 am
make sure you got auto shot some place on your actionbar or it will not work.
I made a mistake. For some reason, it seemed to me that this should be a check from the writings of spells :)
In any case, thanks.

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Wed May 22, 2024 1:15 pm

I had to tinker with this to apply it correctly to my macro, but it seems to have worked out well. Try it, hunters. satisfied_turtle_head
It is desirable that Auto Attack and Auto Shot are on the panel

/script local function melee() if UnitExists("target") then return CheckInteractDistance("target",2);end;end;local function ranged() if UnitExists("target") then return not melee();end;end;local function inCombat() return UnitAffectingCombat("player");end;local function GotBuff(name,target) local tex,cnt,ix;for ix = 1,32 do tex,cnt = UnitBuff("player",ix);if not tex then return end;if strfind(tex,name) then return cnt end;end;end;local function GotDebuff(name,target) if not target then target = "target" end;local tex,cnt,ix;for ix = 1,32 do tex,cnt = UnitDebuff(target,ix);if not tex then return end;if strfind(tex,name) then return cnt end;end;end;local function ActSpell(spell,rank,sw) local ix,spellName,spellRank=192;while(ix>0) do if ix==0 then return nil;else spellName,spellRank=GetSpellName(ix,"spell");if spellName==spell and (spellRank==rank or rank==nil) then if sw==0 then return ix;end;if sw==1 then return GetSpellCooldown(ix,"spell");end;if sw==nil then if GetSpellCooldown(ix,"spell")==0 then CastSpell(ix,"spell");return ix;end;end;end;ix=ix-1;end;end;end;function Attack_Actions() local mana,X,C=UnitMana("player");if UnitCanAttack("player","target")==nil or UnitHealth("target")<=0 then TargetNearestEnemy();end;if melee() then if GotBuff("Spell_Nature_RavenForm") then ActSpell("Aspect of the Hawk") end;if UnitCanAttack("player","target") and not GotBuff("WhiteDireWolf") and not GotBuff("AspectOfTheMonkey") and not GotBuff("JungleTiger") then if not ActSpell("Aspect of the Wolf") then ActSpell("Aspect of the Monkey"); end; end;for C=1,96 do if IsAttackAction(C) and not IsCurrentAction(C) then CastSpellByName("Attack");C=96;end;end;ActSpell("Raptor Strike");ActSpell("Counterattack");ActSpell("Mongoose Bite");return;end if ranged() then if UnitCanAttack("player","target") and GotBuff("Ability_Mount_WhiteDireWolf") then ActSpell("Aspect of the Wolf")end;if not GotDebuff("Ability_Hunter_SniperShot") and (UnitHealth("target")/UnitHealthMax("target"))>0.50 then ActSpell("Hunter's Mark")end;if not inCombat() and ActSpell("Aimed Shot") then return;end;local _,_,link=string.find(GetInventoryItemLink("player", 18),"(item:%d+:%d+:%d+:%d+)")local _,_,_,_,_,itemtype,_,_,itemTexture=GetItemInfo(link);if itemtype == "Bows" or itemtype == "Guns" or itemtype == "Crossbows" then X=1;for C=1,96 do if itemTexture==GetActionTexture(C) then if IsAutoRepeatAction(C) then X=0;end;break;end;end; if X==1 then CastSpellByName("Auto Shot");return;end;if not GotDebuff("Quickshot") and not GotDebuff("CriticalShot") and not GotDebuff("AimedShot") and UnitCreatureType("target")~="Elemental" and UnitCreatureType("target")~="Mechanical" and UnitCreatureType("target")~="Uncategorized" then if ActSpell("Serpent Sting") then return;end;end;if ActSpell("Arcane Shot") then return;end;if UnitCanAttack("player","target") and not GotBuff("RavenForm") and not GotBuff("AspectOfTheMonkey") and not GotBuff("JungleTiger") then ActSpell("Aspect of the Hawk") end;if ActSpell("Trueshot") then return;end;end;if itemtype == "Thrown" then if ActSpell("Throw") then return;end;end;end;end;Attack_Actions()
Last edited by Ulukay on Fri May 24, 2024 6:21 am, edited 1 time in total.

User avatar
Booglesz
Posts: 28

Re: General Hunter Macros

Post by Booglesz » Thu May 23, 2024 1:43 am

I recently learned you can use chatgpt to write macros for super macro
start the prompt with "world of warcraft classic hunter macro (enter actions here) comptable with supermacro addon"

heres one i have that shoots concussive when ranged,then arcane then autoshot,and when in melee range casts wing clip.
i spam it in pvp and its pretty effective lmao

/script if CheckInteractDistance("target", 3) then CastSpellByName("Wing Clip"); else if not IsAutoRepeatAction(2) then CastSpellByName("Concussive Shot") end; CastSpellByName("Arcane Shot"); end;

Ulukay
Posts: 72
Has liked: 1 time

Re: General Hunter Macros

Post by Ulukay » Thu May 23, 2024 2:42 am

Booglesz wrote:
Thu May 23, 2024 1:43 am
I recently learned you can use chatgpt to write macros for super macro
start the prompt with "world of warcraft classic hunter macro (enter actions here) comptable with supermacro addon"

heres one i have that shoots concussive when ranged,then arcane then autoshot,and when in melee range casts wing clip.
i spam it in pvp and its pretty effective lmao

/script if CheckInteractDistance("target", 3) then CastSpellByName("Wing Clip"); else if not IsAutoRepeatAction(2) then CastSpellByName("Concussive Shot") end; CastSpellByName("Arcane Shot"); end;
I very much doubt that GPT can create a really good and working script. It just gives a splicing of previously created by someone, simple scripts, nothing more. Like all neural networks.

Post Reply