Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

5 страниц V   1 2 ... 3 4 »

Kick Spamers

Статус пользователя Energy
сообщение 31.5.2016, 20:50
Сообщение #1
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

KickSpamers


Автор: gyxoBka
Актуальная вeрсия: 1.03

Описаниe:
Проверяет ник на спам IP адресом или адресом сайта, в т.ч проверяет спам в чате. Не дает часто менять ник игрокам при X предупреждениях наказывает киком и можно не беспокоиться о читерах, которые часто меняют ник.

Возможности:
Кикать ботов и игроков спамеров ( бан система не напрягается ).
Кикать читеров у которых быстро меняется имя - при этом не давая вовсе сменить ник до кика.
Блокировать спам сообщение в чате.


Настройки и Квары
Настройки
Код
#define MAXPLAYERS 32                                     // максимальное количество игроков на сервере
#define IMMUNITY ADMIN_BAN                                 // Флаг иммунитета ( по умолчанию 'd' ). Закомментируйте, чтобы убрать иммунитет
#define CHECK_CHAT                                         // Проверка сообщений в чате. закомментируйте, чтобы не проверять
#define CHECK_NICK                                       // Проверка ника игрока при входе на сервер
#define UNREADBLE_NAME                                  // Агрессивная проверка ника игрока. Кикает игроков с нечитаемыми никами
#define MAX_NUMS 7                                     // Какое число цифр допустимо в сообщении
#define SLASH                                        // Закомментируйте, чтобы не скрывать сообщения начинающиеся со слэша '/'
#define NOTICE                                       // Закомментируйте строку, чтобы отключить оповещения в чате
#define SOUND                                      // Закомментируйте строку, чтобы отключить звуковое оповещение
#define LOG_TO "KickSpamers.log"                 // Логирование обнаружения спама. закомментируйте, чтобы не логировать
#define BAD_WORDS "bad_words.ini"                // Слова, которые следует считать спамом. закомментируйте, чтобы не использовать
#define WHITE_WORDS "white_list.ini"           // Слова, которые НЕ считаются спамом. закомментируйте, чтобы не использовать

Квары

Код
regex_match_site - Проверять на спам сайтом [ДА - 1/ НЕТ - 0] По дефолту "1" Работает только для ника
max_warnings - Количество предупреждений за частую смену ника По дефолту "3"
min_wait - Раз в сколько секунд можно сменить ник По дефолту "10



История обновлeний


Отредактировал: iShot, - 7.8.2016, 7:33
Причина: обновлено
Прикрепленные файлы:
Прикрепленный файл  KickSpamer_v085.rar ( 3,97 килобайт ) Кол-во скачиваний: 24
Прикрепленный файл  KickSpamer_v089.rar ( 4 килобайт ) Кол-во скачиваний: 29
Прикрепленный файл  KickSpamer_v090.rar ( 4,01 килобайт ) Кол-во скачиваний: 127
Прикрепленный файл  KickSpamer_v103.rar ( 4,3 килобайт ) Кол-во скачиваний: 348
Прикрепленный файл  KickSpamers_v1.00.rar ( 3,64 килобайт ) Кол-во скачиваний: 23
Прикрепленный файл  KickSpamers_v1.01.zip ( 3,79 килобайт ) Кол-во скачиваний: 82
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя LazyMoron
сообщение 31.5.2016, 20:54
Сообщение #2
Стаж: 9 лет

Сообщений: 277
Благодарностей: 33
Полезность: < 0

Energy,
а духовка дал добро на размещение?


.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gyxoBka
сообщение 31.5.2016, 21:08
Сообщение #3
Стаж: 12 лет

Сообщений: 41
Благодарностей: 54
Полезность: 750

LazyMoron, да
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 6 раз
   + Цитировать сообщение
Статус пользователя LazyMoron
сообщение 31.5.2016, 22:40
Сообщение #4
Стаж: 9 лет

Сообщений: 277
Благодарностей: 33
Полезность: < 0

