Realmlist

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

Таблица realmlist

Таблица realmlist из базы данных auth определяет список доступных реалмов (миров) для подключения. Каждая строка — отдельный реалм: его имя, адрес/порт, параметры отображения в списке реалмов, допустимая версия клиента и ограничения доступа.

Field Type Attributes Key Null Default Extra
id int UNSIGNED PRIMARY NO AUTO_INCREMENT
name varchar(32) UNIQUE (idx_name) NO
address varchar(255) NO '127.0.0.1'
localAddress varchar(255) NO '127.0.0.1'
address3 varchar(255) YES NULL
address4 varchar(255) YES NULL
localSubnetMask varchar(255) NO '255.255.255.0'
port smallint UNSIGNED NO 8085
icon tinyint UNSIGNED NO 0
flag tinyint UNSIGNED NO 2
timezone tinyint UNSIGNED NO 0
allowedSecurityLevel tinyint UNSIGNED NO 0
population float NO 0
gamebuild int UNSIGNED NO 64978
Region tinyint UNSIGNED NO 1
Battlegroup tinyint UNSIGNED NO 1

id

Уникальный идентификатор реалма. Должен соответствовать значению RealmID в конфигурации worldserver (и используется как внешний идентификатор реалма в других таблицах/логике).

Пример: 1

name

Отображаемое имя реалма в списке реалмов и на экране выбора персонажа. Должно быть уникальным.

Пример: 'My Realm'

address

Публичный (WAN) или локальный (LAN) адрес worldserver, по которому клиенты будут подключаться к реалму (обычно внешний IP или домен).

Пример: '203.0.113.10'

localAddress

Локальный адрес realma (LAN), который может использоваться клиентами из «внутренней» сети (например, 192.168.x.x), чтобы не гонять трафик через внешний IP.

Пример: '192.168.0.10'

address3

Дополнительный адрес реалма (альтернативная точка подключения). Может использоваться для нестандартных сетевых схем/переключения адресов. Если не требуется — NULL.

Пример: NULL

address4

Ещё один дополнительный адрес реалма (альтернативная точка подключения). Если не требуется — NULL.

Пример: NULL

localSubnetMask

Маска подсети для определения «локальности» клиента. Обычно используется вместе с localAddress: если IP клиента попадает в указанную подсеть, сервер может отдавать ему localAddress вместо address.

Пример: '255.255.255.0'

port

Порт worldserver, на котором реалм принимает соединения.

Пример: 8085

icon

Тип (иконка) реалма в списке реалмов.

Value Тип
0 Normal
1 PvP
4 Normal (вариант клиента)
6 RP
8 RP PvP
16 FFA PvP (free-for-all)

Пример: 0

flag

Флаги состояния реалма (битовая маска). Значение может быть суммой нескольких флагов.

Decimal Hex Значение
0 0x00 Нет флагов
1 0x01 Version mismatch / invalid (клиент видит реалм как несовместимый)
2 0x02 Offline (реалм оффлайн)
4 0x04 Specify build (использовать поле gamebuild для проверки версии)
8 0x08 UNK1 (зарезервировано/не документировано в публичных гайдах)
16 0x10 UNK2 (зарезервировано/не документировано в публичных гайдах)
32 0x20 Recommended
64 0x40 New
128 0x80 Full

Пример: 2

timezone

Идентификатор «вкладки/категории» (timezone) для отображения реалма в списке реалмов (исторически соответствует категориям клиента).

Value Название
0 (не задано / по умолчанию)
1 Development
2 United States
3 Oceanic
4 Latin America
5 Tournament
6 Korea
7 Tournament
8 English
9 German
10 French
11 Spanish
12 Russian
13 Tournament
14 Taiwan
15 Tournament
16 China
17 CN1
18 CN2
19 CN3
20 CN4
21 CN5
22 CN6
23 CN7
24 CN8
25 Tournament
26 Test Server
27 Tournament
28 (не используется/пусто)
29 CN9
30 Test Server 2
31 CN10
32 CTC
33 CNC
34 CN1/4
35 CN2/6/9
36 CN3/7
37 Russian Tournament
38 CN5/8
39 CN11
40 CN12
41 CN13
42 CN14
43 CN15
44 CN16
45 CN17
46 CN18
47 CN19
48 CN20
49 Brazil
50 Italian
51 Hyrule
52 QA2 Test
53 (не используется/пусто)
54 (не используется/пусто)
55 Recommended Realm
56 Test
57 Recommended Realm
58 (не используется/пусто)
59 Future Test

Пример: 12

allowedSecurityLevel

Минимальный уровень доступа (security level / gmlevel), необходимый аккаунту для входа на реалм. Если уровень аккаунта ниже — реалм будет недоступен.

Value Уровень
0 Player
1 Moderator / GM (низкий)
2 Game Master
3 Administrator

Пример: 0

population

Текущее значение «населённости» реалма (float). Обычно обновляется автоматически. Используется для отображения статуса Low/Medium/High в списке реалмов.

Пример: 0

gamebuild

Разрешённый build клиента для подключения к реалму. Обычно соответствует одному из значений build в таблицах build_info / build_auth_key (и связанным данным о версии клиента).

Пример: 64978

Region

Идентификатор региона (используется клиентом/порталом для классификации). Известные значения:

Value Регион
1 US (включая Brazil и Oceania)
2 Korea
3 Europe (включая Russia)
4 Taiwan
5 China

Пример: 3

Battlegroup

Идентификатор battlegroup (группы реалмов) — исторически использовался для кросс-реалм активностей/группировки. В большинстве приватных сетапов обычно оставляют значение 1, если нет необходимости делить реалмы на разные группы.

Пример: 1