Skip to content
insuna edited this page Aug 1, 2023 · 32 revisions

Back to world database list of tables.

The `spell_template` table

holds data about every spell used.

Structure

ID Field Type Null Key Default Extra
Id INT UNSIGNED NO 0
Category INT UNSIGNED NO 0
CastUI
Dispel INT UNSIGNED NO 0
Mechanic INT UNSIGNED NO 0
Attributes INT UNSIGNED NO 0
AttributesEx INT UNSIGNED NO 0
AttributesEx2 INT UNSIGNED NO 0
AttributesEx3 INT UNSIGNED NO 0
AttributesEx4 INT UNSIGNED NO 0
AttributesEx5 INT UNSIGNED NO 0
AttributesEx6 INT UNSIGNED NO 0
Stances INT UNSIGNED NO 0
StancesNot INT UNSIGNED NO 0
Targets INT UNSIGNED NO 0
TargetCreatureType INT UNSIGNED NO 0
RequiresSpellFocus INT UNSIGNED NO 0
FacingCasterFlags INT UNSIGNED NO 0
CasterAuraState INT UNSIGNED NO 0
TargetAuraState INT UNSIGNED NO 0
CasterAuraStateNot INT UNSIGNED NO 0
TargetAuraStateNot INT UNSIGNED NO 0
CastingTimeIndex INT UNSIGNED NO 0
RecoveryTime INT UNSIGNED NO 0
CategoryRecoveryTime INT UNSIGNED NO 0
InterruptFlags INT UNSIGNED NO 0
AuraInterruptFlags INT UNSIGNED NO 0
ChannelInterruptFlags INT UNSIGNED NO 0
procFlags INT UNSIGNED NO 0
procChance INT UNSIGNED NO 0
procCharges INT UNSIGNED NO 0
maxLevel INT UNSIGNED NO 0
baseLevel INT UNSIGNED NO 0
spellLevel INT UNSIGNED NO 0
DurationIndex int(11) unsigned NO 0
powerType INT UNSIGNED NO 0
manaCost INT UNSIGNED NO 0
manaCostPerlevel INT UNSIGNED NO 0
manaPerSecond INT UNSIGNED NO 0
manaPerSecondPerLevel INT UNSIGNED NO 0
rangeIndex INT UNSIGNED NO 1
speed FLOAT NO 0
ModalNextSpell
StackAmount INT UNSIGNED NO 0
Totem1 INT UNSIGNED NO 0
Totem2 INT UNSIGNED NO 0
Reagent1 INT UNSIGNED NO 0
ReagentCount1 INT UNSIGNED NO 0
EquippedItemClass INT UNSIGNED NO -1
EquippedItemSubClassMask INT UNSIGNED NO 0
EquippedItemInventoryTypeMask INT UNSIGNED NO 0
Effect1 INT UNSIGNED NO 0
EffectDieSides1 INT UNSIGNED NO 0
EffectBaseDice1 INT UNSIGNED NO 0
EffectDicePerLevel1 FLOAT NO 0
EffectRealPointsPerLevel1 FLOAT NO 0
EffectBasePoints1 INT UNSIGNED NO 0
EffectMechanic1 INT UNSIGNED NO 0
EffectImplicitTargetA1 INT UNSIGNED NO 0
EffectImplicitTargetB1 INT UNSIGNED NO 0
EffectRadiusIndex1 INT UNSIGNED NO 0
EffectApplyAuraName1 INT UNSIGNED NO 0
EffectAmplitude1 INT UNSIGNED NO 0
EffectMultipleValue1 FLOAT NO 0
EffectChainTarget1 INT UNSIGNED NO 0
EffectItemType1 INT UNSIGNED NO 0
EffectMiscValue1 INT UNSIGNED NO 0
EffectMiscValueB1 INT NO 0
EffectTriggerSpell1 INT UNSIGNED NO 0
EffectPointsPerComboPoint1 FLOAT NO 0
SpellVisual INT UNSIGNED NO 0
SpellIconID INT UNSIGNED NO 0
activeIconID INT UNSIGNED NO 0
spellPriority INT UNSIGNED NO 0
SpellName TEXT NO 0
Rank1 TEXT NULL 0
ManaCostPercentage INT UNSIGNED NO 0
StartRecoveryCategory INT UNSIGNED NO 0
StartRecoveryTime INT UNSIGNED NO 0
MaxTargetLevel INT UNSIGNED NO 0
SpellFamilyName INT UNSIGNED NO 0
SpellFamilyFlags BIGINT UNSIGNED NO 0
MaxAffectedTargets INT UNSIGNED NO 0
DmgClass INT UNSIGNED NO 0
PreventionType INT UNSIGNED NO 0
StanceBarOrder
DmgMultiplier1 INT UNSIGNED NO 0
MinFactionId
MinReputation
RequiredAuraVision
TotemCategory1 INT UNSIGNED NO 0
TotemCategory2 INT UNSIGNED NO 0
AreaId INT UNSIGNED NO 0
SchoolMask INT UNSIGNED NO 0
IsServerSide INT UNSIGNED NO 0
AttributesServerside INT UNSIGNED NO 0

Description of the fields

Id

The spell ID.

Category

Category ID based on which cooldown is determined. Spells with same category go into cooldown if one of them goes into cooldown.

ID Description
0 Default
1 Summon guards
2 Entry
4 Entry

CastUI

Dispel

Dispel type of a spell. Some spells can only dispel specific types of spells, for example poisons. – enum DispelType

Id Enum name Comment
0 DISPEL_NONE
1 DISPEL_MAGIC
2 DISPEL_CURSE
3 DISPEL_DISEASE
4 DISPEL_POISON
5 DISPEL_STEALTH
6 DISPEL_INVISIBILITY
7 DISPEL_ALL
8 DISPEL_SPE_NPC_ONLY
9 DISPEL_ENRAGE
10 DISPEL_ZG_TICKET

Mechanic

Spells effects utilize a mechanics. – enum Mechanics

Id Enum name Comment
0 MECHANIC_NONE
1 MECHANIC_CHARM
2 MECHANIC_DISORIENTED
3 MECHANIC_DISARM
4 MECHANIC_DISTRACT
5 MECHANIC_FEAR
6 MECHANIC_FUMBLE
7 MECHANIC_ROOT
8 MECHANIC_PACIFY No spells use this mechanic
9 MECHANIC_SILENCE
10 MECHANIC_SLEEP
11 MECHANIC_SNARE
12 MECHANIC_STUN
13 MECHANIC_FREEZE
14 MECHANIC_KNOCKOUT
15 MECHANIC_BLEED
16 MECHANIC_BANDAGE
17 MECHANIC_POLYMORPH
18 MECHANIC_BANISH
19 MECHANIC_SHIELD
20 MECHANIC_SHACKLE
21 MECHANIC_MOUNT
22 MECHANIC_PERSUADE spells use this mechanic
23 MECHANIC_TURN
24 MECHANIC_HORROR
25 MECHANIC_INVULNERABILITY
26 MECHANIC_INTERRUPT
27 MECHANIC_DAZE
28 MECHANIC_DISCOVERY
29 MECHANIC_IMMUNE_SHIELD Divine (Blessing) Shield/Protection and Ice Block
30 MECHANIC_SAPPED

Attributes

Special rules for spells. There are several columns for attributes. These rules can do anything, and some can be name only. – SharedDefines.h

