Config Reference (Claim)
All configuration keys from plugins/CoreEngine/modules/claim. of CoreEngineClaim. This plugin is GriefPrevention-compatible and uses largely the same configuration keys.
Reload: /claim admin reload or a server restart.
Storage #
Backend selection for storing claims.
Storage:
# Backend type: flatfile or sqlite. Switching from flatfile to sqlite
# automatically imports the existing claim data on first start; the
# migration can also be triggered manually at any time via
# /claim admin migrate.
Backend: sqliteClaims (Main Section) #
World Modes #
Claims:
# Claim mode per world. The placeholder "*" is the default for all
# worlds. Possible modes: Survival (normal), Creative (stricter on
# claim expiration), SurvivalRequiringClaims (building only allowed in
# claims), PvP (behaves like Survival), Disabled (no claiming).
WorldModes:
"*": Survival
# List of worlds that are treated entirely as admin land. Players
# cannot create new top-level claims here; subdivisions are still
# possible. Managed via /claim admin world.
GlobalWorldClaims: []Protection Flags #
Claims:
# Blocks mob spawner eggs outside claims
PreventGlobalMonsterEggs: true
# Blocks theft from containers and attacks on animals
PreventTheft: true
# Protects passive mobs (animals) inside claims
ProtectCreatures: true
# Requires access trust for buttons and levers
PreventButtonsSwitches: true
# Blocks ender pearl teleportation into foreign claims without access
# trust (the pearl is returned)
EnderPearlsRequireAccessTrust: true
# Requires build trust to ring bells (raid triggers)
RaidTriggersRequireBuildTrust: true
# Protects horses from foreign access
ProtectHorses: true
# Protects donkeys from foreign access
ProtectDonkeys: true
# Protects llamas from foreign access
ProtectLlamas: true
# If true, pets are also protected in the wilderness
ProtectPetsOutsideLandClaims: falseNote: Doors, trapdoors and fence gates always require access trust inside claims. There is no global config toggle for this; to open them up for everyone instead, use the "Public Access" claim flag in the claim GUI.
Claim Block Economy (Basics) #
Claims:
# Starting allowance (claim blocks) for new players
InitialBlocks: 400
# Claim blocks per play hour (playtime)
BlocksAccruedPerHour: 100
# Cap on accrued blocks (bonus blocks not included)
MaxAccruedBlocks: 80000
# Hours of inactivity before block accrual pauses (0 = disabled)
AccruedIdleThresholdHours: 0
# Percentage of the normal rate during idle hours (0 = none)
AccruedIdleAccrualPercent: 0
# Fraction of spent blocks refunded on /claim abandon (1.0 = full
# refund)
AbandonReturnRatio: 1.0Claim Block Economy (Rank Tiers) #
Claims:
# Named tiers for starting blocks, assigned via the
# coreengineclaim.rank.<key> permission (highest match wins). The
# direct permission coreengineclaim.initialblocks.<number> takes
# precedence. Example:
# InitialBlocksByGroup:
# vip: 800
# Named tiers for the hourly block accrual, assigned via
# coreengineclaim.rank.<key> (highest match wins). The direct
# permission coreengineclaim.blocksperhour.<number> takes precedence.
# Example:
# AccrualPerHourByGroup:
# premium: 200Tool & Interaction Tuning #
Claims:
# Minimum time (ms) between two stick clicks by the same player.
# Prevents spam. 0 = disabled.
StickCooldownMillis: 500
# Radius (blocks) for the sneak+stick "show all nearby claims" display
NearbyClaimRadius: 30
# Minimum time (ms) between two sneak+bone clicks
SubdivisionVisualizationCooldownMillis: 200
# Radius (blocks) for the sneak+bone "show nearby subdivisions" display
SubdivisionNearbyRadius: 200Auto-Claim on Chest Placement #
Claims:
# Radius (blocks) around a newly placed chest of new players for the
# auto-claim
AutomaticNewPlayerClaimsRadius: 4
# Minimum radius override
AutomaticNewPlayerClaimsRadiusMinimum: 0Claim Geometry #
Claims:
# For GriefPrevention compatibility only, no function of its own;
# manually created claims always span the full world height
ExtendIntoGroundDistance: 5
# Minimum side length (prevents tiny claims)
MinimumWidth: 5
# Minimum total area in blocks (width times length)
MinimumArea: 25
# Lowest Y coordinate for automatically created claims. The default (a
# very large negative number) means no restriction. Example: 0
# prevents auto-claims below sea level.
MinimumY: -2147483648
# Per-world overrides for MinimumY. Example: world_nether: 127
MinimumYOverrides: {}
# For compatibility only, no function of its own (see
# ExtendIntoGroundDistance)
MaximumDepth: 0Tools #
Claims:
# Material for the investigation tool
InvestigationTool: STICK
# Material for claim creation/modification
ModificationTool: GOLDEN_SHOVEL
# Material for the subdivision overview
SubdivisionVisualizationTool: BONEClaim Expiration #
Claims:
# Auto-chest claims are deleted after N days of inactivity
ChestClaimDays: 7
# Reserved, currently no function; AllClaimDays/ChestClaimDays control
# expiration
UnusedClaimDays: 14
# All claims are deleted after N days of inactivity (0 = disabled)
AllClaimDays: 0
# Maximum claims per player (0 = unlimited)
MaximumNumberOfClaimsPerPlayer: 0
# Maximum subdivisions per top-level claim (0 = unlimited)
MaximumSubdivisionsPerClaim: 100Creative Worlds #
Claims:
# Reserved, currently no function. The actual creative behavior
# (renaturation on claim expiration) depends solely on
# Claims.WorldModes: <world>: Creative
CreativeRulesWorlds: []Pistons & Portals #
Claims:
# Piston rules: CLAIMS_ONLY (pistons and all moved blocks must be in
# the same claim, or everything in the wilderness), EVERYWHERE_SIMPLE
# (simplified border check), EVERYWHERE (only claim borders
# protected), IGNORED (all piston checks off, including
# Wilderness.DisablePistons)
PistonMovement: CLAIMS_ONLY
# Blocks portals created by mobs or machines
PreventNonPlayerCreatedPortals: true
# Allows ravagers to destroy blocks in claims
RavagersBreakBlocks: false
# Warns players building in the wilderness
WarnWhenBuildingOutsideClaims: true
# Prevents wildfire from spreading into claims
ProtectFireSpreadingIntoClaims: trueVisualization #
Claims:
# Disables particle optimizations for anti-cheat plugins
VisualizationAntiCheatCompatMode: false
# Seconds the claim border stays visible
VisualizationDurationSeconds: 30GriefPrevention #
GriefPrevention compatibility settings.
GriefPrevention:
Database:
# If Storage.Backend = sqlite, uses CoreEngine's central database
UseCoreEngine: truePvP #
PvP combat rules and protections.
PvP:
# Whether PvP is active at all
Enabled: true
# Enables PvP per world. Placeholder "*" = default (false = PvP off)
RulesEnabledInWorld:
"*": false
# Newly spawned players are briefly invincible
ProtectFreshSpawns: true
# Seconds of post-spawn immunity
FreshSpawnDurationSeconds: 10
# Kills players who log out during combat
PunishLogout: true
# Seconds until combat status expires after the last hit
CombatTimeoutSeconds: 15
# Whether players can drop items during combat
AllowCombatItemDrop: false
# Commands blocked during combat
BlockedCommands: [home, spawn, tpa, tpaccept, tpahere, warp, back, tp, teleport, rtp]
ProtectPlayersInLandClaims:
# Protect players in land claims in PvP worlds?
PvPWorld: false
# Protect players in land claims in non-PvP worlds?
NonPvPWorld: true
# Protect players in admin claims
ProtectPlayersInAdminLandClaims: true
# Protect players in subdivisions
ProtectPlayersInSubdivisions: false
AllowLavaNearPlayers:
# Allow lava buckets near players in PvP worlds?
PvPWorld: false
# Allow lava buckets near players in non-PvP worlds?
NonPvPWorld: false
AllowFireNearPlayers:
# Allow flint and steel near players in PvP worlds?
PvPWorld: false
# Allow flint and steel near players in non-PvP worlds?
NonPvPWorld: false
# Reserved, currently no function. Ender pearl protection runs solely
# via Claims.EnderPearlsRequireAccessTrust
AllowPearlsToPvpZones: false
# Radius (blocks) in which lava buckets and flint and steel are
# blocked near players
LavaBucketRadius: 5
# Seconds during which only the player themself can pick up their own
# drops
LootProtectionSeconds: 180Pets #
Pet management.
Pets:
# Allows the /givepet command
EnableGivePetCommand: trueMobs #
Mob behavior in the wilderness and in claims.
Mobs:
# Endermen can move blocks (affects all areas)
EndermenMoveBlocks: false
# Silverfish can destroy stone blocks
SilverfishBreakBlocks: false
# Mobs/animals can trample crops
CreaturesTrampleCrops: false
# Rabbits can eat crops
RabbitsEatCrops: true
# Zombies can break down wooden doors
ZombiesBreakDoors: falseFire #
Fire spread and destruction.
Fire:
# Fire spreads
Spreads: false
# Fire destroys blocks
Destroys: falseExplosions #
Explosions from creepers, TNT, beds, etc.
Explosions:
# Blocks creeper/TNT craters above sea level
BlockSurfaceExplosions: true
# Allows bed explosions in the wilderness (Nether/End)
BedExplosionsAllowed: false
# Allows respawn anchor explosions in the wilderness (Overworld)
RespawnAnchorExplosionsAllowed: falseWilderness #
Wilderness protection rules.
Wilderness:
# Prevents sky platform trees (griefing in the wilderness)
LimitSkyTrees: true
# Prevents saplings from growing in the wilderness
LimitTreeGrowth: false
# Sets redstone power outside claims to 0
DisableRedstone: true
# Cancels pistons outside claims (PistonMovement: IGNORED also covers
# this)
DisablePistons: true
# Sea level override: -1 = uses the regular world sea level,
# >= 0 = fixed value
SeaLevelOverride: -1Sieges #
Siege system (optional).
Sieges:
# Enables the siege system
Enabled: false
# Maximum duration (seconds) of a siege
MaxDurationSeconds: 1800
# World allowlist for sieges (empty = all worlds; PvP rules must be
# active in the respective world)
Worlds: []Spam #
Anti-spam and login controls.
Spam:
# Reserved, no function
Enabled: false
# Reserved, no function
LoginCooldownSeconds: 60
# Reserved, no function
WhisperSlashCommands: [tell, pm, msg, r, whisper]
# Reserved, no function
ChatSlashCommands: [me, tell, pm, msg, r, whisper]
# Reserved, no function
BanOffenders: true
# Reserved, no function
AllowedIpAddresses: []Note: The entire spam section currently has no effect - CoreEngine handles chat moderation (mutes, spam protection, login cooldowns). Soft-mute/ignore filtering (see /softmute, /ignoreplayer on the PvP and Security wiki page) runs independently of this and is always active.
Economy #
Purchase/sell prices for claim blocks and team plots.
Economy:
# Price per claim block when buying (0 = disabled)
ClaimBlocksPurchaseCost: 0.0
# Payout per claim block when selling (0 = disabled)
ClaimBlocksSellValue: 0.0
# Default price for /claim team buy (paid from the team treasury).
# Individual plots can be overridden via /claim team price.
# Rental plots charge this amount per rent period.
TeamPlotPurchaseCost: 100000.0
# Price per TEAM claim block (/claim team blocks buy), 0 disables buying.
# The team pool funds converted team claims (/claim convert).
TeamClaimBlocksCostPerBlock: 10.0
TeamPlots:
# Real-time days between two rent payments of a rental plot.
RentPeriodDays: 30
# Grace period after a failed payment before the plot is released.
RentGraceDays: 7Advanced #
Advanced settings for performance and diagnostics.
Advanced:
# Admin warning when a player owns more than N claims (0 = off)
ClaimsPerPlayerWarningCount: 0
# Automatically corrects negative block balances on load
fixNegativeClaimblockAmounts: true
# Minutes between checks for expired claims
ClaimExpirationCheckRate: 60
# Days for how long offline player profiles are cached
OfflinePlayer_cache_days: 90Logging #
Audit log for claim actions.
Logging:
# Writes all claim actions to the audit log
AuditLog: true
# Name of the log file in the plugin data folder
LogToFile: claim-audit.log
# Rotates the log file daily
RotateDaily: true
# Size limit per log file (0 = no limit). When exceeded, rotates to a
# new file.
MaxFileSizeMb: 10Complete Example Config #
The complete config. with all sections. The example blocks that were previously commented out (WorldModes, GlobalWorldClaims, InitialBlocksByGroup, AccrualPerHourByGroup, MinimumYOverrides, Sieges.) are here filled in active with example values so the structure can be understood directly. All other values correspond to the shipped default state.
# =====================================================================
# CoreEngineClaim: config.yml
# Default claim protection settings.
# Reload: restart the server or run /claim admin reload.
# =====================================================================
Storage:
# 'flatfile' = YAML files under plugins/CoreEngine/modules/coreClaim/data/
# 'sqlite' = CoreEngine's shared SQLite pool (default; requires CoreEngine).
# When switched from flatfile to sqlite, claim data is auto-imported on first start.
Backend: sqlite
Claims:
# Per-world claim mode. Key = world name, or "*" for a wildcard default.
# Modes: Survival, Creative, SurvivalRequiringClaims, PvP, Disabled.
WorldModes:
"*": Survival
world_creative: Creative
world_hardcore: SurvivalRequiringClaims
pvp_world: PvP
world_minigames: Disabled
# Worlds listed here are treated as fully claimed admin worlds.
# Normal claims are still indexed normally; subdivisions can be created inside
# these worlds later without storing a massive full-world claim.
GlobalWorldClaims:
- shopping_district
# ── Protection flags ────────────────────────────────────────────────
PreventGlobalMonsterEggs: true # block mob-spawner eggs outside claims
PreventTheft: true # stops container theft and animal attacks
ProtectCreatures: true # protect passive mobs inside claims
PreventButtonsSwitches: true # require access-trust for buttons/levers
# NOTE: Doors, trapdoors and fence gates always require ACCESS trust inside
# claims. Use the per-claim "Public Access" flag (claim GUI) to open them
# up for everyone instead of a global config toggle.
EnderPearlsRequireAccessTrust: true # deny ender-pearl teleport into claim without access-trust
RaidTriggersRequireBuildTrust: true # prevent raid-trigger blocks (bells) from being rung
ProtectHorses: true
ProtectDonkeys: true
ProtectLlamas: true
ProtectPetsOutsideLandClaims: false # if true, pets are protected even in wilderness
# ── Claim-block economy ─────────────────────────────────────────────
InitialBlocks: 400 # starting block allowance for new players
BlocksAccruedPerHour: 100 # blocks earned per Minecraft play-hour
MaxAccruedBlocks: 80000 # cap on earned blocks (bonus blocks not counted)
AccruedIdleThresholdHours: 0 # hours of inactivity before accrual pauses (0 = disabled)
AccruedIdleAccrualPercent: 0 # percentage of normal rate to award during idle hours (0 = none)
AbandonReturnRatio: 1.0 # fraction of spent blocks returned on /claim abandon (1.0 = full refund)
# ── Per-rank starting blocks (permission-based) ─────────────────────
# Simplest way: grant the number directly as a permission, no config
# entry needed. Highest number wins and beats the entries below:
# /lp group vip permission set coreengineclaim.initialblocks.800 true
#
# Alternative: define named tiers here and assign them via the
# `coreengineclaim.rank.<key>` permission. If a player matches multiple
# entries, the HIGHEST start value wins.
InitialBlocksByGroup:
vip: 800
premium: 1200
mvp: 1600
# ── Per-rank block accrual (permission-based) ───────────────────────
# Simplest way: grant the hourly rate directly as a permission. Highest
# number wins and beats the entries below:
# /lp group vip permission set coreengineclaim.blocksperhour.150 true
#
# Alternative: define named tiers here and assign them via the
# `coreengineclaim.rank.<key>` permission. If a player matches multiple
# entries, the HIGHEST rate wins. Without any match,
# BlocksAccruedPerHour is used. The effective rate is applied to the
# player's full Minecraft playtime, including time before install.
#
# Example LuckPerms setup for named tiers:
# /lp group vip permission set coreengineclaim.rank.vip true
# /lp group premium permission set coreengineclaim.rank.premium true
AccrualPerHourByGroup:
vip: 150
premium: 200
mvp: 300
# ── Tool / interaction tuning ───────────────────────────────────────
# Minimum time (in ms) between two stick (investigation tool) clicks
# by the same player. Prevents spamming the visualiser. 0 = disabled.
StickCooldownMillis: 500
# Radius (blocks) for sneak+stick "show all nearby claims" lookup.
NearbyClaimRadius: 30
# Minimum time (in ms) between two sneak+bone subdivision overview clicks.
SubdivisionVisualizationCooldownMillis: 200
# Radius (blocks) for sneak+bone "show all nearby subdivisions" lookup.
SubdivisionNearbyRadius: 200
# ── Auto-claim on chest placement ───────────────────────────────────
AutomaticNewPlayerClaimsRadius: 4 # radius (blocks) of the auto-chest claim
AutomaticNewPlayerClaimsRadiusMinimum: 0 # minimum radius override
# ── Claim geometry ──────────────────────────────────────────────────
# NOTE: Manually created claims always span the FULL world height
# (bottom to build limit). ExtendIntoGroundDistance and MaximumDepth are
# accepted for GriefPrevention config compatibility but have no effect.
ExtendIntoGroundDistance: 5
MinimumWidth: 5 # minimum side length to prevent tiny claims
MinimumArea: 25 # minimum total area (X*Z) in blocks
# Lowest Y for AUTOMATIC chest claims (manual claims ignore this and
# always use the full world height).
# Default -2147483648 = no restriction (uses world bottom).
MinimumY: -2147483648
MinimumYOverrides: # per-world overrides: worldName: minimumY
world_nether: 127
# Accepted for compatibility: currently no effect (see note above).
MaximumDepth: 0
# Claim creation and inspection tools.
InvestigationTool: STICK
ModificationTool: GOLDEN_SHOVEL
SubdivisionVisualizationTool: BONE
# ── Claim expiration ────────────────────────────────────────────────
ChestClaimDays: 7 # auto-chest claim deleted after N idle days
UnusedClaimDays: 14 # reserved (not implemented yet): use AllClaimDays instead
AllClaimDays: 0 # all claims deleted after N idle days (0 = disabled)
MaximumNumberOfClaimsPerPlayer: 0 # 0 = unlimited
MaximumSubdivisionsPerClaim: 100 # maximum sub-divisions per top-level claim (0 = unlimited)
# ── Creative worlds ─────────────────────────────────────────────────
CreativeRulesWorlds: []
# ── Piston & portal rules ───────────────────────────────────────────
PistonMovement: CLAIMS_ONLY # EVERYWHERE / EVERYWHERE_SIMPLE / CLAIMS_ONLY / IGNORED
# Blocks portals created by mobs or machines.
PreventNonPlayerCreatedPortals: true
RavagersBreakBlocks: false # allow/deny ravagers breaking blocks in claims
WarnWhenBuildingOutsideClaims: true # educate players who build in unclaimed land
ProtectFireSpreadingIntoClaims: true # prevent wildfire from entering claimed land
# ── Visualisation ───────────────────────────────────────────────────
VisualizationAntiCheatCompatMode: false # disables particle optimisation for anti-cheat plugins
VisualizationDurationSeconds: 30 # seconds the claim border stays visible
GriefPrevention:
Database: # if Storage.Backend = sqlite, use CoreEngine pool
UseCoreEngine: true
PvP:
Enabled: true
RulesEnabledInWorld: # per-world PvP rule toggle; "*" = wildcard default
"*": false
ProtectFreshSpawns: true # invincibility for new/fresh respawns
FreshSpawnDurationSeconds: 10 # seconds of post-spawn immunity
PunishLogout: true # kill players who log out during combat
CombatTimeoutSeconds: 15 # seconds in-combat after last PvP damage
AllowCombatItemDrop: false # whether players can drop items mid-fight
BlockedCommands: [home, spawn, tpa, tpaccept, tpahere, warp, back, tp, teleport, rtp]
ProtectPlayersInLandClaims:
PvPWorld: false
NonPvPWorld: true
ProtectPlayersInAdminLandClaims: true
ProtectPlayersInSubdivisions: false
AllowLavaNearPlayers:
PvPWorld: false
NonPvPWorld: false
AllowFireNearPlayers:
PvPWorld: false
NonPvPWorld: false
AllowPearlsToPvpZones: false
LavaBucketRadius: 5
LootProtectionSeconds: 180
Pets:
EnableGivePetCommand: true
Mobs:
EndermenMoveBlocks: false # allow endermen to move blocks (affects all areas)
SilverfishBreakBlocks: false # deny silverfish from breaking stone blocks
CreaturesTrampleCrops: false # deny mobs/animals trampling crops
RabbitsEatCrops: true # allow rabbits to eat farm crops
ZombiesBreakDoors: false # deny zombies breaking wooden doors
Fire:
Spreads: false # allow fire to spread
Destroys: false # allow fire to destroy blocks
Explosions:
BlockSurfaceExplosions: true # block creeper/TNT craters above sea level
BedExplosionsAllowed: false # allow bed explosions in nether/end dimensions
RespawnAnchorExplosionsAllowed: false # allow respawn-anchor explosions in the overworld
Wilderness:
LimitSkyTrees: true # prevent sky-platform tree griefing
LimitTreeGrowth: false # deny saplings from growing in the wilderness
# Anti-grief kill switches for unclaimed land. When enabled, redstone
# power is forced to 0 and pistons will not move outside of claims.
DisableRedstone: true
DisablePistons: true # PistonMovement: IGNORED also skips this check
# SeaLevelOverride: -1 delegates to World.getSeaLevel(); >= 0 forces a fixed value.
SeaLevelOverride: -1
Sieges:
Enabled: false
MaxDurationSeconds: 1800
Worlds:
- pvp_world
Spam:
# Reserved for a future spam-detection module, currently has NO effect.
# CoreEngine already handles chat moderation (mutes, spam protection).
# Soft-mute (/softmute) and ignore (/ignoreplayer) filtering is always
# active regardless of this setting.
Enabled: false
Economy:
ClaimBlocksPurchaseCost: 0.0 # 0 = buying disabled
ClaimBlocksSellValue: 0.0 # 0 = selling disabled
TeamPlotPurchaseCost: 100000.0 # paid from team treasury by /claim team buy; rent plots charge this per period
TeamClaimBlocksCostPerBlock: 10.0 # price per TEAM claim block (/claim team blocks buy); 0 = buying disabled
TeamPlots:
RentPeriodDays: 30 # real-time days between rent payments for rented plots
RentGraceDays: 7 # grace period after a failed payment before the plot is released
Advanced:
ClaimsPerPlayerWarningCount: 0 # warn admins when a player owns more than N claims (0 = off)
fixNegativeClaimblockAmounts: true # auto-correct negative block balances on load
ClaimExpirationCheckRate: 60 # minutes between expiration sweeps (PHASE 14)
OfflinePlayer_cache_days: 90 # how long to cache offline player profiles
Logging:
AuditLog: true # write all claim actions to the audit log
LogToFile: claim-audit.log # log file name inside the plugin data folder
RotateDaily: true # rotate the audit log file each day
MaxFileSizeMb: 10 # rotate to a new file when the daily log exceeds this size (0 = no cap)
# CoreEngineClaim is inspired by GriefPrevention's land-claim workflow.