All Mods Resource Packs Data Packs Shaders Modpacks Plugins
LandClaimPlugin

LandClaimPlugin

by AyoSynk • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

landclaimlogo

💠 LandClaimPlugin

Advanced Territory Protection for Minecraft

A powerful, feature-rich chunk-based land protection plugin for Paper servers. Create claim profiles, protect your builds, manage members with granular roles, form alliances, set warps, and customize every aspect of your territory.

Paper Java Modrinth Version License

⚠️ DEVELOPMENT BUILDS

Development builds are automatically generated from the latest commits and may include unfinished features, breaking changes, or experimental code. These builds are not recommended for production use.

If you choose to run a dev build:

  • Expect bugs, crashes, or incomplete functionality.
  • Configs and data formats may change without notice.
  • No guarantee of backward compatibility.

Use them only for testing, early access, or contributing feedback. 📦 Download latest dev builds: GitHub Releases


✨ Features

Core Claiming

  • Claim Profiles — Manage your land using claim profiles. Depending on server configuration, players can own a single profile or utilize the Multi-Profile System to manage multiple independent bases and quickly switch between them via an interactive GUI.
  • Chunk-Based Claims — 16×16 block protection zones, simple and intuitive.
  • Auto-Claim — Automatically claim chunks as you walk.
  • Connected Claims — Optionally require claims to be adjacent (with diagonal support).
  • Held Territory Map (Minimap) — Live 128×128 pixel radar map in hand/off-hand or Item Frames showing chunk boundaries, claim colors, and real-time player orientation.
  • Interactive Selectors — Programmatically select online players via their heads for Trust, Member, and Ally management.
  • Unstuck Command — A safe /claim unstuck feature that teleports trapped players to the nearest safe wilderness block.

Permission System

  • 4-Tier Priority Chain — Owner > Role > Trusted > Visitor — the first matching tier decides
  • Custom Roles — Create and configure custom roles (e.g., Member, CoOwner) with granular flag-based permissions
  • Trusted Players — Grant individual players specific permission overrides
  • Visitor Settings — Configure what non-members can do in your claims
  • 25+ Permission Flags — Doors, trapdoors, containers, workstations, animals, vehicles, redstone, and more

Social Systems

  • Member System — Invite players to join your claim, assign them roles, and manage access
  • Ally System — Form mutual alliances between claims with configurable inter-claim permissions
  • Trust System — Grant individual players per-player permission overrides
  • Ban System — Hard-deny a player from entering or interacting with your claim. Banned players are physically pushed back at chunk boundaries and (if online at the moment of the ban) teleported outside. Survives server restarts.
  • Warp System — Set named warps within your claims with custom icons and per-player limits
  • Public Warps — Publish any of your warps to the server-wide public list. Other players can browse and teleport via /claim publicwarps.

Protection

  • Block Protection — Prevent unauthorized breaking and placing
  • Entity Protection — Protect animals, armor stands, and item frames
  • Explosion Protection — Block TNT, creeper, and other explosion damage
  • Interaction Protection — Control door, container, and workstation access
  • Item Protection — Prevent unauthorized pickup and drop
  • Piston Protection — Block pistons from pushing/pulling across claim borders
  • PvP Protection — Disable PvP inside claims
  • Combat Tag PvP Bypass — Actively combat-tagged players temporarily lose claim protection against attacks, preventing safe-zone abuse during fights
  • Inactive Claim Auto-Decay — Automatically clean up claims from players inactive for a configurable period, with exemption options for VIPs and staff
  • Vehicle Protection — Prevent unauthorized vehicle use and destruction
  • Command Blocking — Block specific commands inside other players' claims
  • Wilderness Protection — Opt-in wildernessProtection.enabled flag flips the default: players can only build/break inside claims, never in unclaimed chunks. Designed for clan/town-style servers.

Customization

  • Owner Alias — Set a custom display name to replace your Minecraft username in UI elements, map hooks, and titles
  • Claim Colors — Pick a custom hex color for your claim used on maps and borders
  • Visualization Modes — Toggle between Display Entity or Particle-based boundary rendering
  • Entry/Exit Titles — Custom MiniMessage-formatted titles shown when players enter or leave your claim
  • Rename Claims — Change your claim's display name at any time
  • Full Message Customization — All plugin messages are configurable via Okaeri Configs

🔌 Supported Integrations

LandClaimPlugin seamlessly hooks into various popular server plugins to provide an interconnected experience out-of-the-box.

🗺️ Web Map Plugins

Visualize claims directly on your server's web map! Claims are drawn as colored polygons matching the claim's chosen color, complete with owner and size information.

  • BlueMap
  • Dynmap
  • Squaremap
  • Pl3xMap

⚔️ Combat Tagger Plugins

Prevent combat exploitation and command abuse while in active combat. Automatically detects combat tagging:

  • DeluxeCombat
  • CombatLogX
  • PvPManager
  • EternalCombat
  • Claim Protection Bypass: Actively combat-tagged players cannot flee into claims to hide from PvP fights — claim PvP protection temporarily drops for them until their tag expires (combatTag.combatTagBypass: true).
  • Command Blocking: Prevents tagged players from teleporting or abandoning claims during combat.

