Creature addon
Таблица creature_addon
Таблица creature_addon из базы данных world задаёт «доп. параметры» (addon) для конкретного спавна существа (по GUID): маунт, стойку, анимационные наборы (AnimKit), видимость, PvP-флаги, постоянную эмоцию и ауры.
Важно:
- creature_template_addon применяется ко всем существам данного entry (шаблона).
- creature_addon применяется к конкретному GUID и перекрывает значения из creature_template_addon, если они пересекаются.
| Field | Type | Attributes | Key | Null | Default | Extra |
|---|---|---|---|---|---|---|
| guid | bigint | UNSIGNED | PRIMARY | NO | 0 | |
| PathId | int | UNSIGNED | NO | 0 | ||
| mount | int | UNSIGNED | NO | 0 | ||
| MountCreatureID | int | UNSIGNED | NO | 0 | ||
| StandState | tinyint | UNSIGNED | NO | 0 | ||
| AnimTier | tinyint | UNSIGNED | NO | 0 | ||
| VisFlags | tinyint | UNSIGNED | NO | 0 | ||
| SheathState | tinyint | UNSIGNED | NO | 1 | ||
| PvPFlags | tinyint | UNSIGNED | NO | 0 | ||
| emote | int | UNSIGNED | NO | 0 | ||
| aiAnimKit | smallint | NO | 0 | |||
| movementAnimKit | smallint | NO | 0 | |||
| meleeAnimKit | smallint | NO | 0 | |||
| visibilityDistanceType | tinyint | UNSIGNED | NO | 0 | ||
| auras | mediumtext | utf8mb4_unicode_ci | YES | NULL |
guid
GUID спавна существа. Ссылка на creature → guid. Запись влияет только на конкретное существо с этим GUID.
Пример: 9000123
PathId
Если существо использует перемещение по маршруту (waypoints), здесь задаётся путь. Ссылка на waypoint_path → PathId.
Пример: 101
mount
ID модели маунта (mount display), чтобы существо выглядело «верхом».
Перекрывает значение unit-поля UNIT_FIELD_MOUNTDISPLAYID.
| Value | Описание |
|---|---|
| 0 | Маунт не задан |
| >0 | DisplayID маунта (mount model) |
Пример: 14337
MountCreatureID
Entry существа, на котором «сидит» данный спавн (маунт как creature). Используется как альтернативный способ задания маунта через creature entry.
| Value | Описание |
|---|---|
| 0 | Не задано |
| >0 | creature_template.entry маунта |
Пример: 12345
StandState
Стойка/поза существа при загрузке.
| Name | Value |
|---|---|
| UNIT_STAND_STATE_STAND | 0 |
| UNIT_STAND_STATE_SIT | 1 |
| UNIT_STAND_STATE_SIT_CHAIR | 2 |
| UNIT_STAND_STATE_SLEEP | 3 |
| UNIT_STAND_STATE_SIT_LOW_CHAIR | 4 |
| UNIT_STAND_STATE_SIT_MEDIUM_CHAIR | 5 |
| UNIT_STAND_STATE_SIT_HIGH_CHAIR | 6 |
| UNIT_STAND_STATE_DEAD | 7 |
| UNIT_STAND_STATE_KNEEL | 8 |
| UNIT_STAND_STATE_SUBMERGED | 9 |
Пример: 1
AnimTier
«Тир» анимаций (уровень набора анимаций).
| Name | Value | Описание |
|---|---|---|
| Ground | 0 | Наземные анимации |
| Swim | 1 | Откат к наземным; клиентом не обрабатывается (не должен встречаться в sniff’ах) |
| Hover | 2 | Летающие анимации или откат к наземным; клиент включает hover при появлении |
| Fly | 3 | Летающие анимации |
| Submerged | 4 | Под водой (особый режим) |
Пример: 0
VisFlags
Флаги видимости (битовая маска).
| Name | Flag (hex) |
|---|---|
| UNIT_VIS_FLAGS_INVISIBLE | 0x01 |
| UNIT_VIS_FLAGS_STEALTHED | 0x02 |
| UNIT_VIS_FLAGS_UNTRACKABLE | 0x04 |
| UNIT_VIS_FLAGS_UNK4 | 0x08 |
| UNIT_VIS_FLAGS_UNK5 | 0x10 |
Пример: 0x01
SheathState
Состояние оружия (в ножнах/в руках).
| Name | Value | Описание |
|---|---|---|
| SHEATH_STATE_UNARMED | 0 | Оружие не подготовлено |
| SHEATH_STATE_MELEE | 1 | Подготовлено оружие ближнего боя |
| SHEATH_STATE_RANGED | 2 | Подготовлено дальнобойное оружие |
Пример: 1
PvPFlags
PvP-флаги (битовая маска) — состояние PvP/FFA/Sanctuary и т.п.
| Name | Flag (hex) |
|---|---|
| UNIT_BYTE2_FLAG_NONE | 0x00 |
| UNIT_BYTE2_FLAG_PVP | 0x01 |
| UNIT_BYTE2_FLAG_UNK1 | 0x02 |
| UNIT_BYTE2_FLAG_FFA_PVP | 0x04 |
| UNIT_BYTE2_FLAG_SANCTUARY | 0x08 |
| UNIT_BYTE2_FLAG_UNK4 | 0x10 |
| UNIT_BYTE2_FLAG_UNK5 | 0x20 |
| UNIT_BYTE2_FLAG_UNK6 | 0x40 |
| UNIT_BYTE2_FLAG_UNK7 | 0x80 |
Пример: 0x01
emote
ID эмоции (emote), которую существо будет постоянно проигрывать.
| Value | Описание |
|---|---|
| 0 | Не проигрывать постоянную эмоцию |
| >0 | ID эмоции (Emotes.db2) |
Пример: 10
aiAnimKit
ID набора анимаций (AnimKit), применяемого при спавне (AI AnimKit).
Источник: клиентские данные (DB2: AnimKit.db2).
Пример: 250
movementAnimKit
ID набора анимаций (AnimKit), применяемого при спавне (Movement AnimKit).
Источник: клиентские данные (DB2: AnimKit.db2).
Пример: 0
meleeAnimKit
ID набора анимаций (AnimKit), применяемого при спавне (Melee AnimKit).
Источник: клиентские данные (DB2: AnimKit.db2).
Пример: 0
visibilityDistanceType
Тип дистанции видимости для существа.
| Name | Value | Дистанция (пример) |
|---|---|---|
| Normal | 0 | ~100 ярдов (по умолчанию на континентах) |
| Tiny | 1 | 25 ярдов |
| Small | 2 | 50 ярдов |
| Large | 3 | 200 ярдов |
| Gigantic | 4 | 400 ярдов |
| Infinite | 5 | Максимум (SIZE_OF_GRIDS) |
Пример: 3
auras
Список аур (SpellID), которые нужно применить к существу при загрузке/спавне. Формат: SpellID через пробел. Поле влияет и на механику, и на визуальные эффекты.
Пример: "16380 18950"