Иконка ресурса

Offline Ban list 2.5.5

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #1
Offline Ban list

Описание:
Позволяет банить игроков вышедших из игры, админам с флагом бана.
Меню автоматически прописывается в Управление игроками.

Требование:
SourceBans
SourceMod от 1.7

Квары:
sm_offban_timeformat "%d.%m|%H:%M" - Формат времени.
sm_offban_max_stored "21" - максимальное количество игроков в меню.
sm_offban_map_clear "0" - Очистка истории после смены карты.
sm_offban_del_con_players "1" - Удалять ли из истории вновь подключившихся игроков
sm_offban_menu_nast "1" - как показывать мены выбора игроков 1. name,time 2. name,steam 3. name,steam,time
sm_offban_menu_newline "0" - перенос строк в меню
sm_offban_steam_typ "1" - тип стим айди 1. старый 2. новый 3. комьюнити ид
Есть свой конфиг offlineban.cfg

Команды:
sm_offban_clear - очистка истории. (флаг - z)


Особенности:
  • Админы и боты в список не выводятся.
  • После бана забаненый из списка пропадает.
  • Игроки в списке не дублируются.
  • Игрок вышедший из игры и снова вошедший из списка пропадает.
  • Добавляется приписка в причине бана [Offline Ban]

Установка:
Содержимое архива offlineban.zip копируем в папку addons\sourcemod

Для сортировки дописываем в adminmenu_sorting.txt в нужное вам место в категории "PlayerCommands"
Добавить в конфиг sourcebans.cfg
PHP:
   "BanTime"
    {  
        "0"          "Навсегда"
        "5"          "На 5 мин."
        "30"         "На 30 мин."
        "60"         "На 1 час"
        "1440"       "На 1 день"
        "10080"      "На неделю"
        "43200"      "На месяц"
        "129600"     "На 3 месяця"
    }
Цвета:
Для ксго
  • #1 - DEFAULT
  • #2 - RED
  • #3 - LIGHTPURPLE
  • #4 - GREEN
  • #5 - LIME
  • #6 - LIGHTGREEN
  • #7 - LIGHTRED
  • #8 - GRAY
  • #9 - LIGHTOLIVE
  • #10 - OLIVE
  • #OB - PURPLE
  • #OC - LIGHTBLUE
  • #OE - BLUE
html цвет для кс го
  • #HC - цвет
  • #HT - в начале текста
  • #HE - в конце текста
Пример использования:
#HС34c924#HTмама папа#HE
Для ксс
  • #7 - html цвет (пример; #734c924)
Для других игр поддерживающие стандартные цвета
  • #1 - желтый
  • #3 - светло зелёный
  • #4 - зелёный

Поддерживаемые языки:
  • Русский "RU"
  • English "EN"

Версия 1.0.1
  • Изменил OfflineBans_Cat на OfflineBans.
  • Сделал нормальную реализацию пункта "назад" (как просил R1KO).
  • Сделал сообщение в чате (Нет игроков в истории) если нет в базе игроков.
Версия 1.0.2
  • Сделал мультиязычность.
  • Сделал перенос кто и кого забанил.
Версия 1.0.3
  • Полностью переписал плагин.
  • Баны заносятся напрямую в базу.
  • Добавил причину бана.
  • Сделал так что некоторые настройки брались с сб. (был не большой не достаток у apkon, если ип прописан как нули то баны не заносятся)
Версия 1.0.4
  • Переписал плагин.
  • Причина бана берется с сб.
  • Другая причина работает как обычная причина не как в сб (не хотел этим заморачиваться)
  • Сделал сообщение при бане.
Версия 1.0.5
  • Не большие изменения в меню, назад-выход.
  • Добавлено сообщение если бан не удалось занести в базу сб.
Версия 1.0.5.1
  • Исправил не большую ошибку, с закрытием хенделя меню.
Версия 1.0.5.3
  • Теперь список не чистится каждую карту и сделал ограничение 21(на 3 страницы) игроков. (сменить на своё значение MAX_STORED_PLAYERS)
  • Сделал команду при которой чистится список - sm_of_clearban (флаг рут - z)
  • Добавил приписку в причине бана [Offline Ban]
  • Теперь если нет админа в базе сб баны заносятся от имени сервера.
Версия 1.0.6
  • Добавил лог бана.
Версия 1.0.7
  • При бане сделал дополнительный запрост в бд по кодировке(может полностью избавлюсь от какозабр)
  • Подкрасил сообщения при бане(красный-не прошёл бан, зелёный-прошёл бан)
  • В сообщение при бане добавил ник забанего
  • Теперь если не прошёл бан, игрок из списка не удаляется.
