![]() |
SafeNameFilter для CS:GOОчистка никнеймов от ссылок и спецсимволов |
05.08.2024 в 13:45 3 |
Keks423 | 05.08.2024 в 13:45#1 | ||
![]() Сообщений: 73
Реакции: 28
Клиенты
|
Плагин SafeNameFilter предназначен для повышения безопасности на сервере CS:GO
Путем очистки никнеймов игроков. Он помогает предотвратить проблемы, связанные с отображением ссылок и потенциальными уязвимостями, удаляя из никнеймов потенциально опасные строки и специальные символы. Основные Функции: Очистка Никнеймов: Плагин удаляет из никнеймов строки "http" и "https", которые могут указывать на ссылки, а также другие потенциально опасные символы, такие как <, >, ", и ', которые могут быть использованы для атак или вызвать проблемы в отображении. Автоматическая Очистка При Входе: Когда игрок заходит на сервер, его никнейм автоматически очищается. Если никнейм превышает максимальную допустимую длину, он обрезается до допустимого размера. Команда для Ручного Изменения Ника: В плагине реализована команда sm_nickchange, позволяющая вручную изменить никнейм через консоль. Эта функция полезна для тестирования или изменения ника на лету. Как Это Работает: Функция SanitizeNickname: Принимает никнейм и размер буфера. Копирует никнейм во временный буфер, удаляет нежелательные подстроки и специальные символы, и обновляет оригинальный никнейм очищенным значением. Функция OnClientPutInServer: Вызывается при входе игрока на сервер. Получает никнейм игрока, проверяет его длину, обрезает при необходимости, очищает и устанавливает новый никнейм. Функция Command_NickChange: Обрабатывает команду sm_nickchange для ручного тестирования. Изменяет никнейм игрока на новый, полученный из команды, и очищает его. Функция OnPluginStart: Регистрирует команду sm_nickchange на сервере, чтобы она была доступна для использования. Установка и Использование: Установка Плагина: Поместите файл плагина SafeNameFilter.smx в папку addons/sourcemod/plugins на вашем сервере. Поместите файл исходного кода SafeNameFilter.sp в папку addons/sourcemod/scripting на вашем сервере. Команды: sm_nickchange — Изменяет никнейм игрока на новый, указанный в команде, очищает его и устанавливает. Примечание: Этот плагин помогает предотвратить проблемы, связанные с отображением ссылок и специальных символов в никнеймах игроков, способствуя более безопасной среде на сервере. Если у вас возникнут вопросы или вы столкнетесь с проблемами, не стесняйтесь обращаться за помощью! |
||
Ответить Цитата |
Keks423 | 07.08.2024 в 23:42#2 |
![]() Сообщений: 73
Реакции: 28
Клиенты
|
Плагин обновлён список изменений:
Удаление Условного Определения Макроса: Удалено условное определение MAX_NAME_LENGTH. Теперь используется фиксированное значение 32. Изменение Определения Размеров Буфера: Размер временного буфера (TEMP_BUFFER_SIZE) установлен на 33 для учёта нулевого символа. Исправление Порядка Удаления Подстрок: Порядок строк для удаления "https" и "http" изменен. Сначала удаляется "https", затем "http". Исправление Обработки Никнеймов: Упрощен код обработки никнеймов с фиксированным значением 32 для длины никнейма и обрезки. |
Ответить Цитата |
Keks423 | 15.09.2024 в 19:51#3 |
![]() Сообщений: 73
Реакции: 28
Клиенты
|
Добавлено логирование изменений никнеймов:
Теперь логируется информация о том, как изменился никнейм игрока после его очистки. Лог включает оригинальный никнейм, новый ник и SteamID игрока. Логирование можно включить или отключить с помощью нового CVAR sm_nick_sanitizer_logging. Добавлены настройки через CVAR: Новый CVAR sm_nick_sanitizer_logging для включения/выключения логирования изменений никнеймов. Новый CVAR sm_nick_sanitizer_max_length для установки максимальной длины ника (по умолчанию 32 символа). Уведомление игрока о смене ника: Игрок получает уведомление в чат, если его ник был изменён после очистки (при подключении или при ручной смене ника). Оптимизация обработки команд: Если никнейм игрока не изменился после очистки, выводится сообщение, что ник остался прежним. |
Ответить Цитата |