ID ENUM NAME Description
0×00000001 SPELL_ATTR_PROC_FAILURE_BURNS_CHARGE 0
0×00000002 SPELL_ATTR_USES_RANGED_SLOT 1 All ranged abilites have this flag
0×00000004 SPELL_ATTR_ON_NEXT_SWING_NO_DAMAGE 2 on next swing
0×00000008 SPELL_ATTR_DO_NOT_LOG_IMMUNE_MISSES 3 not set in 3.0.3
0×00000010 SPELL_ATTR_IS_ABILITY 4 Displays ability instead of spell clientside
0×00000020 SPELL_ATTR_IS_TRADESKILL 5 trade spells, will be added by client to a sublist of profession spell
0×00000040 SPELL_ATTR_PASSIVE 6 Passive spell
0×00000080 SPELL_ATTR_DO_NOT_DISPLAY 7 Spells with this attribute are not visible in spellbook or aura bar TODO: check usage
0×00000100 SPELL_ATTR_DO_NOT_LOG 8 hide created item in tooltip (for effect=24) TODO: implement it
0×00000200 SPELL_ATTR_HELD_ITEM_ONLY 9 Client automatically selects item from mainhand slot as a cast target TODO: Implement
0×00000400 SPELL_ATTR_ON_NEXT_SWING 10 on next swing 2
0×00000800 SPELL_ATTR_WEARER_CASTS_PROC_TRIGGER 11
0×00001000 SPELL_ATTR_DAYTIME_ONLY 12 only useable at daytime, not set in 2.4.2
0×00002000 SPELL_ATTR_NIGHT_ONLY 13 only useable at night, not set in 2.4.2
0×00004000 SPELL_ATTR_ONLY_INDOORS 14 only useable indoors, not set in 2.4.2
0×00008000 SPELL_ATTR_ONLY_OUTDOORS 15 Only useable outdoors.
0×00010000 SPELL_ATTR_NOT_SHAPESHIFT 16 Not while shapeshifted
0×00020000 SPELL_ATTR_ONLY_STEALTHED 17 Must be in stealth
0×00040000 SPELL_ATTR_DO_NOT_SHEATH 18 client won’t hide unit weapons in sheath on cast/channel TODO: Implement
0×00080000 SPELL_ATTR_SCALES_WITH_CREATURE_LEVEL 19 spelldamage depends on caster level
0×00100000 SPELL_ATTR_CANCELS_AUTO_ATTACK_COMBAT 20 Stop attack after use this spell (and not begin attack if use)
0×00200000 SPELL_ATTR_NO_ACTIVE_DEFENSE 21 Cannot be dodged/parried/blocked
0×00400000 SPELL_ATTR_TRACK_TARGET_IN_CAST_PLAYER_ONLY 22 SetTrackingTarget
0×00800000 SPELL_ATTR_ALLOW_CAST_WHILE_DEAD 23 castable while dead TODO: Implement
0×01000000 SPELL_ATTR_ALLOW_WHILE_MOUNTED 24 castable while mounted
0×02000000 SPELL_ATTR_COOLDOWN_ON_EVENT 25 Activate and start cooldown after aura fade or remove summoned creature or go
0×04000000 SPELL_ATTR_AURA_IS_DEBUFF 26
0×08000000 SPELL_ATTR_ALLOW_WHILE_SITTING 27 castable while sitting
0×10000000 SPELL_ATTR_NOT_IN_COMBAT_ONLY_PEACEFUL 28 Cannot be used in combat
0×20000000 SPELL_ATTR_NO_IMMUNITIES 29 unaffected by invulnerability (hmm possible not…)
0×40000000 SPELL_ATTR_HEARTBEAT_RESIST 30 breakable by damage?
0×80000000 SPELL_ATTR_NO_AURA_CANCEL 31 positive aura can’t be canceled

AttributesEx

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX_DISMISS_PET_FIRST 0
0×00000002 SPELL_ATTR_EX_USE_ALL_MANA 1 use all power (Only paladin Lay of Hands and Bunyanize)
0×00000004 SPELL_ATTR_EX_IS_CHANNELED 2 channeled 1
0×00000008 SPELL_ATTR_EX_NO_REDIRECTION 3
0×00000010 SPELL_ATTR_EX_NO_SKILL_INCREASE 4
0×00000020 SPELL_ATTR_EX_ALLOW_WHILE_STEALTHED 5 Not break stealth
0×00000040 SPELL_ATTR_EX_IS_SELF_CHANNELED 6 channeled 2
0×00000080 SPELL_ATTR_EX_NO_REFLECTION 7
0×00000100 SPELL_ATTR_EX_ONLY_PEACEFUL_TARGETS 8 Spell req target not to be in combat state
0×00000200 SPELL_ATTR_EX_INITIATES_COMBAT_ENABLES_AUTO_ATTACK 9
0×00000400 SPELL_ATTR_EX_NO_THREAT 10 no generates threat on cast 100%
0×00000800 SPELL_ATTR_EX_AURA_UNIQUE 11
0×00001000 SPELL_ATTR_EX_FAILURE_BREAKS_STEALTH 12
0×00002000 SPELL_ATTR_EX_TOGGLE_FARSIGHT 13
0×00004000 SPELL_ATTR_EX_TRACK_TARGET_IN_CHANNEL 14
0×00008000 SPELL_ATTR_EX_IMMUNITY_PURGES_EFFECT 15 remove auras on immunity
0×00010000 SPELL_ATTR_EX_IMMUNITY_TO_HOSTILE_AND_FRIENDLY_EFFECTS 16 unaffected by school immunity
0×00020000 SPELL_ATTR_EX_NO_AUTOCAST_AI 17
0×00040000 SPELL_ATTR_EX_PREVENTS_ANIM 18
0×00080000 SPELL_ATTR_EX_EXCLUDE_CASTER 19 spells with area effect or friendly targets that exclude the caster
0×00100000 SPELL_ATTR_EX_FINISHING_MOVE_DAMAGE 20 Req combo points on target
0×00200000 SPELL_ATTR_EX_THREAT_ONLY_ON_MISS 21
0×00400000 SPELL_ATTR_EX_FINISHING_MOVE_DURATION 22 Use combo points (in 4.x not required combo point target selected)
0×00800000 SPELL_ATTR_EX_IGNORE_OWNERS_DEATH 23
0×01000000 SPELL_ATTR_EX_SPECIAL_SKILLUP 24 Req fishing pole??
0×02000000 SPELL_ATTR_EX_AURA_STAYS_AFTER_COMBAT 25 not set in 2.4.2
0×04000000 SPELL_ATTR_EX_REQUIRE_ALL_TARGETS 26
0×08000000 SPELL_ATTR_EX_DISCOUNT_POWER_ON_MISS 27 All these spells refund power on parry or deflect
0×10000000 SPELL_ATTR_EX_NO_AURA_ICON 28
0×20000000 SPELL_ATTR_EX_NAME_IN_CHANNEL_BAR 29
0×40000000 SPELL_ATTR_EX_COMBO_ON_BLOCK 30 overpower
0×80000000 SPELL_ATTR_EX_CAST_WHEN_LEARNED 31

