SpellDPS by Vincent of Blackhand (D.A.Down)

  1. Intro:
    SpellDPS is a WoW add-on for displaying the damage per second for spells. I play several spell casters and often wondered what the relative effectiveness of the different spells was. I'd been thinking about writing something like this for a while, but it wasn't until I started parsing the tooltips in ArmorCraft that I figured out a good way to do it. When SpellDPS detects a tooltip for a spell that uses mana and causes damage, it parses the tooltip and calculates the damage per second and damage per mana. Healing spells work the same way.

  2. Installing:
    Just unzip SpellDPS into your "World of Warcraft\Interface\AddOns" folder. You can create the sub-folders if they don't already exist.

  3. Use:
    There are no commands or settings. Just position your cursor over a spell on your hotbar, in your spellbook or at a trainer and if it a damage causing spell, the damage per second and damage per mana expended (dpm) will be added to the bottom of the tooltip. The dpm value is useful for finding out which spells make the most effective use of your mana.

    Healing spells will display the healing per second and the healing per mana (hpm).

    An optional second line displaying the total damage or healing can be displayed by setting the font color for td or th to something other than black (see Font Colors).

  4. Calculation details:
    In the simplest case, the damage caused is divided by the time required to cast the spell. Instant cast spells are given a time of 1.4 seconds as this is the cooldown time for repeating the spell. The cooldown time fluctuates slightly, but in testing it was ready about 70% if the time. If a spell has a damage range, then the average of the low and high values are used.

    For spell that cause damage over time, the casting time is ignored and the damage time period is used instead. For spells that cause both immediate damage and damage over time, the two dps values are calculated seperately and then added together.

    For damage per mana, the total damage done is divided by the mana cost of casting the spell.

    Healing spells use the same formula with healing replacing damage.

  5. Font colors:
    The color of the text generated can be customized using the Color Picker. The text to be changed is selected by the chat window command '/sdps <type>' , where <type> is one of dps, dpm, td, hps, hpm, th or chat.

  6. Localization:
    The parsing is controlled by the templates in the localization file. New spells that don't match existing formats can be supported by adding entries to the SpellDPS_Desc table. Languages other than English will require a completely different table designed for the language syntax. For details on how to modify this table, read Localization.htm


Send comment to Vincent

Last update: 9/24/05