Stat alerts and anticheats
Flag players whose stats normal play can't reach, like X-ray mining, and relay Grim and Vulcan to Discord.
Overview
AdminMinecraft counts what every player does: blocks mined, playtime, advancements. Stat alerts compare those numbers against limits normal play stays under and post an alert to Discord when a player goes past one. They live on each server's Alerts page. An alert is a lead for your staff to check, not proof: Madsi doesn't run its own movement or combat checks, and leaves those to Grim and Vulcan, which it relays.
Turn on Watch this server to start. The first time, it switches on the three X-ray presets. Nothing reaches Discord until a rule has a channel; until then its alerts are kept on the Alerts page only.
Presets
Admin| Preset | Alerts above | On at first |
|---|---|---|
| X-ray: diamond to stone | 40 diamond ore per 1,000 stone and deepslate in 24 hours, after 1,000 mined | Yes |
| X-ray: diamonds per hour | 200 diamond ore in 60 minutes | Yes |
| X-ray: ancient debris per hour | 40 ancient debris in 60 minutes | Yes |
| Mining speed: deepslate | 500 deepslate in 2 minutes | No |
| Mining speed: stone and netherrack | 1,400 stone-type blocks in 2 minutes | No |
| Playtime faster than the clock | Playtime growing faster than real time | No |
| Advancements in bulk | 20 advancements in one minute | No |
These starting limits come from published mining rates, not a measurement on your server, so compare them with what your own players do and adjust. Edit a preset's limit, window and minimum sample with its pencil.
A rule doesn't post on the first reading over its limit. Each time a player is over it, the rule scores points, which halve every half window, and it posts once they add up, so one lucky cave doesn't fire it. An impossible value posts at once.
Your own rules
AdminBuild a rule from any count stat in Minecraft's catalog, adding several together if you like.
| Type | What it measures | Plan |
|---|---|---|
| Rate | How many in a window of up to 120 minutes, optionally only once the player has been online a while | Basic and Pro |
| Ratio | How many per 1,000 of other stats (diamond ore per 1,000 stone), over up to 7 days, after a minimum sample | Pro |
| Impossible value | More in one minute than the game allows | Pro |
Free servers can have up to 3 rules on at once, presets included; Basic 10; Pro has no limit. After a downgrade, custom rules of a type the plan doesn't include are paused first, then the newest rules past the limit. They come back on an upgrade.
Channels, pings and buttons
AdminEach rule posts to its own channel, with roles and Discord users to ping. A per-player quiet time (15 minutes by default) stops a rule repeating itself, and when a player has had a set number of alerts in 24 hours the alert says so.
- Look up: the player's numbers, privately.
- Open in dashboard: the player's page on the Stats page, with their tracked stats, sessions and alerts.
- Kick and Ban: the same checks as
/mc-kickand/mc-ban. - Dismiss: marks the alert dealt with and quiets that rule for that player for 24 hours.
Look up and Dismiss need the Alerts team permission. Alerts can be dismissed from the Alerts page too.
Automatic kick or ban
AdminA rule can kick or ban the player the moment it fires, for a number of minutes or for good. Nobody checks first, so keep it for a rule that can't misfire. Every rule starts as alert only.
Anticheats
AdminMadsi relays Grim on Paper and Fabric and Vulcan on Paper. NeoForge has no anticheat Madsi can hook, so a NeoForge server gets stat rules only. The Alerts page shows which anticheats the server runs.
- Flags post once a check's violation level reaches the level you set (20 by default), for every check or per check. At most one per player and check every 10 seconds.
- Punishments: every kick and ban the anticheat issues.
- Flags and punishments each get their own channel and pings.
- A ban the anticheat issues goes through ban sync like any other console ban, as a ban by Grim or Vulcan.
Exemptions and vein miners
AdminPlayers in creative or spectator mode, operators and vanished players are exempt by default; turn each off on the Alerts page. Bots are always exempt, and you can exempt players by name or UUID. Madsi keeps recording an exempt player's numbers, so nothing jumps when the exemption ends.
With a vein miner installed (VeinMiner, FTB Ultimine and similar), one swing breaks a whole vein, so Madsi multiplies mined-block rate limits by 3. The rule shows the raised limit and which mod raised it.
History and privacy
AdminThe Alerts page lists every alert with its numbers and what happened to it, filtered by status, source or player. Alerts are kept for the days you choose, up to 30 on Free, 90 on Basic and 365 on Pro, then deleted. The recent readings rules work from are kept for 2 hours.
Only the owner, and team members given the Alerts permission, can see alerts or change the rules. A player can download or delete the alerts about them from their account page, once they have proved their Minecraft account by signing in with Microsoft.