Conversation actors
Таблица conversation_actors
Таблица conversation_actors из базы данных world задаёт список «актеров» (actors) для конкретного разговора (conversation). Актер может быть:
- WorldObject (через конкретный GUID — ConversationActorGuid),
- или «не world object» (визуально отображаемый через CreatureId / CreatureDisplayInfoId),
- или активный игрок (через ActivePlayerObject).
Ключ таблицы — (ConversationId, Idx).
| Field | Type | Attributes | Key | Null | Default | Extra |
|---|---|---|---|---|---|---|
| ConversationId | int | UNSIGNED | PRIMARY | NO | ||
| ConversationActorId | int | UNSIGNED | NO | 0 | ||
| ConversationActorGuid | bigint | UNSIGNED | NO | 0 | ||
| Idx | smallint | UNSIGNED | PRIMARY | NO | 0 | |
| CreatureId | int | UNSIGNED | NO | 0 | ||
| CreatureDisplayInfoId | int | UNSIGNED | NO | 0 | ||
| NoActorObject | tinyint | UNSIGNED | YES | 0 | ||
| ActivePlayerObject | tinyint | UNSIGNED | YES | 0 | ||
| VerifiedBuild | int | UNSIGNED | NO | 0 |
ConversationId
ID разговора (conversation). Обычно соответствует клиентским данным (DB2: Conversation.db2).
Пример: 100
ConversationActorId
ID актёра разговора (ActorID) из клиентских данных (используется клиентом для сопоставления actor-настроек).
Пример: 1
ConversationActorGuid
GUID существа/объекта мира (WorldObject), который участвует в разговоре. Если указан, клиент/сервер может использовать конкретный объект в мире как «актора».
Пример: 123456789
Idx
Порядковый индекс актёра в разговоре. Этот индекс используется как связка с conversation_line_template → ActorIdx.
Пример: 0
CreatureId
Если актёр «не WorldObject», то здесь задаётся creature entry, который нужно показать в окне разговора. Ссылка: creature_template → entry.
Пример: 12345
CreatureDisplayInfoId
DisplayID (DB2: CreatureDisplayInfo.db2), определяющий внешний вид актёра (модель/визуал).
Пример: 98765
NoActorObject
Поведение, если WorldObject (ConversationActorGuid) отсутствует:
| Value | Описание |
|---|---|
| 0 | Если WorldObject отсутствует — разговор прерывается |
| 1 | Если WorldObject отсутствует — разговор продолжается |
Пример: 1
ActivePlayerObject
Кто считается актёром:
| Value | Описание |
|---|---|
| 0 | Актёр — CreatureId или WorldObject |
| 1 | Актёр — активный игрок (ActivePlayer) |
Пример: 0
VerifiedBuild
Служебное поле TrinityDB Team: отметка, из какого client build подтверждены данные.
| Value | Описание |
|---|---|
| 0 | Не проверено/не распарсено |
| >0 | Распарсено из WDB указанного build клиента |
| -1 | Заглушка до появления корректных данных |
| -(Client Build) | Распарсено из WDB указанного build и затем вручную правилось |
Пример: 0