DunutPunishments v1.2

A plugin inspired by DunutSMP!
Rytento Studios Thumbnail.png

DonutPunishments​


A comprehensive punishment system for Paper 1.21.x with progressive punishment tracking, alt account detection, and Simple Voice Chat integration.


Features​


  • Progressive Punishment System: Automatically escalates punishment duration based on offense count
  • Alt Account Detection: Tracks player IPs and identifies alternate accounts
  • Auto-ban Alts: Automatically bans alt accounts when a main account is banned
  • Simple Voice Chat Integration: Mutes players from voice chat when they have an active mute
  • Customizable Messages: Fully configurable messages and ban reasons
  • Punishment Types: Ban, Mute, and Kick with duration support
  • Permanent & Temporary: Support for both permanent and time-based punishments

Commands​


CommandDescriptionPermission
/ban <player> [duration] <reason>Ban a playerdonutpunishments.ban
/unban <player>Unban a playerdonutpunishments.unban
/kick <player> <reason>Kick a playerdonutpunishments.kick
/mute <player> [duration] <reason>Mute a playerdonutpunishments.mute
/unmute <player>Unmute a playerdonutpunishments.unmute
/offend <player> <reason>Progressive punishmentdonutpunishments.offend
/punish <player> <reason>Alias for /offenddonutpunishments.offend
/donutpunishments reloadReload configdonutpunishments.admin
/donutpunishments unbanwaveUnban all playersdonutpunishments.admin
/donutpunishments unmutewaveUnmute all playersdonutpunishments.admin
/dpAlias for /donutpunishmentsdonutpunishments.admin

Duration Format​


Durations can be specified using the following format:


  • s - seconds (e.g., 30s)
  • m - minutes (e.g., 15m)
  • h - hours (e.g., 24h)
  • d - days (e.g., 7d)
  • w - weeks (e.g., 2w)
  • y - years (e.g., 1y)
  • perm or permanent - Permanent ban/mute

Examples:


  • /ban Steve 7d Griefing - Ban for 7 days
  • /mute Alex 1h30m Spam - Mute for 1 hour 30 minutes
  • /ban Herobrine perm Hacking - Permanent ban
Screenshot 2026-02-05 203834.png


Progressive Punishment System​


The /offend and /punish commands use predefined reasons from messages.yml. Each reason has its own punishment type, duration, and message.


Example usage:


  • /offend Steve cheating - Punishes for cheating (15 day ban by default)
  • /punish Alex spam - Punishes for spam (1 day mute by default)
  • /offend Herobrine exploiting - Punishes for exploiting (permanent ban by default)
Screenshot 2026-02-05 203437.png

Screenshot 2026-02-05 203834.png

Screenshot 2026-02-05 203846.png

The offense policy in config.yml applies multipliers to the base duration:

ban-offense-policy:
- 1.0 # 1st offense: base duration (15 days for cheating)
- 2.0 # 2nd offense: 2x duration (30 days)
- 4.0 # 3rd offense: 4x duration (60 days)
- "perm" # 4th+ offense: permanent ban


Customizing Punishment Reasons​


In messages.yml, you can add/edit reasons:

reasons:
cheating:
type: "ban" # ban, mute, or kick
duration: "15d" # Time format: 1s, 5m, 2h, 7d, 2w, 1y, or "perm"
message: "You have been banned for cheating"
wipe: false # Future feature for data wipes

toxicity:
type: "mute"
duration: "3d"
message: "You have been muted for toxic behavior"
wipe: false


Then use: /offend PlayerName cheating or /offend PlayerName toxicity
Screenshot 2026-02-05 203437.png

Screenshot 2026-02-05 204206.png

Alt Account Detection​


  • Tracks players by IP address
  • Automatically detects when players join from the same IP as banned accounts
  • Can auto-ban alts when configured
  • Alerts staff when alts join

Simple Voice Chat Integration​


When a player is muted, they:


  • Cannot send chat messages
  • Cannot transmit voice in Simple Voice Chat
  • Can still hear other players in voice chat

Configuration​


config.yml​

# Per-offense duration policy
ban-offense-policy:
- 1.0
- 2.0
- 4.0
- "perm"

# Alt tracking
track-alts: true
auto-ban-alts: true
alert-on-alt-join: true

# Simple Voice Chat
simple-voicechat-integration: true


messages.yml​


Fully customizable messages for all plugin actions. See the default messages.yml for all available options.

Support​


For issues or feature requests, please contact rytento via Discord


License​


All rights reserved.
Buy a license now
$6.99
EULA
Standard EULA
Use on any projects you own with attribution
Support
Standard
Includes:
Download the resource
Access new updates
Support from the creator
Support duration
1 year
Share and earn
Refer this resource and earn a 10% commission.
459 Views
5 Purchases
6 Downloads
Feb 7, 2026 Published
Jun 30, 2026 Updated
Not yet rated
56.2 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Gameplay
  1. Staff
  1. Anticheat
Game mode
  1. Survival
  1. Donut-like
  1. Economy
Supported software
  1. Bukkit
  1. Spigot
  1. Paper
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
Supported languages
  1. English
Creator
Owner
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Host a lag-free Minecraft or Hytale server in minutes.
Get 25% off your first order with our link.
Recommended for you
PlayerWipe is a Paper 1.21.x plugin that completely resets a player to a fresh state.
4.00 star(s) 2 ratings
9 purchases
DonutPay is a modern payment system with Vault integration
Not yet rated
0 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 141 ratings
4,214 purchases
Create items, blocks, mobs, emojis, and more with automatic resourcepack generation!
5.00 star(s) 54 ratings
3,184 purchases
Protect your server from crash/dupe/packet exploits with the ultimate security fix plugin.
5.00 star(s) 44 ratings
3,103 purchases
Share and earn
Refer this resource and earn a 10% commission.
459 Views
5 Purchases
6 Downloads
Feb 7, 2026 Published
Jun 30, 2026 Updated
Not yet rated
56.2 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Gameplay
  1. Staff
  1. Anticheat
Game mode
  1. Survival
  1. Donut-like
  1. Economy
Supported software
  1. Bukkit
  1. Spigot
  1. Paper
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
Supported languages
  1. English
Creator
Owner
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Host a lag-free Minecraft or Hytale server in minutes.
Get 25% off your first order with our link.
Recommended for you
PlayerWipe is a Paper 1.21.x plugin that completely resets a player to a fresh state.
4.00 star(s) 2 ratings
9 purchases
DonutPay is a modern payment system with Vault integration
Not yet rated
0 purchases
#1 BuiltByBit Plugin ~ Protects your server from crash packet exploits ~ Folia Support
5.00 star(s) 141 ratings
4,214 purchases
Create items, blocks, mobs, emojis, and more with automatic resourcepack generation!
5.00 star(s) 54 ratings
3,184 purchases
Protect your server from crash/dupe/packet exploits with the ultimate security fix plugin.
5.00 star(s) 44 ratings
3,103 purchases
Top