A lightweight, fully customizable, and cross-version friendly mod detection plugin that monitors plugin channels to identify some mods like Xaero's World Map, Replay Mod, and known mod loaders such as Fabric, Forge, and more.
It also supports an optional advanced sign translation detection module on supported server implementations.
✅ Lightweight — zero unnecessary overhead
✅ Fully customizable messages and behavior via messages_xx.yml
✅ Hex Color Code support for 1.16+ servers (e.g. �ffcc)
✅ No dependencies — drop-in and go
✅ Works across a wide range of server versions (1.8–1.21.11+)
✅ Bilingual out of the box — messages_en.yml and messages_cn.yml both ship and are generated on first start (add your own suffix any time)
✅ Reload support: /modblocker reload
✅ Spigot / Paper / Purpur / Folia / PandaSpigot support
✅ Optional advanced sign translation key detection on supported server APIs
✅ Optional escalation system: warn on the first offence, kick on the next, ban after that
✅ Optional Discord notifications via DiscordSRV — off by default, nothing bundled
FakeModBlocker primarily detects clients or mods that register known plugin message channels, such as:
fml:hs→ Forgefabric:registry/sync→ Fabricxaeroworldmap→ Xaero's World Map- Any custom channel you define
In addition, FakeModBlocker also provides an optional sign translation detection module for certain mods that expose identifiable translation keys.
This advanced detection is configurable and can apply actions such as:
NOTICEKICKBANIGNORE
This is the main detection method and works across the widest range of versions.
It checks which Plugin Message Channels the player is listening on when they join.
Many mod clients (e.g. Fabric / Forge and some utility mods) automatically register custom channels, which this plugin can detect and respond to.
This is an extra optional detection module.
It works by opening a sign editor with specific translation keys and checking whether the client translates them, which may reveal the presence of certain mods.
If the current server version / implementation does not support the required public API, FakeModBlocker will automatically disable this feature and skip it safely.
Detections can be mirrored to a Discord channel through DiscordSRV.
Off by default, and nothing is bundled. The jar still contains only this plugin's own classes — no shaded HTTP client, no JDA. The single class that talks to DiscordSRV is loaded reflectively, only when the feature is enabled and DiscordSRV is installed. Without DiscordSRV, nothing changes.
discord:
enabled: true
channel: "" # "" = DiscordSRV main channel | game-channel name | raw channel IDThen /modblocker reload and /modblocker discord test.
Four events can be posted, each toggled individually: channel-detection, sign-detection, escalation, evade. One detection is always one message — when the escalation ladder takes a detection over, it posts the escalation message and the per-detection one is skipped.
DiscordSRV's JDA owns the request queue, rate limiting and retries, so there is no queue or background thread here and a slow Discord can never delay a player join.
📖 Full guide: Discord Notifications
It only works when the client exposes something detectable, such as known plugin message channels or supported translation-key behavior.
This makes FakeModBlocker ideal for detecting casual use of mod loaders or certain utility mods, but it should not be treated as a complete anti-cheat / mod-blocking solution.
- Drop the
.jarintoplugins/ - Start the server to generate config files
- Edit
config.ymland your language file - Use
/modblocker reloadto apply changes instantly - Some mods are pre-configured in
config.yml, and you can freely modify them to match your server rules
FakeModBlocker is compiled using Java 21. Java 21 or newer is required to run this plugin.
- Main plugin channel detection is designed to be broadly compatible with 1.8–1.21.11+
- Optional sign translation detection requires a compatible server API
- On unsupported versions / server implementations, the sign detection module will be disabled automatically
- Folia is supported through compatible scheduler handling
A: No. Those clients often avoid using detectable plugin message channels. This plugin is best used to detect mod loaders like Fabric, Forge, Lunar, etc., and some configurable translation-key based mod detections on supported servers.
A: No. This is a mod presence detector, not a cheat detection system.
A: Its main method is checking which Plugin Message Channels the player is listening on when they join. Many mod clients automatically register custom channels, which this plugin can detect.
Additionally, on supported server APIs, it can optionally use sign translation key detection for certain configurable mod signatures.
A: No. The sign detection module depends on public sign editor API support (Sorry i don't have much time to test every single version, but it should work on every Paper server i guess). If the server does not support it, FakeModBlocker will automatically skip that module without breaking the plugin.