gyxoBka,
Я щас лог скину с ошибкой, до ПК доберусь и приложу, это все!


.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Energy
сообщение 31.5.2016, 22:43
Сообщение #5
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

Цитата(LazyMoron @ 31.5.2016, 22:40) *
gyxoBka,
Я щас лог скину с ошибкой, до ПК доберусь и приложу, это все!


Плагин стоит 3 мeсяца - никаких ошибок!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя LazyMoron
сообщение 31.5.2016, 23:25
Сообщение #6
Стаж: 9 лет

Сообщений: 277
Благодарностей: 33
Полезность: < 0

Energy,
последние что ставил, это Statsx_Colored_TOP и lite_translit


.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя LazyMoron
сообщение 1.6.2016, 0:05
Сообщение #7
Стаж: 9 лет

Сообщений: 277
Благодарностей: 33
Полезность: < 0

L 06/01/2016 - 01:04:37: [ERROR] File '%s/%s' Not Exists here.
L 06/01/2016 - 01:04:37: [AMXX] Plugin ("KickSpamer.amxx") is setting itself as failed.
L 06/01/2016 - 01:04:37: [AMXX] Plugin says: [ERROR] File '%s/%s' Not Exists here.
L 06/01/2016 - 01:04:37: [AMXX] Run time error 1 (plugin "KickSpamer.amxx") - forced exit


.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Energy
сообщение 1.6.2016, 8:52
Сообщение #8
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

LazyMoron, debug?
Я конEчно нe гуру, но по сeбE скажу (стоит 3 мeсяца, убиваeт любую рEкламу).
Я отключал на тEст ReAuthCheck и плагин справлялся отлично.
Cкрытый текст

L 05/31/2016 - 19:13:47: Log file started (file "cstrike/addons/amxmodx/logs/KickSpamers.txt") (game "cstrike") (amx "1.8.2")
L 05/31/2016 - 19:13:47: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:49: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:49: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:50: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:50: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:51: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:51: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:52: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:52: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:53: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:53: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:53: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:54: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:54: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:55: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:55: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:56: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:56: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:13:57: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:14:19: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 19:14:24: zaxodi free vip ip 95.78.240.0:27016
L 05/31/2016 - 20:04:06: jy drk.xftn [etne
L 05/31/2016 - 20:04:21: lff drk.xftn cgfv
L 05/31/2016 - 20:04:26: drk.xftn cgfv
L 05/31/2016 - 20:05:09: jy drk.xfftn
L 05/31/2016 - 20:13:40: cblzn gbc.yb y.[f.n
L 05/31/2016 - 20:55:23: z ofc yf[ezh.cm gjqle))
L 05/31/2016 - 21:17:42: dsrk.xb tuj yff[eq)
L 06/01/2016 - 00:40:50: ] cl_backspeed 400] cl_sidespeed 400] cl_forwardspeed 400
L 06/01/2016 - 00:41:00: cl_backspeed 400 cl_sidespeed 400 cl_forwardspeed 400
L 06/01/2016 - 02:43:16: vk.com/gayz_boys
L 06/01/2016 - 07:52:53: id222255880
L 06/01/2016 - 07:53:08: id222255880
L 06/01/2016 - 07:53:23: id222255880
L 06/01/2016 - 07:53:25: id222255880
L 06/01/2016 - 07:53:25: id222255880
L 06/01/2016 - 08:28:04: f tckb jnhfdk.cm
L 06/01/2016 - 09:06:13: rjnjhsq hfp d ujkjde e,bdf.cm
L 06/01/2016 - 09:15:10: prostoporno.net
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя oxoTHuk.
сообщение 1.6.2016, 9:29
Сообщение #9


Иконка группы

Стаж: 17 лет

Сообщений: 879
Благодарностей: 515
Полезность: 867

[b]LazyMoron, написано что нет файла. Либо bad_word.ini не закинул, либо KickSpamers.txt не может создать - создай сам в папке logs/KickSpamers.txt

