Tutorials & Guides
Learn how to configure KellyMaster step by step with our detailed guides.
Basic Installation
Learn how to install KellyMaster on your Minecraft server step by step.
- 1 Download the KellyMaster.jar file from our official Discord or downloads page.
- 2 Stop your Minecraft server completely before installing the plugin.
- 3 Place the KellyMaster.jar file in your server's /plugins folder.
- 4 Start the server. The plugin will automatically generate config.yml, whitelist.yml and messages.yml files.
- 5 Stop the server again to edit the configuration files.
- 6 Configure config.yml with your security preferences (timeout, max attempts, security actions).
- 7 Configure whitelist.yml with authorized operators and their verification methods.
- 8 Start the server again. KellyMaster will be active and protecting your server.
Configure config.yml
Complete guide to configure all options in the config.yml file.
- 1 Open the plugins/KellyMaster/config.yml file with a text editor.
- 2 In the "settings" section, configure the language (lang: en/es/ru/zh) for external notifications.
- 3 Configure verification-timeout (time in seconds to verify, recommended: 60-120).
- 4 Configure code-length (code length, recommended: 6-8 characters).
- 5 Enable deop-on-disconnect: true to automatically remove OP when a player disconnects.
- 6 In the "security" section, configure unauthorized-action (BAN/KICK/DEOP) for unauthorized players.
- 7 In "blocked-commands", add commands you want to block for players (only console can use them).
- 8 Save the file and restart the server to apply changes.
Configure whitelist.yml
How to add authorized operators and configure their verification methods.
- 1 Open the plugins/KellyMaster/whitelist.yml file with a text editor.
- 2 In the "setup-verification" section, define the method for each operator: User:Gmail, User:Discord or User:Telegram.
- 3 In "authorized-operators", add each operator with their identifier: User:email@example.com (Gmail), User:123456789012345678 (Discord ID) or User:123456789 (Telegram Chat ID).
- 4 To get your Discord ID: Enable Developer Mode in Discord > Right-click your profile > Copy ID.
- 5 To get your Telegram Chat ID: Talk to @userinfobot on Telegram and it will give you your ID.
- 6 You can have multiple operators with different verification methods.
- 7 Players not listed in authorized-operators will be treated as unauthorized.
- 8 Save the file and restart the server to apply changes.
Configure Discord Bot
Set up the Discord bot to receive verification codes via DM.
- 1 Go to Discord Developer Portal (discord.com/developers/applications) and log in.
- 2 Click on "New Application" and give it a name (e.g.: KellyMaster Bot).
- 3 Go to the "Bot" section in the side menu and click "Add Bot".
- 4 In the Bot section, click "Reset Token" and copy the generated token. NEVER share this token.
- 5 Enable required intents: "Message Content Intent" in the "Privileged Gateway Intents" section.
- 6 Go to "OAuth2" > "URL Generator", select "bot" and permissions: "Send Messages", "Read Message History".
- 7 Copy the generated URL and open it in your browser to invite the bot to your Discord server.
- 8 In whitelist.yml, paste the token in discord.bot-token and enable discord.enabled: true.
- 9 In setup-verification, add your operators with format: PlayerName:Discord.
- 10 In authorized-operators, add: PlayerName:YOUR_DISCORD_ID (18 digits).
- 11 Restart the Minecraft server. The bot will connect and be ready to send codes.
Configure Telegram Bot
Set up Telegram as a verification method using BotFather.
- 1 Open Telegram and search for @BotFather (Telegram's official bot for creating bots).
- 2 Send the /newbot command to create a new bot.
- 3 Follow the instructions: first a friendly name (e.g.: KellyMaster Security) then a unique username (e.g.: KellyMasterSecBot).
- 4 BotFather will give you an HTTP API token. Copy this token.
- 5 In whitelist.yml, paste the token in telegram.bot-token and enable telegram.enabled: true.
- 6 Search for your new bot on Telegram and send /start to start a conversation.
- 7 To get your Chat ID, talk to @userinfobot or @RawDataBot on Telegram.
- 8 In setup-verification, add your operators with format: PlayerName:Telegram.
- 9 In authorized-operators, add: PlayerName:YOUR_CHAT_ID (numbers).
- 10 Restart the Minecraft server. When you need to verify, you will receive the code via Telegram.
Configure Email SMTP
Use Gmail or another SMTP server to send verification codes via email.
- 1 Go to your Google account settings: myaccount.google.com.
- 2 Go to "Security" and enable "2-Step Verification" if not already enabled.
- 3 In "2-Step Verification", scroll down to "App passwords".
- 4 Create a new app password: select "Other" and name it "KellyMaster".
- 5 Google will generate a 16-character password. Copy it (shown only once).
- 6 In config.yml, configure the email section with: enabled: true, smtp.host: smtp.gmail.com, smtp.port: 587.
- 7 In smtp.user put your Gmail email, in smtp.password put the app password (16 characters).
- 8 In whitelist.yml, in setup-verification add: PlayerName:Gmail.
- 9 In authorized-operators add: PlayerName:youremail@gmail.com.
- 10 Restart the server. Codes will be sent to your email when you need to verify.
Configure Discord Webhook
Receive security alerts in a Discord channel using webhooks.
- 1 In Discord, go to the server where you want to receive alerts.
- 2 Right-click on the channel where you want notifications > "Edit Channel".
- 3 Go to "Integrations" > "Webhooks" > "New Webhook".
- 4 Give the webhook a name (e.g.: KellyMaster Alerts) and optionally change the avatar.
- 5 Click "Copy Webhook URL".
- 6 In config.yml, paste the URL in webhook.url and enable webhook.enabled: true.
- 7 Configure which notifications you want: notify-blocked-commands, notify-unauthorized-op, include-ip, include-geolocation.
- 8 Restart the server. Security alerts will be sent to the Discord channel.
LuckPerms Integration
Protect dangerous permissions with automatic LuckPerms integration.
- 1 Make sure you have LuckPerms installed on your server (it's an optional dependency).
- 2 KellyMaster will automatically detect LuckPerms on startup.
- 3 The integration monitors when dangerous permissions are assigned like: *, essentials.*, luckperms.*, minecraft.command.op.
- 4 If an unauthorized player receives these permissions, they will be automatically banned and permissions removed.
- 5 To see detected events, check server logs or configure the Discord webhook.
- 6 No additional configuration needed, integration works automatically.
Configuration Examples
config.yml
# General Configuration
settings:
lang: en
debug: false
verification-timeout: 60
code-length: 8
deop-on-disconnect: true
max-verification-attempts: 3
# Security Configuration
security:
unauthorized-action: BAN
allow-non-whitelist-op: false
log-ip-addresses: true
# Discord Webhook
webhook:
enabled: true
url: "https://discord.com/api/webhooks/..."
notify-blocked-commands: true
include-geolocation: true
whitelist.yml
# Discord Bot Configuration
discord:
enabled: true
bot-token: "MTIzNDU2Nzg5..."
# Verification Methods
setup-verification:
- "SrCodex:Discord"
- "Admin:Gmail"
- "Moderador:Telegram"
# Authorized Operators
authorized-operators:
- "SrCodex:123456789012345678"
- "Admin:admin@example.com"
- "Moderador:987654321"
Frequently Asked Questions
KellyMaster is compatible with all Minecraft versions from 1.8 to 1.21.x. It works with Spigot, Paper, Purpur and other Bukkit-based forks.
They are not required. ProtocolLib and LuckPerms are optional dependencies that add additional functionality (like better permission detection), but the plugin works perfectly without them.
If the operator doesn't enter the correct code within the time limit (60 seconds by default), they will be automatically disconnected from the server and lose their OP privileges until they verify correctly.
Yes, each operator can have their own verification method configured in whitelist.yml. You can mix Email, Discord and Telegram according to each operator's preferences.
Enable developer mode in Discord: Settings > Advanced > Developer Mode. Then right-click on your profile or username and select "Copy ID". The ID is an 18-digit number.
Not significantly. KellyMaster is optimized to have minimal impact on performance. Verifications and notifications are asynchronous and don't block the main server thread.
Yes, KellyMaster works on online-mode=false servers. However, we recommend using an additional authentication plugin like AuthMe for better security.
There is no limit. You can add as many authorized operators as you need in whitelist.yml, each with their own verification method.
Need Help?
Join our Discord server to get direct support from the community and developers.
Get Support on Discord