Sentinel [Anticheat]
A Hytale Anticheat focused on detecting cheats in PvP environments
Описание
Стражник
Витринный ролик
Витрина YouTube + объяснение: (ссылка скоро)
А. Плагин Hytale на стороне сервера, ориентированный на проверку движения / взаимодействия с предупреждениями персонала, недавними журналами флагов и дополнительными уведомлениями и наказаниями Discord.
Текущие проверки
- Таймер: обнаруживает аномально быстрое движение и взаимодействие пакетов.
- Флаги летают в режиме приключений.
- Скорость: флаги поддерживают горизонтальную скорость движения выше порога.
- Бесконечная стаминация: Флаги скользят без истощения выносливости.
Особенности
- Оповещения в чате
- Дополнительные оповещения Discord Webhook
- Необязательные автоматические наказания (отключение/запрет) при высоком флаге
конфигурация
Файл конфигурирования создается в каталоге данных плагина при первом запуске (обычно) Моды/Al3x_HytaleAC/config.json).
Конфигурация по умолчанию:
{
"таймер": {
"Включено": правда,
"minMsInteractionPacket": 9,
"minNanoMovementPacket": 15000000.0,
"flagsNeededToAlert": 100,
«FlagsNeededToPunish»: 1000
?
"летать": {
"Включено": правда,
"flagsNeededToAlert": 1,
"flagsNeededToPunish": 5
?
"скорость": {
"Включено": правда,
"Порог максимальной скорости": 9.5,
"flagsNeededToAlert": 1,
"flagsNeededToPunish": 5
?
"infStamina": {
"Включено": правда,
"flagsNeededToAlert": 4,
"flagsNeededToPunish": 8
?
"оповещения": {
"перезагрузитьИнтервалВторые": 60,
«Уведомить»: правда,
"debugMode": ложный,
"discordWebhookUrl":
?
"Наказания": {
«Причина»: «[Антихит] Обман»,
«ShouldBan» — ложный
?
?
Варианты конфигурации:
| Путь | Тип | по умолчанию | Описание |
|---|---|---|---|
Timer.enabled |
булевый | истинный |
Включает или отключает проверку таймера полностью. |
Timer.minMsInteractionPacket |
инт | 9 9 |
Минимальные миллисекунды между пакетами взаимодействия перед пометкой. |
Timer.minNanoMovementPacket |
номер | 150000000000 |
Минимальные средние наносекунды между пакетами перед пометкой. |
Timer.flagsNeededToAlert |
инт | 100 |
Флаги, необходимые перед отправкой оповещения персонала (таймер). |
Timer.flagsНеобходимо наказывать |
инт | 1000000000 |
Флаги, требуемые до начала наказания (таймер). |
fly.enabled |
булевый | истинный |
Включает или полностью отключает проверку на муху. |
fly.flagsNeededToAlert |
инт | 1 1 |
Флаги, необходимые перед отправкой оповещения персонала (летают). |
fly.flagsНеобходимо наказывать |
инт | 5 |
Флаги, требуемые до начала наказания (летать). |
скоростной |
булевый | истинный |
Включает или отключает проверку скорости полностью. |
Speed.maxПорог скорости |
номер | 14.0 |
Максимальная горизонтальная скорость перед повешением. |
Speed.flagsNeededToAlert |
инт | 1 1 |
Флаги, необходимые перед отправкой сигнала тревоги (скорости). |
Speed.flagsНаказание |
инт | 5 |
Флаги, требуемые до начала наказания (скорость). |
infStamina.enabled |
булевый | истинный |
Включает или отключает бесконечную проверку выносливости полностью. |
infStamina.flagsNeededToAlert |
инт | 2 2 |
Флаги, необходимые перед отправкой оповещения персонала (стамина). |
infStamina.flagsНеобходимо наказывать |
инт | 4.4 |
Флаги, требуемые до начала наказания (стамина). |
alerts.resetИнтервалВторое |
инт | 60 |
Интервал в секундах, чтобы очистить флаги игроков. |
Уведомление.notifyReset |
булевый | истинный |
Если истинный, уведомляет сотрудников при сбросе флагов. |
Обсуждение:DebugMode |
булевый | ложный |
Если истинный, вывод отладки на серверную консоль для различных проверок. И не исполняет наказаний |
@discordWebhookUrl |
струна | "" |
Discord webhook URL для вставок оповещения; оставьте пустой для отключения. |
Наказание.Причина |
струна | «[Антихит] Обман» |
Причина, используемая для отключений / запретов и наказаний. |
Наказание должно быть запрещать |
булевый | ложный |
Если истинныйЗапреты вместо отключения, когда наказание запускается. |
Предупреждения Webhook
Если @discordWebhookUrl Устанавливается, сотрудники оповещения и карательные действия также постят в Раздор. Оповещения ограничены до одного раза в секунду, за исключением наказаний.
Наказания
Когда любая проверка достигает своего Флаги Наказать Порог, плагин отключит игрока по умолчанию и отправит штрафной веб-хук. Если Наказание должно быть запрещать это истинныйВместо этого будет введен бесконечный запрет.
командование
| Командование | Описание | Разрешение | Заметки |
|---|---|---|---|
/anticheat скачать |
Перезагружает параметры конфигурации плагина. | anticheat.command |
Обратите внимание, что перезагрузка сервера лучше. |
/Античешская помощь |
Показывает доступные команды античита. | anticheat.command |
N/A |
/предупреждения |
Тогглз получает античитерские предупреждения. | hytaleac.alerts |
Игроки с этим разрешением автоматически присоединяются. |
/logs <player> |
Показывает последние флаги для игрока. | hytaleac.logs |
Логи очищаются в интервале сброса. |
Разрешения
anticheat.command: Использовать/Античешская помощьи/anticheat скачать.hytaleac.alerts: Использовать/предупрежденияи получать оповещения персонала.hytaleac.logs: Использовать/logs <player>.
установка
- Возьмите .jar из последнего выпуска.
- Скопируйте банку в каталог модов сервера Hytale.
- Запустите сервер для генерации
config.jsonв каталоге данных плагина.
устранение неполадок
- Слишком много/ложных флагов: увеличьте соответствующий чек
флаги необходимый АлертилиФлаги Наказатьи/или релаксировать пороговые значения (например,Timer.minMsInteractionPacket,Timer.minNanoMovementPacketилиSpeed.maxПорог скорости). - Никаких предупреждений персонала: убедитесь, что у сотрудников есть
hytaleac.alertsИ что они с оповещением/предупреждения. - Логи всегда пустые: логи сбрасываются
alerts.resetИнтервалВтороеЭто делается для того, чтобы ложные флаги не загромождали бревна. - Никаких предупреждений: проверьте
@discordWebhookUrlЭто действительный URL Webhook.
Производительность Notes
Hytale все еще нова, и серверный API развивается. Хотя этот плагин был протестирован на более низком оборудовании, производительность может варьироваться в зависимости от нагрузки на сервер и количества игроков. И может сломаться, если внезапное обновление изменит работу пакетов. Всегда следите за производительностью вашего сервера после добавления новых плагинов.
Показать оригинальное описание (English)
Sentinel
Showcase video
YouTube showcase + explanation: (link coming soon)
A Hytale server-side anticheat plugin focused on movement/interaction checks with staff alerts, recent flag logs, and optional Discord webhook notifications and punishments.
Current Checks
- Timer: Detects abnormally fast movement and interaction packets.
- Fly: Flags flying in Adventure mode.
- Speed: Flags sustained horizontal movement speed above a threshold.
- Infinite Stamina: Flags sprinting without stamina depletion.
Features
- Staff Alerts in Chat
- Optional Discord Webhook Alerts
- Optional automatic punishments (disconnect/ban) at high flag counts
Configuration
The config file is created in the plugin data directory on first run (typically mods/Al3x_HytaleAC/config.json).
Default config:
{
"timer": {
"enabled": true,
"minMsInteractionPacket": 9,
"minNanoMovementPacket": 15000000.0,
"flagsNeededToAlert": 100,
"flagsNeededToPunish": 1000
},
"fly": {
"enabled": true,
"flagsNeededToAlert": 1,
"flagsNeededToPunish": 5
},
"speed": {
"enabled": true,
"maxSpeedThreshold": 9.5,
"flagsNeededToAlert": 1,
"flagsNeededToPunish": 5
},
"infStamina": {
"enabled": true,
"flagsNeededToAlert": 4,
"flagsNeededToPunish": 8
},
"alerts": {
"resetIntervalSeconds": 60,
"notifyReset": true,
"debugMode": false,
"discordWebhookUrl": ""
},
"punishments": {
"reason": "[Anticheat] Cheating",
"shouldBan": false
}
}
Config options:
| Path | Type | Default | Description |
|---|---|---|---|
timer.enabled |
boolean | true |
Enables or disables the timer check entirely. |
timer.minMsInteractionPacket |
int | 9 |
Minimum milliseconds between interaction packets before flagging. |
timer.minNanoMovementPacket |
number | 15000000.0 |
Minimum average nanoseconds between movement packets before flagging. |
timer.flagsNeededToAlert |
int | 100 |
Flags required before sending a staff alert (timer). |
timer.flagsNeededToPunish |
int | 1000 |
Flags required before punishments trigger (timer). |
fly.enabled |
boolean | true |
Enables or disables the fly check entirely. |
fly.flagsNeededToAlert |
int | 1 |
Flags required before sending a staff alert (fly). |
fly.flagsNeededToPunish |
int | 5 |
Flags required before punishments trigger (fly). |
speed.enabled |
boolean | true |
Enables or disables the speed check entirely. |
speed.maxSpeedThreshold |
number | 14.0 |
Maximum horizontal speed before flagging. |
speed.flagsNeededToAlert |
int | 1 |
Flags required before sending a staff alert (speed). |
speed.flagsNeededToPunish |
int | 5 |
Flags required before punishments trigger (speed). |
infStamina.enabled |
boolean | true |
Enables or disables the infinite stamina check entirely. |
infStamina.flagsNeededToAlert |
int | 2 |
Flags required before sending a staff alert (stamina). |
infStamina.flagsNeededToPunish |
int | 4 |
Flags required before punishments trigger (stamina). |
alerts.resetIntervalSeconds |
int | 60 |
Interval in seconds to clear player flags. |
alerts.notifyReset |
boolean | true |
If true, notifies staff members when flags are reset. |
alerts.debugMode |
boolean | false |
If true, prints debug output to the server console for different checks. And doesn't execute punishments |
alerts.discordWebhookUrl |
string | "" |
Discord webhook URL for alert embeds; leave empty to disable. |
punishments.reason |
string | "[Anticheat] Cheating" |
Reason used for disconnects/bans and punishment webhooks. |
punishments.shouldBan |
boolean | false |
If true, bans instead of disconnecting when punishments trigger. |
Webhook alerts
If alerts.discordWebhookUrl is set, staff alerts and punishment actions also post to Discord. Alerts are rate-limited to once per second except for punishments.
Punishments
When any check reaches its flagsNeededToPunish threshold, the plugin will disconnect the player by default and send a punishment webhook. If punishments.shouldBan is true, it will issue an infinite ban instead.
Commands
| Command | Description | Permission | Notes |
|---|---|---|---|
/anticheat reload |
Reloads plugin configuration options. | anticheat.command |
Note that a server restart is better. |
/anticheat help |
Shows available anticheat commands. | anticheat.command |
N/A |
/alerts |
Toggles receiving anticheat alerts. | hytaleac.alerts |
Players with this permission are auto-enrolled on join. |
/logs <player> |
Shows recent flags for a player. | hytaleac.logs |
Logs are cleared on the reset interval. |
Permissions
anticheat.command: Use/anticheat helpand/anticheat reload.hytaleac.alerts: Use/alertsand receive staff alerts.hytaleac.logs: Use/logs <player>.
Installation
- Grab the .jar from the latest release.
- Copy the jar into the Hytale server's mods directory.
- Start the server to generate
config.jsonin the plugin data directory.
Troubleshooting
- Too many/false flags: increase the relevant check's
flagsNeededToAlertorflagsNeededToPunish, and/or relax thresholds (for exampletimer.minMsInteractionPacket,timer.minNanoMovementPacket, orspeed.maxSpeedThreshold). - No staff alerts: ensure staff have
hytaleac.alerts, and that they toggled alerts with/alerts. - Logs always empty: logs reset on
alerts.resetIntervalSeconds, this is to prevent false flags from cluttering logs. - No Discord alerts: verify
alerts.discordWebhookUrlis a valid webhook url.
Performance Notes
Hytale is still new and the server API is evolving. While this plugin has been tested on lower-end hardware, performance can vary based on server load and player count. And may break if a sudden update changes how packets work. Always monitor your server's performance after adding new plugins.
Информация
Авторы:
Версии игры:
Создан: 27.01.2026