Creature addon

Материал из World of WarCraft Developers Wiki
Перейти к навигации Перейти к поиску

Таблица 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 спавна существа. Ссылка на creatureguid. Запись влияет только на конкретное существо с этим GUID.

Пример: 9000123

PathId

Если существо использует перемещение по маршруту (waypoints), здесь задаётся путь. Ссылка на waypoint_pathPathId.

Пример: 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"