Тема: Разбор authserver.conf/bnetserver.conf

Доброго времени суток!

Конфигурационный файл authserver.conf (bnetserver.conf в дополнении Warlords of Draenor) это файл настройки сервера авторизации.


Здесь я разберу что в этом файле зачем и как с ним работать.

Пример этого файла из WoD можно посмотреть - тут.


Теперь всё по порядку. Символ «решётки» # — обозначает, что сразу после него в той же строке идёт комментарий, который не влияет на работу сервера.



I. Настройки сервера авторизации

LogsDir = ""

Между кавычек указываем директорию в которой будут находиться логи сервера. В данном случае они будут просто помещаться в эту же папку.


MaxPingTime = 30

Время в минутах, между проверкой соединения с MySQL.


WorldserverListenPort = 1118

Порт для межпроцессного обмена пакетами данных с worldserver.


BattlenetPort = 1119

Порт для соединения между authserver и battle.net.


BindIP = "0.0.0.0"

Привязка к какому-то конкретному ip-адресу. В данном случае привязка осуществляется ко всем ip системы.


PidFile = ""

Директория, содержащая PID-файл. (файл, содержащий информацию, например о id процессов). В данном случае он отключён.


UseProcessors = 0

Маска процессора для мультипроцессорных систем Windows и Linux. В данном случае выбирается автоматически.


ProcessPriority = 0

Определение приоритета процесса в системах Windows и Linux. В данном случае приоритет — нормальный.


RealmsStateUpdateDelay = 10

Время в секундах, между обновлениями списка областей. (realm list)


WrongPass.MaxCount = 0

Число раз ввода не верного пароля, после чего аккаунт будет забанен. В данном случае отключено.WrongPass.BanTime = 600


WrongPass.BanTime = 600

Время бана аккаунта в секундах. (смотри предыдущий пункт)


WrongPass.BanType = 0

Выбор по какому принципу банить аккаунт. В данном случае 0 — по ip, 1 — по имени аккаунта.



II. Настройки MySQL

LoginDatabaseInfo = "127.0.0.1;3306;root;ascent;auth"

Данные для подключения к MySQL. А именно:

  • 127.0.0.1 — ip
  • 3306 — порт
  • root — пользователь
  • ascent — пароль
  • auth — база данных

LoginDatabase.WorkerThreads = 1

Число рабочих потоков для обработки асинхронных запросов. (каждый поток отображается со своим подключением). В данном случае 1


Wrong.Password.Login.Logging = 0

Запись неудачных попыток авторизации в лог. В данном случае отключена.



III. Настройки обновления

Updates.EnableDatabases = 0

Маска, которая описывает, какие базы данных должны быть обновлены. В данном случае этот параметр отключён.


Updates.SourcePath = ""

Директория исходников TrinityCore. В данном случае это та же папка.


Updates.MySqlCLIPath = ""

Директория бинарных дистрибутивов MySQL. В данном случае тоже та же папка.


Updates.AutoSetup = 1

Автоматическое заполнения пустых баз данных. В данном случае включено.


Updates.Redundancy = 1

Выполните проверку избыточности данных с помощью хэширования, чтобы обнаружить изменения в SQL-обновлениях и применить их. В данном случае включено.


Updates.ArchivedRedundancy = 0

Проверка хэша архивных обновлений. Важно: замедляет запуск. В данном случае отключено.


Updates.AllowRehash = 1

Вставляет выбранный хэш файла в базу данных, если она остаётся пустой. Полезно: если Вы хотите отметить файл как применённый, но не знаете его хэш. В данном случае включено.


Updates.CleanDeadRefMaxCount = 3

Удаляет мёртвые или потерянные ссылки, которые появляются если обновление было удалено/переименовано/отредактировано. В данном случае включено.



IV. Настройка системы входа

Appender.Console=1,2,0

Определяет куда записывать лог консоли. В данном случае след с неуказанным флагом.


Appender.Bnet=2,2,0,Bnet.log,w

Определяет куда записывать лог Bnet. А именно:

  • 2 — файл
  • 2 — отладки
  • 0 — флаг не указан
  • Bnet.log — имя лог файла
  • w — перезаписываемый

Logger.root=3,Console Bnet

Определяет что именно записывать в лог. А именно:

  • 3 — уровень лога (информационный)
  • Console Bnet — список appenders (они несут ответственность за доставку лога)

Аналогичная ситуация с следующими строками:

Logger.realmlist=3,Console Bnet
Logger.session=3,Console Bnet
Logger.session.packets=3,Console Bnet
Logger.sql.updates=3,Console Bnet

На этом всё. Данная тема создана на собственном опыте и если Вы найдёте ошибки или опечатки, укажите на них.