
VoidAC - AntiCheat для Майнкрафт серверов
VoidAC (ВойдАСИ) - бесплатный античит для Майнкрафт серверов, форк GrimAC на prediction-based архитектуре. Больше 130 проверок, BanWaves, Threshold Optimizer и полная настройка под ваш сервер.
VoidAC - это бесплатный open-source античит (AntiCheat) для серверов Minecraft на базе Paper, Spigot, Purpur, Folia и Bukkit. По сути это прокачанная и оптимизированная ветка GrimAC от MWHunter (DefineOutside). Если вы держите публичный сервер, то наверняка сталкивались с читерами на KillAura, Fly или X-Ray. VoidAC - как раз инструмент, который закрывает эту боль, причём без обязательных банов с первого дня.
Проект лежит на GitHub под GPL-3.0, без лицензионного ключа, без платного тира и без авторизационного сервера. То есть код, который вы читаете в репозитории, это ровно тот код, что крутится на вашем хосте. Пакет PacketEvents уже встроен в сборку, отдельно докупать ничего не надо.
Почему это prediction-based и чем отличается от обычных античитов
Классические античиты сравнивают движение игрока с фиксированными лимитами (скорость X, дистанция Y). Проблема в том, что эти лимиты всегда компромисс: слишком строгие бьют по честным игрокам, слишком мягкие пропускают читеров. VoidAC (ВойдАнтичит) работает на движке Simulation. Для каждого пакета движения он пересчитывает на сервере весь набор позиций, которые ванильный клиент МОГ достичь из предыдущего состояния - с учётом ввода, трения, коллизий, отдачи (knockback), воды, элитр, транспорта и так далее. Если клиент присылает движение, которое игровые правила физически не воспроизводят, идёт флаг. Это та же архитектура, что придумал GrimAC.
Это сильный фундамент, но не магия. Ни один античит, даже предсказательный, не даёт нулевого количества ложных срабатываний на всём зоопарке серверов, клиентов и сетей. Лаг, прокси, модифицированные клиенты и трансляция версий создают краевые случаи, и VoidAC относится к ним как к багам, которые правятся.
Покрытие детекта: что именно ловит
В исходниках заявлено больше 130 именованных проверок. Часть из них, честно говоря, эвристики и проверки целостности протокола, а не прямые доказательства - в таблице ниже видно, что к чему.
| Область | Что покрывается | Как работает |
|---|---|---|
| Движение | Speed, fly, движение в воде и лаве (стиль Jesus), лазание, элитры, скорость от отдачи и взрывов, Phase, NoSlow, NoFall / подмена земли, правила спринта (7 проверок), транспорт (7 проверок) | Prediction движок + проверки правил |
| Таймеры | Timer, tick timer, negative timer, timer limit, vehicle timer | Баланс тайминга пакетов с настраиваемым допуском на лаг |
| Бой | Reach, расширение хитбокса, удары через стены, EntityPierce, self-interact, multi-interact, AutoClicker (3 проверки), AutoTotem | Серверные ray cast'ы и правила взаимодействия, статистика кликов для автокликера |
| Прицел | Дублирующиеся пакеты поворота, клиенты с rotation по модулю 360 | Проверки адекватности вращения. Ловят конкретные дыры отдельных чит-клиентов, а не любой аим-ассист |
| Строительство и ломание | Фейковые, дальние, вне позиции, с неправильным поворотом, воздушная/жидкостная установка, multi-place, fast break, wrong break, no-swing break и прочее (19 проверок) | Валидация против состояния мира, которое клиент должен видеть. Насквозь кроет scaffold-поведение |
| Инвентарь и действия | Валидация кликов в инвентаре (5 проверок), multi-actions (7 проверок) | Серверная модель инвентаря |
| Пакеты и эксплойты | BadPackets (26), PacketOrder (16), Post, transaction order, Crash (9), Chat (4), элитра-эксплойты (9), транспорт (6) | Валидация протокола |
| Автоматизация | Baritone-подобный pathing | Эвристика |
| Чит-клиенты | Известные бренды и плагин-каналы (AntiSpoofA) | Сигнатурная. Ловит только те клиенты, что сами себя выдают. Кикает по умолчанию, переключается в config.yml (anti-spoof.auto-kick) |
Качество детекта зависит от конкретной проверки, версии клиента, состояния сети и настроек. Хотите точно знать, что делает проверка - исходники открыты.
Важный нюанс: игроки через Geyser или Floodgate не проверяются вообще - все проверки для них пропускаются. Java-правила движения к Bedrock-клиентам не применимы. Работает только если Geyser/Floodgate стоит на том же сервере, где крутится VoidAC.
Что сделано под реальные сервера
Компенсация задержки и состояния
VoidAC отслеживает, что клиент фактически подтвердил (через ping/transaction пакеты), и применяет изменения к своей модели только тогда, когда клиент их бы увидел. Покрыты изменения мира (блоки, сущности), инвентарь, кулдауны, фейерверки и knockback. Всё это снижает ложные флаги от лага и десинка.
Своя модель мира на каждого игрока
У каждого игрока своя компенсированная вьюшка мира - она используется для коллизий и движения. Так предсказания работают в мире, в котором клиент думает, что он находится, а не в том, куда сервер уже убежал вперёд.
Мульти-версия и Via
Поведение разных версий (хитбоксы, причуды движения, блоки, невидимые старым клиентам) обрабатывается прямо в движке, включая FastMath от OptiFine. Сервера на ViaVersion, ViaBackwards и ViaRewind поддерживаются, есть опциональные настройки аттенюации для кросс-версионных игроков (viaversion-attenuation), по умолчанию выключены.
Потоки и платформы
Обработка пакетов и предсказания идут в отдельных потоках, не в основном треде сервера. Заявлена поддержка Folia. Реальная цена зависит от железа, онлайна и остальных плагинов - измеряйте сами: /void perf показывает тайминги движка предсказаний.
Модерация и наказания
Автоматические наказания
Настраиваются по группам проверок в punishments.yml: количество нарушений, интервал и список команд. Встроенные действия: [alert], [log], [webhook] и [proxy]. Можно вписать любую консольную команду - кик, темпбан, ваш плагин банов.
Отдельно auto-punish в config.yml может банить или кикать, когда одна проверка достигает порога. По умолчанию оно выключено. Комментарии в поставляемом конфиге объясняют, почему проверки вроде Simulation требуют порога выше, чем боевые, и почему не стоит их понижать.
Ручные наказания и BanWaves
/void punish <player> <duration> [reason]: встроенный бан с шаблонным экраном кика и BanID./void banwave add|list|remove|execute|clear: копим подозреваемых и баним вместе позже. Фича в конфиге включена, но игроки попадают в очередь только если вы их добавили или включилиqueue-on-auto-punish./void unban: снимает баны, выданные через VoidAC.- Любой плагин банов работает: ставите
prefer-custom-ban: trueи шаблон команды вродеlitebans:tempban {player} {duration} {reason}(в стоковом шаблоне синтаксис LiteBans, так что под свой плагин придётся править).
Как разбираться с флагами
| Команда | Назначение |
|---|---|
/void alerts | Переключить алерты для себя |
/void verbose | Показывать и near-miss, а не только сработавшие флаги |
/void profile <player> | Версия клиента, бренд и связанная инфа |
/void spectate <player> и /void stopspectating | Спектатить игрока |
/void history <player> | История нарушений по сессиям с фильтром по имени проверки |
/void debug <player> | Включить трейс предсказаний для игрока |
/void log и /void dump | Экспорт трейса или диагностического дампа |
/void perf | Тайминги движка предсказаний |
/void brands | Показать бренды клиентов |
/void reload | Перезагрузить конфиг |
История нарушений
Флаги сохраняются, чтобы можно было разобрать их после выхода игрока. По умолчанию локальный SQLite-файл. MySQL, PostgreSQL, MongoDB и Redis поддерживаются отдельными конфигами, срок хранения настраивается (по умолчанию: 365 дней для нарушений, 90 для сессий). Всю систему можно отключить (database.enabled: false).
Алерты везде
Консоль, стафф в игре, Discord-вебхуки и по всей прокси-сети с опциональным плагином VoidBridge для BungeeCord и Velocity (подписанные, защищённые от реплея сообщения, общие баны и алерты, группировка по серверам).
Threshold Optimizer (опционально)
У разных серверов разный лаг, плагины и стиль игры. Хороший порог наказания на одном сервере может быть неверным на другом. Оптимизатор помогает подобрать пороги по вашим данным.
- Ставите
threshold-optimizer.enabled: trueвconfig.ymlи/void reload. - Выдаёте доверенным игрокам право
void.optimizer.legit. - Запускаете
/void optimizer startи даёте серверу поработать в обычном режиме (плагин советует минимум 24 часа). /void optimizer stop, потом/void optimizer save.- Смотрите
threshold-optimizer-report.ymlи сами решаете, что применить в конфиге.
Как работает: по каждой проверке записывается максимальный уровень нарушений (VL), достигнутый игроками с правом legit. Если у проверки минимум 5 legit-флагов, рекомендуется ceil(макс legit VL x 1.5). Проверки с меньшим объёмом данных помечаются как insufficient-data.
Чего он не делает: не правит ваш конфиг, не работает в фоне сам по себе, а рекомендация хороша ровно настолько, насколько хороша выборка. Пять флагов от одного игрока за один вечер - это тонко, соберите больше перед сменой боевых порогов. Пока оптимизатор работает, он ест немного CPU, так что выключайте его по завершении. Данные держатся в памяти, пока не сохранены или не отброшены.
Anti-Xray и StorageESP (опционально, выключены)
- Anti-Xray (только Paper): VoidAC может сам прописать встроенные настройки anti-xray от Paper (
AntiXray.configure-paper: true). Нужен полный рестарт. Это движок Paper, а не отдельный детектор X-Ray. - Приманки StorageESP: посылает клиентам фейковые блоки-хранилища, чтобы путать ESP-моды, и может флагнуть игрока, который взаимодействует с приманкой. Игроки с
void.storageespобходят это.
В конфиге есть ещё экспериментальный anti-esp. Он явно помечен как не production ready и выключен. Не включайте его на живом сервере.
Конфиги и языки
Файлы создаются при первом старте в plugins/Void/ (config.yml, punishments.yml, messages.yml, discord.yml, файлы БД). Конфиги сами обновляются между версиями.
В комплекте 13 языков для основного конфига и сообщений: английский, немецкий, испанский, французский, итальянский, японский, нидерландский, польский, португальский, румынский, русский, турецкий и китайский. Шаблоны наказаний, Discord и БД переведены на 11 из них (польский и румынский пока покрывают только основной конфиг и сообщения).
Требования
- Java 17 или новее.
- Paper, Spigot, Purpur или Folia. Заявленный диапазон - Minecraft 1.8 до 26.1. Сервера на 26.2 и 26.3 распознаются, но полное поведение античита на этих версиях ещё не верифицировано, тестируйте прежде чем полагаться.
- PacketEvents встроен, ставить отдельно не нужно.
- Опционально: ViaVersion, ViaBackwards, ViaRewind, Geyser, Floodgate, PlaceholderAPI, ProtocolLib.
- Опционально: VoidBridge на BungeeCord или Velocity для сетевых алертов и банов.
Установка: кидаете jar в plugins/, стартуете сервер, читаете config.yml и гоняете несколько дней с включёнными алертами, прежде чем включать автонаказания. Если держите сервер на хостинге вроде BungeeHost, плагин устанавливается туда в один клик, и он нормально поднимается как под BungeeCord, так и под Velocity-сетями.
Прозрачность
Вы отдаёте плагину контроль над тем, кто может играть на вашем сервере, так что вот что он ещё делает. Всё это есть в публичных исходниках.
Сетевые запросы
- Проверка обновлений: раз в час VoidAC спрашивает публичный API Modrinth о последней версии и уведомляет стафф с
void.alerts. Ничего о вашем сервере не отправляется. - bStats: стандартная анонимная статистика плагинов. Отключается глобально в
plugins/bStats/config.yml. - Discord-вебхуки: только если вы указали URL вебхука. Аватарки в эмбедах подгружаются клиентом Discord с
crafthead.net. - Pastebin: только если вписали свой API-ключ в
pastebin-api-key. Без ключа/void logи/void dumpсохраняют файлы на вашем сервере и ничего не загружают. - VoidBridge: общается только с вашими серверами, авторизация общим секретом, который контролируете вы.
То, чего вы можете не ожидать
- Команды
/ac,/anticheatи/blackowlzzпечатают короткое сообщение "this server uses VoidAC" со ссылками на Modrinth и Discord. По умолчанию доступно всем. Уберите правоvoid.advertу игроков (или выставьте false), чтобы скрыть. - Когда аккаунт автора плагина заходит на сервер с VoidAC (только online-mode), стафф с алертами видит уведомление о входе, а сам аккаунт получает приватное сообщение со статусом (версия, платформа, онлайн, TPS, язык). Аккаунты автора также могут получить ответ на инфо-команду выше, даже если вы её заблокировали. Ничего из этого не даёт прав, не меняет настройки и не сливает данные с вашего сервера.
anti-spoof.auto-kickпо умолчанию включён и кикает игроков, чей клиент сообщает о себе как о известном чит-клиенте. Выставьтеfalse, если хотите только алерт.- Forge-клиенты на 1.18.2 - 1.19.3 отключаются по умолчанию (
disconnect-blacklisted-forge-versions), потому что те версии Forge шли с расширенным ричем игрока.
Права
void.exempt пропускает все проверки для игрока. Стафф-права вроде void.alerts по умолчанию OP, а void.advert открыто всем.
Ложные срабатывания и поддержка
VoidAC ведёт один разработчик, поддержка строится на сообществе. Если честного игрока флагнуло, об этом стоит сообщить: приложите имя проверки, версию клиента игрока, пинг и то, чем он занимался. Плюс /void dump, если можете. Отчёты о ложных срабатываниях - так движок и становится лучше. Кстати, свежие апдейты вроде 2.6.9 чинили краш на серверах с серными шипами - так что обновляться стоит.
Открытый код и заслуги
VoidAC выходит под GNU GPL v3 и основан на GrimAC, который использует ту же лицензию. Можно читать код, собирать самому, отправлять багфиксы и пул-реквесты. В репозитории есть юнит-тесты для частей логики наказаний, конфига, локализации, версий пакетов и анти-ESP.
- GrimAC от MWHunter (DefineOutside) и контрибьюторов: prediction-движок и оригинальная база античита.
- LightningGrim от Axionize: upstream-фиксы, включённые где применимо.
- PacketEvents: пакетный слой.
Copyright 2026 blackowlzz, MWHunter (DefineOutside) и контрибьюторы.
Стоит ли ставить: короткий вывод
Если у вас публичный PvP-сервер или анархия, VoidAC - один из самых честных и прозрачных античитов на рынке. Он не пытается продать вам лицензию, не банит с порога и позволяет сначала посмотреть на игроков через алерты. Для маленького приватного сервера на пару друзей его можно прикрутить плюс-минус ради интереса, но большую часть функционала вы просто не почувствуете. Для тех, у кого стафф и сотни игроков онлайн - это must-have наравне с ViaVersion и хорошей базой данных. Скачать античит VoidAC для Minecraft сервера стоит хотя бы потому, что исходники открыты, а поведение каждого сетевого запроса честно расписано в документации внутри плагина.
Сервер для плагина VoidAC - AntiCheat для Майнкрафт серверов - как у профи
Плагин VoidAC - AntiCheat для Майнкрафт серверов создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином VoidAC - AntiCheat для Майнкрафт серверов для друзей можно за пару минут - BungeeHost всё уже подготовил.