🛡️ WorldGuard

Respect WorldGuard regions when players attempt to claim land.

  • Volumetric Intersection Check: 100% accurate 3D boundary checking to prevent players from claiming over your spawn or protected areas.
  • Gap Enforcement: Configurable required distance between claims and WorldGuard regions.
  • Custom Flag Support: Apply the custom allow-land-claims WorldGuard state flag to regions (e.g., Wilderness/Warzone) to explicitly allow players to claim land inside them, overriding the gap and intersection protections!

🎮 Bedrock / Geyser Support

Bedrock players get a tailored UI when Geyser 2.x is installed. No hard Geyser dependency — the plugin uses reflection to detect the form API and falls back to the Java-only chat prompts if Geyser is missing.

  • CustomForm text input for anvil-based prompts (rename, color, role name)
  • ModalForm confirmation for destructive actions (abandon, unclaim all, ban)
  • Visualization automatically switches to particle mode for Bedrock clients

Technical

  • Cloud Command Framework — Async command execution with dedicated thread pools
  • Modular Architecture — Separate command groups, listeners, and managers
  • Eager Class Preloading — Eliminates first-execution lag spikes for GUI classes

🧩 Addons

The plugin's public API (LandClaimAPI) and event bus (ClaimCreateEvent, ClaimDeleteEvent, PlayerEnterClaimEvent, PlayerLeaveClaimEvent) let you build standalone addons in a sibling Maven project. Soft-depend on LandClaimPlugin so the addon only loads when the parent is present.

Official Addons

Addon Description Repository
LandClaimPlugin-Economy Charge for claiming, warps, and member invites; per-chunk daily tax with auto-unclaim; server-wide claim marketplace + time-limited auctions with a GUI browser. Vault-based. synkfr/LandClaimPlugin-Eco-Addon

Building Your Own

The API exposes:

  • getClaimAt(...), getClaimsByOwner(UUID), getClaimByName(String), getClaimById(UUID)
  • getAllClaimProfiles() — every loaded claim, for global iteration (tax, leaderboards, etc.)
  • transferClaim(Player actor, UUID profileId, UUID newOwnerId) and unclaimAll(Player actor, UUID profileId) — programmatic ownership / claim management (the actor is either the new owner or has landclaim.admin)
  • addBonusBlocks(UUID, int) and getBonusBlocks(UUID) — for paid-claim-block plugins
  • isInCombat(Player) — hook for combat-taggers
  • The full claim profile model — getOwnedChunks(), getRoles(), getTrustedPlayerFlags(), etc.

For addons that want to act on claim lifecycle, listen for org.ayosynk.landClaimPlugin.api.event.* events.


📥 Installation

  1. Download the latest release and drop LandClaimPlugin.jar into your plugins/ folder.
  2. Restart your server.
  3. Configure plugins/LandClaimPlugin/config.yml to your liking.

Requirements: Paper 26.2+ | Java 25+


💬 Commands

All commands use /claim (alias: /c) as the base.

General Commands

