Configurable Ban System with Reason IDs SmartBans is a lightweight yet powerful banning system designed for server staff who want to ban players
quickly, consistently, and with clear reasoning. Instead of typing out full reasons every time, use short
configurable reason IDs like /ban Notch 1 to apply a preset punishment instantly.
✅ Features:
Ban with Reason IDs – Assign numeric codes to punishments (e.g. 1 = Cheating, 2 = Griefing) or toggle it off and use the Reasons directly!
Mute with Reason IDs – or again use the Reasons directly!.
⚙️ Fully Configurable – Set your own reasons, durations, and messages in config.yml.
Lightweight & Fast – No unnecessary bloat; perfect for all server sizes.
️ Permission-Based – Fine-tuned control for staff roles.
# Duration format: # s = seconds, m = minutes, h = hours, d = days # Examples: 30s, 5m, 2h, 7d
# Messages messages:
ban-success: "&aSuccessfully banned &c{player} &afor &e{reason} &afor &c{duration}" unban-success: "&aSuccessfully unbanned &c{player}" kick-success: "&aSuccessfully kicked &c{player} &afor &e{reason}" player-not-found: "&cPlayer not found!" player-not-online: "&cPlayer is not online!" invalid-ban-id: "&cInvalid ban ID! Available IDs: {ids}" no-permission: "&cYou don't have permission to use this command!" player-banned: "&cYou are banned from this server!\n&cReason: &e{reason}\n&cExpires: &e{expires}" player-kicked: "&cYou have been kicked from the server!\n&cReason: &e{reason}" already-banned: "&c{player} is already banned!" not-banned: "&c{player} is not banned!" cannot-ban-staff: "&cYou cannot ban this player - they have bypass permission!" cannot-kick-staff: "&cYou cannot kick this player - they have bypass permission!" usage-ban: "&cUsage: /ban <player> <id>" usage-unban: "&cUsage: /unban <player>" usage-kick: "&cUsage: /kick <player> <reason>" mute-success: "&aSuccessfully muted &c{player} &afor &e{reason} &afor &c{duration}" unmute-success: "&aSuccessfully unmuted &c{player}" player-muted: "&cYou have been muted in this server!\n&cReason: &e{reason}\n&cExpires: &e{expires}" player-unmuted: "&cYou have been unmuted in this server!" already-muted: "&c{player} is already muted!" not-muted: "&c{player} is not muted!" cannot-mute-staff: "&cYou cannot mute this player - they have bypass permission!" usage-mute: "&cUsage: /mute <player> <mute-id>" invalid-mute-id: "&cInvalid mute ID! Available IDs: {ids}" history:
title: "&8History of {player}" no-entries: "&cNo history entries found" entry:
ban: "&eBan" mute: "&eMute" by: "&7By: &f{staff}" reason: "&7Reason: &f{reason}" date: "&7Date: &f{date}" duration:
permanent: "&7Duration: &fPermanent" temporary: "&7Duration: &f{duration}" invalid-player: "&cPlease enter a valid player name" history-usage: "&cUsage: /history <player>" reload-success: "&aConfiguration successfully reloaded!" usage-format:
divider: "&7&m--------------------------------" ban-command:
header: "&cUsage: &7/ban <player> <ban-id>" list-header: "&cAvailable Ban IDs:" format: "&7ID: &c{id} &7| Reason: &c{reason} &7| Duration: &c{duration}" mute-command:
header: "&cUsage: &7/mute <player> <mute-id>" list-header: "&cAvailable Mute IDs:" format: "&7ID: &c{id} &7| Reason: &c{reason} &7| Duration: &c{duration}" kick-command:
header: "&cUsage: &7/kick <player> <reason>" list-header: "&cKick Command Help:" info: "&7Write your custom kick reason after the player name." example: "&7Example: &c/kick Player1 Breaking the rules"
Why Choose SmartBans? SmartBans is perfect for staff who want
clear, fast, and professional punishments without typing reasons every time. It's ideal for survival, minigame, faction, or any type of server where moderation needs to be
efficient and consistent.