На всякий случай, в plugins.ini пропиши его самым последним.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя wopox3
сообщение 1.6.2016, 20:23
Сообщение #10


Стаж: 13 лет

Сообщений: 333
Благодарностей: 222
Полезность: 902

Цитата(gyxoBka @ 31.5.2016, 22:08) *
LazyMoron, да

Добавь MultiLang
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gyxoBka
сообщение 1.6.2016, 20:59
Сообщение #11
Стаж: 12 лет

Сообщений: 41
Благодарностей: 54
Полезность: 750

wopox3, я не вижу смысла в принципе в MultiLang: я не ориентируюсь на нерусскоязычную аудиторию. Если рассматривать его как способ легкого изменения текста в плагине, то здесь всего 1 сообщение в чат, которое можно сменить по-своему усмотрению... не вижу смысла в общем...

Если есть какие то идеи, то пиши в ЛС, если понравится и будет иметь смысл, то реализую
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 2.6.2016, 10:06
Сообщение #12


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

Цитата
в комплeктe с плагином идёт файл (bad_words.ini), указывая слова которыe нужно заблокировать - нe забываeм измeнять макрос #define MAX_WORD 1.
MAX_WORD - должен быть равен количеству строк в bad_words.ini
cray.gif , за что же перекомпиливать каждый раз то.
Заменить. Не проверял ес-но.
Код:
new g_szBadWord[MAX_WORD][MAX_LEN + 1]
=> Код:
new Array:g_aBadWord, g_aBadWord_size


Код:
LoadWords()
{
new szFilePath[64]
get_localinfo("amxx_configsdir", szFilePath, charsmax(szFilePath))
formatex(szFilePath, charsmax(szFilePath), "%s/%s",szFilePath, BAD_WORDS)

new FileHandle = fopen(szFilePath, "rt")

if(!FileHandle) ErrorMessage("[ERROR] File '%s/%s' Not Exists here.", szFilePath, BAD_WORDS)

new iNum, szTemp[20]

while(!feof(FileHandle) || iNum < MAX_WORD)
{
fgets(FileHandle, szTemp, charsmax(szTemp))
trim(szTemp)

if(!szTemp[0] || szTemp[0] == ';') continue;

copy(g_szBadWord[iNum++], MAX_LEN, szTemp)
}
fclose(FileHandle)

return PLUGIN_CONTINUE
}
=>
Код:
LoadWords()
{
new szFilePath[64]
get_localinfo("amxx_configsdir", szFilePath, charsmax(szFilePath))
formatex(szFilePath, charsmax(szFilePath), "%s/%s",szFilePath, BAD_WORDS)

new FileHandle = fopen(szFilePath, "rt")

if(!FileHandle) ErrorMessage("[ERROR] File '%s/%s' Not Exists here.", szFilePath, BAD_WORDS)

new iNum, szTemp[20]
g_aBadWord = ArrayCreate(MAX_LEN+1)
while(!feof(FileHandle))
{
fgets(FileHandle, szTemp, charsmax(szTemp))
trim(szTemp)

if(!szTemp[0] || szTemp[0] == ';') continue;

ArrayPushString(g_aBadWord, szTemp)
g_aBadWord_size++
}
fclose(FileHandle)

return PLUGIN_CONTINUE
}


Код:
	for(new i; i < MAX_WORD; i++)
{
if(containi(g_szMessage, g_szBadWord[i]) > -1)
return PLUGIN_HANDLED;
}
=>
Код:
	new pos = g_aBadWord_size
static str[MAX_LEN+1]
while(pos--){
ArrayGetString(g_szBadWord, pos, str, MAX_LEN )
if(containi(g_szMessage, str) > -1)
return PLUGIN_HANDLED;
}

Ну или хотя бы так

Задать MAX_WORD 999, например
И добавить строку тут
Код:
	for(new i; i < MAX_WORD; i++)
{
if(!g_szBadWord[i][0]) break;
if(containi(g_szMessage, g_szBadWord[i]) > -1)
return PLUGIN_HANDLED;
}

