Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
This plugin was inspired by the punish plugin used on the Skycade Minecraft Server in 2018-2020.
About
This Minecraft plugin is a bangui plugin meant for server owners, admins, developers and mods to help manage servers and ban players. This plugin also adds a silent punishment system so that only approved staff members can see certain punishments.
Bug Reports and Suggestions
Join the discord server to report any bugs and to suggest any additions i should make.
Update Notes (Version 3.0.0)
Alt Accounts & Ban Evasion
- IP Tracking: Tracks IPs to find linked accounts/alts. This is not shared in any way.
- Alts GUI: Added /alts <player>
- Ban evasion Alerts: If a player joins the server on an alt while their main account is banned, staff will get an alert in chat.
GUI Improvements
- View Alts button added in /punish menu.
Config
Exact Date/time: The history menu used to show just the date. Now it shows the date and time of the punishment.
I forgot to actually add the punishment guidelines customizability into the config.yml. Now thats been added.
Added 1.20.X support.
Added 26.3 support.
How to enable MySQL:
- First, go to the config.yml file in the CustomPunish folder.
- Change
database:
enabled: false
from "false" to "true
Install this plugin on all of your paper/spigot/bukkit servers and it will sync punishments across your server. Do not install on the proxy server (Velocity, Bungeecord).
GUI Functionality
- New Offence
- Offence and Unban/Unmute History
- Player Info
- Unban Functionality
- Silent Punishment and Public Punishment
Commands
- punish <player>: Opens the PunishGUI.
- punish reload: Reloads the plugins config.
Manual Punish Commands
- /ban <player> [reason] [-s]: Bans the player permanently. Add -s to set to silent punishment.
- /tempban <player> <time> [reason] [-s]: Bans the player for the set amount of time. Add -s to set to silent punishment.
- /mute <player> [reason] [-s]: Permanently mutes the player. Add -s to set to silent punishment.
- /tempmute <player> <time> [reason] [-s]: Mutes the player for the set amount of time. Add -s to set to silent punishment.
- /kick <player> [reason] [-s]: Kicks the player with the custom reason or default reason if not stated. Add -s to set to silent punishment.
- /unban <player>: Unbans the player.
- /unmute <player>: Unmutes the player.
- /alts <player>: Checks and shows all alts for that player.
Discord Integration Setup
- Go to the Discord Developer Portal and create a New Application.
- Go to the Bot tab, click Reset Token, and copy it. Scroll down and turn ON the Message Content Intent.
- Go to OAuth2 -> URL Generator, check the
botoption, and give itSend MessagesandEmbed Linkspermissions. Open the generated URL to invite it to your server. - In Discord, enable Developer Mode. Right-click your punishment log channel and click Copy Channel ID.
- Open
plugins/CustomPunish/config.yml, setdiscord.enabled: true, and paste yourtokenandchannel-id. - Restart your server. Punishments will now send embedded logs.
Permissions
- punish.gui: Allows opening the punishment GUI (/punish)
- punish.ban: Allows permanently banning players (/ban)
- punish.tempban: Allows temporarily banning players (/tempban)
- punish.mute: Allows permanently muting players (/mute)
- punish.tempmute: Allows temporarily muting players (/tempmute)
- punish.kick: Allows kicking players (/kick)
- punish.unban: Allows unbanning players (/unban)
- punish.unmute: Allows unmuting players (/unmute)
- punish.silent: Allows using the -s flag for silent punishments and clicking Gray Wool in the GUI
- punish.silent.see: Allows seeing silent punishments in chat
- punish.ip.see: Allows seeing player IP addresses in the punishment GUI
- punish.reload: Allows reloading the plugin config (/punish reload)
- punish.alts: Allows opening the alts gui (/alts)
PlaceholderAPI
Placeholders
- %custompunish_total_bans%: Returns the total number of bans issued on the server.
- %custompunish_total_mutes%: Returns the total number of mutes issued on the server.
- %custompunish_total_kicks%: Returns the total number of kicks issued on the server.
- %custompunish_total_punishments%: Returns the total number of all bans, mutes, and kicks combined.
- %custompunish_is_banned%: Returns "Yes" if the player is currently banned, or "No" if they are not.
- %custompunish_is_muted%: Returns "Yes" if the player is currently muted, or "No" if they are not.
- %custompunish_ban_reason%: Returns the reason for the player's current ban, or "N/A" if they are not banned.
- %custompunish_player_bans%: Returns the historical number of times the player has been banned.
- %custompunish_player_mutes%: Returns the historical number of times the player has been muted.
- %custompunish_player_kicks%: Returns the historical number of times the player has been kicked.
- %custompunish_player_total%: Returns the total number of all punishments the player has ever received.
Dependencies
This plugin does not have any dependencies but to have a better experience and be able to manage permissions, i highly recommened to install LuckPerms.


