Sueta

BasicPrison

4.0

A simple Prison Plugin. Admins can put players into a Prison. In the Prison, the Player cannot brake/place/interact with blocks and cannot use commands. You can have multiple cells with one player per

·Plugin

BasicPrison

A lightweight prison/jail plugin for Paper 1.21+ servers. Temporarily imprison players in designated cells with full restriction enforcement and automatic timed release.

Features

  • Multiple prison cells — define as many named cells as you need with /setprisoncell <id>
  • Timed sentences — jail players with human-readable durations (10s, 5m, 1h, 2d)
  • Automatic cell assignment — prisoners are placed in the first available (unoccupied) cell
  • Full restriction — jailed players cannot use commands, break/place blocks, or interact with anything
  • Auto-release — a background task checks for expired sentences every few seconds and releases players automatically
  • Offline support — players whose sentence expires while offline are released upon rejoining
  • Persistent data — jail data survives server restarts via data.yml
  • Fully configurable messages — all player-facing messages are customizable in config.yml with & color codes

Commands

CommandDescriptionPermission
/prison <player> <time>Jail a player for the specified durationbasicprison.jail
/setprisoncell <id>Create a cell at your current locationbasicprison.setcell
/listprisoncellsList all defined prison cellsbasicprison.listcells
/deleteprisoncell <id>Delete a prison cellbasicprison.deletecell

All permissions default to op.

Time Format

SuffixUnitExample
sSeconds30s
mMinutes10m
hHours1h
dDays2d

Configuration

config.yml

# Prison cells (set in-game with /setprisoncell <id>)
prison-cells: {}

# How often (in ticks) the release checker runs. 60 ticks = 3 seconds.
release-check-interval-ticks: 60

# All messages are customizable with & color codes
messages:
 jailed: "&cYou are imprisoned and cannot use commands!"
 sent-to-prison: "&cYou have been sent to prison for &e%time%&c!"
 released: "&aYour sentence has expired. You are free!"
 # ... and more

data.yml

Automatically managed — stores prisoner UUIDs, original locations, assigned cell IDs, and sentence expiration timestamps. Do not edit manually while the server is running.

Quick Start

1. /setprisoncell cell1       — stand where you want the cell, run the command
2. /setprisoncell cell2       — create additional cells as needed
3. /prison Steve 10m          — jail Steve for 10 minutes
4. /listprisoncells           — see all your cells
5. /deleteprisoncell cell2    — remove a cell

Requirements

  • Paper 1.21+
  • Java 21+

Similar projects

Plugin →