Intro:
AutoAttack
is a WoW add-on for automatically selecting the next combat action.
I play characters of every class, which makes it hard to remember
the appropriate combat actions when switching characters, especially
if I haven't played it in a while. When repeatedly killing mobs for
quests, it also gets tedious thinking about the sequence of actions
to take. So after modifying LazyRogue for another player, I decided
to write a similar mod that could be used for any class.
Installing:
Just
unzip AutoAttack into your "World
of Warcraft\Interface\AddOns" folder. You can create the
sub-folders if they don't already exist.
Configuration:
Minimal
configuration is required as AutoAttack automatically checks
the available ActionBar actions when logging on. Only actions that
show up on at least one of your ActionBars will be use (it doesn't
have to be a visible one). If you don't want an action to be used,
you can disable it with the '/aause'
command. Warning: If you don't have an Attack action on your
ActionBars, there won't be any default melee attack action! When you
change your ActionBars (like when you level and train new actions),
you must use the '/aa
scan' command for the changes to be recognized.
The
only required configuration is to go to the Main
Menu, select Key Bindings and
assign a key to the AutoAttack 'Perform combat action'
command (it will be near the bottom of the list after all the
standard commands). I use the Backspace key and the mouse 'scroll
left' button as I find them the most convenient to use. There is
also an alternate 'instant' key binding that can be used to modify
the action selection for different situations (typically favoring
melee or group actions).
You can also assign keys to the
commands to switch mount and form. These may not be useful for some
characters and are just provided as a convenience. They are not
needed for combat actions.
Action
Use:
Each time you press the 'action' key (as defined in
Key Bindings), AutoAttack will
select the next action to be performed. Only one action will be made
for each key press due to a Blizzard restriction on actions to
prevent automated play while AFK. If a suitable action can't be
found, no action will be taken. The particular action selected will
depend on the character class and the combat conditions. Note that
addons can't move the player around or chase targets.
The
'instant' action will typically favor instant cast spells and melee
action, but is detailed for each class.
When not in combat
and with no target selected, only pre-combat buff and healing
actions are selected. When a friendly target is selected, healing
and buffs can be applied to the target. When an attackable target is
selected out of combat, pre-combat buffs are checked first and then
an attack is initiated if the target is within range.
Once in
combat, the action selected depends on the actions available, the
target range, the target type and the health of both the player and
the target. Buffs will be maintained where practical and healing
spells used if needed and available. When still in combat after a
kill, Hunters and Warlocks will select their pet's target. If a
target is immune to an action, it will be remembered until logout
and not used again on targets with the same name. Use the '/aa
immune' command to display detected immunities.
Refer
to the class action sections for class specific actions. Several
classes can use some actions more effectively when the addon
MobHealth is also loaded. AutoSelect
also works well with this addon.
Class
Actions
Each class has a set of actions defined in the
localization file. Actions will only be used if they appear on the
ActionBars. Lower level characters will have fewer available actions
but will still make good use of the limited selection. Some
specialized actions like AoE spells are not used because selection
logic can't determine the appropriate time to use them, so these
should be activated manually when needed. A wand will be activated
with Mages, Priests and Warlocks if mana drops below 20% and will be
deactivated when the next action is attempted.
Druid:
Each druid combat form has its own action selection logic:
Spells:
Mark and Thorn buffs are used. Starfire or Wrath is used to initiate
combat. Moonfire DoT is maintained on the target. If health drops
below 90%, Rejuvination is used and below 60% a heal is used. Melee
attacks will be used if the target is in melee range and it will be
debuffed with Faerie Fire.
Use: Self buffs are applied first
and then friendly targets are buffed. To maximize target damage,
start the next action just as the current action completes. As the
target enters melee range, the next action will initiate a melee
attack in addition to casting. When the target initiates the attack,
Moonfire will be the first spell used.
Instant: When not in
combat, Roots will not be used. In combat, only instant cast spells
will be used so when ranged, Moonfire will be repeatedly cast (good
for killing retreating targets).
Bear: Enrage is used
to prebuff when a target is selected but not in combat. A Roar
debuff is maintained. Maul is the default action. If spell casting
is detected, Bash is used. If health drops below 15%, Frenzied
Regeneration is used.
Use: To use Enrage, selected a target
and use action outside of melee range. Swipe isn't used as multiple
attackers can't be determined.
Cat: Prowl is used if
there isn't a target in melee range. Ravage or Shred is used to
initiate combat. Rake and Fury are used when available and Claw is
the default. Rip is used as a finishing combo move.
Use: Use
action before selecting a target to Prowl. When you are initiating
combat, it is assumed that you are behind your target. Ravage will
be attempted in stealth and Shred when not.
Hunter:
The Hawk aspect is selected if available and Monkey isn't already
selected. A pet is called if not active or revived if found to be
dead. The target is Marked and the pet attack is activated. If no
pet is available, a Concussive Shot is used, otherwise a Serpent
Sting or Aimed Shot is used unless the target uses mana, in which
case a Viper Sting is used. Arcane Shot is used when available. Auto
Shot is the default ranged action. In melee range, Raptor Strike is
used. If health drops below 10%, Feign Death is used. If pet health
drops below 30%, Mend Pet is used. Note: Aimed Shot lacks animation,
so a click sound is used to indicate that it is in progress.
Pet
Feeding: You pet can be automatically fed when not happy. In order
for this to work, you must first select the inventory slot where the
pet's food is located by positioning the cursor over the food and
entering the command '/aafeed'.
If the slot becomes empty a warning is given and you can either move
food to that slot or select a different slot. While a pet is
feeding, an attack won't be started.
Use: Aspect of the Hawk
is used in ranged combat and Aspect of the Monkey in melee, but if
Aspect of the Wild is manually selected, it won't be replaced. If
Call Pet warns of a dead pet, Revive Pet will be used. Any target
that isn't in melee range will be marked first. A pet attack will be
initiated before the first shot unless the pet is already fighting.
If your pet has a target and you don't, your pet's target will be
used. When a pet dies, revival isn't attempted while fighting, but a
target must be selected before a call/revive check is made.
Mage:
Frost/Ice Armor and Arcane Intellect buffs are used. Food, water and
a mana gem will be conjured if usable. Frostbolt is used to initiate
combat except with targets using mana, when Pyroblast or Fireball is
used. If spell casting is detected, Counterspell is used. Arcane
Missiles is the normal attack with Fireball and Frostbolt as backup.
Fire Blast is used in melee range, with Cone of Cold as a backup
when health is below 50%. If mana drops below 15% and a mana gem is
available, it will be used.
Use: Self buffs are applied first
and then friendly targets are buffed. To maximize target damage,
start the next action just as the current action completes. As the
target enters melee range, the next action will initiate a melee
attack in addition to casting and if mana is over 50% or health is
under 20% the Mana Shield will be used. Food and Water can be
conjured and will be used out of combat if health or mana is below
60% (the actions and the conjured items must be on the ActionBars).
Instant: In melee combat, only instant cast spells will be
used.
Warnings: If both Frost and Ice Armor appear on
your ActionBars, the last one found will be used unless you disable
one. If you have more than one type of conjure food, water or mana
gem on your ActionBars, you can get stuck on the conjuring
action!
Paladin: The Blessing of Might
buff is used, but the Aura selection isn't changed. Exorcism is used
on Undead and Demon targets. When available. Seal of Light is used
on both the player and the target. If spell casting is detected,
Hammer of Justice is used. If player health drops below 50%, Holy
Light is used. When health drops below 20%, Divine Shield, Divine
Protection or Blessing of Protection will be used.
Use: Make
sure you have an Aura active and activate your buff before entering
combat. After selecting a target do 1 action to activate your Seal,
then when you are in melee range, do 2 actions (use Judgement,
reactive Seal). Melee combat will proceed without actions, but use
action as needed to maintain buffs and heal. After a kill, start the
next attack while your Seal is still active to save reactivating
it.
Priest: Fortitude and Inner Fire
buffs are used. Holy Fire, Mind Blast and Smite are the main attacks
and the DoT debuff Shadow Word: Pain is maintained. If player health
drops below 85%, Renew is used and below 55% with a Shield, Heal is
used. When the target is a player or in melee with less that 50%
health, Psychic Scream is used followed by Mind Flay. When
available, Inner Focus is used to reduce the mana cost of Shield and
Heal spells. If spell casting is detected, Silence is used.
Use:
Self buffs are applied first and then friendly targets are buffed.
When a target is selected outside of casting range, Shield will be
used first, otherwise Shield won't be cast until the Pain debuff is
active (if available). As the target enters melee range, the next
action will initiate a melee attack in addition to casting. When the
target attacks first, Pain will be the first action and Shield the
second. To maximize target damage, start the next action just as the
current action completes.
Instant: Burn Mana will not be used
to start combat.
Rogue: Stealth is used
if no target is selected. When the target is ranged, Shoot/Throw is
used. To initiate combat in melee range, Garrote, Backstab or Stun
is used. Riposte and Ghostly Strike are used when available.
Sinister Strike is the default action. Evasion is used if health
drops below 50% and Gouge below 30%. If spell casting is detected,
Kick or Gouge is used. Eviscerate is used when combo points are
complete or when it is estimated that it would kill the target.
Use: Use action before selecting a target to enter stealth.
If you don't want to use a ranged attack, be sure that you are in
melee range before using action when a target is selected. When you
are initiating combat, it is assumed that you are behind your
target. Garrote will be attempted in stealth and Backstab when
not.
Instant: When not in combat, indicates a frontal attack
instead of the usual rear attack. In combat, indicates using a
Backstab from behind (typically used in a group when the target is
attacking another player).
Shaman:
Lightning Shield and Rockbiter Weapon buffs are used. Lightning Bolt
is the main ranged attack and isn't used in melee. When in range,
Flame shock is used if the target is over 50% health, otherwise
Frost Shock or Earth Shock will be used. In melee, the Stoneskin
Totem will be used and if the target is close to the player in
difficulty, the Searing Totem will be used. If health drops below
50%, Healing Wave is used.
Use: In or out of combat, buffs
are maintained and healing used on low health. Lightning Bolt is
used whenever the target is outside of melee range. The presence of
a Searing Totem isn't detected, so it won't be recast until at least
40 seconds have passed. Magma and Fire Nova totems and Chain
Lightning aren't used because multiple attackers can't be
determined.
Instant: In melee combat, only instant cast
spells will be used.
Warlock: The Demon
Skin/Armor buff is used. The minion is used to initiate the attack
(must be summoned first). If the next action occurs before the
minion engages the target, Immolate will be cast. Corruption, Siphon
Life and Immolate are maintained on the target. If the player mana
is below 70% and health is above 90%, Life Tap will be used. In
melee combat Curse of Weakness replaces Curse of Agony and if player
health drops below 70% Death Coil and Drain Life will be used. Curse
of Agony and Immolate will be used as long as the target has over
20% health. If the target uses mana and has over 15%, Drain Mana
will be used. Shadow Bolt is the default action.
Use: Summon
your minion before using actions. The pet attack is the first combat
action unless the pet already has a target. The Pet's target will be
used if the player doesn't have one. Immolate will be the first
spell cast only if you aren't already in combat, otherwise it will
be cast after Corruption, Curse of Agony, Siphon Life. In melee
range, Curse of Weakness will be used if Curse of Agony isn't active
and visa-versa. If mana drops below 70% and health is above 90%,
Life Tap will be used to exchange health for mana.
Instant:
Shadow Bolt will not be used.
Warrior:
Charge is used to initiate combat (when possible). Heroic Strike is
the default attack. Battle Shout is the only buff used. The Rend
debuff is maintained. Overpower, Disarm, Revenge and Sunder Armor
are used when available. If spell casting is detected, Shield Bash
is attempted. Execute is used for finishing a kill. For humanoid
opponents, Hamstring is used to slow retreats when their health
drops below 50%. Intimidating Shout is used if player health drops
below 20%.
Use: Select a target out of melee range and Charge
will be the first action if close enough. When out of melee range
and Charge fails, Shooting will be attempted. When not in combat
with a target and beyond shooting range, Bloodrage is used.
Multi-target actions aren't used because multiple attackers can't be
determined.
Mount/Form
switching:
The 'mount' and 'form' commands provide context
switching. Unless your character has BOTH a mount and an alternate
form, the two commands will have the same effect. If you are mounted
or are using an alternate form (mainly druids), either command will
cancel the mount or form status and record the mount or form that
was in use.
As it is possible to have multiple mounts,
AutoAttack requires that the mount action be on a hotkey and
that the switch key be used to dismount from the desired mount. Once
it has been recorded, it will be saved between logins and used for
the next mount request. To select a different mount, manually
activate the new mount and then use the switch key to
dismount.
Only druids have multiple forms available. Shaman
have a travel form and the hunter Aspect of the Cheetah/Pack is
treated as a form. Like mounts, the switch key must be used to
disable the form to record it before it can be activated with the
switch key. The last druid form switched out of will be the next one
switched into. To change the recorded form, manually select a
different one.
Chat
commands:
Chat commands are entered in the chat edit box
with the prefix '/autoattack'
or '/aa'.
They are primarily for checking action selections. The following
commands are defined:
/aa
debug – toggles the debug flag for tracing
action selections.
/aa
help – displays the list of commands (add '?'
for descriptions).
/aa
immune – displays the current list of detected
action immunities.
/aa
scan – rescans the hotkey assignments (use if
you change the hotkeys).
/aa
slot – displays the hotkey slot assigned to each
action.
/aafeed
– selects the inventory slot for feeding a hunter's pet
(position the cursor over the slot).
/aafeed
off – disables automatic pet feeding.
/aause
<name> – toggles whether the action <name>
is disabled (must match the ActionBar name).
Last update: 8/1/06