Версия Дата выпуска Скачивания Оценка  
2.9.9 5 0.00 звёзд 0 оценок Скачать
2.9.7 2 0.00 звёзд 0 оценок Скачать
2.9.3 9 0.00 звёзд 0 оценок Скачать
Версия 2.9.9
  • Исправлен обход фильтра через символы whitelist внутри слова (например "ПツрツИツмツЕツрツツツ")
  • Синхронизирована логика нормализации между RemoveSpaces и ReplaceTextIgnoringSpaces
  • Исправлена обработка многобайтовых UTF-8 символов в NormalizeWordForKword (KWORD)
Версия 2.9.7

  • Новый флаг CHARONLY для whitelist — защищает символ от удаления, но НЕ пропускает фильтрацию мата
    C-подобный:
    "whitelist" "'ツ' 'CHARONLY'"
  • Исправлен баг: whitelist пропускал ВСЁ сообщение если находил символ (теперь только с CHARONLY)
  • Исправлен баг: символы whitelist удалялись в RemoveSpaces
  • Исправлен баг: say_team выводил отфильтрованное сообщение в общий чат вместо командного
  • Исправлен баг: immunity не работал (неправильный вызов CheckCommandAccess)
  • Исправлен баг: whitelist не проверял нормализованный текст
  • Исправлен баг: crash при ParseAndExecute для client = 0 (консоль)
  • Исправлен баг: неправильное копирование многобайтовых UTF-8 символов в NormalizeLatinToCyrillic
  • Исправлен баг: утечка памяти — Regex из replacepattern не удалялся при очистке
  • Исправлена проверка пустого сообщения после очистки
  • Добавлен учёт символов whitelist при валидации (whitelistChars)

Пример использования CHARONLY:
C-подобный:
// Символ защищён от удаления, но мат рядом фильтруется:
"whitelist" "'ツ' 'CHARONLY'"

// Результат:
// "ツ" → проходит
// "СлОвО ツツツ" → "*** ツツツ"
- Просто доработал флаг KWORD и добавил те же самые проверки как и в REGEX паттернах + очистку от мусора.
- Доработка API.

REGEXFilter v2.9.1 ALPHA​

Новое: Флаг KWORD в конфигурационном файле!​

Реализована проверка границ слова (Word Boundaries) на уровне плагина. Решает проблему неработающего \b с кириллицей в PCRE.
C-подобный:
// Было: 'лох' ловит "плохой"
"chatpattern"    "'лох' 'CASELESS'"
// Стало: 'лох' НЕ ловит "плохой"
"chatpattern"    "'лох' 'CASELESS|KWORD'"
KWORD требует указания всех форм слова (падежи, склонения).

Изменения​

  • Добавлен AutoExecConfig — файл настроек cfg/sourcemod/sm_regexfilter.cfg
  • Исправлен паттерн (съ?)(е|ё)б — не ловит "себя/себе"
  • Документация флагов в конфиге

Файлы​

  • sm_regexfilter.sp
  • regexrestrict.cfg
Версия: 2.9.1 ALPHA
Совместимость: SourceMod 1.10+
- Добавлена переменная regexfilter_skip_console, которая включает или отключает фильтрацию из под консоли, при выполнении команды `say`.
REGEX Word Filter v2.7.1

Новый функционал

Добавлена очистка мусорных символов из сообщений (эмодзи, юникод-арт, спецсимволы).

Логика:
  • Мусора <50% — символы удаляются, сообщение отправляется
  • Мусора >50% — сообщение блокируется
  • Нет букв после очистки — сообщение блокируется

Новый ConVar:
C-подобный:
regexfilter_cleanjunk "1"  // 1 = вкл, 0 = выкл

API

Очистка применяется и к вызовам через API. Добавлена документация на русском.

Код:
// Возвращает: 1 = изменено, 0 = без изменений, -1 = заблокировано
native int REGEXFilter_ProcessMessage(int client, char[] text, int maxlen);

// Добавление паттерна в белый список
native int REGEXFilter_AddWhitelist(const char[] pattern, int maxlen);

Прочее
  • Комментарии в коде переведены на русский

Changelog
C-подобный:
v2.7.1
+ regexfilter_cleanjunk — очистка мусорных символов
+ Блокировка сообщений с >50% мусора
+ Блокировка сообщений без букв
+ Документация API на русском
+ Интеграция очистки в Native_ProcessMessage
* Комментарии переведены на русский
- Исправлено API.
- Добавлен детект латиницы.
- Микро-исправления.
Сверху Снизу