Симуляция движения и Zero-Copy перехват пакетов в Sentinel-GrimAC через PacketEvents
1. Почему обработка идёт в потоках Netty, а не в Bukkit API
Старые античиты подписывались на событие `PlayerMoveEvent`, которое вызывается уже внутри главного тика сервера без точных временных меток прихода пакетов. Модуль Sentinel-GrimAC v4.2 встраивается непосредственно в конвейер Netty ChannelPipeline через PacketEvents 2.6.0 и разбирает буферы `ByteBuf` до того, как пакет попадёт в игровой мир.
2. Точное предсказание физики 1.21.4 и Reach-валидация
На каждый тик движения сервер перебирает возможные комбинации нажатых клавиш WASD/Jump/Sprint и проверяет, соответствует ли присланная клиентом координата ванильной физике трения льда, воды, пузырьковых колонн и элитр. При атаке в PvP хитбокс цели откатывается назад во времени ровно на величину подтверждённого транзакциями пинга атакующего.
Конфигурация plugins/SentinelGrim/config.yml
checks:
prediction:
setback-threshold: 0.0025
max-ping-compensation-ms: 250
reach:
max-reach-survival: 3.005
hitbox-expansion-buffer: 0.004
timer:
max-balance-ms: 120