Many of the API functions which are used to gather information about a unit in the game world (Players, NPC's, Monsters, etc) will return information about types of powers that various units use as a basis for using abilities.
These are found in FrameXML\Constants.lua.
|SPELL_POWER_MANA||0||Mana will range from 0 to the maximum mana a unit has. Player mana pools are calculated based on a base mana pool plus a certain amount given by the Intellect stat. This is the default power type for most non-player units, although there are exceptions.|
|SPELL_POWER_RAGE||1||Rage is used by Warriors and Druids in bear form. Rage goes from 0 to 100, but may be increased via player talents. Rage degenerates back to 0 out of combat.|
|SPELL_POWER_FOCUS||2||Focus is used by Hunters and their pets. Focus goes from 0 to 100, and has a slow regeneration rate, but certain abilities will generate focus.|
|SPELL_POWER_ENERGY||3||Energy is used by Rogues, Monks, and Druids in cat form. Energy goes from 0 to 100, but may be increased via player talents.|
|SPELL_POWER_COMBO_POINTS||4||Combo Points are used by Rogues and Druids in cat form. Combo Points goes from 0 to 5, but can increase up to 8 with talents. This value was previously used for hunter pets' happiness, which was deprecated in Cataclysm.|
|SPELL_POWER_RUNES||5||Runes are used as a power type for Death Knights. By default, they have 6 runes (1 & 2 are blood, 3 & 4 are frost, 5 & 6 are unholy), but certain talents and abilities may change the type of a rune. Runes can be converted into a Death Rune, which can be used as any other type of rune.|
|SPELL_POWER_RUNIC_POWER||6||Runic Power is used by Death Knights. It is gained via certain abilities.|
|SPELL_POWER_SOUL_SHARDS||7||Soul Shards are collected by Affliction Warlocks, and range from 1 to 3 (4 with [[Glyph of Soul Shards), represented the number of completely filled Soul Shards. If a third argument "true" is included in UnitPower or UnitPowerMax, the return will instead range from 0 to 300 (400 with Glyph of Soul Shards. Each 100 represents a full shard. All abilities that return or consume shards add or subtract 100 from this value. The only time the other digits come into play is from out-of-combat shard regen (which regens at a rate of 5 per second, or a full shard every 20 seconds).|
|SPELL_POWER_LUNAR_POWER||8||Astral Power is used by Druids in moonkin form. Eclipse power goes from -100 to 100, and its use as solar or lunar power is determined by what buff is active on the player. Buffs activate at -100 and 11 respectively and remain on the player until the power crosses the 0 threshold.|
|SPELL_POWER_HOLY_POWER||9||Holy Power is used by Paladins.|
|ALTERNATE_POWER_INDEX||10||New power type since Cataclysm. Known uses: sound level on Atramedes, corruption level on Cho'gall, consumption level while in Iso'rath.|
|SPELL_POWER_ALTERNATE_POWER||10||The new (renamed) variable representing alternate power in Mists of Pandaria|
|SPELL_POWER_MAELSTROM||11||New Shaman Resource in Legion.|
|SPELL_POWER_CHI||12||The power type for the Chi resource, used by Monks.|
|SPELL_POWER_INSANITY||13||Insanity are used by Shadow Priests.|
|SPELL_POWER_OBSOLETE||14||Burning Embers are used by Destruction Warlocks. Value returned will range from 1 to 3 (4 with , representing number of completely filled Burning Embers. If a third argument "true" is included with UnitPower or UnitPowerMax, the value will instead range from 0 to 30 (40 with ), representing the individual segments in each Ember. Each Ember has 10 segments, and most effects that generate Embers generate 1 segment per effect (for example, a cast of Incinerate generates one segment, so 10 casts generates a full Ember). Now Obsolete|
|SPELL_POWER_OBSOLETE2||15||is used by Demonology Warlocks. Value returned will range from 0 to 1000. Now Obsolete|
|SPELL_POWER_ARCANE_CHARGES||16||Arcane Mage resource.|
|SPELL_POWER_FURY||17||Vengeance Demon Hunter.|
|SPELL_POWER_PAIN||18||Havoc Demon Hunter.|
There are two other types, AMMOSLOT and FUEL, as returned by UnitPowerType. These are used by vehicles, but do not appear to have a constant associated with them.
- The differentiation between these power types in the API was added in patch 4.0