L-claim
L-Claim is a chunk-based town claim system developed for Minecraft servers. Players can establish their own towns, protect their land, manage members, and customize their communities with an advanced permission system.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
L-claim
L-Claim
Java: 1.2.2 | Java: 1.20+ | Java: 17+
A feature-rich chunk-based town claim plugin with full diplomacy (war, alliances, pacts), economy integration, auto-farming, bounties, granular permission management, chest locking, and a complete GUI system.
---
Features
Town System
- Create, delete, rename, and manage towns with unique names - 12 progression levels based on member count, each granting bonus chunk capacity - Configurable name length, character restrictions, and max members - Upkeep costs per chunk with automatic town deletion or chunk release on non-payment - Town chat for private member communication - Member and visitor spawn points
Land Claiming
- Chunk-based claiming system with adjacency requirements (configurable) - Minimum distance enforcement between different towns - Claim cost per chunk deducted from the town bank - Blocked-world support (disable claiming in specific worlds) - Configurable particle effects and sounds on claim - Per-chunk unclaiming or mass unclaim-all
Protection
- Granular per-member permissions (33 permission types): build, break, interact, containers, doors, redstone, PvP, vehicles, and more - Per-town settings: PvP, mob spawning, fire spread, explosions, visitor permissions - Visitors can be given separate build/break/interact/container permissions - Trust system: give full access to non-members - Keep inventory on death inside own town claims - Admin bypass mode for staff - Alliance and pact members are treated as trusted in each other's towns
Diplomacy
- Money Transfers: Declare war on other towns, scheduled war sessions with configurable days/times, points per kill, multi-session wars, daily tribute payments from losers to winners, losing town deletion on non-payment - Money Transfers: War winners conquer defeated towns; conquered towns pay daily chunk-based tribute and cannot declare war, make peace, or create pacts with their conqueror - Money Transfers: Send and accept/reject peace offers (2-minute expiry) - Money Transfers: Invite, accept, and manage alliances; allied towns share building/interaction rights; auto-accept when both sides invite each other - Money Transfers: Paid agreements with configurable duration and cost; prevents war declarations; auto-expiry with refund protection - Money Transfers: Send town bank funds to other towns via GUI with custom amount entry
Economy
- Vault-based economy integration - Town creation cost, claim cost, and chunk upkeep deducted from player/town balances - Town bank with deposit (any member) and withdraw (mayor only) - Bank info GUI shows estimated daily upkeep and war tribute income/expenses - Admin commands for bank manipulation
Farmer System
- Purchaseable auto-harvesting farmer for your town - 10 upgrade levels with increasing capacity, range, and speed - Harvests 14 crop types: wheat, carrot, potato, beetroot, nether wart, cocoa, melon, pumpkin, sweet berries, glow berries, cactus, sugar cane, bamboo, kelp - Auto-collect drops within range - Sell harvested items to town bank at configured prices - Per-item collection toggle - Stats tracking (daily, weekly, monthly, total production and earnings) - Particle effects on harvest
Bounty System
- Place bounties on players from your personal balance - Multiple bounties can stack on the same target - Killer receives total bounty on target's death - GUI with sorting and filtering
Chest Lock
- Lock chests, trapped chests, and barrels using `[lock]` signs - Only the owner and mayor can access locked containers - Auto-cleared when chunks are unclaimed
Fly System
- Toggle flight within your town's claimed area - Auto-disabled when leaving town territory
Chunk Map
- GUI-based visual map (9x5 grid) of surrounding chunks - Color-coded: your town, other towns, unclaimed, current position - Hover for town details
Multi-Language
- Built-in English and Turkish translations - All messages, GUI text, and placeholders are language-aware - Easy to extend with additional language files
Admin Tools
- Force claim/unclaim any chunk - Force delete any town - Purge all towns belonging to a player - Override town levels - Protection bypass mode - Data backup with timestamps - Plugin statistics - Town level override - GUI-based admin town list with search and detail view - Force war declaration between towns - Force peace between towns - Create and cancel non-aggression pacts between towns - Start/stop war sessions - View diplomatic relations of any town
---
Commands
Player Commands (`/town`)
| Alias | Command | Description | Permission | |---|---|---|---| | `/town create <name>` | `/town kur <name>` | Create a new town | `lclaim.town.create` | | `/town delete` | `/town sil` | Delete your town (requires confirmation) | `lclaim.town.delete` | | `/town claim` | `/town talep` | Claim current chunk | `lclaim.town.claim` | | `/town unclaim` | `/town birak` | Unclaim current chunk | `lclaim.town.unclaim` | | `/town unclaim all` | `/town birak hepsi` | Unclaim all chunks | `lclaim.town.unclaim` | | `/town info [town]` | `/town bilgi` | View town information | `lclaim.town.info` | | `/town list [page]` | `/town liste` | List all towns | `lclaim.town.list` | | `/town invite <player>` | `/town davet` | Invite a player | `lclaim.town.invite` | | `/town accept` | `/town kabul` | Accept an invitation | — | | `/town decline` | `/town red` | Decline an invitation | — | | `/town kick <player>` | `/town kov` | Kick a member | `lclaim.town.kick` | | `/town leave` | `/town ayril` | Leave your town | — | | `/town transfer <player>` | `/town devret` | Transfer leadership | — | | `/town deposit <amount>` | `/town yatir` | Deposit into town bank | `lclaim.town.deposit` | | `/town withdraw <amount>` | `/town cek` | Withdraw from town bank | `lclaim.town.withdraw` | | `/town set name <name>` | — | Rename town | — | | `/town set spawn` | — | Set member spawn | — | | `/town set visitor-spawn` | `/town set ziyaretci-spawn` | Set visitor spawn | — | | `/town spawn [town]` | — | Teleport to spawn | — | | `/town map` | `/town harita` | Open chunk map | `lclaim.town.map` | | `/town fly` | `/town uc` | Toggle flight | `lclaim.town.fly` | | `/town chat` | `/town sohbet` | Toggle town chat mode | — | | `/town trust add <player>` | — | Add a trusted player | — | | `/town trust remove <player>` | — | Remove a trusted player | — | | `/town alliance-accept <town>` | `/town ittifak-kabul` | Accept alliance invite | — | | `/town alliance-reject <town>` | `/town ittifak-red` | Reject alliance invite | — | | `/town pact-accept <town>` | `/town pakt-kabul` | Accept pact offer | — | | `/town pact-reject <town>` | `/town pakt-red` | Reject pact offer | — | | `/town war info` | `/town savas info` | View war information | — | | `/town war next-session` | — | View next war session info | — | | `/town help` | `/town yardim` | Show command help | — |
Admin Commands (`/lclaim` or `/lc`)
| Command | Description | Permission | |---|---|---| | `/lc reload` | Reload configuration | `lclaim.admin.reload` | | `/lc info <town>` | View detailed town info | `lclaim.admin.info` | | `/lc list` | List all towns | `lclaim.admin.list` | | `/lc stats` | View plugin statistics | `lclaim.admin.stats` | | `/lc forceclaim <town>` | Force claim current chunk | `lclaim.admin.forceclaim` | | `/lc forceunclaim` | Force unclaim current chunk | `lclaim.admin.forceunclaim` | | `/lc forcedelete <town>` | Force delete a town | `lclaim.admin.forcedelete` | | `/lc bypass` | Toggle protection bypass | `lclaim.admin.bypass` | | `/lc setbalance <town> <amount>` | Set town bank balance | `lclaim.admin.setbalance` | | `/lc addbalance <town> <amount>` | Add money to town bank | `lclaim.admin.addbalance` | | `/lc removebalance <town> <amount>` | Remove money from town bank | `lclaim.admin.removebalance` | | `/lc teleport <town>` | Teleport to town spawn | `lclaim.admin.teleport` | | `/lc purge <player>` | Delete all towns of a player | `lclaim.admin.purge` | | `/lc clearinvites` | Clear pending invites | `lclaim.admin.clearinvites` | | `/lc setlevel <town> <level>` | Set town level (0 = reset) | `lclaim.admin.setlevel` | | `/lc backup` | Backup data to `/backups/` | `lclaim.admin.backup` | | `/lc town` | Open GUI-based admin town list | `lclaim.admin.town` | | `/lc war <town1> <town2>` | Force declare war between towns | `lclaim.admin.war` | | `/lc peace <town1> <town2>` | Force peace between towns | `lclaim.admin.peace` | | `/lc pact <town1> <town2> [days]` | Create a non-aggression pact | `lclaim.admin.pact` | | `/lc pact cancel <town1> <town2>` | Cancel a non-aggression pact | `lclaim.admin.pact` | | `/lc warsession <town1> <town2>` | Toggle war session | `lclaim.admin.warsession` | | `/lc warsession startall` | Start all pending war sessions | `lclaim.admin.warsession` | | `/lc warsession stopall` | Stop all active war sessions | `lclaim.admin.warsession` | | `/lc diplomacy <town>` | View diplomatic relations of a town | `lclaim.admin.diplomacy` | | ` [NEW] /lc saveall` | Manually saves new data to the database |
---
Permissions
| Permission | Default | Description | |---|---|---| | `lclaim.town.create` | `true` | Create a town | | `lclaim.town.delete` | `true` | Delete your town | | `lclaim.town.claim` | `true` | Claim chunks | | `lclaim.town.unclaim` | `true` | Unclaim chunks | | `lclaim.town.invite` | `true` | Invite players | | `lclaim.town.kick` | `true` | Kick players | | `lclaim.town.info` | `true` | View town info | | `lclaim.town.list` | `true` | List towns | | `lclaim.town.map` | `true` | View chunk map | | `lclaim.town.fly` | `op` | Toggle flight in your town | | `lclaim.town.deposit` | `true` | Deposit to town bank | | `lclaim.town.withdraw` | `op` | Withdraw from town bank | | `lclaim.admin` | `op` | Admin command access | | `lclaim.admin.*` | `op` | All admin sub-permissions | | `lclaim.admin.town` | `op` | Open admin town list GUI | | `lclaim.admin.reload` | `op` | Reload configuration | | `lclaim.admin.info` | `op` | View town info | | `lclaim.admin.list` | `op` | List towns | | `lclaim.admin.stats` | `op` | View statistics | | `lclaim.admin.forceclaim` | `op` | Force claim chunks | | `lclaim.admin.forceunclaim` | `op` | Force unclaim chunks | | `lclaim.admin.forcedelete` | `op` | Force delete towns | | `lclaim.admin.bypass` | `op` | Protection bypass | | `lclaim.admin.setbalance` | `op` | Set town bank balance | | `lclaim.admin.addbalance` | `op` | Add money to town bank | | `lclaim.admin.removebalance` | `op` | Remove money from town bank | | `lclaim.admin.teleport` | `op` | Teleport to town spawn | | `lclaim.admin.purge` | `op` | Purge player towns | | `lclaim.admin.clearinvites` | `op` | Clear invites | | `lclaim.admin.setlevel` | — | Set town level (not in plugin.yml) | | `lclaim.admin.backup` | — | Create backup (not in plugin.yml) | | `lclaim.admin.warsession` | — | Manage war sessions (not in plugin.yml) | | `lclaim.admin.war` | — | Force declare war (not in plugin.yml) | | `lclaim.admin.peace` | — | Force peace (not in plugin.yml) | | `lclaim.admin.pact` | — | Manage pacts (not in plugin.yml) | | `lclaim.admin.diplomacy` | — | View diplomacy (not in plugin.yml) |
---
Installation
1. Download the latest `L-Claim.jar` from the releases page. 2. Place the JAR file in your server's `plugins/` folder. 3. Restart your server (or use `/reload confirm`). 4. Edit `plugins/L-Claim/config.yml` to your preferences. 5. Use `/lc reload` to apply configuration changes.
---
Configuration
`config.yml`
```yaml
L-Claim Configuration File
================================
Language setting: "tr" for Turkish, "en" for English
language: "en"
Town Settings
town:
Base chunk limit for all towns
base-chunks: 4
Maximum members in a town
max-members: 20
Minimum town name length
min-name-length: 3
Maximum town name length
max-name-length: 16
Allowed characters in town name (regex)
name-regex: "[a-zA-Z0-9_\-]+"
Cost to create a town (requires Vault)
creation-cost: 500.0
Cost per chunk claim — pulled from town bank (0 = free)
Claim cost is NOT a reason to delete the town. Town is only deleted on upkeep failure.
claim-cost: 100.0
Delete on insufficient upkeep funds (NOT on claim cost failure)
delete-on-insufficient-funds: true
Daily upkeep cost per chunk (0 to disable)
upkeep-per-chunk: 10.0
Upkeep check interval in minutes (0 to disable)
upkeep-interval: 1440
Town Level System
Each level requires a certain number of members and gives bonus chunks
levels: 1: members-required: 1 bonus-chunks: 0 2: members-required: 3 bonus-chunks: 4 3: members-required: 4 bonus-chunks: 8 4: members-required: 5 bonus-chunks: 12 5: members-required: 6 bonus-chunks: 16 6: members-required: 8 bonus-chunks: 20 7: members-required: 10 bonus-chunks: 24 8: members-required: 12 bonus-chunks: 28 9: members-required: 14 bonus-chunks: 32 10: members-required: 16 bonus-chunks: 36 11: members-required: 18 bonus-chunks: 40 12: members-required: 20 bonus-chunks: 48
Require new claims to be adjacent to existing claimed chunks
First claim is always free (the town founding chunk)
require-adjacent-claims: true
Minimum chunk distance between different towns (0 = disabled)
Example: 3 means towns must be at least 3 chunks apart
min-distance-between-towns: 3
Worlds where chunk claiming is disabled (empty list = all worlds allowed)
Example: ["world_nether", "world_the_end"]
blocked-worlds: []
Claim particles & sound effect
claim-effects:
Play particle effect when claiming a chunk
particles: true
Particle type (FLAME, HAPPY_VILLAGER, END_ROD, VILLAGER_HAPPY, etc.)
particle-type: "END_ROD"
How long particles stay visible (in seconds)
particle-duration: 6
Play sound when claiming
sound: true
Sound name (ENTITY_EXPERIENCE_ORB_PICKUP, BLOCK_NOTE_BLOCK_CHIME, etc.)
sound-name: "ENTITY_EXPERIENCE_ORB_PICKUP"
Protection Settings
protection:
Protect claimed chunks from non-members
enabled: true
Allow mob spawning in claimed chunks (global fallback, per-town overrides this)
mob-spawning: true
Allow explosions in claimed chunks
explosions: false
Allow fire spread in claimed chunks
fire-spread: false
Prevent PvP in claimed chunks
prevent-pvp: false
Allow members to build/break
members-can-build: true
Keep inventory and XP on death inside claimed chunks
keep-on-death: true
Map Settings
map:
Map width (odd number recommended)
width: 9
Map height (odd number recommended)
height: 9
Character for unclaimed chunks
unclaimed-char: "□"
Character for your town chunks
your-town-char: "■"
Character for other town chunks
other-town-char: "▪"
Character for current chunk
current-chunk-char: "✦"
Database Settings
database:
Storage type: "yaml" or "sqlite"
type: "sqlite"
SQLite file name
sqlite-file: "lclaim.db"
Economy Settings (requires Vault)
economy: enabled: true
Chest Lock System
chest-lock:
Enable/disable chest lock system
enabled: true
Farmer System
farmer:
Enable/disable farmer system
enabled: true
Cost to buy a farmer
buy-cost: 10000
Enable particle effects when harvesting
particle-effects: true
Auto collect dropped items within range (if item collecting is enabled)
auto-collect-items: true
Item prices for selling
prices: wheat: 5.0 carrot: 8.0 potato: 7.0 beetroot: 10.0 nether-wart: 15.0 melon: 6.0 pumpkin: 12.0 cocoa: 20.0 sugar-cane: 4.0 cactus: 3.0 sweet-berry: 12.0 bamboo: 3.0 kelp: 2.0
War Settings
war:
Broadcast war session start/end messages to all players
broadcast-session-messages: true
Show boss bar with war info during active sessions
boss-bar: true
Number of sessions per war
sessions-per-war: 3
Points awarded per kill
points-per-kill: 5
Daily fee per chunk that the loser pays to the winner
daily-fee-per-chunk: 10.0
Timezone for war schedule (empty = system default, e.g. "UTC", "Europe/Istanbul", "America/New_York")
timezone: ""
War schedule — sessions happen on configured days at specified time range
schedule:
Days of the week (MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY)
days: [MONDAY, TUESDAY, WEDNESDAY]
Session start time (24-hour format)
start-hour: 21 start-minute: 0
Session end time (24-hour format)
end-hour: 22 end-minute: 0
Miscellaneous
misc:
Enable debug logging
debug: false
Auto-save interval in minutes
auto-save: 5
```
---
Town Levels
| Level | Members Required | Bonus Chunks | |-------|-----------------|--------------| | 1 | 1 | 0 | | 2 | 3 | 4 | | 3 | 4 | 8 | | 4 | 5 | 12 | | 5 | 6 | 16 | | 6 | 8 | 20 | | 7 | 10 | 24 | | 8 | 12 | 28 | | 9 | 14 | 32 | | 10 | 16 | 36 | | 11 | 18 | 40 | | 12 | 20 | 48 |
Max Chunks Formula: `base-chunks + level-bonus`
---
Farmer Levels
| Level | Upgrade Cost | Capacity | Range | Harvest Interval | |-------|-------------|----------|-------|-----------------| | 1 | Free | 500 | 10 blocks | 5.0s | | 2 | 2,000 | 750 | 12 | 4.5s | | 3 | 5,000 | 1,000 | 15 | 4.0s | | 4 | 10,000 | 1,500 | 18 | 3.5s | | 5 | 20,000 | 2,000 | 22 | 3.0s | | 6 | 40,000 | 3,000 | 26 | 2.5s | | 7 | 75,000 | 4,000 | 32 | 2.0s | | 8 | 125,000 | 5,000 | 40 | 1.5s | | 9 | 200,000 | 7,000 | 50 | 1.2s | | 10 | 300,000 | 10,000 | 60 | 1.0s |
Harvestable Crops
Wheat, Carrots, Potatoes, Beetroots, Nether Wart, Cocoa, Melon, Pumpkin, Sweet Berries, Glow Berries, Cactus, Sugar Cane, Bamboo, Kelp.
---
War Schedule
War sessions follow a configurable weekly schedule:
```yaml war: timezone: "" # Empty = server system timezone schedule: days: [MONDAY, TUESDAY, WEDNESDAY] start-hour: 21 start-minute: 0 end-hour: 22 end-minute: 0 ```
- Sessions run conquer for all at-war pairs during the configured time window - Multiple sessions per war (`sessions-per-war: 3`) - Points are earned from kills during active sessions (`points-per-kill: 5`) - After all sessions, the winner is determined by total points - The loser pays `daily-fee-per-chunk` each day until the tribute is fully paid - If the loser cannot pay, their town is automatically deleted - War winners conquer the defeated town; conquered towns appear in a dedicated diplomacy menu showing conquered date, daily tribute, points, kills, and deaths - Conquered towns cannot declare war, request peace, or create pacts with their conqueror - The loser's chunk count is used to calculate the daily tribute fee
---
PlaceholderAPI
All placeholders use the `%lclaim_` prefix.
| Placeholder | Description | |---|---| | `%lclaim_town_name%` | Player's town name (or "None") | | `%lclaim_town_mayor%` | Town mayor name | | `%lclaim_town_members%` | Member count | | `%lclaim_town_max_members%` | Max member count | | `%lclaim_town_chunks%` | Claimed chunk count | | `%lclaim_town_max_chunks%` | Max chunk count | | `%lclaim_town_bank%` | Town bank balance | | `%lclaim_town_balance_formatted%` | Formatted bank balance | | `%lclaim_town_pvp%` | PvP status (Enabled/Disabled) | | `%lclaim_town_pvp_status%` | PvP status (true/false) | | `%lclaim_town_visitors%` | Visitor status (Enabled/Disabled) | | `%lclaim_town_visitor_status%` | Visitor status (true/false) | | `%lclaim_town_fire%` | Fire spread status | | `%lclaim_town_explosions%` | Explosions status | | `%lclaim_town_mob_spawning%` | Mob spawning status | | `%lclaim_town_world%` | Town's world | | `%lclaim_town_founded%` | Founded date | | `%lclaim_town_is_mayor%` | Is player mayor? (true/false) | | `%lclaim_town_is_member%` | Is player member? (true/false) | | `%lclaim_town_is_trusted%` | Is player trusted? (true/false) | | `%lclaim_town_trusted_count%` | Trusted player count | | `%lclaim_town_level%` | Town level | | `%lclaim_in_claimed_chunk%` | Is player in a claimed chunk? | | `%lclaim_in_own_town%` | Is player in their own town? | | `%lclaim_chunk_town_name%` | Town name of current chunk | | `%lclaim_chunk_town_pvp%` | PvP status of current chunk's town | | `%lclaim_total_towns%` | Total towns on the server | --NEW-- ↓↓↓ | `%lclaim_town_war_count%` | Active war count | `2` | | `%lclaim_town_alliance_count%` | Alliance count | `1` | | `%lclaim_town_pact_count%` | Non-aggression pact count | `3` | | `%lclaim_town_is_at_war%` | Is at war? | `Yes` / `No` | | `%lclaim_town_war_list%` | List of towns at war (comma separated) | `Rome, Sparta` | | `%lclaim_town_alliance_list%` | Allied towns | `Athens` | | `%lclaim_town_pact_list%` | Towns with pacts | `Carthage, Egypt` | | `%lclaim_town_conquered_count%` | Conquered town count | `1` | | `%lclaim_town_conquered_list%` | Conquered towns | `Troy` | | `%lclaim_town_has_active_war_session%` | Has active war session? | `Yes` / `No` | | `%lclaim_town_daily_upkeep%` | Daily upkeep cost | `150.00` |
---
Data Storage
L-Claim supports two storage backends:
SQLite (Recommended)
- File-based (`plugins/L-Claim/lclaim.db`) - All data in relational tables with proper indexing - Tables: `towns`, `town_members`, `town_trusted`, `claimed_chunks`, `town_permissions`, `town_settings`, `chest_locks`, `farmers`, `farmer_items`, `town_diplomacy`
YAML
- File-based (`plugins/L-Claim/towns.yml`) - Simpler but slower for large servers - Single file stores all town data
Switch between backends in `config.yml`: ```yaml database: type: "sqlite" # or "yaml" sqlite-file: "lclaim.db" ```
Backup
Use `/lc backup` to create timestamped backups in `plugins/L-Claim/backups/`.
---
GUI Menus
The plugin features a full inventory GUI system accessible via `/town`:
| Menu | Description | |---|---| | Admin Town List | Town management hub — claim, unclaim, map, members, bank, settings, trust, farmer, bounty, diplomacy, level info, teleport, delete/leave | | Admin Town List | Member list with permission editor, kick, and transfer actions | | Admin Town List | Paginated list of online players to invite | | Admin Town List | Deposit/withdraw with quick amounts and custom entry | | Admin Town List | Paginated list of all towns | | Admin Town List | 9x5 chunk map with color-coded territory | | Admin Town List | Granular permission editor with 33 permission types | | Admin Town List | Toggle PvP, mob spawning, fire, explosions, visitors | | Admin Town List | Trusted player management | | Admin Town List | View, add, filter, and sort bounties | | Admin Town List | Buy, upgrade, toggle items, sell, and view stats | | Admin Town List | War, peace, alliance, pact, conquered towns, and money transfer menus | | Admin Town List | View conquered town details, daily tribute, and war statistics | | Admin Town List | Browse all towns with pagination, search by name, and view member details |
All GUI menus support both English and Turkish text based on the configured language.
---
Support
discord: squezsaz