Gameobject
Таблица gameobject
Таблица gameobject из базы данных world хранит спавны игровых объектов в мире. Связывает GUID спавна с шаблоном объекта (id), картой/зоной/областью и параметрами появления. Используется подсистемой Gameobject System совместно с шаблонами объектов и логикой фазирования/сложностей (зависит от реализации ядра).
| Field | Type | Attributes | Key | Null | Default | Extra |
|---|---|---|---|---|---|---|
| guid | bigint | UNSIGNED | PRIMARY | NO | 0 | |
| id | int | UNSIGNED | NO | 0 | ||
| map | smallint | UNSIGNED | NO | 0 | ||
| zoneId | smallint | UNSIGNED | NO | 0 | ||
| areaId | smallint | UNSIGNED | NO | 0 | ||
| spawnDifficulties | varchar(100) | CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci | NO | '0' | ||
| phaseUseFlags | tinyint | UNSIGNED | NO | 0 | ||
| PhaseId | int | YES | 0 | |||
| PhaseGroup | int | YES | 0 | |||
| terrainSwapMap | int | NO | -1 | |||
| position_x | float | NO | 0 | |||
| position_y | float | NO | 0 | |||
| position_z | float | NO | 0 | |||
| orientation | float | NO | 0 | |||
| rotation0 | float | NO | 0 | |||
| rotation1 | float | NO | 0 | |||
| rotation2 | float | NO | 0 | |||
| rotation3 | float | NO | 0 | |||
| spawntimesecs | int | NO | 0 | |||
| animprogress | tinyint | UNSIGNED | NO | 0 | ||
| state | tinyint | UNSIGNED | NO | 0 | ||
| ScriptName | varchar(64) | CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci | NO | |||
| StringId | varchar(64) | CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci | YES | NULL | ||
| VerifiedBuild | int | NO | 0 |
guid
GUID спавна игрового объекта. Уникально идентифицирует конкретную точку/экземпляр объекта в мире.
Пример: 9000001
id
Идентификатор шаблона игрового объекта. Обычно соответствует gameobject_template.entry и определяет тип/поведение объекта.
Пример: 179965
map
Идентификатор карты (MapID), на которой расположен объект. Определяет, в каком мире/инстансе применяются координаты спавна.
Пример: 0
zoneId
Идентификатор зоны (ZoneID) для спавна. Используется для привязки к зоне и может участвовать в фильтрации/поиске (зависит от реализации ядра).
Пример: 12
areaId
Идентификатор области (AreaID) для спавна. Уточняет локацию внутри зоны; использование зависит от реализации ядра.
Пример: 87
spawnDifficulties
Набор сложностей, на которых объект должен появляться. Хранится строкой; формат списка и интерпретация зависят от реализации ядра.
Пример: 0
phaseUseFlags
Флаги применения фазирования для спавна. Поле используется как набор флагов; конкретные биты и их смысл зависят от реализации ядра.
Пример: 0
PhaseId
ID фазы, в которой должен появляться объект. Используется вместе с фазированием; точная связь с таблицами фаз зависит от реализации ядра.
Пример: 169
PhaseGroup
ID группы фаз для спавна. Используется как альтернативный/дополнительный механизм фазирования; зависит от реализации ядра.
Пример: 3
terrainSwapMap
Идентификатор terrain swap для карты/террейна. Значение -1 обычно означает «не задано»; точная логика применения зависит от реализации ядра.
Пример: -1
position_x
Координата X точки спавна. Используется вместе с position_y, position_z и map.
Пример: -8949.95
position_y
Координата Y точки спавна. Используется вместе с position_x, position_z и map.
Пример: -132.493
position_z
Координата Z точки спавна. Используется вместе с position_x, position_y и map.
Пример: 83.5312
orientation
Ориентация объекта в мире. Для части объектов может использоваться совместно с rotation* (зависит от реализации ядра).
Пример: 1.5708
rotation0
Компонента кватерниона вращения (rotation0). Используется вместе с rotation1, rotation2, rotation3 для точного вращения объекта (зависит от ядра).
Пример: 0
rotation1
Компонента кватерниона вращения (rotation1). Используется вместе с rotation0, rotation2, rotation3.
Пример: 0
rotation2
Компонента кватерниона вращения (rotation2). Используется вместе с rotation0, rotation1, rotation3.
Пример: 0.7071068
rotation3
Компонента кватерниона вращения (rotation3). Используется вместе с rotation0, rotation1, rotation2.
Пример: 0.7071068
spawntimesecs
Время респавна объекта в секундах. Поведение респавна (когда и при каких условиях) зависит от реализации ядра.
Пример: 300
animprogress
Прогресс анимации объекта при спавне. Используется как числовое значение прогресса (часто диапазон 0–255), но трактовка зависит от реализации ядра.
Пример: 255
state
Начальное состояние объекта. Интерпретация значений зависит от реализации ядра и типа объекта (GO state).
Пример: 1
ScriptName
Имя скрипта, привязанного к спавну объекта. Используется системой скриптов; должно соответствовать скрипту, реализованному в ядре.
Пример: go_dark_portal
StringId
Строковый идентификатор спавна. Используется как дополнительная метка (например, для поиска/связей), либо может не применяться — зависит от реализации ядра.
Пример: Portal_Spawn_01
VerifiedBuild
Номер билда, в котором данные были проверены/подтверждены. Используется как служебное поле качества/источника данных; применение зависит от реализации ядра.
Пример: 0