Skip to content

spell_proc

This table holds information on what events (or procs) certain spells are activated. All spells in this table must have apply a SPELL_AURA_PROC_TRIGGER_SPELL (42) aura. Any entries in this table will overwrite the existing proc settings in the spell's DBC entry.

Structure ​

FieldTypeAttributesKeyNullDefaultExtraComment
SpellIdintsignedPRINO0
SchoolMasktinyintunsignedNO0
SpellFamilyNamesmallintunsignedNO0
SpellFamilyMask0intunsignedNO0
SpellFamilyMask1intunsignedNO0
SpellFamilyMask2intunsignedNO0
ProcFlagsintunsignedNO0
SpellTypeMaskintunsignedNO0
SpellPhaseMaskintunsignedNO0
HitMaskintunsignedNO0
AttributesMaskintunsignedNO0
DisableEffectsMaskintunsignedNO0
ProcsPerMinutefloatNO0
ChancefloatNO0
CooldownintunsignedNO0
ChargestinyintunsignedNO0
 

Description of fields ​

SpellId ​

The Spell ID that is capable to proc on an event. (Can use negative SpellID for ranked spells)  

SchoolMask ​

This field contains a bitmask that controls on what types of spells can trigger the proc. For example if an aura procs only when the unit it is casted upon is hit by shadow spells (spell 34914).

ValueFlagName
10x01SPELL_SCHOOL_NORMAL
20x02SPELL_SCHOOL_HOLY
40x04SPELL_SCHOOL_FIRE
80x08SPELL_SCHOOL_NATURE
160x10SPELL_SCHOOL_FROST
320x20SPELL_SCHOOL_SHADOW
640x40SPELL_SCHOOL_ARCANE

 

SpellFamilyName ​

This field controls what family name spells can proc the triggered spell.

IDNameComment
0SPELLFAMILY_GENERICGeneric
1SPELLFAMILY_UNK1Unk1 - events, holidays, ...?
3SPELLFAMILY_MAGEMage
4SPELLFAMILY_WARRIORWarrior
5SPELLFAMILY_WARLOCKWarlock
6SPELLFAMILY_PRIESTPriest
7SPELLFAMILY_DRUIDDruid
8SPELLFAMILY_ROGUERogue
9SPELLFAMILY_HUNTERHunter
10SPELLFAMILY_PALADINPaladin
11SPELLFAMILY_SHAMANShaman
12SPELLFAMILY_UNK2Unk2 - Silence resistance?
13SPELLFAMILY_POTIONPotion
15SPELLFAMILY_DEATHKNIGHTDeath Knight
17SPELLFAMILY_PETPet

 

SpellFamilyMask[0-2] ​

This field controls what spells' family flags can proc the triggered spell.  

ProcFlags ​

If non-zero, used to override the original spell ProcFlags in DBC.

A bitmask controlling what events trigger the spell. To combine possible events, add the proc bits together.

ValueFlagNameComment
10x00000001PROC_FLAG_KILLED00 Killed by agressor - not sure about this flag
20x00000002PROC_FLAG_KILL01 Kill target (in most cases need XP/Honor reward)
40x00000004PROC_FLAG_DONE_MELEE_AUTO_ATTACK02 Done melee auto attack
80x00000008PROC_FLAG_TAKEN_MELEE_AUTO_ATTACK03 Taken melee auto attack
160x00000010PROC_FLAG_DONE_SPELL_MELEE_DMG_CLASS04 Done attack by Spell that has dmg class melee
320x00000020PROC_FLAG_TAKEN_SPELL_MELEE_DMG_CLASS05 Taken attack by Spell that has dmg class melee
640x00000040PROC_FLAG_DONE_RANGED_AUTO_ATTACK06 Done ranged auto attack
1280x00000080PROC_FLAG_TAKEN_RANGED_AUTO_ATTACK07 Taken ranged auto attack
2560x00000100PROC_FLAG_DONE_SPELL_RANGED_DMG_CLASS08 Done attack by Spell that has dmg class ranged
5120x00000200PROC_FLAG_TAKEN_SPELL_RANGED_DMG_CLASS09 Taken attack by Spell that has dmg class ranged
10240x00000400PROC_FLAG_DONE_SPELL_NONE_DMG_CLASS_POS10 Done positive spell that has dmg class none
20480x00000800PROC_FLAG_TAKEN_SPELL_NONE_DMG_CLASS_POS11 Taken positive spell that has dmg class none
40960x00001000PROC_FLAG_DONE_SPELL_NONE_DMG_CLASS_NEG12 Done negative spell that has dmg class none
81920x00002000PROC_FLAG_TAKEN_SPELL_NONE_DMG_CLASS_NEG13 Taken negative spell that has dmg class none
163840x00004000PROC_FLAG_DONE_SPELL_MAGIC_DMG_CLASS_POS14 Done positive spell that has dmg class magic
327680x00008000PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_POS15 Taken positive spell that has dmg class magic
655360x00010000PROC_FLAG_DONE_SPELL_MAGIC_DMG_CLASS_NEG16 Done negative spell that has dmg class magic
1310720x00020000PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_NEG17 Taken negative spell that has dmg class magic
2621440x00040000PROC_FLAG_DONE_PERIODIC18 Successful do periodic (damage / healing)
5242880x00080000PROC_FLAG_TAKEN_PERIODIC19 Taken spell periodic (damage / healing)
10485760x00100000PROC_FLAG_TAKEN_DAMAGE20 Taken any damage
20971520x00200000PROC_FLAG_DONE_TRAP_ACTIVATION21 On trap activation (possibly needs name change to ON_GAMEOBJECT_CAST or USE)
41943040x00400000PROC_FLAG_DONE_MAINHAND_ATTACK22 Done main-hand melee attacks (spell and autoattack)
83886080x00800000PROC_FLAG_DONE_OFFHAND_ATTACK23 Done off-hand melee attacks (spell and autoattack)
167772160x01000000PROC_FLAG_DEATH24 Died in any way
2040x000000CCAUTO_ATTACK_PROC_FLAG_MASKAny auto attack
125829720x00C0003CMELEE_PROC_FLAG_MASKAny melee attack
9600x000003C0RANGED_PROC_FLAG_MASKAny ranged attack
31457120x002FFFF0SPELL_PROC_FLAG_MASKAny spell attack
150295880x00E55554DONE_HIT_PROC_FLAG_MASKAny dealt attack
17476240x001AAAA8TAKEN_HIT_PROC_FLAG_MASKAny taken attack
24466720x00255550REQ_SPELL_PHASE_PROC_FLAG_MASK

 

