claimmyland-1.20.1-2.4.0.jar
Curse Maven Snippet
What's new
[2.4.0] - 2026-03-26
- 🔗 Requires GottschCore v2.6 or later.*
🎉 Highlights
- Multi-dimension support — parcels are now fully dimension-aware. Protection works correctly in the Nether, End, and modded dimensions.
- Parcel entry title — a title overlay announces the estate name when crossing into a Nation, Citizen, or Player parcel, with a configurable cooldown to prevent spam.
- Claim celebration — committing a claim triggers a perimeter particle wave visible only to the claiming player.
- Foundation Stone particles — placing a Foundation Stone emits a dust displacement effect radiating outward from the stone.
- Nation player blacklist — nation owners can now block specific players from claiming land within their nation, with a generic denial message that protects the owner's privacy.
➕ Added
Multi-Dimension Support (BST Dimension Refactor)
- Parcels are now fully dimension-aware in the internal spatial index (BST). Previously all parcel lookups were dimension-blind and relied on post-filtering, which could cause cross-dimension false-positives.
- The Foundation Stone, Border Stone, and all protection events now correctly resolve parcels per-dimension, enabling reliable parcel protection in the Nether, End, and modded dimensions.
- GottschCore
CoordsIntervalupdated:dimensionis now a first-class field and the primary sort key in the BST. - Fixed a pre-existing bug in
CoordsIntervalTreeNBTSerializerwhere the RIGHT child was incorrectly wired to the LEFT slot during deserialization.
Parcel Entry Title Display
- When crossing into a Nation, Citizen, or Player parcel, a title overlay is now displayed using Minecraft's vanilla title system.
- Nation parcels show the estate name as a large bold title with type and owner as a subtitle.
- Citizen and Player parcels show a smaller subtitle only, visually distinguishing them from Nation announcements.
- Zone parcel boundaries and wilderness transitions are silent.
- A per-parcel cooldown (default 30 seconds) prevents repeated title spam when crossing the same border multiple times.
- Server master switch:
enableParcelEntryTitleinclaimmyland-server.toml(default:true). - Client opt-out:
enableParcelEntryTitleinclaimmyland-client.toml(default:true). - Timing is configurable: fade-in, stay, and fade-out ticks all adjustable in client config.
- Cooldown clears on dimension change and logout so familiar parcels re-announce after a context switch.
Foundation Stone Placement Particles
- Placing a Foundation Stone now emits a dust displacement particle effect.
- Phase 1: 24
POOFparticles radiate outward at ground level from the stone's position. - Phase 2: 10
SMOKEparticles rise from the stone's centre, simulating displaced air.
Claim Celebration Effects
- Successfully committing a claim now triggers a perimeter particle wave visible only to the claiming player (intentionally private — avoids revealing position on PvP servers).
- For small parcels (perimeter ≤ 128 blocks): particles emit along the full XZ perimeter.
- For large parcels (perimeter > 128 blocks): particles emit for up to 12 blocks outward from the Foundation Stone along each of the four edges.
- Each perimeter position emits
HAPPY_VILLAGER(rising) andPOOF(radiating outward) particles.
Nation Player Blacklist
- Nation owners can now blacklist specific players from claiming land within their nation, even if those players possess a valid Deed.
- Blacklisted players receive a generic denial message that does not reveal they are blacklisted or identify the nation, preserving the nation owner's privacy.
- The nation owner is always exempt from their own blacklist.
- Blacklist blocks all claim paths: Deed use on a Foundation Stone, CitizenTool parcel creation, and ZoningTool zone creation.
- New commands:
/cml estate blacklist add <estateName> <playerName>— add a player to the blacklist/cml estate blacklist remove <estateName> <playerName>— remove a player from the blacklist/cml estate blacklist list <estateName>— view the blacklist (output sent privately to the command sender only)
- Blacklist is displayed in estate details (
/cml estate details) for nation owners. - Blacklist count and add/remove icons shown in the estate list view for nation estates.
Server Config Sync
- A new
ServerConfigSyncPacketnow syncs selected server config values to clients on login and dimension change. - Currently synced values:
parcelBufferRadius,nationParcelBufferRadius,enableParcelEntryTitle. - Ensures client-side features (JourneyMap buffer overlay, parcel entry title) always reflect the current server configuration.
⚙️ Changed
EstateDisplayFormatter: Nation estate entries now show a Blacklisted Players section in the detailed view, and a blacklist count with add icon in the list view.FormatterConstants: Fixed/cml-opsicon builders — they were incorrectly using/cmlcommands instead of/cml-opscommands.FormatterConstants: FixedplayerWhitelistAddIcon()andplayerWhitelistRemoveIcon()— command paths were incorrect (whitelist add player→whitelist friends add/remove).FormatterConstants: Added ops variants for all estate icon builders (estateRenameIconOps,estateDemolishIconOps,estateRemoveIconOps,estateTransferIconOps,playerWhitelistAddIconOps,playerWhitelistRemoveIconOps).FormatterConstants: Added blacklist icon builders (playerBlacklistAddIcon,playerBlacklistRemoveIcon, and their ops variants).FormatterConstants: Teleport icon changed from↗(small, hard to read) to➤(solid arrowhead, more visible at Minecraft chat font size).WhitelistFormatter: AddedformatEstateListPlayerBlacklist()to display blacklisted players with correct remove icons and ops/non-ops command variants.ParcelRegistry: Allfind(),findBuffer(),findBoxes(),intersectsParcel(),resolveConflictState(),findLeastSignificant(),findMostSignificant(),isFireSpreadPrevented(),resolveParcelCached(), andsyncParcelToClient()methods now have dimension-aware overloads. Old dimension-blind signatures are retained but deprecated.
🐛 Fixed
- Fixed
CoordsIntervalTreeNBTSerializerRIGHT child deserialization bug — the RIGHT child was being wired to the LEFT slot, corrupting the in-memory BST structure after a world load. - Fixed
/cml-opsestate action icons firing/cmlcommands instead of/cml-opscommands. - Fixed Friends Whitelist add/remove icon commands using wrong command path.
- Fixed cross-dimension parcel false-positives — parcels in the Nether/End could incorrectly match queries in the Overworld due to the dimension-blind BST.
🔧 Technical Notes
BlockEvent.EntityPlaceEventis server-side only in Forge 1.20.1 — Foundation Stone placement particles are triggered viaSyncParcelPacket.handle()instead (on new preview arrival).- Fluid spread prevention was investigated but no reliable cancellable Forge 1.20.1 event exists for fluid flow — deferred to v2.5.
- Fire and lava-ignited fire prevention was confirmed already working via the existing
BlockEvent.EntityPlaceEvent+isFireSpreadPrevented()path andModTags.Blocks.FIRE_BLOCKS.
- 🔗 Requires GottschCore v2.6 or later.*
This mod has no additional files

