Описание
**ClaimMod — Advanced Land Claiming & Grief Prevention**
**ClaimMod** is a server-side Fabric mod designed to give players and server administrators total control over land protection and grief prevention. Operating entirely server-side, it functions seamlessly for plain vanilla clients while offering a lightweight companion packet API that unlocks advanced, automatic client-side boundary rendering for players running compatible companion client configurations.
Featuring a modular, highly performant spatial indexing engine, tick-accurate accrual math, independent trust matrices, and expansive per-world permission overrides, ClaimMod is built to handle heavy server environments with zero configuration reboots required.
📧 Contact & Support
### 💬 Primary Support (Preferred)
**All general questions, feature requests, and non-urgent bug reports should be posted in the appropriate channels on our Discord Server.** We actively monitor it and will respond as soon as possible so the whole community benefits.
### 🆘 Urgent PM Policy
You may PM me directly **only** under specific urgent circumstances:
* **Allowed reason:** Your server is **crashing** or experiencing **critical, game-breaking errors** directly related to this mod.
* **Requirement:** You must be the **server owner**.
* **Time zone:** **(CET/CEST) — Brussels Time**
* **PM hours:** **10:00 AM – 10:00 PM Brussels Time only**
Immediate responses are not guaranteed. Private messaging is a professional courtesy, not an entitlement. Thank you for your understanding!
---
## 🛠️ Performance Architecture
Unlike old protection mods that loop over massive arrays or suffer from tick-drift, ClaimMod is built from the ground up for modern server performance:
* **O(1) Spatial Indexing**: Claims are indexed cleanly using a chunk-hashed spatial grid (`worldKey → chunkKey → Set`). Border checks and interaction lookups run instantly regardless of how many thousands of claims exist on your world.
* **Real-Time Accrual Processing**: Claim block generation checks look at real wall-clock milliseconds (`System.currentTimeMillis()`) instead of standard server tick counting. Your players earn points at a perfectly stable rate even when the server drops TPS under heavy entity load.
---
## 🔑 Independent Trust Tiers
ClaimMod rejects standard cumulative trust hierarchies. Granting a tier does **NOT** inherently grant the permissions of any tier beneath it, allowing for fine-grained player delegation:
| Tier | Role Capabilities |
|---|---|
| **OWNER** | Full building/breaking access, container rights, flag management, claim deletion, and ownership transfers. |
| **CO_OWNER** | Identical rights to the Owner, except cannot force-delete the claim or transfer primary ownership away. |
| **TRUSTED** | Full building and block breaking access, along with all standard block/container interactions. |
| **FLAGS** | Purely grants visibility and toggles for claim flags; cannot build, break, or look inside containers. |
| **CONTAINER** | Restricts usage strictly to inventories (chests, furnaces, etc.). |
| **TRAVELER** | Purely restricted to mechanical navigation pathways (standard doors, trapdoors, and fence gates). |
---
## 🏳️ Expansive Flag Controls
Customize rules globally, per-world, or dynamically inside individual player/admin zones using our specialized flag register:
| Flag Name | Default | What it governs |
|---|---|---|
| `block_break` | `false` | Allows non-trusted players to mine blocks inside the claim boundaries. |
| `block_place` | `false` | Allows non-trusted players to place blocks inside the claim boundaries. |
| `block_interact` | `false` | Allows non-trusted players to interact with doors, buttons, levers, and blocks. |
| `container_access` | `false` | Allows non-trusted players to open chests, furnaces, and standard containers. |
| `pvp` | `false` | Dictates combat outcomes between completely non-trusted actors inside the boundaries. |
| `friendly_fire` | `true` | Governs whether explicitly trusted players can attack each other inside the zone. |
| `animal_killing` | `false` | Controls whether non-trusted entities can slaughter passive livestock animals. |
| `mob_killing` | `true` | Allows players to clean up unwanted hostile or neutral living monsters. |
| `protect_nametagged` | `true` | Overrides generic slaughter permissions to protect custom name-tagged entities. |
| `tnt_explosion` | `false` | Protects terrain blocks from being broken by active TNT explosions. |
| `creeper_explosion`| `true` | Toggles environmental structural breakdown from Creeper explosions. |
| `other_explosion` | `true` | Restricts block impact from alternative explosion forces like beds or anchors. |
| `explosion_player_damage`| `true`| Controls whether explosion shockwaves inflict health damage on players. |
| `fire_spread` | `true` | Allows natural fire blocks to tick and find new flammable surfaces. |
| `fire_damage` | `true` | Dictates whether burning blocks are completely consumed and destroyed by fire. |
| `mob_spawning` | `true` | Dictates structural monster generation patterns, including Phantoms. |
| `animal_spawning` | `true` | Governs natural passive fauna and animal generation sequences across the chunks. |
| `item_pickup` | `true` | Blocks or allows untrusted floor item collection interactions. |
| `vehicle_use` | `false` | Toggles interactive transport mounts like boats, minecarts, and horses. |
| `vehicle_destroy` | `false` | Stops untrusted item breakage of transport infrastructure like boats or minecarts. |
| `portal_use` | `false` | Limits dimension travel block pathways (nether/end) inside the claim zone. |
| `piston_protection`| `false` | Stops external piston machines from pushing block structures across boundaries. |
| `fluid_protection` | `false` | Halts cross-border external flow sequences from liquids like lava and water sources. |
| `command_use` | `true` | When `false`, enforces restricted command blacklists defined in the configuration. |
| `allow_flight` | `false` | Instantly grants flight configurations on entry and revokes them on exit. |
| `passthrough` | `true` | Forbids airborne trespassers from bypassing physical boundaries while flying. |
| `protect_crops` | `true` | Suppresses vector forces that turn valuable farmland blocks back into generic dirt. |
| `sethome` | `false` | Prevents untrusted visitors from binding teleport keys inside your territory. |
---
## 👁️ Border Visualization Matrix
Vanilla client? Companion client? No problem. ClaimMod securely processes visualization vectors for everyone:
* **Fake Block Packets (Vanilla-Friendly)**: Right-clicking with items shifts regional border grids smoothly into view via `ClientboundBlockUpdatePacket` arrays. Surfaces are automatically mapped locally without shifting physical world files.
* **Adaptive Dynamic Palette**: Edge color configurations morph cleanly relative to a player's spatial context:
- **Owner / Co-Owner**: Vibrant Gold Blocks accented by Glowstone corners.
- **Trusted / Flag Access**: Deep Lapis Lazuli Blocks illuminated by Sea Lanterns.
- **Stranger / Traveler**: Solid Iron Blocks finished with Shroomlight indicators.
* **Companion Mod Auto-Sync**: Equipping selection tools instantly signals our networking bridge, updating client-side renderers smoothly before the player even crosses a claim border.
---
## 🛑 Hardened Exploit Protections
* **Piston Redstone Shielding**: When `piston_protection` is enabled, external flying machines, sweeping blocks, or glitch mechanisms trying to move materials inside your perimeter are completely blocked at the border.
* **Fluid Displacement Containment**: Prevents griefers from pouring massive lava towers or water cascades outside your claims to flood your builds.
* **Anti-Kick Teleport Exploits**: When an administrator or claim owner kicks a trespasser with `/claim kick`, the player's last position is securely logged. This prevents them from instantly utilizing command pathways like `/back` or `/dback` to return to their target.
---
## ⚙️ Configuration File Hub
All parameters reside cleanly within `config/claimmod/`. Run `/claim reload` to push formatting adjustments into live memory instantly:
| Target Path | Functional Content |
|---|---|
| `config.yml` | Sets up default flags, min/max layout sizing constraints, item tool registration nodes, and structural settings. |
| `message_formatting.yml` | Localization layout holding every system string with full support for `&` legacy color translation parameters. |
| `worlds/` | Destination holding fine-grained per-world configuration locks and command execution blacklists. |
---
## Commands
| Command | Operational Definition | Base Permission Node |
|---|---|---|
| `/claim` | Renders the primary menu interface directory. | *Available to all* |
| `/claim list [player]` | Lists owned properties. Admins can view other player profiles. | `claimmod.claim.list` |
| `/claim info` | Evaluates structural properties, bounding dimensions, and current trust. | `claimmod.claim.info` |
| `/claim nearby` | Highlights surrounding boundaries within tracking limits. | `claimmod.claim.nearby` |
| `/claim rename ` | Updates display tag variables for the zone. | `claimmod.claim.rename` |
| `/claim trust [tier]`| Maps target player parameters to a dedicated trust matrix tier. | `claimmod.trust.full` |
| `/claim untrust `| Completely purges a target from all property trust arrays. | `claimmod.trust.untrust` |
| `/claim trustlist` | Loops through tracking nodes to present active claim access rules. | `claimmod.trust.list` |
| `/claim flag [flag] [val]` | Toggles flag states directly inside the property quadrant. | `claimmod.flag.` |
| `/claim flaginfo [dim]` | Pulls up global world flag metrics or local claim flag details. | `claimmod.flag.view` |
| `/claim owner ` | Begins two-step ownership transfer processing. | `claimmod.claim.owner` |
| `/claim abandon [id/name]`| Relinquishes territory land properties back to nature. | `claimmod.claim.abandon` |
| `/claim abandonall` | Triggers double-confirmation logic to erase all personal claims. | `claimmod.claim.abandon` |
| `/claim balance [player]` | Checks active claim block economic metrics. | `claimmod.claim.balance` |
| `/claim kick ` | Expels an unwanted entity safely out of your territory boundaries. | `claimmod.claim.kick` |
| `/claim bypass` | Toggles admin bypass override configurations. | `claimmod.admin.bypass` |
| `/claim priority ` | Modifies overwrite priority thresholds on overlapping admin zones. | `claimmod.admin.setpriority` |
| `/claim force [r]` | Forcefully builds a protection square around a player coordinate. | `claimmod.admin.forceclaim` |
| `/claim tp ` | Instantly links and teleports admin to specified claim zones. | `claimmod.admin.teleport` |
| `/claim blocks give/take`| Administratively grants or subtracts economy blocks from player balance pools. | `claimmod.admin.blocks.give` / `take` |
| `/claim blocks reset` | Resets tracking records back to starting config baselines. | `claimmod.admin.blocks.reset` |
| `/claim reload` | Pulls structural data updates from disk directly into memory. | `claimmod.admin.reload` |
---
## Permissions
Click to expand all permission nodes
### 👤 Claim Modifiers
| Node | Functional Clearance |
|---|---|
| `claimmod.claim.create` | Allows territory allocation creation via standard tools. |
| `claimmod.claim.resize` | Grants resizing access to adjust territory borders. |
| `claimmod.claim.info` | Grants authorization to query spatial claim properties. |
| `claimmod.claim.list` | Grants clearance to view active owned properties. |
| `claimmod.claim.nearby` | Allows visualization checks on surrounding claims. |
| `claimmod.claim.rename` | Grants access to modify claim names. |
| `claimmod.claim.abandon` | Permits abandoning claims and territory. |
| `claimmod.claim.owner` | Grants permission to transfer claim ownership. |
| `claimmod.claim.balance` | Allows checking your own claim block balance. |
| `claimmod.claim.kick` | Permits using `/claim kick` on trespassers. |
### 🤝 Trust Management
| Node | Functional Clearance |
|---|---|
| `claimmod.trust.coowner` | Allows promoting players to the Co-Owner matrix tier. |
| `claimmod.trust.full` | Grants authority to trust players with standard build tier rights. |
| `claimmod.trust.flags` | Grants permission to assign flag operator trust tiers. |
| `claimmod.trust.containers`| Allows trusting players with container access. |
| `claimmod.trust.traveler` | Allows granting traveler door navigation rights. |
| `claimmod.trust.untrust` | Permits untrusting players from your properties. |
| `claimmod.trust.list` | Allows viewing access lists on properties. |
### 🛠️ Administrative Operations
| Node | Functional Clearance |
|---|---|
| `claimmod.admin` | Master administrative umbrella; grants all sub-nodes. |
| `claimmod.admin.bypass` | Instantly bypasses structural land block locks. |
| `claimmod.admin.delete` | Permits administrative deletion of any claim by UUID. |
| `claimmod.admin.inspect` | Allows inspecting properties anywhere across worlds. |
| `claimmod.admin.flag` | Allows modifying properties owned by other players. |
| `claimmod.admin.teleport`| Permits administrative teleportation tracking keys. |
| `claimmod.admin.reload` | Allows reloading system properties from terminal commands. |
| `claimmod.admin.blocks.give`| Administratively increases a target's claim block totals. |
| `claimmod.admin.blocks.take`| Administratively reduces a target's claim block totals. |
| `claimmod.admin.blocks.reset`| Resets player balance pools across the server environment. |
| `claimmod.admin.balance` | Permissive clearance node to investigate other balances. |
| `claimmod.admin.list` | Grants clearance to list other players' land properties. |
| `claimmod.admin.worldflags`| Allows editing default global world overrides. |
| `claimmod.admin.setpriority`| Updates overlay sorting weight variables on admin claims. |
| `claimmod.admin.forceclaim`| Grants clearance to use administrative force claim systems. |
| `claimmod.admin.adminclaim`| Grants access to build Server Admin zones. |
---
## Modpack Policy
* ✅ You **may** include ClaimMod in any modpack.
* ❌ The modpack **must not be sold**.