SpellTypeMask ​

Used to choose what types of spells may trigger the proc, to combine, just add the bit values.

ValueFlagNameComment
10x01PROC_SPELL_TYPE_DAMAGEonly damaging spells
20x02PROC_SPELL_TYPE_HEALonly healing spells
40x04PROC_SPELL_TYPE_NO_DMG_HEALall other spells

 

SpellPhaseMask ​

At which phase may the spell trigger the proc. Normally only one of them is used at the same time, but they can also be combined.

ValueFlagNameComment
10x01PROC_SPELL_PHASE_CASTtrigger when spell has just finished casting
20x02PROC_SPELL_PHASE_HITtrigger when the spell hits its target
40x04PROC_SPELL_PHASE_FINISHtrigger after spell has done all its effects on all targets

 

HitMask ​

Used to add special conditions to spells, some spells might trigger only on critical strikes, for example.

ValueFlagNameComment
00x0000PROC_HIT_NONEprocs on:
PROC_HIT_NORMAL | PROC_HIT_CRITICAL for TAKEN proc type
PROC_HIT_NORMAL | PROC_HIT_CRITICAL | PROC_HIT_ABSORB for DONE
10x0001PROC_HIT_NORMALnon-critical hits
20x0002PROC_HIT_CRITICAL
40x0004PROC_HIT_MISS
80x0008PROC_HIT_FULL_RESIST
160x0010PROC_HIT_DODGE
320x0020PROC_HIT_PARRY
640x0040PROC_HIT_BLOCKpartial or full block
1280x0080PROC_HIT_EVADE
2560x0100PROC_HIT_IMMUNE
5120x0200PROC_HIT_DEFLECT
10240x0400PROC_HIT_ABSORBpartial or full absorb
20480x0800PROC_HIT_REFLECT
40960x1000PROC_HIT_INTERRUPT
81920x2000PROC_HIT_FULL_BLOCK

 

AttributesMask ​

Adds special behaviour to the proc, spell might trigger proc only if these conditions are fullfilled

ValueFlagNameComment
10x0001PROC_ATTR_REQ_EXP_OR_HONORrequires proc target to give exp or honor for aura proc
20x0002PROC_ATTR_TRIGGERED_CAN_PROCaura can proc even with triggered spells
40x0004PROC_ATTR_REQ_MANA_COSTrequires triggering spell to have a mana cost for aura proc
80x0008PROC_ATTR_REQ_SPELLMODrequires triggering spell to be affected by proccing aura to drop charges
1280x0080PROC_ATTR_REDUCE_PROC_60aura should have a reduced chance to proc if level of proc Actor > 60
2560x0100PROC_ATTR_CANT_PROC_FROM_ITEM_CASTdo not allow aura proc if proc is caused by a spell casted by item

 

DisableEffectsMask ​

Disable proc on spell effect index (bitmask)

ValueFlagName
10x01EFFECT_1
20x02EFFECT_2
40x04EFFECT_3

 

ProcsPerMinute ​

Chance relative to delay of equipped weapon. chance = (ProcsPerMinute * delay) / 600  

Chance ​

Absolute chance per hit or spell cast. (Used when ProcsPerMinute is 0) If both Chance and ProcsPerMinute is 0, the default value from Spell ProcChance is used.  

Cooldown ​

Define hidden cooldowns on the spell, in milliseconds. Also known as the proc's internal cooldown, or ICD.  

Charges ​

The amount of aura charges available to proc. If 0, the default value from Spell ProcCharges is used.