Skip to content
Owen edited this page Jan 2, 2025 · 16 revisions

Need help?

  • Java 17 or newer
  • One of the following:
    • Paper 1.19.4+
    • Velocity 1.19.4+
    • Bungeecord 1.19.4+
  • Optional: MySQL / MariaDB
  • Optional: PlaceholderAPI for placeholders.

Commands

Command Description
/ban Ban a player
/alts (/altcheck) Display the alts of a player
/gsbreload Reload the configuration files
/kick Kick a player from the server
/mute Mute a player
/history View punishments on the server for a player
/unban Unban a player
/unwarn Removes a player's latest warning
/unmute Unmute a player
/warn (/warning) Warn a player
/punish Opens the punishment GUI

Punishment Commands

Punishment commands offer extreme customization in order to be able to specifically make punishments. The following contract applies to kick, warn, mute, and ban.

Standard Syntax

This syntax can be used for most punishment actions where you’re simply wanting to punish a player.

The structure generally follows this format: /<command> <player_name> <category> <expiry> <reason>

Examples:

  • /mute Owen05 other 1d Being Rude!
  • /kick xXNick other Stop doing that!
  • /ban Eric_01 other permanent Goodbye forever!

Parameters:

Parameter Description
command This is the action you’re taking, so: ban/kick/warn/mute.
player_name The name of the player you’re applying the punishment to
category The category for the punishment. See more info at Configuring Categories.
expiry (not present in kick) The time duration for the punishment (e.g., 1d, 7h, permanent)
reason A custom reason for the punishment, visible to the player.

Advanced Syntax (IP Punishments, etc)

This syntax allows more exact punishments that may not necessarily be tied to a player. Here are some use cases:

  • banning an ip from letting players join from
  • banning a player's ip (preventing both the player and the ip from joining)
  • banning a player from their gsauth id

The structure generally follows this format: /<command> <key_identifier> <identifier> <category> <expiry> <reason>

Examples:

  • /mute player Joseph other 1d Being Rude!
  • /ban ip_only 0x1minecart 1y other Bot raid!
    • Note: This will ban everyone on the ip, but the 0x1minecart account will be able to join on another ip. This is useful if the account is compromised.
  • /ban ip James2200 other permanent Goodbye forever!
    • Note: This will ban everyone on the ip AND the James2200 account.

Parameters:

Parameter Description
command This is the action you’re taking, so: ban/kick/warn/mute.
key_identifier The identifier key, see identifier keys
identifier The valid identifier value, see identifier values
category The category for the punishment. See more info at Configuring Categories.
expiry (not present in kick) The time duration for the punishment (e.g., 1d, 7h, permanent)
reason A custom reason for the punishment, visible to the player.
Identifiers
Key Values Requires Description
gs_id Player Name, GSAuth ID GSAuth Plugin Identifies a player using their GamerSafer authentication ID (GSAuth ID).
ip_only IP Address, Player Name IP Punishments Enabled (see Configuration) Identifies players based on a specific IP address (or the specified player's current IP). If the player changes their IP, the identifier no longer applies. See ip for alternative behavior.
ip Player Name IP Punishments Enabled (see Configuration) Identifies a specific player along with their current IP address. Even if the player changes IPs, they remain targeted by this identifier.
player Player Name, Player UUID N/A Identifies a player by their in-game name, which is automatically resolved to a UUID.

/punish Command

The /punish command allows you to punish players using a system inspired by Minehut’s Punishment system. Punishments are categorized and scale based on the number of infractions committed within a specified timeframe. Each category follows a predefined path for scaling punishments.

You can customize these categories and their scaling properties under Configuring Categories.

Key Features:

  • Punishments are issued based on prespecified categories.
  • Each category scales depending on the number of punishments given within a set period.

Permissions

Permission Description
gsbans.ban Access to /ban
gsbans.kick Access to /kick
gsbans.warn Access to /warn
gsbans.mute Access to /mute
gsbans.unban Access to /unban
gsbans.unmute Access to /unmute
gsbans.unban Access to /unban
gsbans.reload Access to /gsbreload
gsbans.punish Access to /punish
gsbans.history Access to /history
gsbans.announce_punishments Will receive punishment announcements
gsbans.punishments.identifiers.ip Can apply ip based punishments