BGHDDevelopment®
Browse PunishmentGUI
PunishmentGUI documentation
Minecraft 1.8–26.x

PunishmentGUI Overview

PunishmentGUI provides configurable punishment menus. It runs commands from your punishment plugin; LiteBans, AdvancedBan, or another command-based punishment system performs and stores the actual punishment.

PunishmentGUI 1.1.13 requires Java 17 or newer and uses Bukkit API 1.13. Choose a plugin build that supports your server version. The legacy material examples are for older installations.

Setup

  1. Install PunishmentGUI on the Bukkit/Spigot-compatible server where staff open the menu.
  2. Install and configure your punishment handler so its commands work on that server.
  3. Start the server to generate plugins/PunishGUI/settings.yml and language.yml.
  4. Edit the menu commands to match your punishment handler, then run /punishreload.
  5. Grant staff punish.use, plus the punishment permissions required by commands they execute as players.

Commands and Permissions

Command Permission Purpose
/punish <target> or /punishment <target> punish.use Open the configured menu for the target name; in-game only.
/punishreload or /reloadpunish punish.admin Reload settings, language, and menus; also available from console.

The default menu is selected by Command: "{openmenu:main-menu}". The menu must exist under menus and its name must match. Use lowercase menu names.

command.execute is a YAML list, even for one command. Leave off the leading /.

Configuration / Code
command:
  enabled: true
  execute:
    - "warn {target} Please follow the rules"
action: ""
close-inventory: true
  • ConsoleRunsCommands: false executes ordinary entries as the staff player. Their punishment-plugin permissions still apply.
  • Prefix an individual entry with [Console] to run it from the backend console. Setting ConsoleRunsCommands: true runs every configured command as console.
  • action: "{openmenu:another-menu}" opens another configured menu.
  • Item slots are one-based: slot: 1 is the first slot.
  • close-inventory defaults to true; use false when an item should leave the menu open.

Grant access to console-backed punishment menus only to appropriate staff: console execution does not use the clicking player's punishment-plugin permissions.

In command entries, item names, and menu titles, {player} and {target} identify the punishment target. Command entries and item names also support {executor} for the staff player's display name. In message.text, {player} identifies the clicking player instead.

Optional Integrations

You can use PlaceholderAPI in supported text fields and HeadDatabase or Skulls for custom menu heads. These plugins are optional.

For item models from a resource pack, see Custom Model Data. Your server version must support it.

Configuration

The plugin populates these missing language entries on startup:

Configuration / Code
PUNISH:
  USAGE: "&cUse Like: /punish <target>"
  NAME-ERROR: "&cThat player name is invalid!"
  COMMAND-CONSOLE: "&cConsole cannot use this command!"
  RELOAD: "&aPlugin files have been reloaded!"

Downloads

Download PunishmentGUI · Spigot · Source Code