Addons- Introduction

Category:Addons
Category:SkunkWerks
=Introduction=
I've authored this page as an attempt to educate people on Earthen Ring as to the use and availability of extensions to the WoW in-game interface known as Addons. I've seen that there's a lack of knowledge out there concerning Addons, as well as a number of misunderstandings and outright misconceptions concerning them. And of course some of these Addons are also authored with the interests of Roleplayers in mind. It occurs to me that the Wiki here might benefit from a list of such things, and of course in particular, those Addons dedicated to Roleplay.
First, lets start with a little vocabulary...
=About Addons=
==What Are Addons?==
===What Addons Can Do===
===What Addons Don't Do===
===What Addons Can't Do===
===Myths and Rumors===
====Fiction====
====Fact====
==Vocabulary and Terminology==
===Vocab Part 1: Addons===
*Addons 
*Mods
*Modules
*GUIs
*UIs 
These are the common sorts of terms you will hear used to describe portions of code used to expand the capabilities of the WoW Graphical User Interface (often abbreviated as GUI or just as UI). For the purposes of this Page however (and in no small way an attempt to keep things clear) I want to try to keep the language consistent.
In fact, sometimes Addons are also referred to by some players as UIs. Personally I don't find this terribly accurate since any given Addon is only a portion of the total User Interface, and not the whole thing. Another time you may hear the term UI used to describe an Addon is when the Addon takes the form of a Compilation of other Addons- usually complete with saved settings to make a single, harmonious interface. This latter use of the term is probably the more accurate of the two.
Among WoW modding enthusiasts, you may often hear the terms "Addon" and "Mod" (Module) used interchangeably. And although this is fine in common parlance, I want to avoid doing so in this page. You'll see why as I explain.
While technically anything that "plugs in" to the WoW UI is an Addon (which is the official, Blizzard-sanctioned term for them, by the way), some Addons have grown so vast in their functions that the Addons themselves, have Addons.
Have I confused you totally yet? Ok, well, this is why we need to get the language clear...
So we have Addons that plug into WoW directly, and then Addons that plug into other Addons, and thus into WoW, albeit indirectly. An excellent example of this Addons-plugging-into-other-Addons scenario is a mod like FuBar or TitanPanel. Both of these Addons are, by themselves, simply bars that can be positioned at the top or bottom of the screen. They do nothing else save provide a framework by which other Addons can be displayed and accessed within those bars. 
So to keep this all clear, I'm going to call those that plug into WoW directly, "Addons", and those that plug into WoW indirectly via other Addons, "Modules". And I'm going to try very, very hard here not to use the term "Mod" at all. The breakdown looks a little like this:
*Addon- plugs directly into WoW
**Module- plugs into another Addon/is "dependent" on another Addon
*Compilation (UI)- A collection of many Addons/Modules.
*Library- Also technically an Addon, through provided more as a resource for other Addons.
====Addons====
An "Addon" is a small piece of code made to "plug into" the larger WoW game. These Addons aren't programs by themselves generally, and therefore tend to pose a low risk factor for downloading and installing as long as normal procedures for virus/malware scanning archive files are observed. 
These small bits of code are aimed at expanding the capabilities of the WoW interface in various ways. Some of them do very small things like remove or hide bits of the interface, others can add information and features to the interface. Now as I said, anything that plugs into the WoW interface, either directly or via another Addon (a Module), is still technically an Addon. Addons come in many different Types however, and I'm going to attempt to explain some of those various categories.
====Modules====
Somewhat arbitrarily (but with some precedence) this is the term I will use for Addons that are meant to "plug into" other Addons. Modules generally won't function without the "parent" Addons they are meant to function with. This is also referred to as a "Dependency", which can actually be witnessed at work in the Addons control panel in the Character Select screen. If a Module with a Dependency has it's Parent Addon disabled, you will see a message in the control panel stating "Dependency Disabled". 
Examples of such Modules include things like FuBar or TitanPanel modules which plug into the info bars/panels that the parent Addons provide. Other examples may include plug-in Modules that add functionality to a given Addon, the Chatbox Addon "Prat" has a number of Modules attached to it for functionality that can be turned on or off to reduce the memory overhead produced by using it. This allows you to use only the functions of Prat that you find useful, while not wasting system memory on functions you don't use. Such Addons are "modular" which makes the term "Module" rather apt.
====Compilations (UIs)====
These are a fairly unique category as they are often "packages" of Addons. Sometimes these may all be authored by the same person, or they may be from many different authors and sources, redistributed by a third party as a package. Reasons users may create Compilations include creating/sharing a fully-integrated User Interface (or UI) for other players to use (NurfedUI would be a good example of this), and Guilds who require Addon use as a stipulation of membership (such as raiding guilds requiring Boss Warning and Threat Meter Addons) may also create a Compilation as an easy way to get members up to their standards.
There are also some Authors that distribute Addons in smaller compilations I like to call "Suites". A good example of an Addon Suite is the popular Auction Addon Auctioneer- which is actually a distribution of several smaller Addons meant to improve the Auction interface in a number of different ways.
These are of course, not a single Addon in and of themselves, but a collection of other Addons all packed into a single Archive file, meant to be installed directly to WoW. Advantages of Compilations of course include things such as not having to hunt and peck for specific Addons you want (as they are already chosen for you). Disadvantages include not really being aware of all of what you are installing (which may include things you don't want), and being stuck with specific Addons which don't suit your needs.
====Libraries====
This is an odd category of Addon. Although they are often distributed as part of another Addon, or packaged with an Addon, they are also distributed alone, and qualify as an Addon in their own right in many ways. Nonetheless, the primary purpose of a Library is to act as a resource for other Addons.
A good example of a coding framework that makes use of Embedded Libraries is Ace. In this structure, many Ace-coded Addons call on these libraries as a common resource, rather than having each and every addon written with it's own code repositories for basic functions that are similar between addons- such as recoloring a UI element.
Typically, a good Library Addon is one you never know about. It's called on silently "behind the scenes" by various Addons, allowing them to perform vital functions they need. But in some cases, an Addon may call for a function in a Library you don't have, or a library may not be up to date to handle a resource request. For an average Addon-user, this will probably be the first time they encounter a Library or become aware of it's purpose- by way of an error message.
===Vocab Part 2: Tools & Other Terms===
====File Archiving Programs (Compress/Decompress)====
====Automatic Addon Updating Client====
====Addons Folder====
====WTF Folder====
====LUA Script====
====WoW API====
==Where/How to get Addons==
===Distribution Websites===
Addons and Modules are usually written by WoW users, for WoW users. But not every amateur coder has a place to put such things, and so a number of large archive sites have become available for users to upload and more commonly download user-created Addons. Some of the more popular sites for the distribution of Addons include:
*Curse.com (AKA: Curse, Curse Gaming)
*WoWUI.net (AKA: WoWUI, IncGamers)
*WoWInterface.com (AKA: WoWI)
*ACE Wiki (repository gone)
Some of these sites also feature site-based virus scanning and the like to ensure the safety of the files distributed (though this is by no means a substitute for personal caution) and automatic updating programs which you can customize only to download/update the Addons or Modules you possess.
===Automatic Updaters (Clients)===
*Curse Updater
*WoW Interface updater
*WoW UI Updater
*WoW Matrix
*WoWAce Updater (defunct)
*Cosmos (dead?)
===A Word About Safety & Security===
I haven't written it yet, but there's a whole little offshoot I will be writing here regarding the safety and security Track Record (that would be computer safety and security) of Automatic Updating Clients... which by the way, isn't really good at all. In fact, about 3 out of the 5 I know of ALL have had gaping security holes in them that were later exploited by account thieves.
The only two that have not, so far been compromised to my knowledge are the clients for WoWMatrix and WoWInterface, but this, if you ask me, is more due to them being relatively new on the scene. The reason a lot of these third-party clients end up getting compromised in the first place is because of poor site design and or coding. Frankly 3rd-party websites don't have the sort of security budget Blizzard has, and so they are targeted as vulnerable by naughty people.
I personally use over 200 addons and I refuse to use one of those, if it gives you an idea of how much confidence I have in them. --SkunkWerks 19:51, 20 December 2008 (UTC)
==How to Install Addons==
===Needed Tools===
*File Archiving Program (Compressor/Decompressor)
**WinZip
**WinRAR
**7Zip
**"Compressed Folders" (Windows XP integrated Compression/Archiving Tool)
**StuffitExpander (Mac Platform)
*Windows Explorer (MyComputer)
*(Optional) Addon Updating Client
===Steps to Follow (Manual Installation)===
# Download
# Uncompress
# Load
# Test
# Configure
# Updating
==Some Considerations About Using Addons==
===Memory Usage===
===Last Updated/Compatability===
===Possible Conflicts with Other Addons===
===Author Abandonment/Continuation of Addons===
==Troubleshooting Addons==
#Error
#Disable
#Update
#Reset
#Report