Добавить причины банов и ник админа в plmenu.sma

TeJIuK

Пользователь
Регистрация
13 Апр 2018
Сообщения
9
Симпатии
0
Дано: сервер со стандартной бан-системой (plmenu.sma), у которого баны хранятся в файле banned.cfg.
Задача: добавить в плагин обязательное указание причины бана и ник забанившего админа.
Принцип работы: сначала идет "banid время steamid", затем кик с причиной "%указанная_причина% %ник_админа%" (т. е. ник админа добавляется в качестве дополнительного текста в причине - после основного с непосредственно причиной бана; в идеале - просто по стандартному кику: kick #userid reason), а в завершении - writeid.

Стандартный участок код плагина plmenu, отвечающий за бан по STEAM_ID:

C:
server_cmd("banid %d #%d kick;writeid", banTime, userid2);
if (g_tempBans)
{
TrieSetString(g_tempBans, authid2, authid);
}
Что в этот код добавить, чтобы добиться нужного результата?

Интересно. почему разработчики AMX Mod X до сих пор не добавили в плагин plmenu возможность банить с причиной? Только потому, что в файлах listip.cfg и banned.cfg баны прописываются в формате "banid %time% %steamid%"? Разве нельзя в качестве причины использовать комментарии (после "//")?

Знаю, что реализуется элементарно, но почему-то еще никто не добавил эти элементарные возможности в стандартный плагин... Совсем не pawn-скриптер, а уж тем более - не разработчик, поэтому прошу помощи у вас.

Например: админ TeJIuK банит игрока через amxmodmenu, вводит при бане причину "подозрение на чит". Игрока банит и кикает. Игрок видит:

Kicked: вы забанены за "подозрение на чит". Забанил: "TeJIuK"
 

r1nk0

Пользователь
Регистрация
3 Окт 2018
Сообщения
258
Симпатии
53
типа наверно никто это не делал,потому что и не нужно,так как есть бансистемы
 

perfectblood0

Команда форума
Администратор
Регистрация
29 Окт 2017
Сообщения
2.578
Симпатии
914
Пол
Женский
Дано: сервер со стандартной бан-системой (plmenu.sma), у которого баны хранятся в файле banned.cfg.
Задача: добавить в плагин обязательное указание причины бана и ник забанившего админа.
Принцип работы: сначала идет "banid время steamid", затем кик с причиной "%указанная_причина% %ник_админа%" (т. е. ник админа добавляется в качестве дополнительного текста в причине - после основного с непосредственно причиной бана; в идеале - просто по стандартному кику: kick #userid reason), а в завершении - writeid.

Стандартный участок код плагина plmenu, отвечающий за бан по STEAM_ID:

C:
server_cmd("banid %d #%d kick;writeid", banTime, userid2);
if (g_tempBans)
{
TrieSetString(g_tempBans, authid2, authid);
}
Что в этот код добавить, чтобы добиться нужного результата?

Интересно. почему разработчики AMX Mod X до сих пор не добавили в плагин plmenu возможность банить с причиной? Только потому, что в файлах listip.cfg и banned.cfg баны прописываются в формате "banid %time% %steamid%"? Разве нельзя в качестве причины использовать комментарии (после "//")?

Знаю, что реализуется элементарно, но почему-то еще никто не добавил эти элементарные возможности в стандартный плагин... Совсем не pawn-скриптер, а уж тем более - не разработчик, поэтому прошу помощи у вас.

Например: админ TeJIuK банит игрока через amxmodmenu, вводит при бане причину "подозрение на чит". Игрока банит и кикает. Игрок видит:

Kicked: вы забанены за "подозрение на чит". Забанил: "TeJIuK"
А зачем "велосипед" ?
Тем более такой странный, когда все реализовано в куче бан систем, которые так же через amxmod menu работают
 

TeJIuK

Пользователь
Регистрация
13 Апр 2018
Сообщения
9
Симпатии
0
А зачем "велосипед" ?
Тем более такой странный, когда все реализовано в куче бан систем, которые так же через amxmod menu работают
Недефолтные бан-системы работают с MySQL/SQLite. В этом случае банов не будет в файле banned.cfg (очень легко с этого файла выводить бан-лист на сайт через PHP без MySQL-сервера). Запросы к БД потребляют ресурсы процессора, а висящий MySQL-сервер -- RAM. Зачем целая реляционная СУБД для какого-то бан-листа? Это оверхед. Ресурсы сервера не резиновые. Вполне хватит SQLite. Вот только web бан-листов, работающих с SQLite просто нет. Всякие CS:Bans, AMXBans GM требуют MySQL-сервер.
 

d3m37r4

Скриптер
Постоялец
Регистрация
8 Июн 2017
Сообщения
742
Симпатии
393
Пол
Мужской
Telegram
@dmitry_isakow
TeJIuK, как твой файлик справится с выводом нескольких тысяч записей по сравнению с бд?)
 

TeJIuK

Пользователь
Регистрация
13 Апр 2018
Сообщения
9
Симпатии
0
TeJIuK, как твой файлик справится с выводом нескольких тысяч записей по сравнению с бд?)
Очень сомневаюсь, что на сервере CW/Mix наберется несколько тысяч забаненных навсегда (да, в banned.cfg помещаются только баны навсегда).

Да и файлик не занимается выводом. Выводит баны из этого файлика веб-сервер с помощью PHP-скрипта.
А несколько тысяч банов -- такое количество может набраться только на всяких пабликах и прочих мод-серверах, которые раскручивают через всякие бусты. В этом случае лучше использовать SQLite, но все равно не MySQL.
 

perfectblood0

Команда форума
Администратор
Регистрация
29 Окт 2017
Сообщения
2.578
Симпатии
914
Пол
Женский
Очень сомневаюсь что на cw/mix сервере нужен такой велосипед
Если нужен, то вам в раздел заказов.
 
K

kapangaIII

И чем лучше sqlite по сравнению с mysql в данном кейсе? Ничем?
 

fantom

Разработчик
Регистрация
11 Июн 2017
Сообщения
426
Симпатии
293
Пол
Мужской
Сверху Снизу