Condom is a production ready Spigot block-protection plugin designed to protect blocks players place down as soon as they place them down. This includes:
- Breaking support blocks (think blocks under doors)
- Using hoppers (hoppers can't steal from chests owned by the player, unless the player also owns the hopper)
- Using pistons
- Explosions
- Liquids
- Fire
- Physics Updates
- Accessing Protected Inventories
- Optional (Entity protection for tamed and placed entities)
- Optional (Redstone protection)
Condom stores the protection records using configurable storage provider. SQLite is default and is recommended for the flat access cost. There is additional support for MySQL, MariaDB, PostgreSQL, JSON and YAML stores though.
The plugin is built with performance in mind. Protection data is stored in a chunk cache, and chunk records are loaded asynchronously, dirty writes are queued and incremental cleanup of stale records is done without force-loading chunks.
Installation:
- Drop the jar into plugins folder.
- Start your server.
Commands:
Main Command:
/condom
Permission: condom.use
Player Commands:
/condom
- Show the available commands
Permission: condom.use
/condom trust <player>
- Trust a player to use your protected blocks.
Permission: condom.trust
/condom untrust <player>
- Untrusted a player.
Permission: condom.untrust
/condom trustlist
- Shows you the people you trust.
Permission: condom.trustlist
/condom info
- Shows the owner and information about the block ur looking at.
Permission: condom.info
/condom inspect
- Toggles "inspect mode" which allows u to right click blocks to see details.
Permission: condom.inspect
/condom infowand
- Inspection mode, but in an item.
Permission: condom.infowand
Admin Commands:
/condom reload
- Reloads the configuration file
Permission: condom.admin.reload
/condom admin setowner <player>
- Set's the owner of the block ur looking at.
Permission: condom.admin.setowner
/condom admin remove
- Removes the protection from the block ur looking at.
Permission: condom.admin.remove
/condom admin migration <provider>
- Prints and tells you how to migrate towards the provider you wish to move to.
Permission: condom.admin.migrate
/condom admin cache stats
- Shows loaded chunk, protected blocks, and protected entity cache counts.
Permission: condom.admin.cache
/condom admin cache unload
- Unloads the protection cache.
Permission: condom.admin.cache
/condom admin cleanup
- Shows cleanup stats.
Permission: condom.admin.cleanup
/condom admin cleanup stats.
- Shows last cleanup result, next scheduled run, running state, chunks scanned and records scanned.
Permission: condom.admin.cleanup
/condom admin cleanup run
- Runs a real cleanup pass.
Permission: condom.admin.cleanup
/condom admin cleanup dryrun
- Starts cleanup in a dry-run, reporting what should be removed.
Permission: condom.admin.cleanup
/condom admin debug.
- Shows cache, chunk-loade queue, and dirty-write queue stats.
Permission: condom.admin
Other Permissions:
condom.place
- Allows players to create protected blocks when placing their own.
condom.break.own
- Allows players to break their own protected blocks.
condom.interact.own
- Allows player to interact with their own blocks.
condom.inventory.own
- Allows players to open / use their own inventories.
condom.bypass.*
- Bypasses all checks.
condom.bypass.break
- Allows you to break all blocks.
condom.bypass.interact
- Allows you to interact with all blocks.
condom.bypass.inventory
- Allows you to interact with all inventories
condom.bypass.entity
- Allows you to bypass entity checks.
condom.bypass.redstone
- Allows you to bypass the redstone checks. (WIP / does not do what you think it does)
condom.bypass.hopper
- Allows you to bypass hopper movement protection checks.
condom.bypass.explosion
- Allows you to bypass explosion protection checks.
condom.bypass.piston
- Allows you to bypass piston protection checks.
condom.bypass.fire
- Allows you to bypass fire protection checks.
condom.bypass.liquid
- Allows you to bypass liquid flow protection checks.
condom.bypass.physics
- Allows you to bypass physics checks.
condom.admin
- Allows you admin-level access and all bypass checks.
Contact for issues:
jantuck on discord