Minecraft anticheat guide
FairPlay Configuration Files Explained for Server Admins
A simple map of FairPlay's config.yml, punishments.yml, snapshot.yml, language files, check folders, models, training data, and player storage.
Root files set global behavior
FairPlay is configuration-first. config.yml controls global behavior such as notifications, actionbar, compensation, hook rules, whitelist, debug, and storage. punishments.yml defines shared punishment tiers. snapshot.yml controls virtual world and subchunk capture behavior where relevant.
This structure keeps global decisions separate from individual check tuning.
Check folders tune detections
Checks with a declared @ConfigInfo configuration class have their own YAML path under check folders. That lets admins tune thresholds, debug behavior, violations, and local overrides without treating the whole anticheat as one giant switch.
Aimbot, AutoClicker, Scaffold, Hitbox, FastBreak, Inventory, KillAura, AutoTotem, Elytra, BadPackets, Criticals, Macros, Place, and Timer categories are organized as separate configuration surfaces.
Language, models, and storage
lang/commands.yml and lang/menus.yml control command and menu text. models/ stores compiled model files copied from the jar. training/ stores training data and model datasets. storage/players is used when YAML player storage mode is selected.
Configuration files and their purpose
FairPlay configuration is organized by purpose, including main settings, punishments, mitigations, hooks, webhooks, transactions, and check settings. Use the supplied YAML files as the reference for available keys and nested paths.
Use the YAML files installed on your server as the reference for current values. Back up each file before editing and preserve comments and custom settings.
FAQ
Can every FairPlay check be configured?
Checks with a declared @ConfigInfo configuration class have their own YAML path; the exact file and nested path vary by configuration metadata.
Where are global punishments configured?
Global punishment tiers are configured in punishments.yml.