Выложил для скачивания очередную альфу. Отладил все принципиальные моменты. Ошибок входа вроде нет. Форум переделал, но не проверял, это завтра с бета-тестерами разгребать буду 
Нужна проверка на стим и на нагрузку. Думаю, логи и мониторинг нужно в короткую таблицу переносить, и хранить в ней записи максимум за неделю, остальное в основной таблице.
amx_banmenu просто заблокировал, баны выдаються только через консоль. Реализую позже отдельным плагином. Читать далее…
Давно не писал….
Переделал много чего. Рефакторинг, и реализация базового API. Тот плагин что идет в Lite версии, в действительности состоит из ядра и отдельного плагина fadeblack, скомпиленных в один. Очень сильно сменил внутреннюю логику работы. Теперь он в большей степени похож на аналоги admins.amxx и admin_amxbans.amxx. В отличии от них я более полно контролирую процесс входа, реализовал поддержку ботов и HLTV, раньше я их просто игнорировал. Соответственно, отображение состояния игрока для мониторинга в логах более полное, и синхронизируеться практически в реальном времени.
Читать далее…
Проблема была устранена лишь частично, хотя работа и велась в правильном направлении. Но кто бы мог подумать, что событие смены ника вызывается много раньше события коннекта к серверу 
Уже второй день на 15 серверах ни одной жалобы на проблему со входом. И меня это сильно радует.
Читать далее…
После достаточно сильного рефакторинга, и разнесения кода по модулям, вылезло несколько плавающих ошибок, которые сложно их было отловить. Потому как, нельзя было добиться устойчивого повторения…
Рефакторинг понадобился чтобы приблизить момент проверки и выдачи прав максимально близко к входу. Потому как, к примеру, такой плагин как резервирование админских слотов, производит проверку на достаточно раннем этапе, и естественно мне нужно было выдавать права еще раньше.
Читать далее…
Пытался реализовать различные схемы ранжирования игроков по фрагам. В принципе формула подсчета не важна, главная проблема была в сохранении этого рейтинга, его инкрементальном изменении и сортировки по нему игроков.
Данные о набитых фрагах, смертях и времени проведенном на сервере храняться в таблице логов, откуда к примеру и данные мониторинга берутся.
Читать далее…
Не удовлетворяло меня как работает логгирование. Как оказалось, если игрок не дождался к примеру загрузку карты или вышел на этапе соединения, то функция client_disconnect не вызывается. Поэтому сделал этап начала мониторинга игрока после полного соединения с сервером. Думаю благодаря этому уменьшиться и количество фиктивных записей в логе.
Читать далее…
Снятие бана задумывалось изначально. Нужно оно для того, чтобы было возможным не удалять бан, а оставив запись в базе, дективировать его навсегда или временно. Конечно, админ имеющий права редактирования бана может запросто изменить время бана, на одну минуту к примеру, тем самым сняв его. Но думаю право снятия бана должно быть у коллег. Кто и когда снял бан фиксируеться в записи, и в спорной ситуации всегда можно устроить разборки аля “Кто сидел на моем стуле?” (Маша и медведи ©). Также при снятии бана можно указать причину снятия. Читать далее…
Оформил вывод собираемой информации. Пока что дописал в стандартный extend.php, но думаю именно для показа состояния серверов сделаю отдельный monitoring.php с кучей разных параметров и способов вывода. Читать далее…
Организовал минимальное логгирование входов выходов на сервера. Отслеживаю состояние игрока: команду за которую играет, количество убийств, смертей и денег. Доделал поиск по этому списку. Теперь думаю нужно будет сделать вывод инфы по игроку в его профиле. И список логов тудаже перенести из главного меню, все-таки это данные интересные больше админам, полезны при определении кто, когда и под каким ником играл.
Читать далее…
Теперь в списке серверов показывает оставшееся время карты, и установлен ли пароль на сервере. Если смотрит админ, то ему будет показан и сам пароль. Инфа обновляеться раз в минуту, или при смене количества игроков. Возможно сделаю настраиваемой.
Пароль также влияет на поведение Цербера. Если квар amx_reset_mode_if_pass выставлен в 1 (по умолчанию), то если поставить на сервер пароль, amx_mode выставиться в 0 и amx_server_level в 0 тоже. Это позволит играть незарегистрированным игрокам знающим пароль.
Все остальное время сервер от непрошенных гостей будет защищать Цербер.