1.4
Compatibility
Changes
📦 ChestLocked v1.4 - The Economy & Absolute Security Update 🔧 CRITICAL SECURITY FIXES Fixed: Block Breaking Exploit
Previous Issue: Players were able to break locked chests and signs using tools (axes/pickaxes), bypassing the protection entirely.
Solution: Implemented a robust BlockBreakEvent listener. Locked containers and their respective signs are now indestructible to anyone except the Owner or an Admin.
Smart Auto-Cleanup: If the Owner or an Admin breaks the container, the lock metadata and attached signs are automatically cleared to prevent "floating" protection data.
💰 NEW FEATURES: Economy & Rental System (Requires Vault and a compatible Economy plugin like EssentialsX)
Paid Locking:
Server owners can now charge players a fee to lock a container.
Configurable: Set the price via economy.lock-cost.
Daily Rental Tax:
Introduced a "Rental" system to prevent map clutter. Players must pay a recurring fee to keep their protection active.
The system checks for tax due every time the owner opens the chest.
Configurable: Set the tax amount and frequency (e.g., every 24 hours).
Management GUI Update:
Added a Tax Info (Gold Ingot) icon in the Shift+Right-Click menu. Players can now view their daily tax rates and payment status directly in-game.
🛡️ Administrative & VIP Enhancements New Bypass Permissions:
chestlock.bypass.cost: Allows players (VIPs/Staff) to lock containers for free.
chestlock.bypass.tax: Exempts specific players from the Daily Rental Tax.
Maintenance Integration:
The Auto-Expire logic is now fully integrated with the block-breaking system. If a player has been inactive for 30+ days (configurable), their locks become breakable by the public, acting as an automatic "raiding" or "cleanup" mechanic.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:jRewrdhN:QwWG71qY"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:jRewrdhN:QwWG71qY"
}

