Перейти к содержанию

🛡️ ssAntiCheat

ssAntiCheat — это серверный античит для ARK: Survival Evolved. Он работает полностью внутри вашего сервера как плагин ArkApi — игрокам не нужно ничего устанавливать, и обходить нечего, потому что клиентской части нет. Обнаружения оповещаются в ваш Discord и внутриигровым администраторам, а нарушители ставятся в очередь на волну банов, чтобы читеры не узнали, какая проверка их поймала.

Помимо обнаружения, ssAntiCheat также блокирует значительное количество известных эксплойтов напрямую и поставляется с исправлениями для нескольких давних проблем сервера — включая эксплойты, вызывающие краши, и дюп предметов.

Возможности

  • Модули обнаружения. Десятки индивидуально переключаемых детекторов, сгруппированных в четыре категории: Бой, Разное, Мод и Эксплойты. Несколько примеров: обнаружение aimbot и silent-aim, auto-flak, auto-medbrew, no-overheat, auto-loot и auto-craft. Каждый из них можно включать, отключать и настраивать отдельно.
  • Блокировка эксплойтов, а не только оповещение. Большинство модулей эксплойтов может предотвратить действие, а не только пометить его, поэтому эксплойт не срабатывает, вместо того чтобы просто быть залогированным постфактум.
  • Защита от крашей и дюпа. Известные векторы крашей сервера блокируются, а исправления дюпа перекрывают распространённые способы дюпа предметов (дюпы через трансфер, трюки с сумкой/трансмиттером и другие).
  • Исправления глитчей и лагов. Отдельный раздел Fixes охватывает известные глитчи сервера (scout-глитч, глитч наручников, «player already connected», pull-глитч, защиту от лагов и исправление дюпа).
  • Встроенная система банов. Баны сохраняются в MySQL и применяются при входе, с необязательными банами по IP и HWID. Волны банов группируются, так что несколько читеров удаляются одновременно. См. Баны и обнаружения.
  • Оповещения в Discord. Обнаружения, баны, логи входов, баны по IP-ассоциации и логи действий администраторов уходят на вебхук, который вы настраиваете — или все на один и тот же.
  • Инструменты администратора. Наблюдение за помеченным игроком одной командой, переключение ESP игроков и построек для себя, а также набор чат-команд для работы с подозреваемыми в игре. Каждое действие администратора логируется.
  • Проверка при подключении. Необязательные проверки через Steam Web API при входе: минимальное время в игре, минимальный возраст аккаунта и недавние VAC-баны — каждую можно только логировать или блокировать.
  • Дашборд (необязательно). Добровольная телеметрия на дашборд ssAnticheat для живой ленты обнаружений, состояния сервера и, опционально, живой карты игроков. По умолчанию отключено.

Как обнаружение становится баном

1
2
3
4
5
6
7
8
detector fires
   └─> detection recorded  ──> in-game admin alert
                            ──> Discord webhook
                            ──> dashboard (if enabled)
   └─> module's ban threshold reached?
          └─> player queued for the next ban wave
                 └─> ban wave runs: on a save cycle, when the player
                     disconnects, on an instant-ban module, or manually

Пороги, блокировка и поведение мгновенного бана задаются для каждого модуля отдельно. Полный процесс — и каждая настройка, которая на него влияет — описаны на странице Баны и обнаружения.

Требования

Требование Примечания
ArkApi 3.51 или новее Плагин не загрузится на более старых версиях API.
MySQL / MariaDB Обязательно. Баны сохраняются там. См. Общую конфигурацию.
Лицензионный ключ Bytemart Ничего не активируется, пока ключ не пройдёт аутентификацию.
Исходящий HTTPS Требуется для лицензирования, вебхуков Discord и (если используются) Steam Web API и дашборда.

Установка

  1. Убедитесь, что на вашем сервере установлен ArkApi 3.51+.
  2. Настройте базу данных MySQL/MariaDB — см. Общую конфигурацию. База данных должна уже существовать; плагин создаёт внутри неё свои собственные таблицы.
  3. Скачайте ssAntiCheat.zip с вашей панели управления Bytemart.
  4. Остановите сервер (сначала выполните saveworld) или выгрузите любую предыдущую версию командой plugins.unload ssAntiCheat.
  5. Распакуйте архив в папку ssAntiCheat внутри ShooterGame/Binaries/Win64/ArkApi/Plugins/.
  6. Откройте config.json и заполните ваш LicenseKey и учётные данные Database (см. Конфигурация).
  7. Запустите сервер и убедитесь, что при запуске нет ошибок.
  8. Выполните ssac.status из консоли или RCON, чтобы убедиться, что лицензия прошла аутентификацию.

⚠️ Настройте вебхуки перед запуском на боевом сервере. Каждое поле вебхука изначально пустое. Пока вы не заполните хотя бы DefaultWebhookUrl, обнаружения видны только внутриигровым администраторам и в журнале сервера.

Обновление

  • Вручную: plugins.unload ssAntiCheat, замените файлы, затем plugins.load ssAntiCheat.
  • Автоматически (горячая перезагрузка): переименуйте новый ssAntiCheat.dll в ssAntiCheat.dll.arkapi и поместите его в папку плагина — ArkApi загрузит новую версию и автоматически выгрузит старую.

Всегда проверяйте список изменений на предмет изменений в конфигурации при обновлении. ssAntiCheat автоматически восстанавливает свою конфигурацию (отсутствующие ключи добавляются со значениями по умолчанию, а оригинал сохраняется в config.json.bak), но такой инструмент, как Diffchecker, всё же помогает заметить новые ключи, которые стоит настроить.

Устранение неполадок

  • Плагин не загружается, код ошибки 1114 — синтаксическая ошибка JSON в config.json. Проверьте его через JSONLint.
  • «License key is missing» — LicenseKey всё ещё содержит значение-заглушку.
  • Ничего не приходит в Discord — проверьте, что Use Discord установлено в true и что заполнен соответствующий URL вебхука. Вебхуки назначаются под конкретную цель; см. Конфигурация.
  • Во всех остальных случаях — установите LogToFile в true и воспроизведите проблему; плагин пишет собственный ротируемый журнал ssAntiCheat.log рядом с config.json, так что не придётся копаться в общем журнале сервера. Затем спросите в Discord Bytemart.

Дальнейшие шаги: