Miker
|
Дата: Понедельник, 23.04.2012, 21:41 | Сообщение # 1 |
| Ну что ж, начнем! Сегодня буду описывать вам самую простую из баз данных для SkyFire, а именно auth.
В базе auth 8 таблиц: 1. account - по названию всё понятно, данная таблица содержит информацию об учетных записях пользователей/игроков. 2. account_access - данная таблица отвечает за доступ на сервере. 3. account_banned - по названию понятно, что данная таблица отвечает за информацию о заблокированных учетных записях. 4. ip_banned - таблица отвечающая за информацию о заблокированных IP-адресах. 5. realmcharacters - данная таблица содержит информацию о количестве персонажей каждого аккаунта на каждом реалме. 6. logs - в данной таблице содержаться логи сервера, если EnableLogDB в конфигах(authserver.conf) включен. 7. realmlist - в данной таблице содержится вся необходимая информация о реалмах. 8. uptime - данная таблица содержит время работы всех реалмов.
account
Структура
Описание полей: id Уникальный идентификатор аккаунта. username Название аккаунта. sha_pass_hash Это поле содержит зашифрованную методом SHA1 пару «логин, пароль». Хеш создается методом конкатенации логина и пароля в верхнем регистре, используя двоеточие как разделитель.. Запрос, создающий логин и пароль:
Code SELECT SHA1(CONCAT(UPPER(`username`), ':', UPPER(<pass>)));
v Это серверный верификатор пароля, используемый в SRP во время авторизации клиента. Если вы хотите сменить пароль аккаунта, вы должны установить пустое значение или ноль в это поле. s Это серверная «соль» пароля, используемая в SRP во время авторизации клиента. Если вы хотите сменить пароль аккаунта, вы должны установить пустое значение или ноль в это поле. email e-mail, присвоеный учетной записи при регистрации. joindate Дата регистрации (создания аккаунта). last_ip IP адрес, с которого последний раз заходили на данный аккаунт failed_logins Количество неверных попыток ввода аккаунта. locked Логическое значение 0 или 1 устанавливающее или снимающее блокировку аккаунта. (.account lock on\off в игре). last_login Дата последнего входа. online Логическое значение 0 или 1 которое показывает, находятся ли персонажи на данном аккаунте в игре. expansion Логическое значение 0 или 0 показывающее тип дополнения (для Skyfire значение должно быть 3) mutetime Время, в Unix-формате, когда с аккаунта будет снят mute (лишение всех персонажей на аккаунте возможности печатать сообщения и клиентские команды во всех чатах, активируется через .mute в игре). Чтобы посмотреть, сколько осталось времени до снятия блокировки чата выполните запрос:
Code SELECT FROM_UNIXTIME(`mutetime`);
locale Язык игрового клиента, используемого при входе на этот Аккаунт. Если указано несколько языков, будет выбираться язык клиента.
account_access
Структура
Описание полей id Идентификатор аккаунта из таблице account поле ID. gmlevel Уровень доступа учетной записи. Различные уровни имеют доступ к различным командам. Уровни для команд задаются в таблице command(описание будет чуть позже), которая для каждого реалма отдельная. RealmID Номер реалма, на котором будет действовать данный уровень доступа(если -1 то для всех). Смотрите в таблице realmlist поле ID.
account_banned
Структура
Описание полей id Идентификатор аккаунта. Смотрите в таблице account поле id. bandate Дата выдачи бана аккаунту, в Unix-формате. unbandate ата снятия бана с аккаунта в Unix-формате. Если в этом поле значение меньше даты выдачи - бан выдается перманентно(навсегда). bannedby Ник забанившего аккаунт. Персонаж должен иметь аккаунт с правами на команду .ban в игре. banreason Причина, по которой забанен аккаунт. active Логическое значение 0 или 1 устанавливающее активен бан или нет.
ip_banned
Структура
Описание полей ip Забаненный IP адрес. bandate Дата выдачи бана IP адресу, в Unix-формате. unbandate Дата снятия бана с IP адреса в Unix-формате. Если в этом поле значение меньше даты выдачи - бан выдается перманентно(навсегда). bannedby ик забанившего IP адрес. Персонаж должен иметь аккаунт с правами на комманду .ban в игре. banreason Причина, по которой забанен IP адрес.
logs
Структура
Описание полей time Дата в Unix-формате, когда произошла запись в базу данных. realm Номер реалма, для которого будут сохранятся логи. Смотрите в таблице Realmlist поле ID. type Тип логов выглядит так:
Code LOG_TYPE_STRING = 0 --- нормальные информативные строки LOG_TYPE_ERROR = 1 --- какая-то ошибка LOG_TYPE_BASIC = 2 --- основная информация LOG_TYPE_DETAIL = 3 --- подробная информация LOG_TYPE_DEBUG = 4 --- отладочная информация LOG_TYPE_CHAR = 5 --- информация о персонаже LOG_TYPE_WORLD = 6 --- дамп пакетов LOG_TYPE_RA = 7 --- удаленный доступ к логам LOG_TYPE_GM = 8 --- логи Гм команд LOG_TYPE_CRASH = 9 --- логи крашей LOG_TYPE_CHAT = 10 -- логи чата
realmcharacters
Структура
realmid Идентификатор реалма. Смотрите в таблице realmlist поле id acctid Идентификатор аккаунта. Смотрите в таблице account поле id numchars Количество персонажей данного аккаунта на данном реалме.
realmlist
Структура
Description of the fields id Идентификатор реалма. Этот номер является уникальным для каждого реалма и он должен соотноситься со значением RealmID в worldserver.conf. name Название реалма. Это название появится в списке выбора миров, а также в окне выбора персонажа. address IP адрес для подключения клиентов из сети. Значение 127.0.0.1 по-умолчанию делает доступным сервер только локально (с той же машины). port Порт для подключения к серверу. Если все сервера(будь то Fun\High Rate\Blizzlike или же сервера для различных версий клиента) находятся на одной машине, они должны иметь разные порты. icon Иконка реалма. Значение: 0 - Normal; 1 - PvP; 4 - Normal; 6 - RP; 8 - RP PvP color Цвет обозначает как "полный", который будет отображаться при выборе реалма. timezone Часовой пояс реалма. Если в реалмлисте присутствуют реалмы с различными timezone, они будут отображаться в разных вкладках, а при первом входе на сервер клиенту будет предложена выбрать один из доступных часовых поясов. allowedSecurityLevel Минимальный gmlevel необходимый для вход в мир. population Нынешняя населенность мира, обновляется автоматически. Формула для вычисления значения в этой области: "КоличествоИгроков" / "МаксимальноеКоличествоИгроков" * 2. gamebuild Позволяет отображать реалмы различных версий клиента в одном реалмлисте. Для SkyFire все билды катаклизма.
uptime
Структура
Описание полей realmid Идентификатор реалма. Смотрите в таблице realmlist поле id starttime ремя, когда сервер был запущен: в Unix формате. startstring Время, когда сервер был запущен: в формате читаемой строки. uptime Время работы сервера, в секундах. maxplayers Максимальный онлайн. revision Ревизия ядра.
|
|
| |
joker12
|
Дата: Воскресенье, 24.06.2012, 03:58 | Сообщение # 2 |
Скаут
Сообщений: 13
| sdsd ds dsds
|
|
| |
fletronuk
|
Дата: Суббота, 17.11.2012, 11:55 | Сообщение # 3 |
Скаут
Сообщений: 21
| спс
|
|
| |
samic11
|
Дата: Воскресенье, 20.01.2013, 17:53 | Сообщение # 4 |
Сержант
Сообщений: 52
| Форум Читы Свежие баги Топ серверов Программы bee-wow.com Заходим
Bee-wow.com
|
|
| |