Account last played character
Таблица account_last_played_character
Таблица account_last_played_character из базы данных auth хранит сведения о последнем персонаже, на котором играл аккаунт, с привязкой к параметрам Battle.net-окружения (region/battlegroup) и реалму. Используется как служебная таблица для восстановления “последнего выбранного персонажа” и связанных данных при входе/выборе мира.
Структура таблицы
| Field | Type | Attributes | Key | Null | Default | Extra |
|---|---|---|---|---|---|---|
| accountId | int | UNSIGNED | PRIMARY (accountId, region, battlegroup) | NO | ||
| region | tinyint | UNSIGNED | PRIMARY (accountId, region, battlegroup) | NO | ||
| battlegroup | tinyint | UNSIGNED | PRIMARY (accountId, region, battlegroup) | NO | ||
| realmId | int | UNSIGNED | YES | NULL | ||
| characterName | varchar(12) | CHARACTER SET utf8mb4, COLLATE utf8mb4_unicode_ci | YES | NULL | ||
| characterGUID | bigint | UNSIGNED | YES | NULL | ||
| lastPlayedTime | int | UNSIGNED | YES | NULL |
accountId
ID аккаунта, к которому относится запись. Обычно соответствует `account.id`.
Пример: 42
region
Идентификатор региона Battle.net/портала (служебное значение, используемое для разделения окружений). Это не “география игрока”, а код региона инфраструктуры/портала, с которым работает клиент/логин-часть.
Возможные значения (общеизвестные идентификаторы регионов в WoW-клиенте):
| Value | Region | Примечание |
|---|---|---|
| 1 | US | США (включая Brazil и Oceania) |
| 2 | Korea | Южная Корея |
| 3 | Europe | Европа (включая Россию) |
| 4 | Taiwan | Тайвань |
| 5 | China | Китай |
Пример: 3
battlegroup
Идентификатор “батлгруппы/подрегиона” внутри выбранного `region` (служебное значение). Исторически использовалось для разделения внутри региона (например, разные “subregion/realm group”).
Важно:
- Во многих сборках/ядрах поле может практически не влиять на логику и часто остаётся значением по умолчанию (например, `1`), но структура таблицы всё равно хранит его как часть составного ключа.
Типовой пример “подрегионов” (как подмножества внутри региона), встречающийся в Blizzard API (legacy-схемах):
| Region (пример) | battlegroup | Значение |
|---|---|---|
| US/AMERICAS | 1 | US |
| US/AMERICAS | 2 | Latin America |
| EU | 1 | Europe |
| EU | 2 | Russia |
| KR/TW | 1 | Korea |
| KR/TW | 2 | Taiwan |
Пример: 1
realmId
ID реалма, на котором находился последний персонаж (или реалм, к которому относится запись). Может быть NULL, если данные ещё не заполнены.
Пример: 1
characterName
Имя последнего персонажа, на котором играл аккаунт. Может быть NULL.
Примечание: `varchar(12)` соответствует типовой максимальной длине имени персонажа в схемах ядра.
Пример: Thrall
characterGUID
GUID (уникальный идентификатор) последнего персонажа. Может быть NULL.
Пример: 123456789
lastPlayedTime
Время последней игры на этом персонаже в виде целого числа (как правило, Unix timestamp в секундах). Может быть NULL.
Пример: 1700000000