Command Description
/claim Claim the chunk you're standing in
/claim radius <1-5> Claim a square area of chunks centered on your current chunk (e.g. 1 = 3×3, 2 = 5×5)
/claim profiles Open the active profile selector (if Multi-Profile is enabled)
/claim create <name> Create a new claim profile with the given name
/claim auto Toggle auto-claim mode (claim chunks as you walk)
/claim map Receive the live held Territory Map item (alias: /claim minimap)
/claim menu Open the main claim management GUI
/claim info View info about the claim at your location
/claim visible Toggle claim boundary visualization
/claim toggle <mode> Switch visualization mode (display_entities, particles, off)
/claim visualization <mode> Alias for /claim toggle
/claim notify Toggle claim enter and leave chat notifications (alias: /claim chatnotify)
/claim rename <name> Rename your active claim profile (3-32 alphanumeric characters)
/claim color <color> Change claim color using a named color or hex code (e.g., red, #FF5500)
/claim unstuck Safely teleport to the nearest wilderness block if trapped
/claim abandon Delete your entire active claim profile and all its chunks
/claim pvp <on/off> [time] Toggle PvP globally in the claim, with an optional time duration in seconds
/unclaim Unclaim the chunk you're standing in
/unclaim auto Toggle auto-unclaim mode (unclaim your owned chunks as you walk)
/unclaim radius <1-5> Unclaim all your owned chunks in a square radius (e.g. 1 = 3×3, 2 = 5×5)
/unclaim all Unclaim all chunks belonging to your active profile (prompts for confirmation)
/unclaim all confirm Confirm unclaiming all chunks

Menu Shortcuts

Jump directly to specific GUI panels without navigating through the main menu.

Command Description
/claim menu settings Open claim settings (color, PvP, visibility, etc.)
/claim menu members Open member management
/claim menu roles Open role management
/claim menu trusted Open trusted player management
/claim menu visitors Open visitor settings
/claim menu allies Open ally management
/claim menu map Receive the held Territory Map
/claim menu warps Open warp management

Management Commands

Members
Command Description
/claim member invite <player> Invite a player to join your claim
/claim member kick <player> Remove a member from your claim
/claim member list List all members and their roles
/claim accept <name> Accept a pending member invitation
/claim deny <name> Deny a pending member invitation
Trust
Command Description
/claim trust invite <player> Send a trust invitation to a player
/claim trust accept Accept a pending trust invitation
/claim trust deny Deny a pending trust invitation
/claim trust remove <player> Remove a trusted player
/claim trust list List all trusted players and their flags
Allies
Command Description
/claim ally invite <name> Send an alliance request to another claim
/claim ally accept <name> Accept an alliance request
/claim ally deny <name> Deny an alliance request
/claim ally remove <name> Remove an existing alliance
Warps & Admin
Command Description
/claim setwarp <name> [public|private] Set a warp at your current location with optional visibility
/claim delwarp <name> Delete a warp
/claim warp <name> [warpName] Teleport to your warp, or a public warp (/claim warp <name> or /claim warp <owner>:<name>)
/claim publicwarps Open the server-wide public warps browser GUI
/claim warps Open the active claim's warp management GUI
/claim admin check View detailed claim info (owner UUID, profile name)
/claim admin unclaim Force-unclaim the chunk you're standing in
/claim admin edit <player> Open any player's claim management GUI (supports @p, @s, @r)
/claim admin add chunk <player> <amount> Add bonus claim chunks to a player's limit (Console & Player). Supports selectors (@p, @s, @r, @a), reverse ordering (<amount> <player>), and self-granting (<amount>).
/claim admin setalias <claim> <alias> Set or reset an owner's custom alias (Console & Player)
/claim admin trust list <owner> List players trusted by this owner (Console & Player, supports selectors)
/claim admin trust who <player> List claims where this player is trusted (Console & Player, supports selectors)
/claim admin decay run Trigger a manual scan to decay inactive claims (Console & Player)
/claim admin decay exempt <player> [true\|false] Toggle or set a player's exemption from claim decay (Console & Player, supports selectors)
/claim admin decay list List all players manually exempt from claim decay (Console & Player)
/claim admin reload Reload configuration and messages (Console & Player)
/claim reload Shortcut to reload configuration and messages (Console & Player)

🔐 Permissions

Permission Description Default
landclaim.* All LandClaim permissions false
landclaim.claim Basic claiming ability ✅ true
landclaim.minimap Access to the held Territory Map ✅ true
landclaim.auto Use auto-claim mode ✅ true
landclaim.admin Admin commands & bypass all protection op
landclaim.decay.exempt Exempts player from automatic claim decay op
landclaim.update.notify Receive update notifications on join op
landclaim.limit.<n> Override the chunk claim limit (e.g., landclaim.limit.50) false
landclaim.list List claims ✅ true
landclaim.warps.limit.<n> Override the warps limit (e.g., landclaim.warps.limit.10) false
landclaim.createrole.<n> Override the max number of custom roles false

🛒 Shop & NPC Integration (DeluxeMenus & Citizens 2)

LandClaimPlugin integrates seamlessly with DeluxeMenus and Citizens 2 to allow players to purchase extra claim chunks with items (e.g. Gold Blocks) or economy currency.

1. DeluxeMenus GUI Shop

In your DeluxeMenus configuration (e.g. plugins/DeluxeMenus/gui_menus/claimshop.yml):

menu_title: '&8Buy Land Claim Chunks'
open_command: claimshop
size: 27
items:
  buy_chunk:
    material: GOLD_BLOCK
    slot: 13
    display_name: '&e&lBuy 1 Extra Chunk'
    lore:
      - '&7Cost: &630x Gold Block'
      - '&7Your Chunks: &a%landclaim_chunks% &7/ &b%landclaim_limit%'
      - ''
      - '&a&lCLICK &fto purchase 1 claim chunk!'
    left_click_commands:
      - '[console] clear %player_name% gold_block 30'
      - '[console] claim admin add chunk %player_name% 1'
      - '[message] &aSuccessfully traded 30 Gold Blocks for 1 extra claim chunk!'
      - '[sound] ENTITY_PLAYER_LEVELUP 1 1'
      - '[refresh]'
    left_click_requirement:
      requirements:
        has_gold_blocks:
          type: has item
          material: GOLD_BLOCK
          amount: 30
      deny_commands:
        - '[message] &cYou need 30 Gold Blocks in your inventory to buy this!'
        - '[sound] BLOCK_ANVIL_LAND 1 1'

2. Citizens 2 NPC Setup

  • Option A: Link NPC to DeluxeMenus (Recommended)

    /npc create "Territory Surveyor" --type player
    /npc select
    /npc command add -p "claimshop"

    (Right-clicking the NPC opens the /claimshop GUI for the player!)

  • Option B: Direct Console Command

    /npc select
    /npc command add -c "claim admin add chunk <p> 1"

    (Both Citizens placeholder <p> and Minecraft entity selector @p are supported!)

For complete setup guides and Vault economy examples, see our Integrations Documentation.


📋 Disclosures & Transparency

In compliance with platform guidelines and Modrinth disclosure policies:

🤖 AI Assistance Disclosure

This project uses AI assistance (LLMs) for code drafting, refactoring, optimization, and documentation under the direct design, review, and testing of the maintainers. All game logic, security gates, and database transactions are human-architected and audited.

🌐 External Network Calls & Telemetry

LandClaimPlugin communicates with the following external endpoints:

  • Modrinth API (https://api.modrinth.com): Queries the public Modrinth v2 API on startup to check for new versions. Sends only the standard User-Agent header (LandClaimPlugin/{version}). No player or server-identifying data is shared. Opt-out: set updateChecker.enabled: false in config.yml.
  • bStats Analytics (https://bstats.org): Collects anonymous usage metrics (Java version, server software, online player count) via bStats. No personally identifiable information is collected. Opt-out: set enabled: false in plugins/bStats/config.yml.
  • Redis & Remote MySQL (Optional): Connects only to user-configured endpoints for cross-server pub/sub synchronization or centralized database storage.

🔗 Quick Links

GitHub Issues bStats

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3 26.2 26.1.x +1
Folia Paper Purpur
5h ago 1
26.3 26.2 26.1.x +1
Folia Paper Purpur
5h ago 1
26.3 26.2 26.1.x +1
Folia Paper Purpur
5h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.2 26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.1.x 1.21.x
Folia Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
26.1.x 1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur Spigot
5h ago 1
1.21.x
Paper Purpur Spigot
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Purpur
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
1.21.x
Paper Spigot
5h ago 1
## [3.4.0] - 2026-10-06

### Added
  • Configurable Claim Block Purchase Caps:**
  • Added maxBonusClaimBlocks in config.yml (hard cap on bonus/bought chunks a player can hold; 0 = unlimited).
  • Added maxTotalClaimLimit in config.yml (hard cap on total claim allowance including base limit and bonus blocks; 0 = unlimited).
  • Admin Chunk Allowance Management Commands:**
  • Added /claim admin set chunk <player> <amount>: Directly set a player's bonus chunk allowance. Supports 0 or positive values, Minecraft selectors (@p, @s, @r, @a), reverse argument ordering, and self-granting.
  • Added /claim admin remove chunk <player> <amount>: Deduct bonus chunks from a player's allowance, clamped to 0 so players cannot have negative bonus chunks.
  • Added /claim admin reset chunk [player]: Reset bonus chunk allowance back to 0 (defaults to self for in-game players).
  • Developer API (LandClaimAPI):**
  • Added setBonusBlocks(UUID playerId, int amount) to LandClaimAPI interface and plugin delegate, allowing addons to directly set bonus allowances.

### Fixed
  • Economy Purchase Limits Enforcement:**
  • Fixed /claim buy claim, /claim buy role, /claim buy member, and /claim buy warp executing even when limitPurchases.enabled was set to false in LandClaimPlugin-Economy.
  • Added bounds checking in /claim buy claim enforcing maxBonusClaimBlocks and maxTotalClaimLimit before charging player funds.
## [3.3.0] - 2026-10-01

### Added
  • Combat Tag PvP Claim Protection Bypass:**
  • Actively combat-tagged players temporarily lose claim PvP protection while their combat tag is active (combatTag.combatTagBypass: true), preventing them from initiating a fight in the wilderness and running into a claim to hide.
  • Integrated with **DeluxeCombat**, **CombatLogX**, **PvPManager**, and **EternalCombat**.
  • Added robust combat hooks with reflection and Bukkit/Paper API fallbacks.
  • Inactive Claim Auto-Decay & Exemption System:**
  • Added configurable automatic cleanup of inactive claims (decay.enabled, decay.inactiveDays, decay.checkIntervalHours, decay.onlyCheckOwner).
  • Claims belonging to players who have been offline longer than inactiveDays (default: 14 days) are automatically unclaimed and their profiles cleaned up.
  • Staff and VIP exemption support via permission landclaim.decay.exempt and per-player exemption commands.
  • Added /claim admin decay run (trigger manual decay sweep).
  • Added /claim admin decay exempt <player> [true|false] (toggle or set player exemption).
  • Added /claim admin decay list (view all manually exempt players).
  • Added INACTIVITY_DECAY reason to ClaimDeleteEvent.
  • Added decay_exempt database column and automatic migration in SQLPlayerDao.

### Fixed
  • Minecraft Entity Selector Resolution (@s, @p, @a, @r):**
  • Resolved IllegalStateException on Paper servers by scheduling entity selector resolution (Bukkit.selectEntities) on the primary server thread.
  • Extracted execution location and executor entity from Brigadier's CommandSourceStack, correctly resolving @s and @p when commands are executed via /execute at @p ... or /execute as @p ....

## [3.2.2] - 2026-09-25

### Added
  • Minecraft Entity Selector Support (@p, @s, @r, @a):**
  • Added native entity selector support for /claim admin add chunk, /claim admin edit <player>, /claim admin trust list <player>, and /claim admin trust who <player>.
  • Added selector resolution directly on the main thread (Folia and Paper safe) using Bukkit.selectEntities().
  • Added selector suggestions (@p, @s, @r, @a) in tab completion.
  • Flexible Argument Parsing for /claim admin add chunk:**
  • Automatically handles both <player> <amount> and <amount> <player> orders seamlessly.
  • Supports single-argument self-grant /claim admin add chunk <amount> when executed by in-game players.
  • Defaults bonus chunk amount to 1 if omitted (/claim admin add chunk <player>).
  • Comprehensive DeluxeMenus & Citizens 2 Documentation:**
  • Added complete setup guide with copy-paste configurations and in-game commands for DeluxeMenus chunk shops and Citizens 2 NPC shopkeepers in both docs and README.
## [3.2.1] - 2026-09-15

### Fixed
  • Admin Command Console Execution & Argument Order:**
  • Fixed /claim admin add chunk <player> <amount> failing to execute from server console (such as DeluxeMenus, donation stores, and server console scripts).
  • Aligned /claim admin add chunk argument syntax to the documented order <player> <amount> instead of the previous reversed order.
  • Enabled console execution for /claim admin reload and the root shortcut /claim reload.
  • Replaced strict PlayerSource restriction on the /claim root builder with Source, allowing non-player senders for applicable administrative subcommands while preserving player-only restrictions on gameplay and GUI commands.
  • Resolved potential ClassCastException by properly handling CommandSender instead of forcing Player casting in admin handler callbacks.

## [3.2.0] - 2026-09-04

### Added
  • Claim Boundary Chat Notifications:**
  • Added configurable chat notifications upon entering and leaving claim territory (claimChatNotifications.enabled).
  • Added personal player toggle command /claim notify (alias /claim chatnotify) to opt in/out of chat notifications.
  • Added landclaim.notify permission node for command access.
  • Formatted messages configurable in messages.yml with territory name placeholders (%claim%).
  • Server-Wide Visitor Settings Locking:**
  • Added server-wide lock setting visitorSettings.locked in config.yml.
  • Added configurable server default flags via visitorSettings.defaultFlags (e.g. allowing exploration while restricting block breaking/placing).
  • Enforced server default flags during permission resolution when locked, completely bypassing individual profile overrides.
  • Blocked access to VisitorSettingsGUI when locked to prevent player confusion.
## [3.2.0] - 2026-09-04

### Added
  • Claim Boundary Chat Notifications:**
  • Added configurable chat notifications upon entering and leaving claim territory (claimChatNotifications.enabled).
  • Added personal player toggle command /claim notify (alias /claim chatnotify) to opt in/out of chat notifications.
  • Added landclaim.notify permission node for command access.
  • Formatted messages configurable in messages.yml with territory name placeholders (%claim%).
  • Server-Wide Visitor Settings Locking:**
  • Added server-wide lock setting visitorSettings.locked in config.yml.
  • Added configurable server default flags via visitorSettings.defaultFlags (e.g. allowing exploration while restricting block breaking/placing).
  • Enforced server default flags during permission resolution when locked, completely bypassing individual profile overrides.
  • Blocked access to VisitorSettingsGUI when locked to prevent player confusion.
## [3.1.0] - 2026-09-03

### Added
  • Public Warp Collision Disambiguation Menu:**
  • Added interactive WarpDisambiguationGUI dialog when multiple players have a public warp sharing the same name.
  • Enabled /claim warp <name> for all players to discover and teleport to public warps.
  • Added direct owner targeting syntax: /claim warp <owner>:<name> and /claim warp <owner> <name>.
  • Public API Events & Overloads:**
  • Added WarpPrivacyChangeEvent (Cancellable) fired whenever a warp is toggled between public and private.
  • Added ClaimTransferEvent fired when claim ownership is transferred.
  • Added WarpCreateEvent and WarpDeleteEvent fired on warp creation and deletion.
  • Added ClaimMemberAddEvent and ClaimTrustAddEvent (Cancellable) fired when member and trust invites are accepted.
  • Added LandClaimAPI.transferClaim(UUID, UUID) and LandClaimAPI.unclaimAll(UUID) overloads.

### Fixed
  • Fixed bug where public warps could not be reverted to private via /claim setwarp <name> private.
  • Fixed multi-profile UUID key desync between ClaimCommand, WarpControlPanelGUI, and ClaimManager.loadProfiles().
  • Fixed /claim setwarp location check incorrectly rejecting secondary profiles owned by the player.
  • Fixed NullPointerException on PublicWarpsGUI Back button when the player owns no claim profiles.
  • Patched combat escape exploit in PublicWarpsGUI by enforcing CombatManager.isInCombat() checks before teleportation.
## [3.0.0] - 2026-08-30

### Added
  • Radius Claiming & Unclaiming:**
  • Added /claim radius <1-5> and /unclaim radius <1-5> for bulk area territory expansion and contraction.
  • Automatically respects permission gates, claim limits, world blacklists, WorldGuard boundaries, and adjacency rules.
  • Instant Particle Feedback & Quota Progress:**
  • Dynamic temporary boundary visualization flash upon claiming or unclaiming chunks.
  • Pling/Bass audio feedback for interactive confirmation.
  • Chat quota indicator displaying <chunks>/<limit> claimed.
  • Auto-Unclaim Command:**
  • Registered /unclaim auto allowing players to unclaim chunks as they move.
  • In-Game Held Territory Map (Minimap):**
  • Live 128×128 pixel radar map rendering directly onto a vanilla FILLED_MAP item using Bukkit's MapView & MapRenderer canvas.
  • Accurate player-centered projection tracking smooth sub-chunk movement across 16×16 blocks.
  • Renders chunk polygons, boundary grid lines, custom profile claim colors (#RRGGBB), allies (#9b59b6), members/trusted (#3498db), foreign claims (#e74c3c), and wilderness (#282c34).
  • Real-time rotating player cursor (MapCursor.Type.PLAYER) and dynamic territory name banner.
  • Interactive right-click zoom toggle between **Overview mode (16×16 chunks)** and **Close Detail mode (8×8 chunks)** with audio feedback.
  • Full **Bedrock / Geyser** support (rendered seamlessly in hand, off-hand, and wall Item Frames).
  • New commands: /claim minimap, /claim map, /claim menu map.
  • New permission: landclaim.minimap (default: true).
  • Configurable via minimap section in config.yml.
  • Modrinth Update Checker:**
  • Automated asynchronous update checker querying the Modrinth v2 API on startup (PAlDTriF).
  • Interactive MiniMessage join notification with clickable links for server operators/admins with landclaim.update.notify permission.
  • Configurable via updateChecker section in config.yml.
  • Action Bar Display Toggle:**
  • Added actionbarEnabled option (default: true) to enable/disable claim status and wilderness action bar messages.
  • Java 25 & Paper 26.2+ Compatibility:**
  • Upgraded bytecode target to Java 25 (release 25, class file version 69.0) aligned with Paper API 26.2.build.120-stable.
  • Upgraded maven-shade-plugin to 3.6.0 with ASM 9.8 for Java 25 bytecode relocation.

### Changed & Improved
  • Unclaim Command Consolidation:**
  • Unified all unclaiming commands exclusively under /unclaim (/unclaim, /unclaim radius <1-5>, /unclaim auto, /unclaim all [confirm]).
  • Removed duplicate unclaim subcommands from /claim.
  • SQL Error Handling & Transaction Integrity:**
  • Fixed CompletableFuture exception propagation in SQLProfileDao and SQLWarpDao to prevent cache desyncs on rolled-back transactions.
  • Removed redundant queries in SQLProfileDao.getProfile.
  • Added safe Material.getMaterial(...) fallback in SQLWarpDao to prevent server startup crashes on missing/renamed materials.
  • Role Cleanup on Ownership Transfer:**
  • Automatically cleans up member and trusted roles for the new owner upon claim transfer.

### Removed
  • Legacy V1 Code Purge:**
  • Removed dead legacy Claim.java and ChunkSelection.java models.
  • Removed unused ClaimDao, SQLClaimDao, RoleDao, and SQLRoleDao.
  • Removed legacy claimCache from CacheManager and INVALIDATE_CLAIM from RedisManager.
  • Removed outdated inventory-based GUI map (ClaimMapGUI, ClaimMapInfoGUI) in favor of the high-resolution held Territory Map.
1. GeyserMC Support
2. Wilderness protection
3. Claim bans
4. /claim reload for config
5. Public warp
6. SqaureMap porper support
7. small bug fixes
Folia Support (not fully tested)
if you face any issues feel free tell me in discord or github
Version 2.3.0 focuses on permission enforcement, improved GUI invitation flows, dynamic claim handling, custom claim color support, banned claim name filtering, smarter tab completion, and major config/documentation cleanup.
This update adds 13 new CLI commands for claims management, a new /claim toggle visualization mode command with tab completion, and multiple fixes for multi-profile claim handling and config loading. Documentation has also been refreshed with a new informations and updated API/dev docs.
New admin profiles, commands, bypass & GUI support
Public plugin API + PlaceholderAPI integration
Security, reliability, and performance improvements
Config/docs cleanup and new admin flags
1. Added MultiProfile mode check the docs for the details
2. unstuck command to escape from a claim if trapped
3. block commnads like sethome, etc
4. Deployed a Docs page check it out
fix: uncapped claim limit permission check
1. Reworked Trust System (Check Out README for more detail).
2. You can now ally with players using their username instead of claim name, including offline players via GUI text input, and invites/accept/deny/remove all auto-resolve to the correct claim profile.
3. Added owner alias (Check out README for more detail).
4. Added add max-memberships configuration option.
5. Added CLAIM_LAND premission to RoleEdit pression menu.
6. Added PvP command for turning on/off globally with a timer arg.
7. Made Renaming and other stuff uses AnvilGUI instead of Chat Input for better understanding.
8. Fix where it was showing 2 member role and other minor bugs.
9. Improve WorldGaurd Hook (Check Out README for more detail).
10. Added Few more admin commnads (Check Out README for more detail).
1. Added Support for newer verison
2. Added new admin commands
3. lots of Bug fixes

check out the the github for more detailed update info.
Improve claim protection reliability by increasing EventPriority to HIGHEST in all protection listeners. Fixes conflicts with permissive WorldGuard configurations.
  • fix**: prevent visitors from rotating items in item frames (v2.0.3)
  • fix**: prevent land claims from disappearing due to cache eviction and aggressive auto-unclaim
  • Disabled 30-minute inactivity expiration for profile and player caches in CacheManager.
  • Fixed auto-unclaim logic in EventListener to only trigger when requireConnectedClaims is enabled.

1. **Improved interaction protection system**

2. **Better detection for doors, trapdoors, containers, and redstone**

3. **Improved compatibility with newer Minecraft blocks**

4. **General stability improvements**
# V2 UPDATE

  • Plugin Refactor Read description**

  • v1 will automatically migrate to v2 only the claims**
### ✨ New Features
  • Map Integration**: Added support for BlueMap (Flat ShapeMarkers) and Dynmap (Area markers) to display claims on web maps automatically. Contiguous claims are now aggressively merged into a single, clean border polygon instead of showing internal chunks!
  • Language Support:** added support for Cyrillic
[1.9] LandClaimPlugin 1.9 by AyoSynk on Oct 13, 2026
Download
## Version 1.8

### ✨ New Features
  • Map Integration**: Added support for BlueMap (3D ExtrudeMarkers) and Dynmap (Area markers) to display claims on web maps automatically.
  • Multiple Homes**: Added /claim sethome <name>, /claim home <name>, /claim homes, and /claim delhome for players to set multiple homes strictly within their own claims.
  • Claim List**: Added /claim list command showing coordinates of all your owned chunks, grouped by world.
  • LuckPerms Support**: Fully integrated LuckPerms nodes (landclaim.list, landclaim.sethome, etc.) including dynamic home limits per rank (landclaim.homes.limit.<n>).

### 🛡️ Protections & Anti-Griefing
  • Respawn Anchors**: Blocked exploding respawn anchors inside or near claimed lands.
  • Piston Griefing**: Prevented players from pushing or pulling blocks across claim borders they do not own using pistons or slime blocks.
  • Minecart Griefing**: Prevented Hopper Minecarts from being pushed from the wilderness into a claimed chunk.
  • Hex Colors**: Full support for Bungee hex color formats (&#RRGGBB) in config, action bars, and chat messages.

### 🐛 Bug Fixes
  • Double Prefix Format**: Removed duplicate [LandClaim] prefixes from the /claim help menu.
  • Fixed actionbar messages not updating**: Actionbar messages were reading from wrong config file; now properly reads from messages.yml
  • Added missing actionbar-owner key**: Added missing message key for viewing other players' claims
  • Wilderness actionbar persistence**: Wilderness message now stays visible instead of flickering when moving between unclaimed chunks

[1.8] LandClaimPlugin 1.8 by AyoSynk on Oct 13, 2026
Download
### 🐛 Bug Fixes
  • Fixed actionbar messages not updating**: Actionbar messages were reading from wrong config file; now properly reads from messages.yml
  • Added missing actionbar-owner key**: Added missing message key for viewing other players' claims
  • Wilderness actionbar persistence**: Wilderness message now stays visible instead of flickering when moving between unclaimed chunks

### 🔧 Optimizations
  • Batch Particle Spawning**: Visualization particles are now collected and spawned in batches, reducing object creation overhead
  • Visualization Cache Limit**: Added max size limit (100 entries) to mergedEdgesCache to prevent unbounded memory growth
  • Configurable Action Bar Interval**: Action bar update interval is now configurable via actionbar-update-interval (default: 20 ticks)
  • Reduced Vector Object Creation**: Particle edge calculation now uses primitive math instead of Vector objects
  • ChunkPosition Flyweight Cache**: Added object pooling for ChunkPosition instances to reduce GC pressure in hot paths
  • Async Debounced Saves**: New SaveManager handles file I/O asynchronously with debouncing - data is marked dirty and saved in batches every 60 seconds
  • Optimized Wilderness Detection**: Actionbar only recalculates when claim status changes, not on every chunk transition

### 🎨 Styling
  • Minimal Message Style**: All messages updated to minimal/formal style
  • New Color Scheme**: Messages now use &7 (gray) and &#31A2DD (blue accent) colors
  • Removed Emojis**: All emoji characters removed from messages for cleaner look
  • Updated Prefix**: Plugin prefix updated to match new color scheme

### 📋 Technical Changes
  • Added getActionBarMessage() method to ConfigManager for actionbar-specific messages
  • Added getActionBarUpdateInterval() method to ConfigManager
  • Added actionbar-update-interval config option
  • Added SaveManager class for async debounced file operations
  • Added ChunkPosition.of() static factory method with flyweight caching
  • Added lastClaimStatusMap to EventListener for optimized wilderness tracking
  • Removed unused Vector import from VisualizationManager
  • Removed unused EntityDamageEvent import from EventListener
[1.7] LandClaimPlugin 1.7 by AyoSynk on Oct 13, 2026
Download
## Version 1.7

### 🐛 Bug Fixes
  • Fixed null pointer exception**: Added null safety checks in GUIListener title parsing
  • Fixed offline player lookup performance**: Replaced slow iteration with Bukkit's cached lookup

### ✨ New Features
  • Player Data Persistence**: Auto-claim/unclaim states and visualization modes now persist across server restarts
  • WorldGuard Integration**: Full WorldGuard API integration - claims now properly respect WorldGuard region gaps
  • New playerdata.yml**: Stores player-specific settings (auto-claim, visualization modes)

### 🔧 Optimizations
  • Cached player lookups**: GUIListener and TrustManager now use efficient cached lookups instead of iterating all offline players

### 📋 Technical Changes
  • Config version bumped to 6
  • Plugin version bumped to 1.7
  • Improved README.md with clean, minimal documentation
  • Added WorldGuard dependency (optional, soft-depend)
  • Added loadPlayerData() and saveAllPlayerData() methods to CommandHandler and VisualizationManager

[1.6] LandClaimPlugin 1.6 by AyoSynk on Oct 13, 2026
Download
## Version 1.6

### 🐛 Bug Fixes
  • Fixed memory leak**: Player data maps now cleaned up on player quit (EventListener, CommandHandler, VisualizationManager)
  • Fixed chat exploit vulnerability**: Removed vulnerable onPlayerChat handler that could be exploited
  • Fixed typos in messages.yml**: "Memeber" → "Member", "Premissions" → "Permissions"
  • Fixed hardcoded messages**: CommandHandler now uses config for all messages
  • Fixed soft-depend syntax**: Changed soft-depend: WorldGuard\ to soft-depend: [WorldGuard] in plugin.yml
  • Added CONTAINER permission**: Separate permission check for chests, furnaces, barrels, etc.

### 🔧 Optimizations
  • Thread Safety**: Replaced HashMap with ConcurrentHashMap in ClaimManager, TrustManager, and VisualizationManager
  • Memory Management**: Added comprehensive player data cleanup on quit via PlayerJoinListener
  • Separated Block Types**: Container blocks and interactable blocks now have separate permission checks

### ✨ New Features
  • Command Aliases**: Added /c as alias for /claim and /uc as alias for /unclaim
  • Improved Tab Completion**: Now suggests online players for trust/untrust/member commands
  • CONTAINER Permission**: New permission type for accessing chests, furnaces, hoppers, etc.

### 🎨 GUI Improvements
  • TrustListGUI Overhaul**:
  • 54-slot inventory with glass pane borders
  • Online/offline status indicator (green/red) for trusted players
  • Info item showing total trusted count
  • Better organized layout with player heads in center area

  • TrustMenuGUI Overhaul**:
  • 27-slot inventory with glass pane borders
  • Player head with online status at top
  • Permission-specific icons (Bricks for BUILD, Lever for INTERACT, Chest for CONTAINER, Ender Pearl for TELEPORT)
  • Permission descriptions in lore
  • Clear enabled/disabled status indicators

  • VisitorMenuGUI Overhaul**:
  • 27-slot inventory with glass pane borders
  • Info item explaining visitor permissions
  • Warning for dangerous permissions (BUILD)
  • Same permission icons and descriptions as TrustMenuGUI

### 📋 Technical Changes
  • Config version bumped to 5
  • Plugin version bumped to 1.6
  • Added cleanupPlayer()` methods to EventListener, CommandHandler, and VisualizationManager
  • Extended PlayerJoinListener to handle PlayerQuitEvent
added new messages.yml
added a config for condole log to stop to prevent console spam

and minor bug fixes
Gui fixes and bugs fixes
[1.4] LandClaimPlugin 1.4 by AyoSynk on Oct 13, 2026
Download
### 🔧 Update Notes

  • Added Villagers Protection and Tamed pets protection
  • Added per player permission management
  • New commands added — use /claim help to view the full list.

### ⚠️ Configuration Notice

  • If you're upgrading **from version 1.3.1 or newer**, your config files will update automatically.
  • If you're using **version 1.3.1 or older**, you **must delete** your old config.yml to prevent issues.

> **Do NOT delete** claims.yml or trust.yml unless you want to lose your existing claim and trust data.
fixed few bugs and issues
LandClaimPlugin Icon
Download LandClaimPlugin
Select game version
Select platform