FakeModBlocker [1.8.x-26.3] Folia&Floodgate Support | Lightw
1.10.0A lightweight, fully customizable, no dependencies plugin that detects some mods and known clients.
FakeModBlocker
A lightweight, fully customizable, and cross-version friendly mod detection plugin that monitors plugin message channels to identify mods such as Xaero's World Map, Replay Mod, and mod loaders like Fabric and Forge.
NEW:
FakeModBlocker now includes an optional advanced sign translation detection module for additional mod detection on supported server implementations.
✨ Features
Lightweight — no unnecessary overhead
Fully customizable behavior and messages via messages_xx.yml
Supports HEX color codes on 1.16+ servers (�ffcc)
No dependencies — just drop the jar in your plugins folder
Works across a wide range of server versions (1.8 – 26.1+)
Multi-language support (en, cn, or your own language file)
Supports /modblocker reload
Supports Spigot / Paper / Purpur / Folia / PandaSpigot
Optional sign translation key detection module for extra mod detection
How detection actually works
FakeModBlocker ships two independent detectors. Knowing which one catches which type of mod is critical to configuring it right:
| Detector | Matches on | Catches |
forbiddenList | Plugin-channel names, e.g. xaeroworldmap, servux:tweaks | Mods that open a plugin channel with the server (most Forge/Fabric mods that talk to the server, Xaero, Servux-based, Axiom, etc.) |
extra-detections.sign-translation.mods | Client-side translation keys, e.g. key.freecam.toggle | Purely client-side mods that never open a channel — most cheat clients, HUD mods, minimaps, keybind-only utilities |
Common mistake: putting a mod's display name into forbiddenList and expecting it to catch a client-side mod. If the mod doesn't register a plugin channel, forbiddenList cannot see it — you must add one of its translation keys under sign-translation.mods instead. Enable logger: true and join the server once with the mod: every channel and plugin message the client sends is printed to console, so you can copy the real channel name from there.
Since 1.7.0, a single sign-translation.mods entry can list multiple keys via detect.keys: [...] — useful for mods that expose several keybinds or whose key names change between versions.
Sign-translation requirements
The virtual-sign detector needs Player#openVirtualSign(Position, Side), which was added to the Paper API in 1.21.5. Paper 1.21.4 and older, Spigot, and some Paper forks (Purpur / Pufferfish / Leaves) don't have this method, so the feature auto-disables at startup and prints exactly which class or method is missing. Channel-based detection, PacketEvents integration, and Floodgate skip work regardless.
Detection Methods
1️⃣ Plugin Channel Detection
This is the main detection method.
When a player joins, FakeModBlocker checks the plugin message channels that the client registers.
Many mod loaders and mods automatically register channels that can be detected by the server.
2️⃣ Optional Sign Translation Detection
FakeModBlocker also provides an optional advanced detection module.
It works by opening a sign editor with translation keys and checking whether the client translates them, which may reveal the presence of certain mods.
Possible actions:
NOTICE
KICK
BAN
IGNORE
This feature requires server support for the sign editor API.
If the current server implementation does not support it, FakeModBlocker will automatically skip this module safely.
⚠ Limitations
FakeModBlocker is not a full mod detection or anti-cheat system.
Limitations include:
✘ Cannot detect every mod or hacked client
✘ Some clients can hide their plugin channels
✘ Only works if the client exposes detectable behavior
✘ Not designed to replace an anti-cheat plugin
⚙ Requirements
FakeModBlocker is compiled using Java 21.
Java 21 or newer is required to run this plugin.
Tested Environments
The plugin has been tested on:
- Spigot 1.8.8
- PandaSpigot 1.8.8
- Paper 1.21+
- Folia 1.21.4/1.21.11
Other versions and forks may also work, but full compatibility cannot be guaranteed.
The plugin is designed to theoretically support 1.8 – 26.1+ servers.
⚠ Do not rename the plugin jar file, otherwise the plugin may fail to enable.
Installation
- Put the .jar file into the plugins/ folder
- Start the server once to generate configuration files
- Edit config.yml and the language files
- Run /modblocker reload to apply changes
- Adjust the predefined mod rules in config.yml if needed
Commands
/modblocker reload
Reloads configuration and language files
Permission: fakemodblocker.admin
/modblocker check <player>
Shows plugin/mod channel information of a player
Permission: fakemodblocker.admin
Permissions
fakemodblocker.admin
Allows use of reload and check commands
fakemodblocker.bypass
Completely bypasses all detection
fakemodblocker.kickbypass
Prevents the player from being kicked,
but detected channels will still be logged
❓ FAQ
Q: Can this detect hacked clients like Vape or LiquidBounce?
A: No.
Many hacked clients intentionally avoid registering detectable plugin channels.
FakeModBlocker is mainly designed to detect mod loaders and some mods, not hacked clients.
Q: Is this an anti-cheat plugin?
A: No.
FakeModBlocker is a mod presence detector, not a cheat detection system.
Q: How does it work?
A: FakeModBlocker checks which plugin message channels a client registers when joining the server.
Many mods and mod loaders automatically register channels, which allows the plugin to detect them.
On supported servers, FakeModBlocker can also use sign translation key detection as an additional detection method.
Q: Does the sign detection work on every version?
A: No.
The sign detection module depends on public sign editor API support.
If the server implementation does not support it, FakeModBlocker will automatically skip that module.
————————————————————
⭐ Support
If you like this plugin:
Leave a star on GitHub
Leave a 5-star review on Spigot
Bug Reports
Please do NOT report bugs in the review section.
Instead:
• Open an issue on GitHub
• Use the Discussion section
• Contact via Discord
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta