Minecraft anticheat guide
Why FairPlay Uses PacketEvents for Minecraft Combat Detection
How PacketEvents helps FairPlay read timing, interactions, swings, movement, inventory activity, and combat context for stronger anticheat decisions.
Combat is timing-sensitive
Combat cheats often live in the timing between high-level events. A click, swing, attack, rotation, movement update, slot change, or inventory click can be legal in isolation and suspicious when ordered unnaturally with the rest of the packet stream.
FairPlay uses PacketEvents so checks can reason about that sequence. This matters for reach, hitbox, occlusion, scaffold, AutoClicker, FastBreak, inventory, KillAura, Timer, and BadPackets behavior.
Packets are evidence, not a license to mutate unsafely
A correct packet anticheat decodes wrappers, updates cached state, runs math, and cancels illegal packets where appropriate. Bukkit entity or world mutation must still happen in a safe server context, especially on Folia.
This distinction is important because packet visibility should improve accuracy without creating unsafe thread behavior.
What server owners should look for
When comparing PacketEvents anticheats, ask whether packet data becomes readable debug output and configurable enforcement. A product that sees packets but gives staff no explanation is harder to tune.
FairPlay turns packet context into checks, mitigation, punishment tiers, and admin-visible variables.
FAQ
Does PacketEvents make FairPlay more accurate?
It gives FairPlay the timing and action context needed for many checks. Accuracy still depends on check design and tuning.
Can FairPlay run without PacketEvents?
No. PacketEvents is required.