Версия 1.0.8
  • Убрал лишний код и оптимизировал.
  • Изменил команду очистки истории на "sm_offban_clear"
  • Добавил не много комментариев в скрипт.
Версия 1.0.9
  • Немного оптимизировал.
  • Добавил новые квары "sm_offban_timeformat, sm_offban_max_stored"
  • Сделал сортировку, теперь последний вышедший первый в списке.
  • Добавил время выхода.
Версия 1.1
  • Немного оптимизировал.
  • Добавил новый квар "sm_offban_map_clear
  • Думаю теперь точно справился с какозябрами.
Версия 1.2
  • Исправил пустые ники.
  • Добавил ник в заголовке меню при выборе времени.
Версия 1.3
  • Исправил, когда первый вышедший не попадал в список.
  • Не много оптимизировал.
Версия 1.4
  • Добавлена настройка удаление вошедших игроков sm_offban_del_con_players
  • Добавлена настройка отображения меню выбора игроков sm_offban_menu_nast
  • Появился свой конфиг offlineban.cfg
  • Оптимизировал работу кваров.
Версия 1.5
  • Добавил проверку загружен ли SourceBans.
Версия 1.6
  • Сделал перенос строки (sm_offban_menu_newline)
  • Сделал время бана в конфиге сорсбанса(пример лежит в архиве)
  • Сделал создание меню чуть по другому и оптимизировал его.
  • Профиксина ошибка (Native "SQL_FetchRow" reported: Invalid query Handle 0 (error: 4))
  • Думаю профиксил пустые ники.
Версия 2.0
  • Переписал под новый синтаксис, теперь плагин тока для см от 1.7
  • Переделал систему хранения вышедших игроков, хранится в sqlite
  • Добавил поддержку цветов для игр
Версия 2.1
  • Сделал сортировку в меню, вышедших игроков.
Версия 2.2
  • Исправлена серьёзная ошибка в бд.
Версия 2.3
  • Исправлена ещё одна серьёзная ошибка в бд.
  • Переписано меню.
Версия 2.4.1
  • Кое что ещё перевел на новый синтаксис в бд.
  • Исправил проблему с кодировкой.
  • Исправил проблему с пустыми никами, могли быть но редки.
Версия 2.4.2
  • Добавлен новый квар (sm_offban_steam_typ)
  • Исправил некоторые ошибки.
  • Ещё некоторые функции перевел на новый синтаксис.
  • Убрал нужду прописывать подключение к бд для базы вышедших игроков.

Оригинал
P.S. от оригинала почти ни чего не осталось так что авторство беру на себя. 🍺

Решение ошибок:
Не найден SourceBans
[SM] Unable to load plugin "offlineban.smx": Could not find required plugin "SourceBans"
Если у вас такая ошибка, что не найден SourceBans и он у вас стоит, то перекомпилируйте SourceBans с инклуде который есть в архиве.

Время в причинах бана в сб Это лишь костыль.
Ищим строки..
PHP:
public SMCResult:ReadConfig_NewSection(Handle:smc, const String:sName[], bool:opt_quotes)
{
    if(sName[0])
    {
        if(strcmp("Config", sName, false) == 0)
            ConfigState = ConfigStateConfig;
        else if(strcmp("BanReasons", sName, false) == 0)
            ConfigState = ConfigStateReasons;
        else if(strcmp("HackingReasons", sName, false) == 0)
            ConfigState = ConfigStateHacking;
    }
    return SMCParse_Continue;
}
и делаем так
PHP:
public SMCResult:ReadConfig_NewSection(Handle:smc, const String:sName[], bool:opt_quotes)
{
    if(sName[0])
    {
        if(strcmp("Config", sName, false) == 0)
            ConfigState = ConfigStateConfig;
        else if(strcmp("BanReasons", sName, false) == 0)
            ConfigState = ConfigStateReasons;
        else if(strcmp("HackingReasons", sName, false) == 0)
            ConfigState = ConfigStateHacking;
        else
            ConfigState = 0;
    }
    return SMCParse_Continue;
}


Выражаю большую благодарность за помощь с плагином R1KO
Добавил R1KO в соавторы.

Тут последняя версия плагина и дальнейшее обсуждение его Offline Ban list
 

Вложения

  • offlineban v1.6.zip
    23.6 КБ · Просмотры: 810
  • offlineban v2.4.2.zip
    26.9 КБ · Просмотры: 777
Последнее редактирование модератором:

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
Re: Offline Ban list v1.0 SourceBans

