A simple plugin to detect/manage a player's client. | With Folia Support |
ClientDetectorPlus
[-----------------------------------------------------------------------------------------------------------------]
[-----------------------------------------------------------------------------------------------------------------]
HOW IT WORKS
When a player joins a server, his client sends a packet (PlayInCustomPayload) to the server, also known as PluginMessaging. This plugin is "catching" this information (using the PacketEvents API, https://github.com/retrooper/packetevents) when it's sent to the server, and checks its content for client-specific "messages". Most clients are detectable with this method, but some clients act like they are "vanilla" (standard Minecraft) clients. Some other (hack-)clients spoof this method by sending "false" packet(s) to the server, this cannot be stopped and will always be possible.
MAIN FEATURES
Client Detection - Detect the client of players and automatically punish unwanted clients. Client Control - Manage the client/mods of players (only compatible clients/mods). Advanced Alert System - You can configure the way ClientDetector notifies your staff. ViaVersion Compatible - You can use ClientDetector together with ViaVersion. Geyser Support - If you allow Bedrock players to join, they can be detected.
COMMANDS
- /cdp list <java|bedrock> - The command to open the GUI that shows all connected java or bedrock clients.
- /cdp lookup - The command to see thee information about a connected client.
- /cdp lockdown <enabled|disabled> - The command to either enable or disable the server lockdown.
- /cdp tempwhitelist <add|remove> - The command to temporarily add or remove a player from the check bypass list. (This list defaults to the config set values upon plugin reload).
- /cdp reload - The command to reload the plugin configurations.
PERMISSIONS
permissions:
clientdetectorplus.*:
default: op
description: "The main permission that allows access to ALL CDPlus features (Admin features included)."
children:
clientdetectorplus.update:
default: op
description: "The permission to receive update notifications."
clientdetectorplus.notify.*:
default: op
description: "The permission to receive notifications about ALL client detections."
children:
clientdetectorplus.notify.join:
default: op
description: "The permission to receive notifications about player joins."
clientdetectorplus.bypass.*:
default: op
description: "The permission to bypass ALL client detections."
children:
clientdetectorplus.bypass.whitelist:
default: op
description: "The permission to bypass the whitelist."
clientdetectorplus.bypass.blacklist:
default: op
description: "The permission to bypass the blacklist."
clientdetectorplus.command.*:
default: op
description: "The permission to use ALL CDPlus commands."
children:
clientdetectorplus.command.cdp:
default: op
description: "The permission to use the main CDPlus command."
clientdetectorplus.command.cdp.reload:
default: op
description: "The permission to reload the plugin."
clientdetectorplus.command.cdp.list:
default: op
description: "The permission to list clients."
clientdetectorplus.command.cdp.lockdown:
default: op
description: "The permission to use the server lockdown."
clientdetectorplus.command.cdp.lockdown.enabled:
default: op
description: "The permission to enable the server lockdown."
clientdetectorplus.command.cdp.lockdown.disabled:
default: op
description: "The permission to disable the server lockdown."
clientdetectorplus.command.cdp.tempwhitelist:
default: op
description: "The permission to add/remove players from the temporary whitelist."
clientdetectorplus.command.cdp.tempwhitelist.add:
default: op
description: "The permission to add players to the temporary whitelist."
clientdetectorplus.command.cdp.tempwhitelist.remove:
default: op
description: "The permission to remove players from the temporary whitelist."
clientdetectorplus.command.cdp.lookup:
default: op
description: "The permission to lookup a player's client."
clientdetectorplus.gui.*:
default: op
description: "The permission to access ALL GUIs."
children:
clientdetectorplus.gui.openactions:
default: op
description: "The permission to open the actions GUI."
clientdetectorplus.gui.openjavalist:
default: op
description: "The permission to open the Java client list GUI."
clientdetectorplus.gui.opengeyserlist:
default: op
description: "The permission to open the Geyser client list GUI."
clientdetectorplus.gui.kick:
default: op
description: "The permission to kick players from the actions GUI."
clientdetectorplus.gui.ban:
default: op
description: "The permission to ban players from the actions GUI."
clientdetectorplus.gui.mute:
default: op
description: "The permission to mute players from the actions GUI."
clientdetectorplus.gui.op:
default: op
description: "The permission to op players from the actions GUI."
clientdetectorplus.gui.deop:
default: op
description: "The permission to deop players from the actions GUI."
clientdetectorplus.gui.unmute:
default: op
description: "The permission to unmute players from the actions GUI."
clientdetectorplus.gui.inventory:
default: op
description: "The permission to view player inventories from the actions GUI."
clientdetectorplus.gui.enderchest:
default: op
description: "The permission to view player enderchests from the actions GUI."
HOW TO INSTALL
- Single Spigot/Bukkit Server
- Copy the plugin into the plugin folder of the server.
- Restart the server.
- Configure the plugin.
COMPATIBILITY
ClientDetector works on all versions, starting from 1.16.5. It also works with most forks, such as Spigot, Paper, PaperSpigot & Folia.
ClientDetector is NOT tested against Archlight and other hybrid server types.
PLACEHOLDERS
%clientdetectorplus_pluginVersion%
%clientdetectorplus_pluginAuthor%
%clientdetectorplus_baseServerVersion%
%clientdetectorplus_serverPackage%
%clientdetectorplus_isPluginEnabled%
%clientdetectorplus_isPluginUpdateAvailable%
%clientdetectorplus_isFloodgateEnabled%
%clientdetectorplus_isViaVersionEnabled%
%clientdetectorplus_isProtocolLibEnabled%
%clientdetectorplus_isPAPIEnabled%
%clientdetectorplus_isJavaClient%
%clientdetectorplus_isBedrockClient%
%clientdetectorplus_javaClientName%
%clientdetectorplus_javaClientVersion%
%clientdetectorplus_javaClientUuid%
%clientdetectorplus_javaClientUsername%
%clientdetectorplus_bedrockClientVersion%
%clientdetectorplus_bedrockClientXuid%
%clientdetectorplus_bedrockClientUsername%
CLIENT/MOD DETECTION
A list of detected clients. If the client reports a brand name, then it can be detected, otherwise it will most likely just report as Vanilla. The list below is of some common ones that should report correctly. Clients:
- Forge
- 5Zig Mod
- LabyMod
- Lunar/Apollo Client
- Polar Client
- MysteryMod
- Pixel Client
- LiteLoader
- PvPLounge Client
- Fabric
- Rift
- Cracked Vape
- Vivecraft
- Hyperium
- PXMod
- Winterware
- Feather Client
- Minecraft-Console-Client
- Optifine
- Vanilla
CLIENTCONTROL
- Badlion - ClientDetector allows you to disable any mod
- Lunar Client - ClientDetector allows you to disable any mod (however this ClientControl requires installation of the server side LunaAPI to function. ).
- LabyMod - ClientDetector allows you to disable certain mods and parts of the gui.
- BetterSprinting - ClientDetector allows you to disable the whole mod, or just parts of it.
- FiveZig - ClientDetector allows you to disable certain mods.
- WorldDownloader - ClientDetector allows you to disable the mod entirely.
- Axolotl Client - ClientDetector allows you to disable certain mods and parts of the native client.
DEVELOPER API
COMING SOON...
SUPPORT
If you have any questions, error(s) and bugs, just join our support Discord, and we will try our best to help you. Discord: https://discord.gg/gwsSTykWbu
If you like our plugin, we would appreciate it, if you would leave a positive review. :)
DO NOT POST ISSUES OR ERRORS IN THE REVIEWS SECTION! ANY POSTED IN THERE WILL BE IGNORED! PLEASE POST IN THE DISCUSSION THREAD OR JOIN OUR DISCORD AND CREATE A SUPPORT TICKET!
Information
Category | Admin Tools |
---|---|
Published on | July 5, 2023 |
License | GPL |
Downloads | 2,708 |
Stars | 29 |
Watchers | 11 |