-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
Jack edited this page Jun 6, 2026
·
3 revisions
GPExpansion uses config.yml for all plugin settings.
plugins/GPExpansion/config.yml
The config is auto-migrated from older versions on first load with the new server version. A backup of the old config is created before migration.
debug:
enabled: false
messages:
show-permission-details: true-
debug.enabled— Verbose bridge/logging for claim detection and GP compatibility -
messages.show-permission-details— Show the exact missing permission node in denial messages (e.g., "Missing: griefprevention.sign.rent.money")
accruals:
enabled: true
pause-while-afk: false
pause-while-vanished: true
require-survival-mode: false
notify-on-cap: true
groups:
- name: default
blocks-per-hour: 100
max-blocks: 80000
max-claims: 0
- name: vip
blocks-per-hour: 200
max-blocks: 250000
max-claims: 10
- name: elite
blocks-per-hour: 500
max-blocks: 1000000
max-claims: 20
permission: elite-reward
world-blacklist: []
world-multipliers:
world: 1.0
world_nether: 0.5
world_the_end: 0.5Groups are matched by permission (griefprevention.accruals.<group>). The optional permission: field adds an extra gate.
player-commands:
- claims
- claim.name
- claim.name.anywhere
- claim.description
- ...
- claim.cancelrent
- claim.cancelrent.anywhere
- ...Permissions in this list are dynamically assigned to the gpx.player permission.
permission-tracking:
enabled: true
check-interval: 5Periodically rechecks player permissions so sign limits and accrual profiles update without a relog.
signs:
rent:
enabled: true
allow-renewals: true
allow-item-payments: true
allow-money-payments: true
allow-claimblock-payments: true
allow-experience-payments: true
require-container-for-item-payments: true
prevent-owner-breaking-active-rental: true
auto-remove-expired-signs: false
clear-on-abandon: true
max-rent-duration: 30d
sign-formats:
inputs:
- "[rent]"
- "[rent claim]"
outputs:
header: "&a&l[Rent Claim]"
display-claim-id: true
hanging-sign-formats:
inputs:
- "[rent]"
outputs:
header: "&a&l[Rent]"
display-claim-id: true
limits:
max-signs: 5
count-expired-rentals: true
count-inactive-signs: true
bypass-permission: griefprevention.sign.rent.limit.bypass
renewal:
max-click-renewals: 5
deny-renewal-when-eviction-pending: true
too-close-to-max-window: 1h
trust:
grant-container-trust: false
grant-access-trust: false
clear-renter-trust-on-expire: true
clear-renter-trust-on-evict: true
eviction:
notice-period: 14d
allow-owner-cancel: true
allow-admin-cancel: true
require-standing-in-claim: true
block-sign-break-until-effective: true
notify-renter-on-start: true
notify-owner-on-complete: true
restore-snapshot-on-evict: false
remove-renter-trust-on-start: false
remove-renter-trust-on-complete: true
snapshots:
max-per-claim: 5
auto-create:
on-rent-sign-create: false
on-rental-start: false
before-eviction-complete: false
auto-restore:
on-rental-expire: false
on-eviction-complete: false sell:
enabled: true
allow-item-payments: true
allow-money-payments: true
allow-claimblock-payments: true
allow-experience-payments: true
clear-trust-on-sale: true
transfer-global-listing: false
transfer-spawn-point: true
require-confirmation: true
remove-sign-after-sale: true
sign-formats:
inputs:
- "[sell]"
- "[sell claim]"
- "[buy]"
- "[buy claim]"
outputs:
header: "&a&l[Buy Claim]"
display-claim-id: true
hanging-sign-formats:
inputs:
- "[sell]"
- "[buy]"
outputs:
header: "&a&l[Buy]"
display-claim-id: true
limits:
max-signs: 5
count-inactive-signs: true
bypass-permission: griefprevention.sign.sell.limit.bypass mailbox:
enabled: true
allow-self-mailboxes: true
require-container-attached: true
allow-stacked-mailboxes: true
allow-hoppers: false
allow-owner-quick-collect: true
protocol: virtual
virtual:
update-mode: snapshot
snapshot-update-interval: 0
allow-multiple-depositors: false
return-items-when-full: true
save-on-close-only: true
sign-formats:
inputs:
- "[mailbox]"
- "[mbox]"
outputs:
header: "&9&l[Mailbox]"
display-claim-id: false
limits:
max-signs: 5
max-self-mailboxes-per-claim: 1
count-inactive-signs: true
bypass-permission: griefprevention.sign.mailbox.limit.bypass
storage-warnings:
enabled: true
thresholds:
- 75
- 90
- 100
sounds:
open: block.chest.open
close: block.chest.close
deposit: entity.item.pickup
full: block.note_block.bass-
protocol—virtual(snapshot-based, works with all GP versions) orreal(subdivision + container trust, requires GP3D) -
virtual.update-mode—snapshot,live-preview, orlive-commit
global:
enabled: true
allow-sign-toggle: true
require-claim-owner: true
set-spawn-on-create: true
default-listed: true
sign-formats:
inputs:
- "[global]"
outputs:
header: "&b&l[Global]"
display-claim-id: true
limits:
max-claims-per-player: 1
count-unlisted-claims: true
bypass-permission: griefprevention.claim.global.limit.bypassclaim-list:
show-owner-list-to-console: true
show-trusted-claims: true
show-subclaims: true
show-world: true
show-coordinates: true
show-area: true
show-name: true
show-claim-block-summary: true
page-size: 10Controls which columns appear in /claimlist output.
global-claims:
enabled: true
allow-teleport: true
require-approval: false
default-icon: GRASS_BLOCK
default-sort: newest
max-name-length: 48
max-description-length: 256
teleport-requires-safe-spawn: true
public-signs-set-spawn: trueteleport:
delay-seconds: 3
cooldown-seconds: 10
cancel-on-move: true
safe-location:
enabled: true
search-radius: 8
allow-nearby-fallback: true
confirm-unsafe-teleport: true
effects:
start-sound: entity.enderman.teleport
complete-sound: entity.player.levelup
particles: portal
bypass:
cooldown-permission: griefprevention.claim.teleport.bypass.cooldown
delay-permission: griefprevention.claim.teleport.bypass.delayclaim-flight:
passive-mode: false
enabled: true
require-toggle-command: true
consume-time-while-hovering: true
consume-time-in-creative: false
default-time: 0
max-time: 0
disable-on-pvp: true
disable-on-damage: false
disable-on-leaving-claim: true
landing-grace-seconds: 5
allow-in-admin-claims: true
allow-in-public-global-claims: false
trust-levels:
owner: true
manager: true
builder: true
container: false
access: false-
passive-mode— When true, players withclaimfly.usecan fly in owned/trusted claims without needing time in their flight bank -
max-time: 0— 0 = unlimited bank
claim-customization:
names:
max-length: 48
allow-colors: true
allow-formats: true
allow-minimessage: true
strip-obfuscated: true
descriptions:
max-length: 256
allow-colors: true
allow-formats: true
allow-minimessage: true
allow-links: false
icons:
allow-custom-items: true
allow-player-heads: true
deny-materials:
- BARRIER
- COMMAND_BLOCK
bans:
prevent-entry: true
prevent-teleport: true
eject-on-reload: true
public-ban-permission: griefprevention.claim.ban.public
admin-bypass-permission: griefprevention.admingui:
enabled: truetax:
percent: 5
account-name: "Tax"
enabled: true
exempt-permission: griefprevention.tax.exempt
apply-to:
rent: true
sell: true
mailbox: false
claim-block-purchases: false
deposit-mode: npc-account
round-mode: nearest
minimum-tax: 0
notify-payer: true
notify-payee: true
ledger:
enabled: false
retain-days: 90Tax is taken as a percentage of rent/purchase payments.
eviction:
notice-period: 14d
allow-owner-cancel: true
allow-admin-cancel: true
require-standing-in-claim: true
block-sign-break-until-effective: true
notify-renter-on-start: true
notify-owner-on-complete: true
restore-snapshot-on-evict: false
remove-renter-trust-on-start: false
remove-renter-trust-on-complete: truesnapshots:
enabled: true
max-per-claim: 5
auto-create:
on-rent-sign-create: false
on-rental-start: false
before-eviction-complete: false
auto-restore:
on-rental-expire: false
on-eviction-complete: false
on-sale: false
cleanup:
enabled: true
retain-days: 30
remove-when-claim-deleted: true
compression: true
async-restore: true
max-blocks-per-tick: 5000integrations:
griefprevention:
detect-gp3d: true
prefer-gp3d-3d-claims: true
use-native-visualizations: true
vault:
fail-closed-when-missing: true
ignore-vault-missing: true
luckperms:
sync-dynamic-player-permission: true
placeholderapi:
enabled: true
discord:
enabled: false
webhook-url: ""
events:
rental-start: true
rental-expire: true
eviction-start: true
eviction-complete: true
claim-sale: trueversion:
config-version: "1.1.2"
update-checker:
enabled: true
check-interval: 24
notify-admins: true
log-to-console: trueUse /gpx reload to reload config without restart.