Skip to main content

Anti-Cheat (Grim)

This guide explains the installation, initial configuration, and tuning practices for Grim (GrimAC) as a free anti-cheat solution on Paper or Purpur servers. The configuration goal is effective detection with minimal false positive risk.


Prerequisites and compatibility

  • Use Paper or Purpur for stability and plugin compatibility.
  • Make sure the Grim version is compatible with the Minecraft server version; check the official release page before installing.
  • Prepare console access and the ability to upload files to the plugins/ folder.
  • It's recommended to install LuckPerms, WorldGuard, and CoreProtect for better integration.

Installation

  1. Download the Grim JAR file from the developer's official source.
  2. Copy the JAR file to the plugins/ folder on the server.
  3. Restart the server so Grim creates its configuration folder (plugins/Grim/ or a similar folder name).
  4. Check the startup log to make sure Grim loaded without errors.

Safe initial configuration

  1. Observation mode: set many initial checks to log/notify mode for 24–72 hours to map out false positives before enabling punishments.
  2. TPS-based sensitivity: make sure the server has stable TPS; set a TPS threshold so Grim is lenient when there's lag.
  3. Gradual punishment stages: the recommended order is notify/log → warn → kick → temporary ban → permanent ban.
  4. Mechanic exceptions: add exceptions for legit mechanics (double-jump, grappling, dash) so they aren't considered cheating.
  5. Enable verbose logging during the tuning phase to make analysis easier.

Example initial configuration pattern (node name format may differ; adjust to the Grim file):

checks:
movement:
fly:
action: notify
speed:
action: notify
combat:
reach:
action: notify
autoclick:
action: notify
general:
verbose: true
tps_threshold: 18.0
punishments:
default_sequence: [notify, warn, kick]

Integration with permissions and protection

  • Use LuckPerms to manage staff rights and exemptions (bypass only for debugging).
  • Use WorldGuard to exclude certain regions from checks (e.g. mini-game arenas, parkour).
  • Use CoreProtect for auditing and rollback when detections indicate griefing. Example permission nodes (adjust to the Grim nodes):
lp group moderator permission set grim.notify true
lp group moderator permission set grim.command.verbose true