Minecraft anticheat guide

Purpur and Folia Anticheat Planning for Server Owners

What to check before running anticheat logic on Purpur or Folia-style threaded Minecraft servers.

Purpur and Folia change different risks

Purpur is still a single-threaded Bukkit-style server with extra configuration, so its anticheat risk is mostly about altered game behavior rather than thread ownership. Folia-style threaded servers change the ownership rule itself: entity work, region work, global work, and file or network work each belong to a different context.

An admin planning for both should therefore ask two separate questions. On Purpur the question is whether tuned gameplay settings shift what normal movement and combat look like. On Folia the question is whether every detection write and every enforcement action runs on its owning context.

A Purpur-versus-Folia risk matrix

Use the matrix below to plan checks for your Purpur or Folia server. Each row names a risk area, what changes between platforms, and the server workflow to test before deployment.

Planning risks by platform; verification owned by the server admin.
Risk areaPurpurFolia-style threading
Detection threadingPacket callbacks behave as on Paper; verify against your buildDecode on packets, mutate only on the owning scheduler context
Gameplay tuningPurpur settings can shift normal behavior; re-baseline alertsSame concern where gameplay is tuned; verify separately
Enforcement actionsStandard command and mitigation paths; verify on your stackPunishment commands and teleports must resolve to the correct owner
External hooksHook events arrive on plugin threads; verify orderingSame, plus confirm enforcement ownership before enabling triggers

Testing stays with the admin

Record the exact server software and build, the PacketEvents release, the FairPlay artifact, and every hook plugin version before drawing conclusions. Start with alerts and debug review, then enable mitigation and punishment tiers only after the checks match the live environment.

Keep a decision log per check family: observed alert volume, investigated samples, tuning changes, and the staff member who approved enforcement. No descriptor flag or architecture page replaces that log.

FAQ

What should I test on Folia?

Test plugin loading, combat checks, staff commands, integrations, and punishment workflows with the exact Folia build and dependencies you plan to use.

What should I test on Purpur or Folia?

Test plugin loading, combat checks, staff commands, hooks, and punishment workflows on the exact server build you plan to operate.

Related sources and official pages

Browse all anticheat guides