TrinityCore : spell_proc

Back-to:World

The `spell_proc` table

Warning - this table is in development, should not be used yet, use spell_proc_event table instead
table-no-description

Structure

Field

Type

Attributes

Key

Null

Default

Extra

Comment

spellId

mediumint(8)

unsigned

PRI

NO

0

Unique

 

schoolMask

tinyint(4)

signed

 

NO

0

 

 

SpellFamilyName

smallint(5)

unsigned

 

NO

0

 

 

SpellFamilyMask0

int(10)

unsigned

 

NO

0

 

 

SpellFamilyMask1

int(10)

unsigned

 

NO

0

 

 

SpellFamilyMask2

int(10)

unsigned

 

NO

0

 

 

typeMask

int(10)

unsigned

 

NO

0

 

 

spellTypeMask

int(10)

unsigned

 

NO

0

 

 

spellPhaseMask

int(10)

unsigned

 

NO

0

 

 

hitMask

int(10)

unsigned

 

NO

0

 

 

attributesMask

int(10)

unsigned

 

NO

0

 

 

ratePerMinute

float

signed

 

NO

0

 

 

chance

float

signed

 

NO

0

 

 

cooldown

float

signed

 

NO

0

 

 

charges

float

signed

 

NO

0

 

 

Description of the fields

spellId

The spell ID that is capable to proc on an event.

SchoolMask

This field contains a bitmask that controls on what types of spell damages the proc can be triggered. For example if an aura procs only when the unit it is casted upon is hit by shadow spells (spell 34914). To combine spell schools, just add the bit values.

School ID

Bit

Name

0

1

Physical

1

2

Holy

2

4

Fire

3

8

Nature

4

16

Frost

5

32

Shadow

6

64

Arcane

SpellFamilyName

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

ID

Family Name

0

Generic

3

Mage

4

Warrior

5

Warlock

6

Priest

7

Druid

8

Rogue

9

Hunter

10

Paladin

11

Shaman

13

Potion

SpellFamilyMask0

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

SpellFamilyMask1

field-no-description|5

SpellFamilyMask2

field-no-description|6

typeMask

field-no-description|7

spellTypeMask

Event

Bit

Comment

PROC_SPELL_TYPE_NONE

0x00000000

 

PROC_SPELL_TYPE_DAMAGE

0x00000001

damage type of spell

PROC_SPELL_TYPE_HEAL

0x00000002

heal type of spell

PROC_SPELL_TYPE_NO_DMG_HEAL

0x00000004

other spells

PROC_SPELL_TYPE_MASK_ALL

0x00000007

All masks combined

spellPhaseMask

Event

Bit

Comment

PROC_SPELL_PHASE_NONE

0x00000000

 

PROC_SPELL_PHASE_CAST

0x00000001

 

PROC_SPELL_PHASE_HIT

0x00000002

 

PROC_SPELL_PHASE_FINISH

0x00000004

 

PROC_SPELL_PHASE_MASK_ALL

0x00000007

All masks combined

hitMask

Event

Bit

Comment

PROC_HIT_NONE

0x00000000

no value - PROC_HIT_NORMAL

PROC_HIT_CRITICAL for TAKEN proc type, PROC_HIT_NORMAL

PROC_HIT_CRITICAL

PROC_HIT_ABSORB for DONE

PROC_HIT_NORMAL

0x00000001

non-critical hits

PROC_HIT_CRITICAL

0x00000002

 

PROC_HIT_MISS

0x00000004

 

PROC_HIT_FULL_RESIST

0x00000008

 

PROC_HIT_DODGE

0x00000010

 

PROC_HIT_PARRY

0x00000020

 

PROC_HIT_BLOCK

0x00000040

partial or full block

PROC_HIT_EVADE

0x00000080

 

PROC_HIT_IMMUNE

0x00000100

 

PROC_HIT_DEFLECT

0x00000200

 

PROC_HIT_ABSORB

0x00000400

partial or full absorb

PROC_HIT_REFLECT

0x00000800

 

PROC_HIT_INTERRUPT

0x00001000

(not used atm)

PROC_HIT_FULL_BLOCK

0x00002000

 

PROC_HIT_MASK_ALL

0x00002FFF

All masks combined

attributesMask

Event

Bit

Comment

PROC_ATTR_REQ_EXP_OR_HONOR

0x0000010

 

ratePerMinute

This field controls the times per minute that the spell should proc. If zero, then the value is taken from the DBC entry.

chance

Custom chance for triggering, given in percentage.

cooldown

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

charges

field-no-description|14