The `conditions` table
...
Field | Type | Attributes | Key | Null | Default | Extra | Comment |
mediumint(8) | signed | PRI | NO | 0 | |||
mediumint(8) | unsigned | PRI | NO | 0 | |||
mediumint(8) | signed | PRI | NO | 0 | |||
int(11) | signed | PRI | NO | 0 | smart_scripts.source_type || 0 for everything else | ||
mediumint(8) | unsigned | PRI | NO | 0 | |||
mediumint(8) | signed | PRI | NO | 0 | |||
tinyint(3) | unsigned | PRI | NO | 0 | |||
int(10) | unsigned | PRI | NO | 0 | |||
int(10) | unsigned | PRI | NO | 0 | |||
int(10) | unsigned | PRI | NO | 0 | |||
tinyint(3) | unsigned | NO | 0 | Boolean 0 or 1 (if NegativeCondition 74219362 | |||
mediumint(8) | unsigned | NO | 0 | ||||
mediumint(8) | unsigned | NO | 0 | ||||
char(64) | signed | NO | ' ' | ||||
varchar(255) | YES | NULL |
Description of the fields
...
SourceTypeOrReferenceId | ID | SourceGroup | SourceEntry | SourceId | ConditionTarget | Notes |
---|---|---|---|---|---|---|
CONDITION_SOURCE_TYPE_NONE | 0 | See REFERENCE TEMPLATES | (REFERENCE TEMPLATES74219362) | Always 0 | (See below) | Only used in Reference Templates! See below. |
CONDITION_SOURCE_TYPE_CREATURE_LOOT_TEMPLATE | 1 | creature_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_DISENCHANT_LOOT_TEMPLATE | 2 | disenchant_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_FISHING_LOOT_TEMPLATE | 3 | fishing_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_GAMEOBJECT_LOOT_TEMPLATE | 4 | gameobject_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_ITEM_LOOT_TEMPLATE | 5 | item_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_MAIL_LOOT_TEMPLATE | 6 | mail_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_MILLING_LOOT_TEMPLATE | 7 | milling_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_PICKPOCKETING_LOOT_TEMPLATE | 8 | pickpocketing_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_PROSPECTING_LOOT_TEMPLATE | 9 | prospecting_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_REFERENCE_LOOT_TEMPLATE | 10 | reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_SKINNING_LOOT_TEMPLATE | 11 | skinning_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_SPELL_LOOT_TEMPLATE | 12 | spell_loot_template.Entry or reference_loot_template.Entry | item id (_loot_template.Item or reference_loot_template.Item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_SPELL_IMPLICIT_TARGET | 13 | Mask of effects to be affected by condition: 1 = EFFECT_0, 2 = EFFECT_1, 4 = EFFECT_2 | Spell Id from Spell DBC file | Always 0 | 0 : Potential spell Target | Don't use wowhead to get number of effects, data from wowhead sometimes doesn't match real effect number. |
CONDITION_SOURCE_TYPE_GOSSIP_MENU | 14 | gossip_menu.entry (gossip menu entry) | gossip_menu.text_id (points to npc_text.ID) | Always 0 | 0 = Player | |
CONDITION_SOURCE_TYPE_GOSSIP_MENU_OPTION | 15 | gossip_menu_option.menu_id (menu entry) | gossip_menu_option.id | Always 0 | 0 = Player | |
CONDITION_SOURCE_TYPE_CREATURE_TEMPLATE_VEHICLE | 16 | Always 0 | creature entry (creature_template.entry) | Always 0 | 0 = Player riding vehicle | |
CONDITION_SOURCE_TYPE_SPELL | 17 | Always 0 | Spell ID from Spell.dbc | Always 0 | 0 = spell Caster 1 = Explicit Target of the spell (only for spells which take the object selected by caster into account) |
|
CONDITION_SOURCE_TYPE_SPELL_CLICK_EVENT | 18 | creature entry (npc_spellclick_spells.npc_entry) | Spell (npc_spellclick_spells.spell_id) | Always 0 | 0 = Clicker 1 = Spellclick target (clickee) | |
CONDITION_SOURCE_TYPE_QUEST_AVAILABLE | 19 | Always 0 | Quest ID | Always 0 | Always 0 | Condition must be met for quest to be available to player. |
UNUSED | 20 | |||||
CONDITION_SOURCE_TYPE_VEHICLE_SPELL | 21 | creature entry (creature_template.entry) | Spell ID from Spell.dbc | Always 0 | 0 = Player for whom spell bar is shown 1 = Vehicle creature | This will show or hide spells in vehicle spell bar. |
CONDITION_SOURCE_TYPE_SMART_EVENT | 22 | ID (smart_scripts.id) + 1 | EntryOrGuid (smart_scripts.entryorguid) | SourceType (smart_scripts.source_type) | 0 = Invoker 1 = Object | |
CONDITION_SOURCE_TYPE_NPC_VENDOR | 23 | vendor entry (npc_vendor.entry) | item entry (npc_vendor.item) | Always 0 | Always 0 | |
CONDITION_SOURCE_TYPE_SPELL_PROC | 24 | Always 0 | Spell ID of aura which triggers the proc | Always 0 | 0 = Actor 1 = ActionTarget | |
CONDITION_SOURCE_TYPE_TERRAIN_SWAP (6.x / 7.x only) | 25 | Always 0 | terrainSwap - object in terrainswap [ 6.x / 7.x only ] | Always 0 | (source code / new description here) | |
CONDITION_SOURCE_TYPE_PHASE (6.x / 7.x only) | 26 | Phase ID | Zone or Area ID (or 0 for any area) | Always 0 | (source code / new description here) | |
CONDITION_SOURCE_TYPE_MAX | 27 | (Placeholder) |
...
Allows building grouped conditions - all entries belonging to the same condition (same SourceType, SourceGroup 74219362 and SourceEntry 74219362) that share the same number in ElseGroup, define one group. The entire condition is met when any of its groups is met (logical OR). The group is met when all of its entries are met (logical AND).
...
Panel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
ConditionTarget
...
Id from /src/server/game/Miscellaneous/SharedDefines.h:839. Will be displayed only for the below condition source type:
Panel |
---|
CONDITION_SOURCE_TYPE_SPELL = 17 |
...
Id from /src/server/game/Miscellaneous/SharedDefines.h:1033. Will be displayed only for the below condition source type:
Panel |
---|
CONDITION_SOURCE_TYPE_SPELL = 17 |
...
Explanation of condition types
The content of the SourceGroup 74219362 and SourceEntry 74219362 fields depends on the SourceTypeOrReferenceId 74219362
*CONDITION_SOURCE_TYPE_NONE = 0
...
- ConditionValue1: 0 = Male, 1 = Female, 2 = None
- ConditionValue2: always 0
- ConditionValue3: always 0
*CONDITION_UNIT_STATE = 21
- ConditionValue1: UnitState (enum)
- ConditionValue2: always 0
- ConditionValue3: always 0
...
- ConditionValue1: Creature type (creature_template.type). Condition is true if creature_template.type == ConditionValue1
- ConditionValue2: always 0
- ConditionValue3: always 0
...
- SourceTypeOrReferenceId : used as negative, for reference ID
- SourceGroup : always 0
- SourceEntry : always 0
- ElseGroup : OR modifier
- ConditionTypeOrReference: ConditionTypeOrReference 74219362
- ConditionValue1 : see above
- ConditionValue2 : see above
- ConditionValue3 : see above
- ErrorType : see above
- ErrorTextId : see above
- Comment : see above
...