BetterAnticheat
BetterAnticheat - вспомогательный античит для серверов Minecraft, нацеленный на редкие и сложные читы, которые не ловят стандартные античиты. Лёгкий, использует машинное обучение и нулевое буферизирование. Работает вместе с другими античитами.
BetterAnticheat
Важно: плагин находится на ранней стадии разработки, стабильность не гарантируется. Используйте с осторожностью.
BetterAnticheat - это вспомогательный античит для серверов Minecraft. Он не пытается поймать полёт, скорость, радиус атаки и тому подобное. Его задача - выявлять более редкие читы, которые многие античиты пропускают. Поэтому BetterAnticheat нужно запускать вместе с другим античитом.
Плагин лёгкий, платформонезависимый, совместим с другими античит-системами. Большинство проверок построены по принципу 0-buffer: если проверка сработала, значит игрок точно читерит. Вот как это достигается:
- Компенсация лагов. BA знает, как клиент воспринимает мир в любой момент, и учитывает это.
- Куки. Использует пакет куки для компенсации, чтобы не мешать использованию Ping/Pong.
- Регистрация команд на лету. Пути команд можно менять в реальном времени, включать-выключать.
- Промышленный уровень. Разработан античит-специалистами с большим опытом.
- Машинное обучение. BA использует ML для установления уровня доверия к игроку в бою.
Плагин использует библиотеки PacketEvents и sharkbyte-configuration.
Тестовый сервер доступен по адресу 192.18.159.249 для клиентов 1.21.4+, но не всегда онлайн (используется для разработки).
Примечание: это не локальный IP-адрес - не путайте с диапазоном 192.168.x.x.
Требования
Плагин совместим с Minecraft 1.21.4+ на серверах Spigot, Paper/Folia, Sponge и Velocity. Требуется PacketEvents.
На платформах Spigot и Paper/Folia поддерживает BetterReload (опциональная зависимость).
Проверки
BetterAnticheat содержит следующие проверки по категориям:
Chat (Чат)
Эти проверки ищут проблемы с чатом, могут ловить макросы и инструменты автоматизации.
- HiddenChat (Скрытый чат) - отправка сообщений с закрытым окном чата (часто макросы).
- ImpossibleCompletion (Невозможное дополнение) - автодополнение невалидных сообщений.
- ImpossibleMessage (Невозможное сообщение) - отправка пустых или неверно отформатированных сообщений.
Combat (Бой)
Ищут проблемы в бою, могут ловить разные читы.
- ActionInteractOrder (Порядок действий) - отправка пакета EntityAction до InteractEntity в одном тике.
- DualClick (Двойной клик) - одновременные клики ЛКМ и ПКМ.
- InvalidInteractionPosition (Неверная позиция взаимодействия) - невалидные рассчитанные клиентом хитбоксы.
- InvalidReleaseValues (Неверные значения отпускания) - отпускание предмета с заполненными значениями.
- InvalidUseActions (Неверные действия использования) - атака или установка блока при использовании предмета.
- MultipleAction (Множественные действия) - смена крадущегося или бега несколько раз за тик.
- MultipleHit (Множественные удары) - удар по нескольким сущностям за тик.
- NoSwingCombat (Бой без взмаха) - атака сущности без отправки пакета взмаха рукой.
- SelfHit (Удар по себе) - атака самого себя.
- SlotInteractOrder (Порядок смены слота) - смена слота до пакета InteractEntity в тике.
Dig (Копание)
Ищут проблемы с копанием: nuker, fast break и другие.
- DigBlockFacePosition (Позиция грани блока) - копание граней, которые нельзя увидеть.
- DigOrder (Порядок копания) - неверные стадии копания.
- MultiBreak (Множественное копание) - копание нескольких блоков одновременно.
- RepeatedDig (Повторное копание) - отправка нескольких пакетов копания за тик.
Flying (Полёт)
Ищут проблемы с пакетами полёта: изменение позиции/вращения и связанные читы.
- ArtificialFlying (Искусственный полёт) - подделка пакетов полёта.
- ArtificialPosition (Искусственная позиция) - отправка невозможных малых изменений позиции.
- FlyingSequence (Последовательность полёта) - отсутствие пакетов полёта в течение 20 тиков.
- ImpossiblePosition (Невозможная позиция) - отправка невозможных значений позиции.
- ImpossibleRotation (Невозможное вращение) - отправка невозможных значений вращения.
- RepeatedRotation (Повторное вращение) - отправка повторяющихся значений вращения.
- RepeatedSteer (Повторное управление) - отправка пакетов управления без соответствующего изменения вращения.
Heuristic (Эвристика)
Эти проверки используют статистику и наблюдаемое поведение. Они не основаны на строгих правилах, поэтому теоретически могут давать ложные срабатывания при идеальном поведении игрока. Рекомендуется использовать их как индикатор для наблюдения, максимум - кик, а не постоянное наказание.
- CombatAcceleration (Ускорение в бою) - постоянное ускорение во время боя.
Misc (Разное)
Разные проверки, не входящие в другие категории.
- ImpossibleHorseJump (Невозможный прыжок лошади) - математически неверные прыжки на лошади.
- ImpossibleSlot (Невозможный слот) - доступ к несуществующим слотам.
- LargeName (Длинное имя) - переименование предмета в чрезмерно длинное название.
- MultipleSlot (Множественные слоты) - смена слотов несколько раз за тик.
- SmallRender (Маленькая прорисовка) - дистанция прорисовки меньше 2.
Packet (Пакеты)
Ищут общие проблемы с пакетами: нарушение порядка.
- Balance (Баланс) - проверка ускоренной скорости игры (в разработке).
- Post (Пост-пакеты) - отправка пакетов в неправильном порядке.
Place (Установка блоков)
Ищут проблемы с установкой блоков: scaffold, fast place, ghost hand и другие.
- CursorPosition (Позиция курсора) - невалидные рассчитанные клиентом лучи (raycasts).
- PlaceBlockFacePosition (Позиция грани блока) - установка на грани, которые нельзя увидеть.
Если вы администрируете сервер и хотите минимизировать читерство, BetterAnticheat - хорошее дополнение к основному античиту. Скачайте плагин и настройте его под свои нужды. Он не перегружает сервер и помогает ловить тех, кто использует более изощрённые методы.