A comprehensive Minecraft punishment management plugin with GUI interface, Discord integration, and ban evasion detection.
- Intuitive GUI Interface - Easy-to-use graphical interface for managing punishments
- Multiple Punishment Types - Ban, tempban, mute, kick, and unban capabilities
- Discord Integration - Real-time punishment notifications sent to Discord channels
- Ban Evasion Detection - Automatically detects and alerts staff to potential ban evaders
- Punishment History - Track and view complete punishment history for any player
- Essentials Integration - Seamless integration with EssentialsX
- Folia Support - Compatible with Folia server software
- Customizable Reasons - Pre-configured punishment reasons with custom durations
- Bedrock Player Support - Handles Bedrock Edition players with custom prefixes
- Auto-Update System - Built-in update checker and downloader
- Minecraft Version: 1.21+
- Dependencies: EssentialsX
- Java Version: 11+
- Server Software: Paper, Spigot, or Folia
- Download the latest release from the Releases page
- Place the
.jarfile in your server'spluginsfolder - Ensure EssentialsX is installed and running
- Start/restart your server
- Configure the plugin using the generated
config.yml
bedrock-prefix: "." # Prefix for Bedrock Edition players
Server-name: "My Server" # Server name displayed in Discord notifications
debug:
active: false # Enable debug informationTo enable Discord notifications:
- Create a Discord bot at Discord Developer Portal
- Get your bot token, channel ID, and bot ID
- Configure the discord section in
config.yml:
discord:
bot-token: "YOUR_BOT_TOKEN_HERE"
channel-id: "YOUR_CHANNEL_ID_HERE"
bot-id: "YOUR_BOT_ID_HERE"
active: true # Set to true to enable Discord integration
custom-status: "Punishment Logger 3000"
debug-logging: false # Enable for debuggingEdit the Punishment-Reasons list to add or remove available punishment reasons:
Punishment-Reasons:
- "Fly Hacks"
- "Speed Hacks"
- "Griefing"
# Add your custom reasons hereSet custom durations for each punishment reason:
ban-reason-durations:
Fly_Hacks: 7d
Speed_Hacks: 5d
Griefing: 7d
mute-reason-durations:
Spam: 30m
Inappropriate_Behavior: 6h
Advertising: 1hFor online config editor and full config please press this text line
Duration Format:
m= minutesh= hoursd= daysw= weeksmonths= monthsy= years
| Command | Description | Permission |
|---|---|---|
/punish |
Opens the main punishment GUI | punishmentsystem.use |
/punish history <player> |
View punishment history | punishmentsystem.history |
/punish reload |
Reload configuration | punishmentsystem.reload |
/punish reloaddata |
Reload punishment data | punishmentsystem.reload |
/punish debug |
Show debug information | punishmentsystem.debug |
/punish discord test |
Test Discord connection | punishmentsystem.debug |
/punish discord status |
Check Discord status | punishmentsystem.debug |
/punish version |
Check plugin version | punishmentsystem.admin |
/punish download |
Download plugin updates | punishmentsystem.admin |
/punish help |
Show help menu | punishmentsystem.use |
Aliases: bgui, banguio
• `history <player>` - View punishment history
• `lookup <player>` - Quick player lookup
• `check <player>` - Check if player is online
• `debug` - Show debug information
**Example:** `history Notch`
punishmentsystem.use- Access to punishment GUIpunishmentsystem.ban- Permission to ban playerspunishmentsystem.tempban- Permission to temporarily ban playerspunishmentsystem.mute- Permission to mute playerspunishmentsystem.kick- Permission to kick playerspunishmentsystem.unban- Permission to unban players
punishmentsystem.admin- Full access (includes all permissions)punishmentsystem.reload- Reload configurationpunishmentsystem.debug- Debug commandspunishmentsystem.history- View punishment historypunishmentsystem.warn- Receive ban evasion alertspunishmentsystem.warnbypass- Bypass ban evasion detection
Detailed permissions
punishmentsystem.history:
description: Allows use of the history command
default: op
punishmentsystem.*:
description: All punishment system permissions
children:
punishmentsystem.use: true
punishmentsystem.ban: true
punishmentsystem.tempban: true
punishmentsystem.unban: true
punishmentsystem.mute: true
punishmentsystem.unmute: true
punishmentsystem.kick: true
punishmentsystem.banip: true
punishmentsystem.unbanip: true
punishmentsystem.banlist: true
punishmentsystem.mutelist: true
punishmentsystem.bypass: true
punishmentsystem.warn: true
punishmentsystem.warnbypass: true
punishmentsystem.reload: true
punishmentsystem.debug: true
punishmentsystem.admin: true
punishmentsystem.use:
description: Access to punishment GUI
default: op
punishmentsystem.ban:
description: Ban players permanently
default: op
punishmentsystem.repair:
description: Repair damaged files with the command
default: op
punishmentsystem.tempban:
description: Ban players temporarily
default: op
punishmentsystem.unban:
description: Unban players
default: op
punishmentsystem.mute:
description: Mute players
default: op
punishmentsystem.unmute:
description: Unmute players
default: op
punishmentsystem.kick:
description: Kick players
default: op
punishmentsystem.banip:
description: Ban IP addresses
default: op
punishmentsystem.unbanip:
description: Unban IP addresses
default: op
punishmentsystem.banlist:
description: View ban list
default: op
punishmentsystem.mutelist:
description: View mute list
default: op
punishmentsystem.bypass:
description: Bypass all punishments
default: false
punishmentsystem.warn:
description: Receive ban evasion warnings
default: op
punishmentsystem.warnbypass:
description: Bypass ban evasion detection
default: false
punishmentsystem.reload:
description: Reload plugin configuration
default: op
punishmentsystem.debug:
description: Access debug commands
default: op
punishmentsystem.admin:
description: Full Ban GUI permissions
default: op
children:
punishmentsystem.reload: true
punishmentsystem.use: true
punishmentsystem.warn: true
punishmentsystem.debug: true
punishmentsystem.history: true
punishmentsystem.warnbypass: true
punishmentsystem.kick: true
punishmentsystem.tempban: true
punishmentsystem.ban: true
punishmentsystem.unban: true
punishmentsystem.mute: true
punishmentsystem.repair: true
The plugin automatically detects potential ban evaders by:
- Tracking player IP addresses
- Comparing IPs of banned players with new joiners
- Alerting staff members with appropriate permissions
- Logging evasion attempts for review
When enabled, the plugin sends rich embeds to Discord containing:
- Punishment type and reason
- Staff member who issued the punishment
- Duration and timestamp
- Player information
- Server name
- Complete punishment history for all players
- Paginated GUI for easy browsing
- Search and filter capabilities
- Export options for administrative review
- All punishment data is encrypted using AES-256
- Secure key generation and storage
- Protection against data tampering
- Automatic backup creation
For support, bug reports, or feature requests:
- Create an issue on this repository
- Contact the developer: Kanuunankuula [If_Master] | Discord: @If_master | https://discord.gg/ZhYuUtbRNp
This project is licensed under the GNU General Public License V3 - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Public release
- Some fixes
- Complete rehall of the saving code
- API for PunishmentSystemCaseLookup
- Points system
Author: Kanuunankuula [If_Master]
Version: 1.1.0
Minecraft Version: 1.21+