Outfitter Instructions

## Contents

- Installing Outfitter
- Accessing Outfitter
- Outfit categories and ready-made outfits
- Creating an outfit
- Updating an outfit
- The minimap button
- QuickSlots
- Macro commands
- Scripts
- Key Bindings
- Sample Scripts

## Installing Outfitter

Outfitter is installed just like any other addon. If World of Warcraft is running you should exit from the game before installing. Extract the contents of the Outfitter.zip file and then copy the resulting Outfitter folder to your World of Warcraft's Addons folder located inside the Interface folder.

Windows users: The Addons folder can normally be found at C:\Program Files\World of Warcraft\Interface\Addons

MacOS users:The Addons folder can normally be found inside the Interface folder which is located inside the World of Warcraft application folder

IMPORTANT: Depending on your unzipping application, you may end up with the addon folder inside another folder. Look inside the Outfitter folder and verify that there's a file named Outfitter.toc. If you don't see this file and see another folder instead, open that folder and look for the file. The folder containing the .toc file is the one which should be copied to your World of Warcraft addons folder.

The addon is now installed and you can now launch World of Warcraft.

## Accessing Outfitter

To open Outfitter simply open World of Warcrafts character window (usually the 'c' key on your keyboard. You can open Outfitter from the Character window by click the button with a robe icon in the top right corner of the window.

## Outfit categories and ready-made outfits

One of the first things you will notice is that Outfitter has created several outfits for you and that these outfits are in categories named Complete Wardrobes, Mix-n-match, Accessories, and Special Occassions.

Complete Wardrobes are outfits which contain an item for every slot of your inventory. Whenever you wear a complete wardrobe you will replace any other outfits you're wearing at the time. The first time you use Outfitter it will create two complete wardrobes for you. The Normal wardrobe is whatever gear you happened to be wearing when Outfitter was first run. The Birthday Suit outfit is a naked outfit which will remove all of your gear when you wear it.

Mix-n-match outfits on the other hand don't have items in every slot. These outfits are used to overlay special sets of items, such as Fire Resist gear or PvP items, over a complete wardrobe. Any time you select a Mix-n-match outfit you will replace all other outfits you're wearing, except for the selected Complete Wardrobe which will act as a base outfit for the overlay. The first time you use Outfitter it will attempt to create a set of resistance gear (Fire, Nature, etc.) for you. If you don't have any items which give you a particular resistance then Outfitter won't create that outfit automatically.

Accessories, like Mix-n-match, are also only partial outfits. The difference is that you can combine as many accessory outfits as you like. These outfits can be used for equipping special items such as Jumper Cables, Lei of Lilies, fishing poles, or other items which you don't normally have as part of another outfit. The first time you use Outfitter it will search your bags for tradeskill items, such as fishing poles, gloves with herbalism, mining or skinning enchants, etc. and create Accessory outfits for those.

The last category is Special Occassion outfits which are worn automatically for you at the appropriate time. There are several of these outfits, some are created for every class and others are only created for specific classes

The Argent Dawn outfit will be worn whenever you're in the plaguelands, Scholomance or Stratholme and will automatically be setup with your Argent Dawn trinket if you have one.

The Riding outfit will be worn whenever you are mounted and will automatically be setup with your Carrot on a Stick, boots with Mithril Spurs, and gloves with the Riding Skill enchantment if you have those. Note that by default the riding outfit is setup so that it won't equip when you are in a battleground. You can change this setting using the menu to the right of the outfit.

The Dining outfit will be worn whenever you start eating or drinking. This outfit is initially "transparent" (meaning it has no inventory slots enabled) but can be edited to include items which boost your spirit or health and mana regen in order to lower your down time. Choosing items for this outfit can be tricky though since you don't want to swap in items which reduce your stamina or intellect.

The Battlegrounds outfit will be worn whenever you're in one of the three battlegrounds and can be used to automatically equip your PvP gear.

There are also class-specific outfits for priests (shadowform), rogues (stealth), warriors (all three stances), and druids (all four shapeshift forms). These outfits are set to transparent by default, so they have no effect.

Any of the Special Occassion outfits can be disabled by using the menu to the right of the outfit. This is useful if you only temporarily want to prevent that outfit from auto-equipping.

## Creating an outfit

To create an outfit click the New Outfit button at the bottom of the window. This will open the New Outfit window where you can name your new outfit and specify how you want it initially setup.

By default the Optimize menu will be set to use current outfit. This will create the new outfit as a Complete Wardrobe using whatever items you currently have equipped.

You may choose Create Empty Outfit which will create an outfit with no slots enabled.

If you want to have Outfitter generate an outfit for you which maximizes some attribute, you can choose that attribute from the various sub-menus of the Optimize menu. You can maximize stamina, nature resistance, spell damage, and many other attributes using this feature. Outfitter will scan your bags and inventory and choose an item for each slot which has the maximum value for that attribute. If you don't have any items for a slot which contain that attribute then that slot will not be enabled in your new outfit.

## Updating an outfit

You can change the contents of an outfit at any time by opening Outfitter and selecting the outfit from your list of outfits. The selected outfit will equip and the enabled slots for that outfit will have checkmarks in them. Just equip an item and it will be added to the selected outfit. If you no longer want that outfit to include a particular slot just uncheck the box for that slot.

When an outfit is selected you will also see two new buttons at the top of your character window "Enable all" and "Enable none" These buttons can be used to quickly enable all item slots or disable all item slots to make it easier to create your outfit.

## The minimap button

The minimap button will initially be located at the center of the left side of your minimap. If you are using other addons which place buttons around the minimap you may have to temporarily move them out of the way in order to see Outfitters button.

To change the position of Outfitter button just drag it to where you'd like it. This position will be remembered and set for you each time you start World of Warcraft.

To bring up Outfitters minimap menu click the button. From here you can open the Outfitter UI in order to edit outfits or you can quickly select an outfit to wear.

## QuickSlots

QuickSlots are automatically added to your character window for each item slot. They allow you to quickly find items which go into that slot without having to dig through all your bags. To access the QuickSlot just click a slot in your character window. A row of inventory slots will appear containing every item you have which can go into that slot. An empty slot is also provided so you can quickly unequip an item without having to open your bags.

## Commands

Commands to equip or unequip outfits can be included in macros. Outfitter supports these commands:

/outfitter wear outfitname Equips the outfit named outfitname
/outfitter unwear outfitname Unequips the outfit named outfitname
/outfitter toggle outfitname Toggles the outfit named outfitname (if it is currently equipped it's removed, otherwise it's equipped

## Scripts

You can create custom behaviors for outfits by attaching scripts to them. See lua.org for more information on the LUA language used by World of Warcraft for scripting and see WoWiki for more information on the Warcraft interface

In addition to the normal events provided by WoW, Outfitter also provides some useful custom events to help in writing scripts.

### General Events

GAMETOOLTIP_SHOW Event fires whenever the game tooltip is shown
GAMETOOLTIP_HIDE Event fires whenever the game tooltip is hidden
TIMER Event which fires once every second -- useful for outfits which can't use other events and need to periodically poll for their state
DINING and NO_DINING Fired when a player starts and stops eating

### Warrior Events

BATTLE_STANCE and NO_BATTLE_STANCE Fired when a warrior enters and leaves Battle Stance
DEFENSIVE_STANCE and NO_DEFENSIVE_STANCE Fired when a warrior enters and leaves Defensive Stance
BERSERKER_STANCE and NO_BERSERKER_STANCE Fired when a warrior enters and leaves Berserker Stance

### Druid Events

BEAR_FORM and NO_BEAR_FORM Fired when a druid enters and leaves Bear Form
CAT_FORM and NO_CAT_FORM Fired when a druid enters and leaves Cat Form
AQUATIC_FORM and NO_AQUATIC_FORM Fired when a druid enters and leaves Aquatic Form
TRAVEL_FORM and NO_TRAVEL_FORM Fired when a druid enters and leaves Travel Form
MOONKIN_FORM and NO_MOONKIN_FORM Fired when a druid enters and leaves Moonkin Form
TREE_FORM and NO_TREE_FORM Fired when a druid enters and leaves Tree Form
STEALTH and NO_STEALTH Fired when a druid or rogue enters and leaves stealth/prowl

### Rogue Events

STEALTH and NO_STEALTH Fired when a druid or rogue enters and leaves stealth/prowl

### Priest Events

SHADOWFORM and NO_SHADOWFORM Fired when a priest enters and leaves Shadowform

### Shaman Events

GHOST_WOLF and NO_GHOST_WOLF Fired when a shaman enters and leaves Ghost Wolf

### Hunter Events

MONKEY_ASPECT and NO_MONKEY_ASPECT Fired when a hunter enters and leaves Aspect of the Monkey
HAWK_ASPECT and NO_HAWK_ASPECT Fired when a hunter enters and leaves Aspect of the Hawk
CHEETAH_ASPECT and NO_CHEETAH_ASPECT Fired when a hunter enters and leaves Aspect of the Cheetah
PACK_ASPECT and NO_PACK_ASPECT Fired when a hunter enters and leaves Aspect of the Pack
BEAST_ASPECT and NO_BEAST_ASPECT Fired when a hunter enters and leaves Aspect of the Beast
WILD_ASPECT and NO_WILD_ASPECT Fired when a hunter enters and leaves Aspect of the Wild
VIPER_ASPECT and NO_VIPER_ASPECT Fired when a hunter enters and leaves Aspect of the Viper
FEIGN_DEATH and FEIGN_DEATH Fired when a hunter enters and leaves Feign Death

### Mage Events

EVOCATE and NO_EVOCATE Fired when a mage begins and ends Evocate

### Special Variables

isEquipped Set to true if the outfit is currently equipped
didEquip Set to true if your script is the reason the outfit is currently equipped
didUnequip Set to true if your script is the reason the outfit is currently unequipped
time The current system time as returned by GetTime()
setting Current values of the script's $SETTING inputs
equip Tells Outfitter what you want done with the outfit after the script is run. Set it to true to equip the outfit, set it to false to unequip the outfit, or don't set it (or set it to nil) to leave the outfit as-is
layer Tells Outfitter which layer (if any) to tag the outfit with. Other outfits with the same layer tag will be equipped adjacent to this outfit in the stack
delay Tells Outfitter How many seconds to wait before equipping or unequipping the outfit

## Key Bindings

Outfits can be attached to a key so that they can be equipped or removed using a key press. Outfitter supports up to 10 outfits being attached to keys. To attach an outfit to a key on your keyboard, do the following:

First, use the menu next to the outfit to choose which of the 10 key bindings you want to use for your outfit.

Next open World of Warcraft's Key Binding settings window and scroll down to the Outfitter section. In that section you will see the 10 key binding outfits listed and you can associate a key combination with that outfit.

## Sample Scripts

Detect Spellsurge proc and equip an alternate weapon

    -- $EVENTS PLAYER_ENTERING_WORLD CHAT_MSG_SPELL_PERIODIC_SELF_BUFFS TIMER
    -- $DESC Equips the outfit when the players own Spellsurge procs, then unequips it 50 seconds later

    if event == "PLAYER_ENTERING_WORLD" then
        outfit.spellsurgeEnd = nil
    elseif event == "CHAT_MSG_SPELL_PERIODIC_SELF_BUFFS" then
        if arg1 == "You gain 10 Mana from Spellsurge."
        and not outfit.spellsurgeEnd then
            outfit.spellsurgeEnd = time + 50
            equip = true
        end
    elseif event == "TIMER" then
        if outfit.spellsurgeEnd
        and time >= outfit.spellsurgeEnd then
            outfit.spellsurgeEnd = nil
            equip = false
        end
    end

Equip on specific spellcast

    -- $EVENTS UNIT_SPELLCAST_START
    -- $DESC Equips when you start casting the specified spell, unequips when you cast something else
    -- $SETTING spell={Type="String", Label="Spell"}

    if arg1 ~= "player" then return end

    if strlower(arg2) == strlower(setting.spell) then
        equip = true
    else
        equip = false
    end

Equips when mana is low, then unequips when mana returns (by RaeVanMorlock)

    -- $EVENTS UNIT_MANA
    -- $DESC Equips the outfit when your mana drops below a certain percentage. Unequips when it reaches a certain percentage.

    -- $SETTING ManaEquip={Label="Equip below", Type="Number", Suffix="% mana"}
    -- $SETTING ManaUnequip={Label="Unquip above", Type="Number", Suffix="% mana"}

    if arg1 ~= "player" then return end

    local manaPercent = 100 * UnitMana(arg1) / UnitManaMax(arg1)

    if manaPercent < setting.ManaEquip then
        equip = true
    elseif didEquip and manaPercent > setting.ManaUnequip then
        equip = false
    end

Unequips other outfits when this outfit is equipped, then puts them back on when it's unequipped

    -- $EVENTS OUTFIT_EQUIPPED OUTFIT_UNEQUIPPED
    -- $SETTING Outfits="StringTable"
    -- $DESC Unequips the listed outfits when this outfit is equipped, then puts them back on when it's unequipped

    if event == "OUTFIT_EQUIPPED" then
        for _, name in ipairs(settings.Outfits) do
            Outfitter:RemoveOutfit(Outfitter:FindOutfit(name))
        end
        return
    elseif event == "OUTFIT_UNEQUIPPED" then
        for _, name in ipairs(settings.Outfits) do
            Outfitter:WearOutfitByName(name)
        end
        return
    end