AttributesEx2

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX2_ALLOW_DEAD_TARGET 0 can target dead unit or corpse
0×00000002 SPELL_ATTR_EX2_NO_SHAPESHIFT_UI 1
0×00000004 SPELL_ATTR_EX2_IGNORE_LINE_OF_SIGHT 2 do not need LOS (e.g. 18220 since 3.3.3)
0×00000008 SPELL_ATTR_EX2_ALLOW_LOW_LEVEL_BUFF 3 auto targeting? (e.g. fishing skill enhancement items since 3.3.3)
0×00000010 SPELL_ATTR_EX2_USE_SHAPESHIFT_BAR 4
0×00000020 SPELL_ATTR_EX2_AUTO_REPEAT 5
0×00000040 SPELL_ATTR_EX2_CANNOT_CAST_ON_TAPPED 6 only usable on tabbed by yourself
0×00000080 SPELL_ATTR_EX2_DO_NOT_REPORT_SPELL_FAILURE 7
0×00000100 SPELL_ATTR_EX2_INCLUDE_IN_ADVANCED_COMBAT_LOG 8 not set in 2.4.2
0×00000200 SPELL_ATTR_EX2_ALWAYS_CAST_AS_UNIT 9
0×00000400 SPELL_ATTR_EX2_SPECIAL_TAMING_FLAG 10
0×00000800 SPELL_ATTR_EX2_NO_TARGET_PER_SECOND_COSTS 11
0×00001000 SPELL_ATTR_EX2_CHAIN_FROM_CASTER 12
0×00002000 SPELL_ATTR_EX2_ENCHANT_OWN_ITEM_ONLY 13
0×00004000 SPELL_ATTR_EX2_ALLOW_WHILE_INVISIBLE 14
0×00008000 SPELL_ATTR_EX2_UNK15 15 not set in 3.0.3
0×00010000 SPELL_ATTR_EX2_NO_ACTIVE_PETS 16
0×00020000 SPELL_ATTR_EX2_DO_NOT_RESET_COMBAT_TIMERS 17 suspend weapon timer instead of resetting it, (?Hunters Shot and Stings only have this flag?)
0×00040000 SPELL_ATTR_EX2_REQ_DEAD_PET 18 Only Revive pet – possible req dead pet
0×00080000 SPELL_ATTR_EX2_ALLOW_WHILE_NOT_SHAPESHIFTED 19 does not necessarly need shapeshift
0×00100000 SPELL_ATTR_EX2_INITIATE_COMBAT_POST_CAST 20 TODO: CONFIRM!
0×00200000 SPELL_ATTR_EX2_FAIL_ON_ALL_TARGETS_IMMUNE 21 for ice blocks, pala immunity buffs, priest absorb shields, but used also for other spells → not sure!
0×00400000 SPELL_ATTR_EX2_NO_INITIAL_THREAT 22
0×00800000 SPELL_ATTR_EX2_PROC_COOLDOWN_ON_FAILURE 23 Only mage Arcane Concentration have this flag
0×01000000 SPELL_ATTR_EX2_ITEM_CAST_WITH_OWNER_SKILL 24
0×02000000 SPELL_ATTR_EX2_DONT_BLOCK_MANA_REGEN 25
0×04000000 SPELL_ATTR_EX2_NO_SCHOOL_IMMUNITIES 26 unaffected by school immunity
0×08000000 SPELL_ATTR_EX2_IGNORE_WEAPONSKILL 27
0×10000000 SPELL_ATTR_EX2_NOT_AN_ACTION 28 no breaks stealth if it fails??
0×20000000 SPELL_ATTR_EX2_CANT_CRIT 29 Spell can’t crit
0×40000000 SPELL_ATTR_EX2_ACTIVE_THREAT 30
0×80000000 SPELL_ATTR_EX2_RETAIN_ITEM_CAST 31 Food or Drink Buff (like Well Fed

AttributesEx3

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX3_PVP_ENABLING 0 Spell landed counts as hostile action against enemy even if it doesn’t trigger combat state, propagates PvP flags
0×00000002 SPELL_ATTR_EX3_NO_PROC_EQUIP_REQUIREMENT 1
0×00000004 SPELL_ATTR_EX3_NO_CASTING_BAR_TEXT 2
0×00000008 SPELL_ATTR_EX3_COMPLETELY_BLOCKED 3 TODO: Investigate more
0×00000010 SPELL_ATTR_EX3_NO_RES_TIMER 4 Druid Rebirth only this spell have this flag
0×00000020 SPELL_ATTR_EX3_NO_DURABILITY_LOSS 5
0×00000040 SPELL_ATTR_EX3_NO_AVOIDANCE 6
0×00000080 SPELL_ATTR_EX3_DOT_STACKING_RULE 7 create a separate (de)buff stack for each caster
0×00000100 SPELL_ATTR_EX3_ONLY_ON_PLAYER 8 Can target only player
0×00000200 SPELL_ATTR_EX3_NOT_A_PROC 9 Can only proc auras with SPELL_ATTR_EX3_CAN_PROC_FROM_TRIGGERED_SPECIAL
0×00000400 SPELL_ATTR_EX3_REQUIRES_MAIN_HAND_WEAPON 10 Main hand weapon required
0×00000800 SPELL_ATTR_EX3_ONLY_BATTLEGROUNDS 11 Can casted only on battleground
0×00001000 SPELL_ATTR_EX3_ONLY_ON_GHOSTS 12 target is a dead player (not every spell has this flag)
0×00002000 SPELL_ATTR_EX3_HIDE_CHANNEL_BAR 13
0×00004000 SPELL_ATTR_EX3_HIDE_IN_RAID_FILTER 14 “Honorless Target” only this spells have this flag
0×00008000 SPELL_ATTR_EX3_NORMAL_RANGED_ATTACK 15 Auto Shoot, Shoot, Throw, – this is autoshot flag
0×00010000 SPELL_ATTR_EX3_SUPPRESS_CASTER_PROCS 16 confirmed by patchnotes
0×00020000 SPELL_ATTR_EX3_SUPPRESS_TARGET_PROCS 17 Causes no aggro if not missed
0×00040000 SPELL_ATTR_EX3_ALWAYS_HIT 18 Spell should always hit its target
0×00080000 SPELL_ATTR_EX3_INSTANT_TARGET_PROCS 19
0×00100000 SPELL_ATTR_EX3_ALLOW_AURA_WHILE_DEAD 20 Death persistent spells
0×00200000 SPELL_ATTR_EX3_ONLY_PROC_OUTDOORS 21
0×00400000 SPELL_ATTR_EX3_CASTING_CANCELS_AUTOREPEAT 22 Req wand
0×00800000 SPELL_ATTR_EX3_NO_DAMAGE_HISTORY 23
0×01000000 SPELL_ATTR_EX3_REQUIRES_OFFHAND_WEAPON 24 Req offhand weapon
0×02000000 SPELL_ATTR_EX3_TREAT_AS_PERIODIC 25 no cause spell pushback ?
0×04000000 SPELL_ATTR_EX3_CAN_PROC_FROM_PROCS 26 Auras with this attribute can proc off SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER_SPECIAL
0×08000000 SPELL_ATTR_EX3_ONLY_PROC_ON_CASTER 27
0×10000000 SPELL_ATTR_EX3_IGNORE_CASTER_AND_TARGET_RESTRICTIONS 28 always cast ok ? (requires more research)
0×20000000 SPELL_ATTR_EX3_IGNORE_CASTER_MODIFIERS 29
0×40000000 SPELL_ATTR_EX3_DO_NOT_DISPLAY_RANGE 30
0×80000000 SPELL_ATTR_EX3_NOT_ON_AOE_IMMUNE 31

AttributesEx4

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX4_NO_CAST_LOG 0
0×00000002 SPELL_ATTR_EX4_CLASS_TRIGGER_ONLY_ON_TARGET 1 proc on finishing move?
0×00000004 SPELL_ATTR_EX4_AURA_EXPIRES_OFFLINE 2
0×00000008 SPELL_ATTR_EX4_NO_HELPFUL_THREAT 3
0×00000010 SPELL_ATTR_EX4_NO_HARMFUL_THREAT 4 This will no longer cause guards to attack on use??
0×00000020 SPELL_ATTR_EX4_ALLOW_CLIENT_TARGETING 5
0×00000040 SPELL_ATTR_EX4_CANNOT_BE_STOLEN 6 although such auras might be dispellable, they cannot be stolen
0×00000080 SPELL_ATTR_EX4_ALLOW_CAST_WHILE_CASTING 7 In theory, can use this spell while another is channeled/cast/autocast
0×00000100 SPELL_ATTR_EX4_IGNORE_DAMAGE_TAKEN_MODIFIERS 8 no effect on non DoTs?
0×00000200 SPELL_ATTR_EX4_COMBAT_FEEDBACK_WHEN_USABLE 9 initially disabled / trigger activate from event (Execute, Riposte, Deep Freeze end other)
0×00000400 SPELL_ATTR_EX4_WEAPON_SPEED_COST_SCALING 10 Rogue Shiv have this flag
0×00000800 SPELL_ATTR_EX4_NO_PARTIAL_IMMUNITY 11
0×00001000 SPELL_ATTR_EX4_AURA_IS_BUFF 12
0×00002000 SPELL_ATTR_EX4_DO_NOT_LOG_CASTER 13
0×00004000 SPELL_ATTR_EX4_REACTIVE_DAMAGE_PROC 14
0×00008000 SPELL_ATTR_EX4_NOT_IN_SPELLBOOK 15
0×00010000 SPELL_ATTR_EX4_NOT_IN_ARENA 16 not usable in arena
0×00020000 SPELL_ATTR_EX4_IGNORE_DEFAULT_ARENA_RESTRICTIONS 17 usable in arena
0×00040000 SPELL_ATTR_EX4_BOUNCY_CHAIN_MISSILES 18
0×00080000 SPELL_ATTR_EX4_ALLOW_PROC_WHILE_SITTING 19
0×00100000 SPELL_ATTR_EX4_AURA_NEVER_BOUNCES 20 do not give “more powerful spell” error message
0×00200000 SPELL_ATTR_EX4_ALLOW_ENTERING_ARENA 21
0×00400000 SPELL_ATTR_EX4_PROC_SUPPRESS_SWING_ANIM 22
0×00800000 SPELL_ATTR_EX4_SUPPRESS_WEAPON_PROCS 23
0×01000000 SPELL_ATTR_EX4_AUTO_RANGED_COMBAT 24
0×02000000 SPELL_ATTR_EX4_OWNER_POWER_SCALING 25 pet scaling auras
0×04000000 SPELL_ATTR_EX4_ONLY_FLYING_AREAS 26 Can only be used in Outland.
0×08000000 SPELL_ATTR_EX4_FORCE_DISPLAY_CASTBAR 27
0×10000000 SPELL_ATTR_EX4_IGNORE_COMBAT_TIMER 28
0×20000000 SPELL_ATTR_EX4_UNK29 29
0×40000000 SPELL_ATTR_EX4_UNK30 30
0×80000000 SPELL_ATTR_EX4_UNK31 31

AttributesEx5

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX5_ALLOW_ACTIONS_DURING_CHANNEL 0 don’t interrupt channeling spells when moving
0×00000002 SPELL_ATTR_EX5_NO_REAGENT_COST_WITH_AURA 1 not need reagents if UNIT_FLAG_PREPARATION
0×00000004 SPELL_ATTR_EX5_REMOVE_ENTERING_ARENA 2 removed at enter arena (e.g. 31850 since 3.3.3)
0×00000008 SPELL_ATTR_EX5_ALLOW_WHILE_STUNNED 3 usable while stunned
0×00000010 SPELL_ATTR_EX5_TRIGGERS_CHANNELING 4
0×00000020 SPELL_ATTR_EX5_LIMIT_N 5 Only N targets can be apply at a time – dont of spells that have N>1 in tbc/wotlk
0×00000040 SPELL_ATTR_EX5_IGNORE_AREA_EFFECT_PVP_CHECK 6
0×00000080 SPELL_ATTR_EX5_NOT_ON_PLAYER 7
0×00000100 SPELL_ATTR_EX5_NOT_ON_PLAYER_CONTROLLED_NPC 8
0×00000200 SPELL_ATTR_EX5_EXTRA_INITIAL_PERIOD 9 begin periodic tick at aura apply
0×00000400 SPELL_ATTR_EX5_DO_NOT_DISPLAY_DURATION 10
0×00000800 SPELL_ATTR_EX5_IMPLIED_TARGETING 11 targets target of current hostile target if current hostile target is not eligible
0×00001000 SPELL_ATTR_EX5_MELEE_CHAIN_TARGETING 12 Cleave Generic chain damage front targets
0×00002000 SPELL_ATTR_EX5_SPELL_HASTE_AFFECTS_PERIODIC 13 haste affects duration
0×00004000 SPELL_ATTR_EX5_NOT_AVAILABLE_WHILE_CHARMED 14
0×00008000 SPELL_ATTR_EX5_TREAT_AS_AREA_EFFECT 15
0×00010000 SPELL_ATTR_EX5_AURA_AFFECTS_NOT_JUST_REQ_EQUIPPED_ITEM 16 (only affects protpally One-Handed Weapon Spec)
0×00020000 SPELL_ATTR_EX5_ALLOW_WHILE_FLEEING 17 usable while feared
0×00040000 SPELL_ATTR_EX5_ALLOW_WHILE_CONFUSED 18 usable while confused
0×00080000 SPELL_ATTR_EX5_AI_DOESNT_FACE_TARGET 19
0×00100000 SPELL_ATTR_EX5_DO_NOT_ATTEMPT_A_PET_RESUMMON_WHEN_DISMOUNTING 20
0×00200000 SPELL_ATTR_EX5_IGNORE_TARGET_REQUIREMENTS 21
0×00400000 SPELL_ATTR_EX5_NOT_ON_TRIVIAL 22
0×00800000 SPELL_ATTR_EX5_NO_PARTIAL_RESISTS 23
0×01000000 SPELL_ATTR_EX5_IGNORE_CASTER_REQUIREMENTS 24
0×02000000 SPELL_ATTR_EX5_ALWAYS_LINE_OF_SIGHT 25
0×04000000 SPELL_ATTR_EX5_ALWAYS_AOE_LINE_OF_SIGHT 26
0×08000000 SPELL_ATTR_EX5_NO_CASTER_AURA_ICON 27 Auras with this attribute are not visible on units that are the caster
0×10000000 SPELL_ATTR_EX5_NO_TARGET_AURA_ICON 28 Auras with this attribute are not visible on units that are not the caster
0×20000000 SPELL_ATTR_EX5_AURA_UNIQUE_PER_CASTER 29
0×40000000 SPELL_ATTR_EX5_ALWAYS_SHOW_GROUND_TEXTURE 30
0×80000000 SPELL_ATTR_EX5_ADD_MELEE_HIT_RATING 31 Introduced in patch 2.3: Taunt, Growl, etc spells use ability miss calculation (see implementation for details)

AttributesEx6

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX6_NO_COOLDOWN_ON_TOOLTIP 0 Only Move spell have this flag
0×00000002 SPELL_ATTR_EX6_DO_NOT_RESET_COOLDOWN_IN_ARENA 1 only usable in arena, not used in 3.2.0a and early
0×00000004 SPELL_ATTR_EX6_NOT_AN_ATTACK 2
0×00000008 SPELL_ATTR_EX6_CAN_ASSIST_IMMUNE_PC 3
0×00000010 SPELL_ATTR_EX6_UNK4 4
0×00000020 SPELL_ATTR_EX6_DO_NOT_CONSUME_RESOURCES 5
0×00000040 SPELL_ATTR_EX6_FLOATING_COMBAT_TEXT_ON_CAST 6 Auras with this attribute trigger SPELL_CAST combat log event instead of SPELL_AURA_START (clientside attribute)
0×00000080 SPELL_ATTR_EX6_AURA_IS_WEAPON_PROC 7
0×00000100 SPELL_ATTR_EX6_DO_NOT_CHAIN_TO_CROWD_CONTROLLED_TARGETS 8 ignores target with cc effects
0×00000200 SPELL_ATTR_EX6_ALLOW_ON_CHARMED_TARGETS 9
0×00000400 SPELL_ATTR_EX6_NO_AURA_LOG 10 Seems different in wotlk
0×00000800 SPELL_ATTR_EX6_NOT_IN_RAID_INSTANCES 11 not usable in raid instance
0×00001000 SPELL_ATTR_EX6_ALLOW_WHILE_RIDING_VEHICLE 12 for auras SPELL_AURA_TRACK_CREATURES, SPELL_AURA_TRACK_RESOURCES and SPELL_AURA_TRACK_STEALTHED select non-stacking tracking spells
0×00002000 SPELL_ATTR_EX6_IGNORE_PHASE_SHIFT 13
0×00004000 SPELL_ATTR_EX6_AI_PRIMARY_RANGED_ATTACK 14
0×00008000 SPELL_ATTR_EX6_NO_PUSHBACK 15 not set in 3.0.3
0×00010000 SPELL_ATTR_EX6_NO_JUMP_PATHING 16
0×00020000 SPELL_ATTR_EX6_ALLOW_EQUIP_WHILE_CASTING 17
0×00040000 SPELL_ATTR_EX6_ORIGINATE_FROM_CONTROLLER 18
0×00080000 SPELL_ATTR_EX6_DELAY_COMBAT_TIMER_DURING_CAST 19
0×00100000 SPELL_ATTR_EX6_AURA_ICON_ONLY_FOR_CASTER_LIMIT_10 20
0×00200000 SPELL_ATTR_EX6_SHOW_MECHANIC_AS_COMBAT_TEXT 21
0×00400000 SPELL_ATTR_EX6_ABSORB_CANNOT_BE_IGNORE 22
0×00800000 SPELL_ATTR_EX6_TAPS_IMMEDIATELY 23 not set in 3.0.3
0×01000000 SPELL_ATTR_EX6_CAN_TARGET_UNTARGETABLE 24 not set in 3.0.3
0×02000000 SPELL_ATTR_EX6_DOESNT_RESET_SWING_TIMER_IF_INSTANT 25 not set in 3.0.3
0×04000000 SPELL_ATTR_EX6_VEHICLE_IMMUNITY_CATEGORY 26 not set in 3.0.3
0×08000000 SPELL_ATTR_EX6_IGNORE_HEALING_MODIFIERS 27 not set in 3.0.3
0×10000000 SPELL_ATTR_EX6_DO_NOT_AUTO_SELECT_TARGET_WHICH_INITIATES_COMBAT 28 not set in 3.0.3
0×20000000 SPELL_ATTR_EX6_IGNORE_CASTER_DAMAGE_MODIFIERS 29 do not apply damage mods (usually in cases where it has already been applied)
0×40000000 SPELL_ATTR_EX6_DISABLE_TIED_EFFECT_POINTS 30 not set in 3.0.3
0×80000000 SPELL_ATTR_EX6_NO_CATEGORY_COOLDOWN_MODS 31 not set in 3.0.3

AttributesEx7

ID ENUM NAME Description
0×00000001 SPELL_ATTR_EX7_UNK0 0
0×00000002 SPELL_ATTR_EX7_NO_TARGET_DURATION_MODS 1
0×00000004 SPELL_ATTR_EX7_DISABLE_AURA_WHILE_DEAD 2
0×00000008 SPELL_ATTR_EX7_DEBUG_SPELL 3
0×00000010 SPELL_ATTR_EX7_UNK4 4
0×00000020 SPELL_ATTR_EX7_CAN_BE_MULTICAST 5
0×00000040 SPELL_ATTR_EX7_DONT_CAUSE_SPELL_PUSHBACK 6
0×00000080 SPELL_ATTR_EX7_PREPARE_FOR_VEHICLE_CONTROL_END 7
0×00000100 SPELL_ATTR_EX7_HORDE_SPECIFIC_SPELL 8
0×00000200 SPELL_ATTR_EX7_ALLIANCE_SPECIFIC_SPELL 9
0×00000400 SPELL_ATTR_EX7_DISPEL_REMOVES_CHARGES 10
0×00000800 SPELL_ATTR_EX7_CAN_CAUSE_INTERRUPT 11
0×00001000 SPELL_ATTR_EX7_CAN_CAUSE_SILENCE 12
0×00002000 SPELL_ATTR_EX7_NO_UI_NON_INTERRUPTIBLE 13
0×00004000 SPELL_ATTR_EX7_RECAST_ON_RESUMMON 14
0×00008000 SPELL_ATTR_EX7_RESET_SWING_TIMER_AT_SPELL_START 15
0×00010000 SPELL_ATTR_EX7_ONLY_IN_SPELLBOOK_UNTIL_LEARNED 16
0×00020000 SPELL_ATTR_EX7_DO_NOT_LOG_PVP_KILL 17
0×00040000 SPELL_ATTR_EX7_ATTACK_ON_CHARGE_TO_UNIT 18
0×00080000 SPELL_ATTR_EX7_REPORT_SPELL_FAILURE_TO_UNIT_TARGET 19
0×00100000 SPELL_ATTR_EX7_NO_CLIENT_FAIL_WHILE_STUNNED_FLEEING_CONFUSED 20
0×00200000 SPELL_ATTR_EX7_RETAIN_COOLDOWN_THROUGH_LOAD 21
0×00400000 SPELL_ATTR_EX7_IGNORES_COLD_WEATHER_FLYING_REQUIREMENT 22
0×00800000 SPELL_ATTR_EX7_NO_ATTACK_DODGE 23
0×01000000 SPELL_ATTR_EX7_NO_ATTACK_PARRY 24
0×02000000 SPELL_ATTR_EX7_NO_ATTACK_MISS 25
0×04000000 SPELL_ATTR_EX7_TREAT_AS_NPC_AOE 26
0×08000000 SPELL_ATTR_EX7_BYPASS_NO_RESURRECT_AURA 27
0×10000000 SPELL_ATTR_EX7_DO_NOT_COUNT_FOR_PVP_SCOREBOARD 28
0×20000000 SPELL_ATTR_EX7_REFLECTION_ONLY_DEFENDS 29
0×40000000 SPELL_ATTR_EX7_CAN_PROC_FROM_SUPPRESSED_TARGET_PROCS 30
0×80000000 SPELL_ATTR_EX7_ALWAYS_CAST_LOG 31

Stances

Determines specific stances in which caster must be for spell to be successfully cast. Example can be either warrior stances or druid forms.

StancesNot

Determines specific stances in which caster cannot be for spell to be successfully cast.

Targets

Determines the default targets for some spells. These specify what needs to be supplied to a spell/effect and some are used for client→server sending and some for server→client sending. Represents mask, i.e. more can be utilized at once.

Id Enum name Comment
0×0 TARGET_FLAG_SELF No data supplied or being sent
0×1 TARGET_FLAG_UNUSED1
0×4 TARGET_FLAG_UNIT
0×8 TARGET_FLAG_UNIT_RAID
0×10 TARGET_FLAG_UNIT_PARTY
0×20 TARGET_FLAG_ITEM
0×40 TARGET_FLAG_SOURCE_LOCATION
0×80 TARGET_FLAG_DEST_LOCATION
0×100 TARGET_FLAG_UNIT_ENEMY
0×200 TARGET_FLAG_UNIT_ALLY
0×400 TARGET_FLAG_CORPSE_ENEMY
0×800 TARGET_FLAG_UNIT_DEAD
0×1000 TARGET_FLAG_GAMEOBJECT
0×2000 TARGET_FLAG_TRADE_ITEM Item you would like enchanted in trade for example
0×4000 TARGET_FLAG_STRING
0×8000 TARGET_FLAG_LOCKED Item or GameObject
0×10000 TARGET_FLAG_CORPSE_ALLY
0×20000 TARGET_FLAG_UNIT_MINIPET Critter pet

TargetCreatureType

Specifies what creature types the spell can target, for example Humanoid or Beast.

RequiresSpellFocus

Specifies the spell focus GO, around which the caster has to be for a successful cast.

Indicates that this spell needs a GO near (e.g. forges). Required object has the type GAMEOBJECT_TYPE_SPELLFOCUS and data0 matches the RequiresSpellFocus value.

FacingCasterFlags

Specifies how the caster has to face the target so that the spell is successful.

Id ENUM Name Description
0×00 No special requirement.
0×01 SPELL_FACING_FLAG_INFRONT Must be in front of the caster.

CasterAuraState

Specifies the caster AuraState required for the cast to be successful.

TargetAuraState

Specifies the target AuraState required for the cast to be successful.

CasterAuraStateNot

Specifies which AuraState the caster must not have for the cast to be successful.

TargetAuraStateNot

Specifies which AuraState the target must not have for the cast to be successful.

CastingTimeIndex

CastingTime (Id) that defines how long it takes for the spell to cast in milliseconds.

ID CastTime CastTimePerLevel MinCastTime
1 0 0 0
2 250 0 250
3 500 0 500
4 1000 0 1000
5 2000 0 2000
6 5000 0 5000
7 10000 0 10000
8 20000 0 20000
9 30000 0 30000
10 1000 -100 500
11 2000 -100 1000
12 5000 -100 2500
13 30000 -1000 10000
14 3000 0 3000
15 4000 0 4000
16 1500 0 1500
17 NA NA NA
18 -1000000 0 -1000000
19 2500 0 2500
20 2500 0 2500
21 2600 0 2600
22 3500 0 3500
23 1800 0 1800
24 XXX XXX XXX
25 XXX XXX XXX
26 XXX XXX XXX
27 XXX XXX XXX
28 XXX XXX XXX
29 XXX XXX XXX
30 XXX XXX XXX
31 XXX XXX XXX
32 XXX XXX XXX
33 XXX XXX XXX
34 XXX XXX XXX
35 XXX XXX XXX
36 XXX XXX XXX
37 XXX XXX XXX
38 XXX XXX XXX
39 XXX XXX XXX
50 XXX XXX XXX
70 300000 0 300000
90 1700 0 1700
91 2800 0 2800
170 8000 0 8000
171 6000 0 6000
192 15000 0 15000
193 12000 0 12000
193 12000 0 12000
195 1100 0 0
196 750 0 0
197 850 0 0
198 900 0 0
199 333 0 333

RecoveryTime

CategoryRecoveryTime

InterruptFlags

Bit Enum name Comment
0×01 SPELL_INTERRUPT_FLAG_MOVEMENT
0×02 SPELL_INTERRUPT_FLAG_DAMAGE
0×04 SPELL_INTERRUPT_FLAG_INTERRUPT
0×08 SPELL_INTERRUPT_FLAG_AUTOATTACK
0×10 SPELL_INTERRUPT_FLAG_ABORT_ON_DMG // complete interrupt on direct damage
0×20 SPELL_INTERRUPT_UNK // unk, 564 of 727 spells having this spell start with “Glyph”

AuraInterruptFlags

Bit Enum name Comment
0×00000001 AURA_INTERRUPT_FLAG_HITBYSPELL removed when getting hit by a negative spell
0×00000002 AURA_INTERRUPT_FLAG_DAMAGE removed by any damage
0×00000004 AURA_INTERRUPT_FLAG_UNK2
0×00000008 AURA_INTERRUPT_FLAG_MOVE removed by any movement
0×00000010 AURA_INTERRUPT_FLAG_TURNING removed by any turning
0×00000020 AURA_INTERRUPT_FLAG_ENTER_COMBAT removed by entering combat
0×00000040 AURA_INTERRUPT_FLAG_NOT_MOUNTED removed by unmounting
0×00000080 AURA_INTERRUPT_FLAG_NOT_ABOVEWATER removed by entering water
0×00000100 AURA_INTERRUPT_FLAG_NOT_UNDERWATER removed by leaving water
0×00000200 AURA_INTERRUPT_FLAG_NOT_SHEATHED removed by unsheathing
0×00000400 AURA_INTERRUPT_FLAG_TALK talk to npc / loot? action on creature
0×00000800 AURA_INTERRUPT_FLAG_USE mine/use/open action on gameobject
0×00001000 AURA_INTERRUPT_FLAG_MELEE_ATTACK removed by attack
0×00002000 AURA_INTERRUPT_FLAG_UNK13
0×00004000 AURA_INTERRUPT_FLAG_UNK14
0×00008000 AURA_INTERRUPT_FLAG_UNK15 removed by casting a spell?
0×00010000 AURA_INTERRUPT_FLAG_UNK16
0×00020000 AURA_INTERRUPT_FLAG_MOUNTING removed by mounting
0×00040000 AURA_INTERRUPT_FLAG_NOT_SEATED removed by standing up (used by food and drink mostly and sleep/Fake Death like)
0×00080000 AURA_INTERRUPT_FLAG_CHANGE_MAP leaving map/getting teleported
0×00100000 AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION removed by auras that make you invulnerable, or make other to loose selection on you
0×00200000 AURA_INTERRUPT_FLAG_UNK21
0×00400000 AURA_INTERRUPT_FLAG_TELEPORTED
0×00800000 AURA_INTERRUPT_FLAG_ENTER_PVP_COMBAT removed by entering pvp combat
0×01000000 AURA_INTERRUPT_FLAG_DIRECT_DAMAGE removed by any direct damage
0×02000000 AURA_INTERRUPT_FLAG_LANDING removed by hitting the ground or water

ChannelInterruptFlags

Bit Enum name Comment
0×0001 CHANNEL_FLAG_UNK
0×0002 CHANNEL_FLAG_DAMAGE
0×0008 CHANNEL_FLAG_MOVEMENT
0×0010 CHANNEL_FLAG_TURNING
0×0080 CHANNEL_FLAG_DAMAGE2
0×1000 CHANNEL_FLAG_UNK2
0×4000 CHANNEL_FLAG_DELAY

procFlags

Bit Flag Comment
0 Killed
1 Kill
2 Successful Melee Hit
3 Taken Melee Hit
4 Successful Melee Spell Hit
5 Taken Melee Spell Hit
6 Successful Ranged Hit
7 Taken Ranged Hit
8 Successful Ranged Spell Hit
9 Taken Ranged Spell Hit
10 Successful Positive Aoe Hit
11 Taken Positive Aoe
12 Successful Aoe Spell Hit
13 Taken Aoe Spell Hit
14 Successful Positive Spell
15 Taken Positive Spell
16 Successful Negative Spell Hit
17 Taken Negative Spell Hit
18 On Do Periodic
19 On Take Periodic
20 Taken Any Damage
21 On Trap Activation
22 Successful Mainhand Hit
23 Successful Offhand Hit
24 Death

ProcChance

Chance to proc on a given event. Often overriden in spell_proc_event.

ProcCharges

How many times it can proc until it expires. Can be infinite – -1. Often overriden in spell_proc_event.

MaxLevel

All three level fields are used for level scaling of spells and how their base values are utilized. Diminishing returns start to apply above MaxLevel.

BaseLevel

SpellLevel

DurationIndex

Duration Description Bit Extra
DURATION_MAX_10_SEC 1
DURATION_BMAX_30_SEC 2 BaseDuration 300000010
DURATION_MAX_60_SEC 3
DURATION_MAX_120_SEC 4
DURATION_MAX_300_SEC 5
DURATION_MAX_600_SEC 6
DURATION_BMAX_5_SEC_1 7 BaseDuration 5000000
DURATION_MAX_15_SEC 8
DURATION_MAX_30_SEC 9
DURATION_BMAX_60_SEC 10 BaseDuration 60000000
DURATION_BPMAX_15_SEC 11 BaseDuration 100000000 PerLevel 200
DURATION_BPMAX_40_SEC_1 12 BaseDuration 30000000 PerLevel 200
DURATION_BPMAX_80_SEC_1 13 BaseDuration 6000000 PerLevel 200
DURATION_BPMAX_3_HRS 14 BaseDuration 12000000 PerLevel 10000
DURATION_BPMAX_7_HRS 15 BaseDuration 30000000 PerLevel 10000
DURATION_MAX_230_MIN 16
DURATION_BPMAX_7_SEC 17 BaseDuration 5000000 PerLevel 100
DURATION_MAX_20_SEC 18
DURATION_BPMAX_40_SEC_2 19 BaseDuration 3000000 PerLevel 500
DURATION_BPMAX_80_SEC_2 20 BaseDuration 60000000 PerLevel 1000
DURATION_MAX_INFINITY 21
DURATION_MAX_45_SEC 22
DURATION_MAX_90_SEC 23
DURATION_MAX_160_SEC 24
DURATION_MAX_180_SEC 25
DURATION_MAX_240_SEC 26
DURATION_MAX_3_SEC 27
DURATION_MAX_5_SEC 28
DURATION_MAX_12_SEC 29
DURATION_MAX_30_MIN 30
DURATION_MAX_8_SEC 31
DURATION_MAX_6_SEC 32
DURATION_MAX_4_SEC 35
DURATION_MAX_1_SEC 36
DURATION_MAX_1_MSEC 37
DURATION_MAX_11_SEC 38
DURATION_MAX_2_SEC 39
DURATION_MAX_20_MIN 40
DURATION_MAX_6_MIN 41
DURATION_MAX_60_MIN 42
DURATION_MAX_75_SEC 62
DURATION_MAX_25_SEC 63
DURATION_MAX_40_SEC 64
DURATION_MAX_1_5_SEC 65
DURATION_MAX_2_5_SEC 66
DURATION_MAX_18_SEC 85
DURATION_MAX_21_SEC 86
DURATION_MAX_9_SEC 105
DURATION_MAX_24_SEC 106
DURATION_MAX_35_SEC 125
DURATION_MAX_45_MIN 145
DURATION_MAX_7_SEC 165
DURATION_BMAX_21_SEC 185 BaseDuration 6000
DURATION_BMAX_22_SEC 186 BaseDuration 2000
DURATION_BMAX_5_SEC_2 187 BaseDuration 0
DURATION_MAX_27_SEC 205
DURATION_MAX_7_DAYS 225
DURATION_MAX_50_SEC 245
DURATION_MAX_55_SEC 265
DURATION_BMAX_6_SEC_1 285 BaseDuration 1000
DURATION_MAX_14_SEC 305
DURATION_MAX_36_SEC 325
DURATION_MAX_44_SEC 326
DURATION_MAX_500_MSEC 327
DURATION_MAX_250_MSEC 328
DURATION_MAX_15_MIN 347
DURATION_MAX_2_HRS 367
DURATION_MAX_16_SEC 387
DURATION_MAX_100_MSEC 407
DURATION_BPMAX_10_MIN 427 BaseDuration -600000 PerLevel 60000
DURATION_BMAX_6_SEC_2 447 BaseDuration 2000
DURATION_MAX_22_SEC 467
DURATION_MAX_26_SEC 468
DURATION_MAX_1_7_SEC 487
DURATION_MAX_1_1_SEC_1 507
DURATION_MAX_1_1_SEC_2 508
DURATION_MAX_4_HRS 527
DURATION_MAX_90_MIN 547
DURATION_MAX_3_HRS 548
DURATION_MAX_3_8_SEC 549
DURATION_MAX_24_8_DAYS 550
DURATION_MAX_3_5_SEC 551
DURATION_MAX_210_SEC 552
DURATION_BMAX_16_SEC 553 BaseDuration 6000
DURATION_MAX_155_SEC 554
DURATION_MAX_4_5_SEC 555
DURATION_MAX_28_SEC 556
DURATION_MAX_165_SEC 557
DURATION_MAX_114_SEC 558
DURATION_MAX_53_SEC 559
DURATION_MAX_299_SEC 560
DURATION_MAX_55_MIN 561
DURATION_MAX_150_SEC 562
DURATION_MAX_20_5_SEC 563
DURATION_MAX_13_SEC 564
DURATION_MAX_70_SEC 565
DURATION_MAX_0_SEC 566
DURATION_MAX_135_SEC 567
DURATION_MAX_1250_MSEC 568
DURATION_MAX_280_SEC 569
DURATION_MAX_32_SEC 570
DURATION_MAX_5_5_SEC 571
DURATION_MAX_100_SEC 572
DURATION_MAX_9999_MSEC 573
DURATION_MAX_200_MSEC 574
DURATION_MAX_17_SEC 575
DURATION_MAX_12_HRS 576
DURATION_MAX_18_HRS 580

PowerType

ID Description
0 Mana
1 Rage
2 Focus
3 Energy
-2 Health

ManaCost

ManaCostPerlevel

ManaPerSecond

ManaPerSecondPerLevel

RangeIndex

  SELF_ONLY                   = 1,
  COMBAT_RANGE                = 2,
  TWENTY_YARDS                = 3,
  MEDIUM_RANGE_1              = 4,
  LONG_RANGE_1                = 5, //40y
  VISION_RANGE                = 6, //100y
  TEN_YARDS                   = 7,
  MIN_RANGE_10_20             = 8,
  MEDIUM_RANGE_2              = 9,
  LONG_RANGE_2                = 10,
  FIFTEEN_YARDS               = 11,
  INTERACT_RANGE              = 12, //0-5y
  ANYWHERE                    = 13,
  EXTRA_LONG_RANGE            = 14, // 0-60y
  TWENTY_FIVE_YARDS           = 34,
  MEDIUM_LONG_RANGE           = 35,
  LONGER_RANGE                = 36,
  EXTENDED_RANGE              = 37, // 0-50y
  MIN_RANGE_10_25             = 38,
  MONSTER_SHOOT               = 54,
  RANGED_WEAPON               = 74,
  STING                       = 94,
  CHARGE                      = 95,
  TRAP                        = 96,
  HUNTER_RANGE                = 114,
  TOWER_80                    = 134,
  TOWER_100                   = 135,
  ARTILLERY_RANGE             = 136,
  EIGHT_YARDS                 = 137,
  LONG_RANGE_HUNTER_SHOOT_1   = 138,
  SIX_YARDS                   = 140,
  SEVEN_YARDS                 = 141,
  LONG_RANGE_HUNTER_SHOOT_2   = 151,
  HUNTER_RANGE_TEST           = 155,
  NINETY                      = 157

Speed

If above zero, how fast spell travels to target. Below zero values are at the moment not understood.

ModalNextSpell

StackAmount

How many stacks a spell can have on repeated casts. Example is Lifebloom. In client shown in same fashion as ProcCharges but are two different things. A dispell spell would dispel all ProcCharges at once but only one stack.

Totem1

Totem2

Reagent1

ReagentCount1

EquippedItemClass

EquippedItemSubClassMask

EquippedItemInventoryTypeMask

Effect1

enum SpellEffects or SpellEffects.cpp for more information

EffectDieSides1

Random Value of the Die that is rolled for the SPELL_EFFECT
Max(EffectDieSides1) + (EffectBaseDice1 + EffectBasePoints1) = MaxValue for SPELL_EFFECT

EffectBaseDice1

Base Value for the SPELL_EFFECT, mostly 1
EffectBaseDice1 + EffectBasePoints1 = MinValue for SPELL_EFFECT

EffectDicePerLevel1

EffectRealPointsPerLevel1

EffectBasePoints1

Value added to EffectBaseDice1

EffectMechanic

The mechanic of the effect with the same id `N` (e.g. `EffectMechanic1` relates to `Effect1`). There are up to three effects, N = {1,2,3}. See Mechanic.

EffectImplicitTargetA1

The target of the effect with the same id `N` (e.g. `EffectImplicitTargetA1` relates to `Effect1`). There are up to three effects, N = {1,2,3}.

For example: Food buff item spells usually work on the player eating them, indicated by `TARGET_UNIT_CASTER` (`1`).

SpellTargets.h / .cpp – TODO: add wotlk ones

Id Enum name
0 TARGET_NONE
1 TARGET_UNIT_CASTER
2 TARGET_UNIT_ENEMY_NEAR_CASTER
3 TARGET_UNIT_FRIEND_NEAR_CASTER
4 TARGET_UNIT_NEAR_CASTER
5 TARGET_UNIT_CASTER_PET
6 TARGET_UNIT_ENEMY
7 TARGET_ENUM_UNITS_SCRIPT_AOE_AT_SRC_LOC
8 TARGET_ENUM_UNITS_SCRIPT_AOE_AT_DEST_LOC
9 TARGET_LOCATION_CASTER_HOME_BIND
10 TARGET_LOCATION_CASTER_DIVINE_BIND_NYI
11 TARGET_PLAYER_NYI
12 TARGET_PLAYER_NEAR_CASTER_NYI
13 TARGET_PLAYER_ENEMY_NYI
14 TARGET_PLAYER_FRIEND_NYI
15 TARGET_ENUM_UNITS_ENEMY_AOE_AT_SRC_LOC
16 TARGET_ENUM_UNITS_ENEMY_AOE_AT_DEST_LOC
17 TARGET_LOCATION_DATABASE
18 TARGET_LOCATION_CASTER_DEST
19 TARGET_UNK_19
20 TARGET_ENUM_UNITS_PARTY_WITHIN_CASTER_RANGE
21 TARGET_UNIT_FRIEND
22 TARGET_LOCATION_CASTER_SRC
23 TARGET_GAMEOBJECT
24 TARGET_ENUM_UNITS_ENEMY_IN_CONE_24
25 TARGET_UNIT
26 TARGET_LOCKED
27 TARGET_UNIT_CASTER_MASTER
28 TARGET_ENUM_UNITS_ENEMY_AOE_AT_DYNOBJ_LOC
29 TARGET_ENUM_UNITS_FRIEND_AOE_AT_DYNOBJ_LOC
30 TARGET_ENUM_UNITS_FRIEND_AOE_AT_SRC_LOC
31 TARGET_ENUM_UNITS_FRIEND_AOE_AT_DEST_LOC
32 TARGET_LOCATION_UNIT_MINION_POSITION
33 TARGET_ENUM_UNITS_PARTY_AOE_AT_SRC_LOC
34 TARGET_ENUM_UNITS_PARTY_AOE_AT_DEST_LOC
35 TARGET_UNIT_PARTY
36 TARGET_ENUM_UNITS_ENEMY_WITHIN_CASTER_RANGE
37 TARGET_UNIT_FRIEND_AND_PARTY
38 TARGET_UNIT_SCRIPT_NEAR_CASTER
39 TARGET_LOCATION_CASTER_FISHING_SPOT
40 TARGET_GAMEOBJECT_SCRIPT_NEAR_CASTER
41 TARGET_LOCATION_CASTER_FRONT_RIGHT
42 TARGET_LOCATION_CASTER_BACK_RIGHT
43 TARGET_LOCATION_CASTER_BACK_LEFT
44 TARGET_LOCATION_CASTER_FRONT_LEFT
45 TARGET_UNIT_FRIEND_CHAIN_HEAL
46 TARGET_LOCATION_SCRIPT_NEAR_CASTER
47 TARGET_LOCATION_CASTER_FRONT
48 TARGET_LOCATION_CASTER_BACK
49 TARGET_LOCATION_CASTER_LEFT
50 TARGET_LOCATION_CASTER_RIGHT
51 TARGET_ENUM_GAMEOBJECTS_SCRIPT_AOE_AT_SRC_LOC
52 TARGET_ENUM_GAMEOBJECTS_SCRIPT_AOE_AT_DEST_LOC
53 TARGET_LOCATION_CASTER_TARGET_POSITION
54 TARGET_ENUM_UNITS_ENEMY_IN_CONE_54
55 TARGET_LOCATION_CASTER_FRONT_LEAP
56 TARGET_ENUM_UNITS_RAID_WITHIN_CASTER_RANGE
57 TARGET_UNIT_RAID
58 TARGET_UNIT_RAID_NEAR_CASTER
59 TARGET_ENUM_UNITS_FRIEND_IN_CONE
60 TARGET_ENUM_UNITS_SCRIPT_IN_CONE_60
61 TARGET_UNIT_RAID_AND_CLASS
62 TARGET_PLAYER_RAID_NYI
63 TARGET_LOCATION_UNIT_POSITION
64 TARGET_LOCATION_UNIT_FRONT
65 TARGET_LOCATION_UNIT_BACK
66 TARGET_LOCATION_UNIT_RIGHT
67 TARGET_LOCATION_UNIT_LEFT
68 TARGET_LOCATION_UNIT_FRONT_RIGHT
69 TARGET_LOCATION_UNIT_BACK_RIGHT
70 TARGET_LOCATION_UNIT_BACK_LEFT
71 TARGET_LOCATION_UNIT_FRONT_LEFT
72 TARGET_LOCATION_CASTER_RANDOM_SIDE
73 TARGET_LOCATION_CASTER_RANDOM_CIRCUMFERENCE
74 TARGET_LOCATION_UNIT_RANDOM_SIDE
75 TARGET_LOCATION_UNIT_RANDOM_CIRCUMFERENCE
76 TARGET_LOCATION_DYNOBJ_POSITION
77 TARGET_UNIT_CHANNEL_TARGET
78 TARGET_LOCATION_NORTH
79 TARGET_LOCATION_SOUTH
80 TARGET_LOCATION_EAST
81 TARGET_LOCATION_WEST
82 TARGET_LOCATION_NE
83 TARGET_LOCATION_NW
84 TARGET_LOCATION_SE
85 TARGET_LOCATION_SW
86 TARGET_LOCATION_RANDOM_SIDE
87 TARGET_LOCATION_CURRENT_REFERENCE
88 TARGET_ENUM_UNITS_SCRIPT_AOE_AT_DYNOBJ_LOC
89 TARGET_LOCATION_TRAJECTORY
90 TARGET_UNIT_CASTER_COMPANION
91 TARGET_LOCATION_RANDOM_CIRCUMFERENCE
92 TARGET_UNIT_CASTER_SUMMONER
93 TARGET_CORPSE_ENEMY_NEAR_CASTER_NYI

EffectImplicitTargetB1

See EffectImplicitTargetAN.

EffectRadiusIndex1

EFFECT_RADIUS_2_YARDS = 7,
EFFECT_RADIUS_5_YARDS = 8,
EFFECT_RADIUS_20_YARDS = 9,
EFFECT_RADIUS_30_YARDS = 10,
EFFECT_RADIUS_45_YARDS = 11,
EFFECT_RADIUS_100_YARDS = 12,
EFFECT_RADIUS_10_YARDS = 13,
EFFECT_RADIUS_8_YARDS = 14,
EFFECT_RADIUS_3_YARDS = 15,
EFFECT_RADIUS_1_YARD = 16,
EFFECT_RADIUS_13_YARDS = 17,
EFFECT_RADIUS_15_YARDS = 18,
EFFECT_RADIUS_18_YARDS = 19,
EFFECT_RADIUS_25_YARDS = 20,
EFFECT_RADIUS_35_YARDS = 21,
EFFECT_RADIUS_200_YARDS = 22,
EFFECT_RADIUS_40_YARDS = 23,
EFFECT_RADIUS_65_YARDS = 24,
EFFECT_RADIUS_70_YARDS = 25,
EFFECT_RADIUS_4_YARDS = 26,
EFFECT_RADIUS_50_YARDS = 27,
EFFECT_RADIUS_50000_YARDS = 28,
EFFECT_RADIUS_6_YARDS = 29,
EFFECT_RADIUS_500_YARDS = 30,
EFFECT_RADIUS_80_YARDS = 31,
EFFECT_RADIUS_12_YARDS = 32,
EFFECT_RADIUS_99_YARDS = 33,
EFFECT_RADIUS_55_YARDS = 35,
EFFECT_RADIUS_0_YARDS = 36,
EFFECT_RADIUS_7_YARDS = 37,
EFFECT_RADIUS_21_YARDS = 38,
EFFECT_RADIUS_34_YARDS = 39,
EFFECT_RADIUS_9_YARDS = 40,
EFFECT_RADIUS_150_YARDS = 41,
EFFECT_RADIUS_11_YARDS = 42,
EFFECT_RADIUS_16_YARDS = 43,
EFFECT_RADIUS_0_5_YARDS = 44, // 0.5 yards
EFFECT_RADIUS_10_YARDS_2 = 45,
EFFECT_RADIUS_5_YARDS_2 = 46,
EFFECT_RADIUS_15_YARDS_2 = 47,
EFFECT_RADIUS_60_YARDS = 48,
EFFECT_RADIUS_90_YARDS = 49,
EFFECT_RADIUS_15_YARDS_3 = 50,
EFFECT_RADIUS_60_YARDS_2 = 51,
EFFECT_RADIUS_5_YARDS_3 = 52,
EFFECT_RADIUS_60_YARDS_3 = 53,
EFFECT_RADIUS_50000_YARDS_2 = 54,
EFFECT_RADIUS_130_YARDS = 55,
EFFECT_RADIUS_38_YARDS = 56,
EFFECT_RADIUS_45_YARDS_2 = 57,
EFFECT_RADIUS_32_YARDS = 59,
EFFECT_RADIUS_44_YARDS = 60,
EFFECT_RADIUS_14_YARDS = 61,
EFFECT_RADIUS_47_YARDS = 62,
EFFECT_RADIUS_23_YARDS = 63,
EFFECT_RADIUS_3_5_YARDS = 64, // 3.5 yards
EFFECT_RADIUS_80_YARDS_2 = 65

EffectApplyAuraName1

EffectAmplitude1

Period of ticking aura. Many dummies can have periodicity forced in core and do not have period set in this table.

EffectMultipleValue1

EffectChainTarget1

EffectItemType1

EffectMiscValue1

Changes meaning per effect. For SPELL_EFFECT_DISPEL it is for example enum DispelType.

EffectMiscValueB1

Changes meaning per effect. Added in patch 2.1. SPELL_EFFECT_SUMMON (28) uses it for SummonProperties.dbc ID values for example.

value1 = enum SummonPropGroup
value2 =
value3 =
value4 =
value5 =

Id value1 value2* value3* value4* value5* comment
41 1 0 5 5 0 SUMMON_PROP_GROUP_FRIENDLY
61 1 0 2 0 2 SUMMON_PROP_GROUP_FRIENDLY
63 1 0 4 1 2 SUMMON_PROP_GROUP_FRIENDLY
64 0 0 0 0 0 SUMMON_PROP_GROUP_WILD
65 3 0 0 0 0 SUMMON_PROP_GROUP_CONTROLLABLE
66 0 0 0 0 1 SUMMON_PROP_GROUP_WILD
67 2 0 1 0 0 SUMMON_PROP_GROUP_PETS
81 1 0 4 2 2 SUMMON_PROP_GROUP_FRIENDLY
82 1 0 4 3 2 SUMMON_PROP_GROUP_FRIENDLY
83 1 0 4 4 2 SUMMON_PROP_GROUP_FRIENDLY
121 1 0 0 0 2 SUMMON_PROP_GROUP_FRIENDLY
181 1 0 0 0 0 SUMMON_PROP_GROUP_FRIENDLY
187 0 0 0 0 0 SUMMON_PROP_GROUP_WILD
247 0 0 0 0 0 SUMMON_PROP_GROUP_WILD
307 1 35 5 5 0 SUMMON_PROP_GROUP_FRIENDLY
407 1 0 1 5 4 SUMMON_PROP_GROUP_FRIENDLY
409 1 0 1 5 4 SUMMON_PROP_GROUP_FRIENDLY
427 3 0 1 0 0 SUMMON_PROP_GROUP_CONTROLLABLE
428 3 1616 0 0 4 SUMMON_PROP_GROUP_CONTROLLABLE

EffectTriggerSpell1

Triggered spell through SPELL_EFFECT_TRIGGER_SPELL, SPELL_AURA_PERIODIC_TRIGGER_SPELL, SPELL_AURA_PROC_TRIGGER_SPELL and similar

EffectPointsPerComboPoint1

SpellVisual

SpellIconID

activeIconID

spellPriority

SpellName

Rank1

ManaCostPercentage

StartRecoveryCategory

Better known as GCD. Specifies category for cooldown which starts after spell is started.

StartRecoveryTime

Better known as GCD. Speficies time for category for cooldown which starts after spell is started.

MaxTargetLevel

SpellFamilyName

ID Name
0 SPELLFAMILY_GENERIC
1 SPELLFAMILY_UNK1 // events, holidays
2 unused
3 SPELLFAMILY_MAGE
4 SPELLFAMILY_WARRIOR
5 SPELLFAMILY_WARLOCK
6 SPELLFAMILY_PRIEST
7 SPELLFAMILY_DRUID
8 SPELLFAMILY_ROGUE
9 SPELLFAMILY_HUNTER
10 SPELLFAMILY_PALADIN
11 SPELLFAMILY_SHAMAN
12 SPELLFAMILY_UNK2
13 SPELLFAMILY_POTION
14 unused
15 SPELLFAMILY_DEATHKNIGHT
16 unused
17 SPELLFAMILY_UNK3

SpellFamilyFlags

MaxAffectedTargets

DmgClass

Specifies what calculation logic is used for a given spell. SPELL_DAMAGE_CLASS_NONE for example cannot miss. Magic is a spell which uses spell hit, melee and range use normal hit, etc.

Id Name
0 SPELL_DAMAGE_CLASS_NONE
1 SPELL_DAMAGE_CLASS_MAGIC
2 SPELL_DAMAGE_CLASS_MELEE
2 SPELL_DAMAGE_CLASS_RANGED

PreventionType

Id Name
0 SPELL_PREVENTION_TYPE_NONE
1 SPELL_PREVENTION_TYPE_SILENCE
2 SPELL_PREVENTION_TYPE_PACIFY

StanceBarOrder

DmgMultiplier1

Multiplier for value of effect applied after each target is evaluated. Used for example for Shaman Chain Lightning damage depretiation after first target.

MinFactionId

MinReputation

RequiredAuraVision

TotemCategory1

TotemCategory2

AreaId

Specifies the Allowed areas for a successful cast.
IDs taken from AreaGroup.dbc

School

ID Name
0 SPELL_SCHOOL_NORMAL
1 SPELL_SCHOOL_HOLY
2 SPELL_SCHOOL_FIRE
3 SPELL_SCHOOL_NATURE
4 SPELL_SCHOOL_FROST
5 SPELL_SCHOOL_SHADOW
6 SPELL_SCHOOL_ARCAN

In Vanilla, spellschools are handled by ID.

SchoolMask

Bitmask Name
0 SPELL_SCHOOL_MASK_NONE
1 SPELL_SCHOOL_MASK_NORMAL
2 SPELL_SCHOOL_MASK_HOLY
4 SPELL_SCHOOL_MASK_FIRE
8 SPELL_SCHOOL_MASK_NATURE
16 SPELL_SCHOOL_MASK_FROST
32 SPELL_SCHOOL_MASK_SHADOW
64 SPELL_SCHOOL_MASK_ARCANE

From TBC onwards, spells can have multiple schools, handled by Bitmask. Best example is either Fel Lightning in Magisters Terrace or Frostfire bolt WOTLK mage spell

IsServerSide

Id Description
0 Default Spell.sql Data
1 Ported Spell from other CMaNGOS Spell.sql
2 Designed serverside Spell using spell.xml

AttributesServerside

Id Enum Description
0×1 SPELL_ATTR_SS_PREVENT_INVIS Faerie Fire type of spells which prevent invis and stealth
0×2 SPELL_ATTR_SS_AOE_CAP AOE Damage Cap affected spell
0×4 SPELL_ATTR_SS_IGNORE_EVADE Aura will not be removed on evade

Clone this wiki locally