Extend GriefPrevention with rental signs, mailboxes, and more
GPExpansion adds powerful features to
GriefPrevention including
rental signs,
claim mailboxes,
sell signs,
global claims,
sign protection, and more — all while maintaining the self-service philosophy.
Mailboxes work with
regular GriefPrevention or the
GriefPrevention3D fork. With regular GP you use the
virtual protocol (no subdivisions). With GP3D you can use
real (1x1x1 subdivision + container trust) or
virtual; the config option
mailbox-protocol defaults based on which GP you have installed.
Supported Platforms
Spigot, Paper, Purpur, and Folia
Requires
GriefPrevention and optionally
Vault for economy features.
Optionally use
GriefPrevention3D for seamless mailboxes (1x1x1 subdivisions and public container trust). With regular GP, set
mailbox-protocol: virtual in config for stackable mailboxes without subdivisions.
Features
Rental Signs
Allow claim owners to rent out their claims to other players using signs.
- Set rental prices and durations
- Automatic trust/untrust on rental start/expiry
- Supports Vault economy, experience, claim blocks, and item-based payments
- Interactive setup wizard with /rentclaim
Short Format (place sign inside claim):
Code (Text):
[rent]
<renewTime>
<ecoAmt>
OR with max time:
Code (Text):
[rent]
<renewTime> <maxTime>
<ecoAmt>
Condensed Format (outside claim):
Code (Text):
[rent]
<id>;<ecoAmt>;<renewTime>
OR with max time:
Code (Text):
[rent]
<id>;<ecoAmt>;<renewTime>;<maxTime>
Note: maxTime is optional and defaults to renewTime. Hold the item in your offhand for item-based signs.
Sell Signs
Allow claim owners to sell their claims to other players using signs.
- Set claim prices
- Automatic transfer of ownership
- Supports Vault economy, experience, claim blocks, and item-based payments
- Interactive setup wizard with /sellclaim
Short Format (place sign inside claim):
Code (Text):
[sell]
<ecoAmt>
Condensed Format (outside claim):
Code (Text):
[sell]
<id>;<ecoAmt>
OR with explicit eco type:
Code (Text):
[sell]
<id>;<ecoType>;<ecoAmt>
Note: ecoType defaults to money. Hold the item in your offhand for item-based signs.
Claim Mailboxes
Give each claim a mailbox where other players can deposit items.
- Owners have full access to retrieve items
- Non-owners get deposit-only (real protocol) or a virtual snapshot (virtual protocol)
- Storage warnings when mailbox is nearly full
- Purchasable via signs with configurable prices, or instant self mailboxes for owners/renters
- Interactive setup wizard with /mailbox (no claim ID needed — choose self or buyable)
Self Mailbox (instant — place wall sign on container in a claim you own or rent):
Code (Text):
[Mailbox]
(line 1–3: empty or player names for shared full access)
Behavior depends on
mailbox-protocol:
real creates a subdivision and public container trust (GP3D or regular GP 2D);
virtual creates no subdivision (works with regular GP, stackable mailboxes). Limit per claim:
defaults.max-self-mailboxes-per-claim.
Buyable Mailbox (others pay to get the mailbox):
Code (Text):
[Mailbox]
<ecoType>;<ecoAmt>
Example:
money;100 or
exp;50. Place sign on container in a claim you own. Others click to purchase.
All mailbox signs are wall signs on a container (chest, barrel, hopper, etc.) inside a claim. With real protocol a 1x1 (2D) or 1x1x1 (GP3D) subdivision is created on creation/purchase; with virtual protocol no subdivision is created.
Global Claims
- List claims in a global claim list viewable to all
- Set icon, description, name, spawn point via GUI or commands
- [global] sign (inside claim) or [global] with <id> (admin, outside claim)
- /claim global <true|false> to toggle listing
Sign Protection
Protect your rental and mailbox signs from unauthorized modification.
- Admin-only sign breaking for active rentals
- Automatic cleanup on sign removal
Setup Wizards
Use interactive setup wizards for easier sign creation:
- /rentclaim — Start rental sign setup wizard
- /sellclaim — Start sell sign setup wizard
- /mailbox — Start mailbox setup wizard (choose self or buyable)
The wizard guides you through claim selection (if needed), payment type, price/duration, and optional auto-paste mode.
Claim Management
- /claim name <name> — Set claim name
- /claim desc <description> — Set claim description
- /claim icon <material> — Set claim icon for GUI
- /claim spawn — Set teleport spawn point
- /claim tp [claimId] — Teleport to claim spawn
- /claim ban <player> — Ban players from your claim
- /claim unban <player> — Unban players
- /claim info [id] — View detailed claim information
- /claimlist — List all your claims with IDs
- /mailbox — Manage your mailboxes
- /gpx reload — Reload configuration and language files
- /gpx max <sell|rent|mailbox|self-mailboxes|globals> <add|take|set> <player> <amount> — Manage sign limits
Installation
- Download the latest release
- Place GPExpansion.jar in your plugins folder
- Ensure GriefPrevention is installed
- (Optional) Install Vault for economy support
- Restart your server
- Configure plugins/GPExpansion/config.yml
Configuration
The plugin creates
config.yml and
lang.yml with sensible defaults.
Code (Text):
# Message settings
messages:
show-permission-details: true
# Mailbox protocol: real = subdivision + container trust (live chest); virtual = no subdivision (snapshot view, works with regular GP)
mailbox-protocol: virtual
# Default limits (overridable by permissions)
defaults:
max-sell-signs: 5
max-rent-signs: 5
max-mailbox-signs: 5
max-self-mailboxes-per-claim: 1
# Permission tracking
permission-tracking:
enabled: true
check-interval: 5
All messages are customizable in
lang.yml. Use
/gpx reload to reload without restarting.
Permissions
Sign Creation
| griefprevention.sign.create.rent |
Create rental signs |
| griefprevention.sign.create.rent.anywhere |
Create rental signs outside the target claim |
| griefprevention.sign.create.sell |
Create sell signs |
| griefprevention.sign.create.sell.anywhere |
Create sell signs outside the target claim |
| griefprevention.sign.create.mailbox |
Create buyable mailbox signs |
| griefprevention.sign.create.self-mailbox |
Create self mailboxes (wall sign on container) |
| griefprevention.sign.create.self-mailbox.1 |
1 self mailbox per claim (etc. .2, .5, .10) |
Sign Usage
| griefprevention.sign.use.rent |
Use rental signs |
| griefprevention.sign.use.sell |
Use sell signs |
| griefprevention.sign.use.mailbox |
Use mailbox signs |
Economy Types
| griefprevention.sign.rent.money |
Money for rent signs |
| griefprevention.sign.rent.exp |
Experience for rent signs |
| griefprevention.sign.rent.claimblocks |
Claim blocks for rent signs |
| griefprevention.sign.rent.item |
Item for rent signs |
| griefprevention.sign.buy.money |
Money for sell signs (etc. .exp, .claimblocks, .item) |
| griefprevention.sign.mailbox.money |
Money for mailbox signs (etc. .exp, .claimblocks, .item) |
Sign Limits
| griefprevention.sign.limit.rent.<number> |
Limit to <number> rental signs |
| griefprevention.sign.limit.buy.<number> |
Limit to <number> sell signs |
| griefprevention.sign.limit.mailbox.<number> |
Limit to <number> mailbox signs |
| griefprevention.sign.create.self-mailbox.<number> |
Limit to <number> self mailboxes per claim |
Claim Management
| griefprevention.claim.name |
Set claim names |
| griefprevention.claim.description |
Set claim descriptions |
| griefprevention.claim.icon |
Set claim icon |
| griefprevention.claim.setspawn |
Set claim spawn |
| griefprevention.claim.teleport |
Teleport to claims |
| griefprevention.claim.ban |
Ban players from claims |
| griefprevention.claim.unban |
Unban players |
| griefprevention.claiminfo |
View claim info |
Admin
| griefprevention.admin |
Admin commands and sign management |
| gpexpansion.admin.reload |
Use /gpx reload |
| gpexpansion.admin.max |
Use /gpx max |
| gpexpansion.admin.debug |
Use /gpx debug |
Support
Building from Source
Code (Text):
git clone https://github.com/castledking/GPExpansion.git
cd GPExpansion
mvn clean install
The compiled jar will be in
target/.
Built to extend GriefPrevention with love ❤️