- SpeedCheck: tps.enabled and tps.min_tps_threshold now work (was hardcoded) - ConfigManager/config.yml: Removed orphaned async_task_threads and commands.* keys - PunishmentManager: database.enabled now correctly disables SQLite logging - PacketListener: Removed dead code (updatePacketTiming, recordClick, recordAttack)
2.5 KiB
2.5 KiB
XeroAntiCheat
Lightweight, accurate anti-cheat for Paper 1.21.x
Latest Updates (v1.1.3)
- SpeedCheck:
tps.min_tps_thresholdandtps.enabledconfig keys now actually work — previously hardcoded as18.0and always-on. - config.yml: Removed orphaned
async_task_threadskey and entirecommands:section — these were never read by the plugin. - PunishmentManager:
database.enabled: falsenow correctly disables SQLite punishment logging as documented. - PacketListener: Removed three unreachable fallback methods (
updatePacketTiming,recordClick,recordAttack) — dead code since v1.0.4.
Latest Updates (v1.1.2)
- reload:
violation.decay_intervalchanges now take effect immediately — the decay task is cancelled and recreated on every/xac reload. - NoFallCheck: Added Beds (all 16 colour variants via
Tag.BEDS) and Powder Snow to the list of blocks that cancel fall damage. Eliminates false positives when players land on these blocks. - config.yml: Removed orphaned
allow_jump_critskey fromchecks.criticalsection (was removed from code in v1.1.1). - JesusCheck, GlideCheck: Eliminated
Math.sqrt()from hot-path threshold comparisons.
Latest Updates (v1.1.1)
- CriticalCheck: Removed dead code — the "no-air crit" detection branch was logically unreachable because
isCritical=truerequires!isOnGround, making the subsequentisOnGroundcheck always false. The check now only flags "crit while sprinting" (the only branch that could actually fire). Removedallow_jump_critsconfig key. (Future enhancement: Option B damage-ratio detection.) - InventoryMoveCheck: Replaced
Math.sqrt()with squared distance comparison (distanceSquared > 0.01), consistent with the ReachCheck optimisation.
Latest Updates (v1.1.0)
- ReachCheck: Now measures distance to entity bounding box center instead of feet. Eliminates false negatives when attacking tall entities (horses, iron golems, withers). Also switched from
distance()todistanceSquared()comparison, removing aMath.sqrt()from the hot path. - AutoClickerCheck:
checkPattern()rewritten with zero-allocation two-pass iterator approach. Previously allocated twoArrayListobjects on every combat click. - TimerCheck: Removed redundant blink detection from
check()method. Blink detection is fully handled by the 5-tick scheduled task.setLastMovePacketTime()retained to feed the task. - KillAuraCheck: Removed unused
EntityEffectimport.