Здравствуйте Серый™ а сколько игроков запоминает вышедших из игры.
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #3
Re: Offline Ban list v1.0 SourceBans

lecktercss, не знаю, не проверял. В коде искал не нашёл. У себя проверить не могу онлайна пока нет. Если сем про тестируешь сообщи сколько он хранит инфу.
 

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
Re: Offline Ban list v1.0 SourceBans

Здравствуйте Серый™
у меня сохранило 238 человек и я думаю это не предел , просто вспомнил решил посмотреть проверить ,плохо только что не пишет в сорсбансе ник игрока если бы можно было как то доделать то вообще было бы супер.Так что парни ставьте этот плаг все четко и много сохраняет людей, можно найти всех кого надо.
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #6
Re: Offline Ban list v1.0 SourceBans

lecktercss, чтоб было как надо нужно полностью переписывать плагин сб, для полноценного бана в оффлайн.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #8
Re: Offline Ban list v1.0 SourceBans

Мне не очень понравилось что когда в меню мало игроков или, например, на последней странице, то пункт "Назад" становиться не на 8, а съезжает вверх
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #10
Re: Offline Ban list v1.0 SourceBans

Александр Исмаг, для приличия спрошу, чем он лучше?

R1KO, сделал по правильному (про назад), пробуй.
 
Последнее редактирование:
  • Мне нравится
Реакции: R1KO

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #11
Re: Offline Ban list v1.0.1 SourceBans

Оффтоп

Не получится ли сделать, чтобы ник и ип были в своей графе, тоесть как при обычном бане ?
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #12
Re: Offline Ban list v1.0.1 SourceBans

R1KO, нет, тут используется стандартная команда sm_addban , а там нет тригера на ник, нужно сам плагин сб переписывать или вообще весь сб, для полноценной работы. Сами авторы не задумывались по этому поводу, вот и не реализовали это как надо. Посмотрю исходники сб, если получится у меня то выложу.

Во общем посмотрел, вывод надо хорошего скриптера (я пока учусь), так как нужно переписывать две команды sm_addban и sm_banip , нужно сделать чтоб хранилась информация о пользователях которых хотите банить, потому как их можно использовать оффлайн (скажу сразу будет жрать ресурсов заметно больше, оперативки, вид нужно хранить информацию о игроках).
 
Последнее редактирование:
  • Мне нравится
Реакции: R1KO

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
  • Автор ресурса
  • #14
Re: Offline Ban list v1.0.2 SourceBans

Обновил плагин, сделал его мультиязычным.
 

apkon

Участник
Сообщения
257
Реакции
91
Re: Offline Ban list v1.0.2 SourceBans

Обновлен способ занесения в базу SourceBans.

Проверяет подключен ли SourceBans и заносит в базу напрямую.

Проверьте работоспособность. если что подправлю.
 

Вложения

  • offlineban.sp
    9.5 КБ · Просмотры: 78
  • offlineban.smx
    8 КБ · Просмотры: 65

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #16
Re: Offline Ban list v1.0.2 SourceBans

apkon, а тот что в первом посте не напрямую заносит ?
 

apkon

Участник
Сообщения
257
Реакции
91
Re: Offline Ban list v1.0.2 SourceBans

apkon, а тот что в первом посте не напрямую заносит ?

Надо было чтобы заносился нормально бан?! Ник в поле Никнейм, админ в поле Админ и т.д. ??
Это доработка до такого вида. Только не тестил, негде.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #18
Re: Offline Ban list v1.0.2 SourceBans

apkon, ок, спасибо, протестирую.
 

gibs

Фитиль народного волненья
Сообщения
722
Реакции
407
Мошенник
Re: Offline Ban list v1.0.2 SourceBans

Боже мой, что за народ пошёл. Для нормального бана просто сделайте подключение к бд и скопируйте инсерт бана из стандартного плагина сорсбана. Чтоб нормально воспринимало кирилицу после коннекта бд следует сделать фаст квери "SET NAMES \"UTF8\"". А так пол темы какие-то глупые разсуждения. Баны храняться в адт массиве, он динамический, у него динамический и не ограниченный размер. Чем больше размер, тем медленней такой массив работает.
Вроде ответил на все глупые вопросы в теме.
ЗЫ: в, как вы любите говорить, "версии" apkon проблема в том, что определается не паблик ип. Квери не всегда будет прокатывать.
 

apkon

Участник
Сообщения
257
Реакции
91
Re: Offline Ban list v1.0.2 SourceBans

gibs, можно и по номеру сервера в сорсбансе сделать, дело 2 минут)
 
Сверху Снизу