Skip to content
Onryo Anticheat

Quick rating

Community listing page, reviews may not be monitored by the author.

Onryo Anticheat

By AchievedCOwner

No reviews yet

See your players' Fabric mods and enforce your server's mod rules. Paper/Purpur plugin + Fabric client mod: players' clients report their mod list, staff browse it and can kick/ban for denied mods. No external network calls.

Mod Loaders
Minecraft
26.3 26.2

About

Description

Onryo ModCheck

See which Fabric mods your players use, and enforce your server's mod rules.

Onryo ModCheck has two halves, and both are on this page:

File Goes on Loader
🖥️ Server plugin ModCheck-0.1.6.jar your server, in plugins/ Paper / Purpur 26.1.1 – 26.3
🎮 Client mod OnryoModCheck-Client-0.1.6.jar each player's game, in mods/ Fabric 26.1 – 26.3 (+ Fabric API)

⚠️ Not an anti-cheat. The mod list is reported by the player's own client, and a modified client can lie. ModCheck is a transparency and rules tool for communities with honest players, not protection against determined cheaters.

How it works

  1. A player with the client mod joins your server.
  2. About 2 seconds later, the plugin asks the client for its mod list over a custom plugin channel.
  3. The client replies with the id, name and version of every Fabric mod it has loaded.
  4. The plugin checks the mod ids against your config:
    • Denied mod found: the player is kicked, banned or just logged, as you choose.
    • Required mod missing: the report is flagged.
    • No report at all (the client mod isn't installed): optionally kick, ban or log.
  • Staff can browse every online player's list in-game with /modcheck.

Installation

Server owners

  1. Use Paper or Purpur 26.1.1 – 26.3 with Java 25.
  2. Download the Paper/Purpur version (ModCheck-0.1.6.jar) into plugins/ and restart.
  3. Edit plugins/OnryoModCheck/config.yml, then run /modcheck reload.
  4. Tell your players to install the client mod. Only turn on enforce-missing-report once they have it.

Players

  1. Use a Fabric profile for Minecraft 26.1 – 26.3, with Fabric Loader ≥ 0.19.2.
  2. Put the Fabric version (OnryoModCheck-Client-0.1.6.jar) and Fabric API ≥ 0.140.3 into .minecraft/mods/.
  3. That's it. There's no config, and the mod only does something on servers running the plugin.

Features

  • Mod lists are requested automatically on join.
  • Denied mods are matched by Fabric mod id, ignoring case. Action: LOG, KICK or BAN. BAN uses your server's /ban, so ban plugins work.
  • Missing report: optionally act on players without the client mod.
  • Required mods are shown as "missing required" and flag the report.
  • /modcheck list shows everyone online as clean or flagged; /modcheck <player> shows the full list, paged.
  • Fabric API modules and other noise can be hidden from the display. The rules still check the full list.
  • Large modpacks are handled: the client fits its list into the server's limits and keeps mod ids first.
  • Lightweight: data stays in memory only, there's no database, and nothing is written to disk.

Commands & permissions (server)

Command Description
/modcheck · /modcheck status Number of stored reports
/modcheck list [page] Online players' reports (clean/flagged)
/modcheck <player> [page] One player's full mod list
/modcheck reload Reload config and re-check stored reports (never kicks anyone)
Permission onryomodcheck.admin (default: op) covers every subcommand.

Configuration (plugins/OnryoModCheck/config.yml)

Key Default
settings.denied-mod-action KICK LOG / KICK / BAN
settings.enforce-missing-report false Act on players who send no report. This includes vanilla and Bedrock/Geyser players, so test with LOG first.
settings.missing-report-delay-seconds 10 Minimum 3
settings.missing-report-action KICK LOG / KICK / BAN
settings.mods-per-page 10 1 – 20
rules.denied-mods example-xray-mod-id Fabric mod ids
rules.required-mods onryo-modcheck-client Shown and flagged, but never kicks on its own
rules.ignored-mods / ignored-prefixes Fabric API modules, java, minecraft… Display filter only
messages.* Kick and ban messages; %mods% placeholder

🔒 Privacy

Client mod (players)

  • What it sends: the id, display name and version of every Fabric mod you have loaded. That includes nested library mods and the minecraft, java and fabricloader entries. This is your full mod list.
  • To whom: only to servers that ask for it, meaning servers running the ModCheck plugin. Nothing is sent to other servers or in single-player.
  • When: on joining such a server, and whenever it asks again.
  • Nothing else: no usernames, IPs, hardware info, files or settings. Server plugin (server owners)
  • Storage: reports are kept in memory for the player's session and deleted when they leave. Nothing is written to disk except the plugin's own config.yml.
  • Who sees it: staff with onryomodcheck.admin. A one-line summary (mod count, plus any denied or missing ids) is written to the server log.
  • Please tell your players in your rules that their client mods are checked. Both halves: no telemetry, HTTP, webhook or third-party connections. The mod list only travels inside the normal Minecraft connection between the player and the server they joined.

Compatibility

  • Server: Paper and Purpur 26.1.1, 26.1.2, 26.2, 26.3, Java 25. Tested on all of them. Not 1.21.x, Spigot or Folia.
  • Client: Fabric 26.1 – 26.3, Fabric Loader ≥ 0.19.2, Fabric API ≥ 0.140.3, Java 25. Tested with a real client joining a Paper server on each version.
  • Forge/NeoForge/Quilt clients, Bedrock players and vanilla clients can't send reports.