Counter-strike Source портал
 

Sourcebans 1.4.6 rus - доводим до ума

Скачать русифицированный web-интерфейс можно отсюда. Помимо русификации внесены небольшие оптимизирующие код изменения и слегка изменен интерфейс (окно логина).

 

Теперь немного о том, как отредактировать скрипт под свой сайт.

 

1. Обычно необходимо добавить дополнительные ссылки в хедер - на форум, на главную страницу сайта и т.п. для этого в файле /includes/system-functions.php примерно на строке 176 добавляем необходимые кнопки:

AddTab("Подпись кнопки", "Ссылка", "Описание");

 

2. Чтобы изменить бекграунд сайта достаточно перекрасить файл themes/default/images/bk.gif. А для замены логотипа - заменяем файл images/logos/sb-large.png. Ну вот и все, наслаждайтесь русифицированным sourcebans в цветовой гамме вашего сайта, с нужными кнопками и вашим логотипом.

 

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

 

4. Советую изменить формат времени в настройках на такой -

d.m.Y   H:i
- этот формат времени намного более читабелен, нежели установленный по умолчанию.

 

5. Страна забаненого определяется с помощью файла \includes\IpToCountry.csv. В версии, скачиваемой с официального сайта он сильно устарел, поэтому я обновил его до актуальной версии. Свежайшую версию этого файла также всего можно скачать по этой ссылке.

 

Теперь переходим к самому плагину. Да-да, его тоже можно, и даже нужно отредактировать.

 

1. Перманентные баны могут давать только те админы, у которых стоит флаг "Unban player". Как написано на офсайте, это не баг, это фича. Но, на мой взгляд, какая-то сомнительная.

 

Исправление: редактируем sourcebans.sp, примерно на строке 892 удаляем строку

if(GetUserFlagBits(client) & (ADMFLAG_UNBAN|ADMFLAG_ROOT))

 

2. Русифицируем сроки банов: изменяем кодировку файла sourcebans.sp на "ANSI as UTF8", она же "UT8 без BOM", и переводим строки с 892 по 899. Там же при желании можно отредактировать длительность выдаваемых банов.

 

3. Бан выдается ИЛИ по IP, ИЛИ по Steam_id. На лицензионных серверах это не вызывает никаких проблем, а вот на пиратках надежнее банить и по тому, и по другому. Чтобы так сделать, по файлу sourcebans.sp делаем следующие замены:

"type = 1" на "" (5 совпадений)

"type = 0" на "" (5 совпадений)

Без кавычек, то есть просто удаляем записи с type =.  Это позволяет скрипту не смотреть на тип бана, а сразу проверять на совпадение все стимы и IP из базы данных.

 

4. При выдаче бана, помимо записи в базу данных, забаненный банится еще и непосредственно на сервере, командой banid. В результате, иногда, после того как выходит время бана, на сервере он по прежнему забанен. Чтобы этого избежать, удаляем строки примерно на линии 2101:

decl String:buffer[50];

Format(buffer, sizeof(buffer), "banid %d %s", ProcessQueueTime, auth);

ServerCommand(buffer);

 

Чтобы убрать добавление бана на сервере после попытки захода, удаляем 2 строки где то на 1470й строчке:

FormatEx(buffer, sizeof(buffer), "banid 5 %s", clientAuth);

ServerCommand(buffer);

 

Если база временно недоступна, опять таки, добавляется бан на самом сервере. У кого база на локалхосте - можно смело убирать весть блок else на строке 1393, то есть полностью удаляем следующее:

else {
        // the insert failed so we leave the record in the queue and increase our temporary ban
        FormatEx(buffer, sizeof(buffer), "banid %d %s", ProcessQueueTime, auth);
        ServerCommand(buffer);
    }

 

Скачать уже скомпилированный файл с вышеперечисленными изменениями можно отсюда. Однако в нем удален срок бана перманент, он заменен сроком в один год.

 

Инструкцию по начальной установке sourcebans можно найти тут.

Теги: Sourcebans sourcemod
  • Просмотров: 10 885

Добавление комментария

Переместиться наверх
Sourceplay.ru © Matysh 2008-2017
Разработка сайта sitevtomske.ru
  • Яндекс.Метрика