ну или при записи подсчитать число слов в файле и в цикле этом использовать вместо MAX_WORD эти пара байт памяти не повредят серверу.


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Energy
сообщение 2.6.2016, 10:25
Сообщение #13
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

mazdan, мы тут доводим новую вeрсию до фeншуя, :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 2.6.2016, 15:02
Сообщение #14
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

Что то я не понял, закоментировал строку
#define CHECK_CHAT
вот так:
//#define CHECK_CHAT
При компиляции выдает ошибки какие то:
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gyxoBka
сообщение 2.6.2016, 15:10
Сообщение #15
Стаж: 12 лет

Сообщений: 41
Благодарностей: 54
Полезность: 750

evgen4uk, тупая ошибка. была исправлена сегодня в ходе небольшого рефакторинга...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 2.6.2016, 15:18
Сообщение #16
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

gyxoBka, всмысле была исправлена? Так это компилятор выдает ошибку и я скачать не могу.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gyxoBka
сообщение 2.6.2016, 15:20
Сообщение #17
Стаж: 12 лет

Сообщений: 41
Благодарностей: 54
Полезность: 750

evgen4uk, в прямом: ошибка в коде. сегодня исправил. вечером думаю будет выложена новая версия. И компилируй, пожалуйста, на локальном компиляторе.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 2.6.2016, 15:44
Сообщение #18
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

gyxoBka, да какая разница, через онлайн или локально? Все равно ошибку выдает) У тебя же здесь без инклюдов исходник тем более.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Energy
сообщение 3.6.2016, 9:39
Сообщение #19
Иконка группы

Стаж: 11 лет

Сообщений: 2839
Благодарности: выкл.

UP
Код
#define SLASH                                       // Закомментируйте, чтобы не скрывать сообщения начинающиеся со слэша '/'
#define NOTICE                                      // Закомментируйте строку, чтобы отключить оповещения в чате
#define SOUND                                     // Закомментируйте строку, чтобы отключить звуковое оповещение
#define LOG_TO "KickSpamers.log"                // Логирование обнурежения спама. закомментируйте, чтобы не логировать
#define BAD_WORDS "bad_words.ini"               // Слова, которые следует считать спамом. закомментируйте, чтобы не использовать
#define WHITE_WORDS "white_list.ini"           // Слова, которые НЕ считаются спамом. закомментируйте, чтобы не использовать

Измeнилось логированиe, коe что поправлeно по мeлочам, коe чeго измeнилоь по коду - как и совeтовал mazdan.



Прикрепленные файлы:
Прикрепленный файл  KickSpamer_v085.rar ( 3,97 килобайт ) Кол-во скачиваний: 30
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 3.6.2016, 10:08
Сообщение #20


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

Energy, выглядит как ошибка.
какая связь с логами тут?
Цитата
#if defined LOG_TO
new szTemp[192];
copy(szTemp, charsmax(szTemp), g_szMessage);

/** Start Subb98's Idea **/
/* А ты думал, что я пошутил? xD */

while(pos--)
{
ArrayGetString(g_aWhiteWord, pos, str, MAX_LEN )
if(containi(szTemp, str) != -1)
while(replace(szTemp, charsmax(szTemp), str, "")) {}
}

if( regex_match_c( szTemp, g_RegexSite, ret) > 0 || regex_match_c( szTemp, g_RegexIP, ret) > 0 || GetCharNum(szTemp) > MAX_CHARS)
#else
while(pos--)
{
ArrayGetString(g_aWhiteWord, pos, str, MAX_LEN )
if(containi(szTemp, str) != -1)
while(replace(g_szMessage, charsmax(g_szMessage), str, "")) {}
}
if( regex_match_c( g_szMessage, g_RegexSite, ret) > 0 || regex_match_c( g_szMessage, g_RegexIP, ret) > 0 || GetCharNum(g_szMessage) > MAX_CHARS)
#endif


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
5 страниц V   1 2 ... 3 4 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: