[Server Monitor] Core 1.0.0 Alpha 6
Очередной мониторинг серверов для форума на движке XenForo.
Требования
XenForo v2.1 и выше.
[SModders] Core v1.0.2 и выше.
Особенности
Модульная архитектура . Само дополнение реализует модульную архитектуру, позволяющую в одном месте поместить игровые сервера из двух разных совершенно игр, использующих под капотом разные способы опроса самого сервера. Подробнее - в соответствующем разделе ниже.
Легковесность . Для вывода информации о игровом сервере (и не только) исполняется как можно меньше кода, снижая тем самым нагрузку на Ваш веб-сервер.
Кеширование . Дополнение не "бегает" постоянно на игровой сервер за информацией. Вместо этого, оно через планировщик движка выполняет операцию обновления информации о сервере, и оперирует при выводе - именно полученной когда-то информацией.
Архитектура Пара слов об архитектуре для тех, кто в этом что-то понимает.
Дополнение максимально абстрагирует понятие "игрового сервера", насколько это только возможно.
Игровой сервер ссылается на игру, которая ссылается на протокол и содержит в себе его настройки (если есть).
Протокол ссылается на адаптер, который уже описывает способ получения информации о игровом сервере (включая запись в кеш), способ вывода информации в движке, настройки.
Такая архитектура позволяет Вам выводить информацию не только об игровых серверах в условном Source, для получения информации о которых необходимо отправлять A2S-запрос по UDP-протоколу, но и, к примеру, в Terraria ( REST HTTP API )!
Протоколы Опрос игровых серверов невозможен без протоколов, а протокол не может существовать без адаптера. В самом плагине по-умолчанию не включен ни один протокол и ни один адаптер ( для поддержания легковесности решения ), но от меня есть уже пара дополнений, реализующие некоторые из протоколов:
[Server Monitor] tShock Protocol . Поддержка игровых серверов на базе Terraria . Необходимо использование модифицированной версии сервера - TShock .
[Server Monitor] Source Query Protocol . Поддержка игровых серверов, использующих в основе способ опроса по протоколу Source Server Query . Это игры на движке Source ( Fistful of Frags , Garry's Mod , Counter-Strike: Source , Counter-Strike: Global Offensive , Team Fortress 2 и многие другие), GoldSource ( Half-Life , Counter-Strike , Day of Defeat ), а так же Starbound , Rust , Arma 3 , ARK: Survival Evolved и многие другие!
В планах есть реализация протоколов-адаптеров для SAMP , MTA и, возможно, GTA V ( FiveM /etc).
Скриншоты Скриншоты делались в разное время, но преимущественно - ночью. Отсюда и онлайн соответствующий местами в той же TF2.
Виджет: внешний вид.
Имеется два варианта вывода: табличкой (1) и обычными строками (2).
В настройках возможно указать вывод не всех серверов, а только определенных:
В админке после установки дополнения, появится целый раздел с двумя пунктами ( Protocols недоступен в обычном режиме, и появляется только когда активен режим разработчика в движке ):
При добавлении игры, указывается протокол, её название, иконка (если есть, она будет отображаться в списке серверов) и настройки протокола. Каждый протокол может добавлять свои опции.
Аналогичная история с страницей добавления сервера. Могут быть дополнительные настройки самого протокола:
Протокол реализует небольшой интерфейс, в рамках которого может быть:
Определён способ опроса сервера.
Сгенерирована ссылка для подключения на сервер (если такая вообще возможна).
Реализован вывод списка игроков (если возможно). Протокол полностью объявляет свой шаблон для вывода. Ниже - пример списка игроков для Terraria.
Известные проблемы Т.к. это «альфа», у неё есть некоторые проблемы, которые будут решаться с течением времени.
Подогнать шаблоны виджета под вывод в боковой панели. Сейчас там смотрится не очень. Не рекомендую даже смотреть.
Мини-рефакторинг. Улучшение качества кодовой базы.
Материальная поддержка Это (и не только) дополнение писалось в свободное время, которое могло быть потрачено на реализацию «приватов», потому буду очень признателен за материальную поддержку.
Сбербанк (VISA) / Альфа-банк (MasterCard) : в ЛС
QIWI : по никнейму CRAZYHACKGUT
Яндекс.Деньги : 4100 1314 4930 094 / 4100 1197 0372 579
WebMoney : Z368357223374 / R933190893831 / P700101260718 (WMID 347591544374 )
PayPal : Оплатите Гут Сергей при помощи PayPal.Me
Про копирайт
Дополнение его добавляет, как и указано в самом вверху страницы. Для его отключения достаточно отключить модификацию одного-единственного шаблона, которое добавляет данное дополнение, или прописать следующую строчку в Ваш src/config.php :
PHP: Скопировать
$config['sm_servermonitor.copyrightKey'] = 'i really want remove this copyright!';
Git-репозиторий с кодом ядра