How to Set Up a Minecraft Prison Server

How to Set Up a Minecraft Prison Server
Prison is one of the oldest and most addictive gamemodes in Minecraft. Players start in a mine, sell ores for currency, rank up to bigger and better mines, then graduate to a free world where they fight, build, and flex their wealth.
This guide covers the full setup using free, well-maintained plugins on Paper.
Server Software
Run Paper (or Purpur) — Spigot is too slow for the constant block-breaking that prison generates. Allocate at least 4GB RAM to start.
Core Plugins
| Plugin | Purpose | | --- | --- | | LuckPerms | Ranks (A → Z, then prestiges) | | EssentialsX + EssentialsX Economy | Currency, /sell, /pay | | MineResetLite or PrisonMines | Auto-resetting mines | | ShopGUIPlus or QuickShop-Hikari | Sell GUIs and player shops | | WorldGuard | Region protection (mines, spawn, PvP zones) | | WorldEdit | Building mine regions fast | | PlotSquared | Player plot world for housing | | RankUpper or PrisonRanks | /rankup command and pricing | | Vault | Economy bridge between plugins |
Step 1: World Layout
A standard prison world has three areas:
- Spawn / Plaza — Tutorial signs, NPC shops, /rankup command sign, /pvp toggle
- Mines — One per rank, walled off, only accessible at your current rank or above
- Free World / PvP Zone — Players who reach Z (or P1 prestige) get out
Step 2: Set Up Mines
For each mine (A through Z):
- Use //pos1 and //pos2 to select the cuboid
- `/mrl create A` (MineResetLite) — registers the region
- `/mrl addblock A stone 50` — 50% stone
- `/mrl addblock A coal_ore 30` — 30% coal
- `/mrl addblock A iron_ore 20` — 20% iron
- `/mrl resetdelay A 5` — auto-reset every 5 minutes
- A–E: stone-heavy, low-value ores
- F–M: mid-tier ores (iron, gold, redstone, lapis)
- N–T: diamonds, emeralds, ancient debris
- U–Z: mostly diamonds and emeralds, minimal stone
Step 3: Configure Sell Prices
In ShopGUIPlus or via EssentialsX worth.yml:
```yaml worth: cobblestone: 1 coal: 5 iron_ore: 15 gold_ore: 30 diamond_ore: 200 emerald_ore: 250 netherite_scrap: 1000 ```
Players run `/sell hand` or `/sell all`. Test the economy yourself — a fresh A-rank player should earn enough to rank up to B in 15–20 minutes, not 5 and not 60.
Step 4: Rank Up Command
With PrisonRanks or RankUpper, define each rank with a cost and the LuckPerms group it grants:
```yaml ranks: A: cost: 0 next: B permission: rank.A B: cost: 5000 next: C permission: rank.B ```
Costs typically grow geometrically — 5k → 15k → 50k → 150k → ... so the late game requires real grinding.
Step 5: Region Protection
`/rg flag mine_A pvp deny` `/rg flag mine_A entry -g members allow` (only correct rank can enter) `/rg flag spawn pvp deny` `/rg flag pvp_zone pvp allow`
Step 6: Plot Worlds
Use PlotSquared to give every player a 32x32 plot. This is where they build houses, store loot, and show off — it's a huge retention driver. Make plots free at A, or charge a small fee at C.
Step 7: Donor Ranks (EULA-Safe)
Only sell cosmetic perks: extra plot slots, particle trails, custom prefixes, /fly in spawn, larger /sell stack size. Never sell currency, ores, or rank-skips — that violates Mojang's EULA and gets your server delisted from voting sites.
Step 8: Anti-Cheat
Prison is a magnet for x-ray and auto-clickers. Set up Grim or Vulcan, plus Paper's built-in anti-x-ray (engine-mode 2) — see our anti-cheat guide.
Common Mistakes
- Mines too small: they reset before players can fill an inventory
- Economy too generous: players hit Z in a weekend and quit
- No PvP zone or free world: rank-Z players have nothing to do
- Skipping plots: removes the social showing-off layer
Final Tips
- Run vote parties every 50 votes — gives free crate keys
- Add a /pickaxe enchant system (custom enchants) for late-game progression
- Reset prestiges every 3–6 months so old players have a reason to come back