Configuring Grim
Grim is customisable through a few config files. You don't need to touch them to get detections, but they let you tune sensitivity, turn checks on or off, and change alert text.
punishments.yml to copy in. This page explains what's happening underneath, which is handy if you'd rather tune it yourself. See Autobans & punishments.Where the files live
After you start your server with Grim once, you'll find its config inside the plugins/Grim/ folder. The three you'll care about most are:
- config.yml, the checks themselves and their sensitivity, plus general options.
- punishments.yml, how checks are grouped into categories and what happens (alerts, kicks, bans) at each violation threshold. Covered on the next page.
- messages.yml, the wording of alerts and messages, which you can translate or restyle.
/grim reload) or restart the server. Keep a backup of a working config before you make big changes.How Grim's checks work
Instead of counting suspicious actions like a traditional anticheat, Grim predicts what a legitimate player could physically do next and flags anyone who breaks that prediction. Each check raises a violation level (VL) when it's tripped. Grim measures that VL over a rolling window of time, by default, roughly the last few minutes, so a burst of violations builds up and then cools off if the player behaves.
In practice you rarely need to rewrite check internals. The common, safe adjustments are: turning a noisy check off, grouping checks so they share a threshold, and deciding what punishment a category leads to.
Turning a check off
Grim's config is category-driven. To stop a specific check from doing anything, you remove it from every category it appears in (in punishments.yml). If it isn't in any category, it won't alert or punish. That's the intended way to disable a check rather than deleting it outright.
Tuning sensitivity
Individual checks expose values in config.yml, things like how much "advantage" is tolerated before flagging, or timing balances for game-speed checks. Tightening them catches more but risks the odd false flag; loosening them is safer but lets marginal cases through. Change one thing at a time and watch your flag feed in Warden AC to see the effect before going further.
# config.yml (excerpt, names vary by Grim version)
Simulation:
# smaller = stricter, larger = more lenient
threshold: 0.0001
setbackvl: 10
Timer:
# milliseconds of drift tolerated before flagging
drift: 120PvP servers
On combat-heavy servers (duels, practice, ranked) the defaults can occasionally be either too strict or too loose for legit mechanics. If you run competitive PvP, expect to spend a little time calibrating combat-related checks. Your Warden AC flag feed is the fastest way to see which checks are firing on your legit players so you know what to adjust.
Alerts and messages
messages.yml holds the text Grim sends, alert formatting, punishment messages and so on. You can rewrite or translate these. Note this is separate from Warden AC: your dashboard shows flags regardless of how Grim's in-game alert text is styled.
