Back to 'command' Return to world Go to 'creature'
| Field | Type | Attributes | Key | Null | Default | Extra | Comment |
|---|---|---|---|---|---|---|---|
| SourceTypeOrReferenceId | int | signed | PRI | NO | 0 | ||
| SourceGroup | int | unsigned | PRI | NO | 0 | ||
| SourceEntry | int | signed | PRI | NO | 0 | ||
| SourceId | int | signed | PRI | NO | 0 | ||
| ElseGroup | int | unsigned | PRI | NO | 0 | ||
| ConditionTypeOrReference | int | signed | PRI | NO | 0 | ||
| ConditionTarget | tinyint | unsigned | PRI | NO | 0 | ||
| ConditionValue1 | int | unsigned | PRI | NO | 0 | ||
| ConditionValue2 | int | unsigned | PRI | NO | 0 | ||
| ConditionValue3 | int | unsigned | PRI | NO | 0 | ||
| ConditionStringValue1 | varchar(64) | PRI | NO | '' | |||
| NegativeCondition | tinyint | unsigned | NO | 0 | |||
| ErrorType | int | unsigned | NO | 0 | |||
| ErrorTextId | int | unsigned | NO | 0 | |||
| ScriptName | char(64) | NO | '' | ||||
| Comment | varchar(255) | YES | NULL |
000000000000000000000000| EFFECT_0 | 0x1 |
| EFFECT_1 | 0x2 |
| EFFECT_2 | 0x4 |
0Don't use wowhead to get number of effects, data from wowhead sometimes doesn't match real effect number.
000000This source type allows you to define caster/explicit target requirements for spell to be cast.
Explicit target of the spell is the target which is selected by player during cast, not all spells take that target into account. Non-explicit targets of the spell (the ones which are selected by spell like area or nearby targets for example) are not affected by this condition source type, if you want to affect those use CONDITION_SOURCE_TYPE_SPELL_IMPLICIT_TARGET (13) instead.
If you are looking for old CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET, use this condition source type instead (ConditionTarget = 1 allows you to set requirements for a given spell, so to use this condition type you need spellid of the spell cast on item use).
Remember that conditions with the same ElseGroup value will be used to make logical AND check, so to allow different targets for the same spell effect you have to set ElseGroup respectively.
0000Condition must be met for quest to be available to player.
UNUSED
0This will show or hide spells in vehicle spell bar.
00000RESERVED master branch
0RESERVED master branch
00RESERVED master branch
0Note: this refers to dynamically spawned areatriggers, not the ones from AreaTrigger.dbc/db2
RESERVED master branch
00RESERVED master branch
000RESERVED master branch
0RESERVED master branch
RESERVED master branch
Allows building grouped conditions - all entries belonging to the same condition (same SourceType, SourceGroup and SourceEntry) 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).
Example:
Two conditions with the same SourceType, SourceGroup and SourceEntry but with a different Condition, the first one has ElseGroup = 1 and the second has ElseGroup = 2, this creates a Logical OR.
Two conditions with the same SourceType, SourceGroup and SourceEntry but with a different Condition, both has ElseGroup = 1, this creates a Logical AND.
always true
0-true if target has aura from spell with effect index
-true if has count of item (if ConditionValue3 is set it searches in bank slots too)
00-true if has item equipped
00-true if in zone
enum ReputationRank
| Value | Flag | Name |
|---|---|---|
| 1 | 0x01 | REP_HATED |
| 2 | 0x02 | REP_HOSTILE |
| 4 | 0x04 | REP_UNFRIENDLY |
| 8 | 0x08 | REP_NEUTRAL |
| 16 | 0x10 | REP_FRIENDLY |
| 32 | 0x20 | REP_HONORED |
| 64 | 0x40 | REP_REVERED |
| 128 | 0x80 | REP_EXALTED |
0-00-0-00-true if quest was rewarded before
00-true while quest active
enum DrunkenState
| DRUNKEN_SOBER | 0 |
| DRUNKEN_TIPSY | 1 |
| DRUNKEN_DRUNK | 2 |
| DRUNKEN_SMASHED | 3 |
00-true if player is drunk enough
0-true if world has the value for the index
00-true if event is active
enum InstanceInfo
| INSTANCE_INFO_DATA | 0 |
| INSTANCE_INFO_GUID_DATA | 1 |
| INSTANCE_INFO_BOSS_STATE | 2 |
| INSTANCE_INFO_DATA64 | 3 |
-true if the instance info defined by ConditionValue3 equals data.
00-true if doesn't have quest saved
00-true if player's class is equal to class
00-true if player's race is equal to race
00-true if achievement is complete
00-true if player has title
00-true if in spawnMask
enum Gender
| GENDER_MALE | 0 |
| GENDER_FEMALE | 1 |
| GENDER_NONE | 2 |
00-true if player's gender is equal to gender
enum UnitState
| Value | Flag | Name | Comment |
|---|---|---|---|
| 1 | 0x00000001 | UNIT_STATE_DIED | player has fake death aura |
| 2 | 0x00000002 | UNIT_STATE_MELEE_ATTACKING | player is melee attacking someone |
| 4 | 0x00000004 | UNIT_STATE_CHARMED | having any kind of charm aura on self |
| 8 | 0x00000008 | UNIT_STATE_STUNNED | |
| 16 | 0x00000010 | UNIT_STATE_ROAMING | |
| 32 | 0x00000020 | UNIT_STATE_CHASE | |
| 64 | 0x00000040 | UNIT_STATE_FOCUSING | |
| 128 | 0x00000080 | UNIT_STATE_FLEEING | |
| 256 | 0x00000100 | UNIT_STATE_IN_FLIGHT | player is in flight mode |
| 512 | 0x00000200 | UNIT_STATE_FOLLOW | |
| 1024 | 0x00000400 | UNIT_STATE_ROOT | |
| 2048 | 0x00000800 | UNIT_STATE_CONFUSED | |
| 4096 | 0x00001000 | UNIT_STATE_DISTRACTED | |
| 8192 | 0x00002000 | UNIT_STATE_ISOLATED | area auras do not affect other players |
| 16384 | 0x00004000 | UNIT_STATE_ATTACK_PLAYER | |
| 32768 | 0x00008000 | UNIT_STATE_CASTING | |
| 65536 | 0x00010000 | UNIT_STATE_POSSESSED | being possessed by another unit |
| 131072 | 0x00020000 | UNIT_STATE_CHARGING | |
| 262144 | 0x00040000 | UNIT_STATE_JUMPING | |
| 524288 | 0x00080000 | UNIT_STATE_FOLLOW_FORMATION | |
| 1048576 | 0x00100000 | UNIT_STATE_MOVE | |
| 2097152 | 0x00200000 | UNIT_STATE_ROTATING | |
| 4194304 | 0x00400000 | UNIT_STATE_EVADE | |
| 8388608 | 0x00800000 | UNIT_STATE_ROAMING_MOVE | |
| 16777216 | 0x01000000 | UNIT_STATE_CONFUSED_MOVE | |
| 33554432 | 0x02000000 | UNIT_STATE_FLEEING_MOVE | |
| 67108864 | 0x04000000 | UNIT_STATE_CHASE_MOVE | |
| 134217728 | 0x08000000 | UNIT_STATE_FOLLOW_MOVE | |
| 268435456 | 0x10000000 | UNIT_STATE_IGNORE_PATHFINDING | do not use pathfinding in any MovementGenerator |
| 536870912 | 0x20000000 | UNIT_STATE_FOLLOW_FORMATION_MOVE |
00-true if unit has unitState
00-true if in map
00-true if in area
00-true if creature type = value1
00-true if player has learned spell
00-true if object is in phasemask
0-true if unit's level is equal to ConditionValue1 (ConditionValue2 can modify the statement)
00-true if player has quest with all objectives complete, but not yet rewarded
-true if there is a creature of entry in range
0-true if there is a gameobject of entry in range
-true if object is type TypeID and the entry is 0 or matches entry of the object or matches guid of the object
| Value | Flag | Name |
|---|---|---|
| 8 | 0x08 | TYPEMASK_UNIT |
| 16 | 0x10 | TYPEMASK_PLAYER |
| 32 | 0x20 | TYPEMASK_GAMEOBJECT |
| 128 | 0x80 | TYPEMASK_CORPSE (player corpse after spirit release) |
00-true if object's TypeMask matches provided TypeMask
enum RelationType - defines relation of current ConditionTarget to target specified in ConditionValue1.
| 0 | RELATION_SELF | |
| 1 | RELATION_IN_PARTY | |
| 2 | RELATION_IN_RAID_OR_PARTY | |
| 3 | RELATION_OWNED_BY | ConditionTarget is owned by ConditionValue1 |
| 4 | RELATION_PASSENGER_OF | ConditionTarget is passenger of ConditionValue1 |
| 5 | RELATION_CREATED_BY | ConditionTarget is summoned by ConditionValue1 |
0-true if object is in given relation with object specified by ConditionTarget
enum ReputationRank
| Value | Flag | Name |
|---|---|---|
| 1 | 0x01 | REP_HATED |
| 2 | 0x02 | REP_HOSTILE |
| 4 | 0x04 | REP_UNFRIENDLY |
| 8 | 0x08 | REP_NEUTRAL |
| 16 | 0x10 | REP_FRIENDLY |
| 32 | 0x20 | REP_HONORED |
| 64 | 0x40 | REP_REVERED |
| 128 | 0x80 | REP_EXALTED |
0-true if object's reaction matches rankMask object specified by ConditionTarget
-true if object and ConditionTarget are within distance given by parameters
000-Use NegativeCondition to test for the inverse:
Note: A creature corpse and a creature that looks dead are two different things. One is actually dead and the other is just using an emote to appear dead.
true if unit is alive
0-true if unit's hp matches given value
0-true if unit's hp matches given pct
00-true if realm achievement is complete
000-Use NegativeCondition to test for the inverse:
true if unit in water
00-RESERVED master branch
true if object is in terrainswap
enum UnitStandStateType0-true if unit matches specified sitstate
00-true if daily quest has been completed for the day
000-true if unit is currently charmed
00-true if player has a pet of given type(s)
000-true if player is on taxi
enum QuestStatus
| Value | Flag | Name |
|---|---|---|
| 1 | 0x01 | QUEST_STATUS_NONE |
| 2 | 0x02 | QUEST_STATUS_COMPLETE |
| 8 | 0x08 | QUEST_STATUS_INCOMPLETE |
| 32 | 0x20 | QUEST_STATUS_FAILED |
| 64 | 0x40 | QUEST_STATUS_REWARDED |
0-true if player is in any of the provided quest states for the quest
-true if player has reached the specified objectiveCount quest progress for the objectiveIndex for the specified quest
enum Difficulty
| Raid | Dungeon | Value |
|---|---|---|
| RAID_DIFFICULTY_10MAN_NORMAL | DUNGEON_DIFFICULTY_NORMAL | 0 |
| RAID_DIFFICULTY_25MAN_NORMAL | DUNGEON_DIFFICULTY_HEROIC | 1 |
| RAID_DIFFICULTY_10MAN_HEROIC | 2 | |
| RAID_DIFFICULTY_25MAN_HEROIC | 3 |
00-true if map has difficulty id
00-true if player is gamemaster (or can be gamemaster)
-RESERVED master branch
true if object is type TypeID and the entry is 0 or matches entry of the object or matches guid of the object
00-RESERVED master branch
true if object is type object's TypeMask matches provided TypeMask using master branch TypeMask
-RESERVED master branch
true if player has count of battle pet species
00-RESERVED master branch
true if object is at scenario with current step equal to ScenarioStepID
00-RESERVED master branch
true if player is playing a scene with ScriptPackageId equal to given value
00-RESERVED master branch
true if player satisfies PlayerCondition
000-RESERVED master branch
true if entity is private object
000true if gameobject or creature has StringId
000-RESERVED master branch
ConditionTypeOrReference:
CONDITION_GROUP_STATUS (60)
ConditionValue1:
enum class GroupStatusCondition
| id | Name | is solo | in party | in raid |
|---|---|---|---|---|
| 0 | NotInGroup | ✅ | ❌ | ❌ |
| 1 | InGroup | ❌ | ✅ | ✅ |
| 2 | InGroupButNotInRaid | ❌ | ✅ | ❌ |
| 3 | InRaid | ❌ | ❌ | ✅ |
| 4 | NotInGroupOrNotInRaid | ✅ | ✅ | ❌ |
ConditionValue2:
0
ConditionValue3:
0
ConditionStringValue1:
-
true if group status matches player
| 0 | == | COMP_TYPE_EQ | ConditionType must be equal to ConditionValue |
| 1 | > | COMP_TYPE_HIGH | ConditionType must be higher than ConditionValue |
| 2 | < | COMP_TYPE_LOW | ConditionType must be lower than ConditionValue |
| 3 | >= | COMP_TYPE_HIGH_EQ | ConditionType must be higher or equal to ConditionValue |
| 4 | <= | COMP_TYPE_LOW_EQ | ConditionType must be lower or equal to ConditionValue |
Allows selecting an object for which conditions will be checked. Available objects are dependant on SourceTypeOrReferenceId, for details see respective source type reference.
If set to 1, the condition will be "inverted"
Example: CONDITION_AURA (1) with NegativeCondition will be true when the player does NOT have the aura.
Id from /src/server/shared/SharedDefines.h#L977. Will be displayed only for the below condition source type:
CONDITION_SOURCE_TYPE_SPELL (17)
Id from /src/server/shared/SharedDefines.h#L1171. Will be displayed only for the below condition source type:
CONDITION_SOURCE_TYPE_SPELL (17)
(ErrorType must be SPELL_FAILED_CUSTOM_ERROR (211) otherwise 0)
The ScriptName this condition uses, if any.
Explanation of this condition or reference