AntiBuild
About
Simple, efficient, and lightweight plugin that will prevent interaction with blocks until the proper permission is granted. This plugins stops all types of block interaction and it even stops bucket use and painting interaction. It also sends a customizable message to the player who is denied building rights. Before you say this already exists just look at how lightweight this plugin is compared to some of the others. This is for server owners who need a building prevention plugin that is as lightweight as possible.
What is the advantage of this?
- As a server owner myself I have been looking for a long time to find a plugin that just stops my guests from building until they are promoted to the next rank. The only thing I found for this had so many other options that I did not want or need that it forced me to make my own. For comparison the plugin I was previously using was 400 times larger in file size than AntiBuild. Sure, it did a lot more, but I didn't want any of that other stuff.
Main Features
- Prevents breaking of blocks
- Only allow player to place certain blocks without having to blacklist a bunch of blocks
- Prevents placing of blocks
- Only allow player to break certain blocks without having to blacklist a bunch of blocks
- Prevents the use of flint and steel
- Prevents the use of lava and water buckets
- Prevents all interaction with paintings
- Prevents all interaction with item frames
- Prevents opening chests, furnaces, anvils, beacons, brewing stands, crafting tables, dispensers, enchanting tables, ender chests, and workbenches.
- Blacklist blocks
- Lock/unlock building in worlds with a command
- Simple to use
- Very efficient checks
- Extremely lightweight
Per-Block Permissions
AntiBuild allows you to give permissions to players that only allow them to place or break certain blocks. This is very handy when you only want a player to be able to place/break a few blocks. An example use would be an adventure map where a player is only allowed to break stone, log, coal ore, diamond ore, and iron ore. All you need to do is assign the player the permission node antibuild.break.[ID] and replace the [ID] with the block ID of the block you want them to be able to break. If you want them to be able to place only certain blocks you can give them antibuild.place.[ID] and replace [ID] with the block id of the block you want them to be able to place.
Blacklist
AntiBuild has a built in feature for blacklisting blocks by their Item ID. This is a 100% optional feature and it is disabled by default. To enable it open the config.yml and change the Blacklist-On value from false to true. Once it is enabled any block ID that is listed under Blacklisted-Blocks will be blocked from placing or breaking. If a player has the permission antibuild.blacklist they will be able to bypass the blacklist check completely. If a player has the permission antibuild.blacklist.[Item ID] (example: antibuild.blacklist.7) they will be able to bypass the check for that item ID only.
World Locking
AntiBuild also has a built in feature for locking worlds that you would normally allow players to build in. This is handy for adventure maps, special events, group builds, or any other reason you can think of to temporarily lock a world.
You can lock a world in game by typing /antibuild lock [world name]. Once this is done only people with antibuild.lock.bypass permission will be able to build. All others will be denied building rights. To unlock a world you would type /antibuild unlock [world name] and this will allow everyone to build that would normally have had access to build. To check and see what worlds are currently locked you can type /antibuilt list and this will display the currently locked worlds.
Commands
All commands will work from in game with the proper permission and from the console.
/antibuild reload | Reload the config. Requires permission: antibuild.reload |
/antibuild lock [world] | Lock the provided world. Requires permission antibuild.lock |
/antibuild unlock [world] | Unlock the provided world. Requires permission antibuild.lock |
/antibuild list | Display currently locked worlds. Requires permission antibuild.lock |
Permissions
Normal Permissions
Node | Usage |
---|---|
antibuild.bypass | Allows the bypass of AntiBuild checks. This is the main permission node that will allow/deny players from interacting. If you don't need any of the other features and just want to allow a player to build/interact give them this permission. |
antibuild.break | Allows the breaking of blocks |
antibuild.break.[ID] | Allows the breaking of block with the provided block ID |
antibuild.break.[ID].[metadata] | Allows the breaking of block with the provided block ID with specific metadata |
antibuild.place | Allows the placing of blocks |
antibuild.place.[ID] | Allows the placing of block with the provided block ID |
antibuild.place.[ID].[metadata] | Allows the placing of block with the provided block ID with specific metadata |
antibuild.fire | Allows the use of flint and steel |
antibuild.bucket | Allows the use of all buckets |
antibuild.bucket.lava | Allows the use of lava buckets ( fill and pour) |
antibuild.bucket.water | Allows the use of water buckets ( fill and pour) |
antibuild.painting | Allows interaction with paintings and item frames (break/place) |
antibuild.interact | Allows interaction with all inventory type blocks. |
antibuild.anvil | Allows interaction with anvils |
antibuild.beacon | Allows interaction with beacons |
antibuild.brewing | Allows interaction with brewing stands |
antibuild.chest | Allows interaction with chests (including storage minecarts) |
antibuild.dispenser | Allows interaction with dispensers |
antibuild.enchanting | Allows interaction with enchanting tables |
antibuild.enderchest | Allows interaction with ender chests |
antibuild.furnace | Allows the interaction with furnaces |
antibuild.hopper | Allows the interaction with hoppers |
antibuild.workbench | Allows the interaction with crafting benches |
antibuild.pickupitems | Allows the player to pickup items on the ground |
antibuild.dropitems | Allows the player to drop items from their inventory |
antibuild.blacklist.break | Allows the bypass of blacklisted blocks for breaking |
antibuild.blacklist.break.[ID] | Allows the bypass of blacklisted block with entered Item ID. Example: antibuild.blacklist.break.7 |
antibuild.blacklist.place | Allows the bypass of blacklisted blocks for placing |
antibuild.blacklist.place.[ID] | Allows the bypass of blacklisted block with entered Item ID. Example: antibuild.blacklist.place.7 |
Admin Permissions
Node | Usage |
---|---|
antibuild.lock | Allows user access to the lock/unlock/list commands |
antibuild.lock.bypass | Allows the bypass of locked worlds |
antibuild.lock.bypass.[world name] | Allows the bypass of locked world with specified name |
antibuild.reload | Allows access to the reload command |
Configuration
When you first run AntiBuild the plugin will generate a default config.yml and a lockedWorlds.yml. Do not touch the lockedWorlds.yml (lock worlds with in game commands). There are several options in the config.yml. You may not need to change any of them. See the comments in the config.yml file for information on them. The next option is whether or not you want the blacklist to be enabled. If you already have a plugin that blacklists blocks (or you just don't want to use it) leave it set to false and it will not do anything. If you set Blacklist-On to true you can now start to enter item IDs of the blocks you wish to block. This only supports item IDs because it saves a decent amount of time when checking block break/place events with just he ID instead of the name.
See the default config here.
Installation
- Put AntiBuild in your plugin folder
- Start server to generate default config.yml
- Use with the default settings or customize it to your liking and restart or reload the plugin.
Upcoming Features
- Feel free to make a request, but keep in mind this plugin will stay lightweight.
If you have a request please create a ticket here: https://github.com/MutinyCraft/AntiBuild/issues
Need help or just want to chat? Find me on EsperNet on #MutinyDev or #MutinyCraft
How i can tag loom , grindstone and other new workbenches!!!
Can you please add 'antibuild.interact.ID' and 'antibuild.interact.ID [Metadata]?
Because I like to hang "trap_door" or "fence_gate" for example, or give me a way to block this thing and not blocked other interaction. Can also add the "dropper" in your list "anti.interact".
I think it would be good for your plugin. Meanwhile, I congratulate you on what is already on the plugin. Thank you to answer me even if it's to tell me that this is impossible. kindly MrBABA
can u tell me what exactly i need to put in the [world] area?
Add farmprotect :)
Upgrate for 1.8 please. Very simple and useful
@JaMiE4866
you need to set up a permission plugin like PEX and set the world build groups. You then use the ntibuild.bypass or any of the permission nodes in those world groups so that when players move over to other worlds it allows them. ;-) hop that helps
Hello,
I think this is a really good plugin as there is no other plugins like it but I have an issue.
Basically it protects every single world instead of just a few. This is quite a problem on my server because then the skyblock and creative plots won't work. I have tried the permissions to build in worlds but they still don't work. I'm sure there is a way round it but I can't find one.
Please can anyone help?
was wondering if there was a way to prevent players from messing with item within the item frames?
@MutinyCraft
I could successfully set up Essentials Group Manager, - with your patient help - I could solve all my problems with it!
Thanks for your help again!
@Aron2007
That one should be fine if you like it. Essentials Group Manager is probably the easiest to use if you are new to running a server. Once you add a permissions plugin you will need to either add the permission node to a user or to a group. You can do this from in game via a command for the specific permissions plugin you choose. If you choose Group Manager the command would be something like
. Be sure to replace <group> with the group name you create.
@MutinyCraft
Please tell me what permissions plugin should i install (i found available plugin PermissionsBukkit, will it be ok?), and in config.yml where exactly i write these nodes antibuild.pickupitems: true and antibuild.dropitems: true?
groups: default: permissions: permissions.build: false
admin: permissions: permissions.*: true inheritance: - user user: permissions: permissions.build: true
worlds: creative: coolplugin.item: true inheritance: - default
Thanks for your help!
@Aron2007
It depends on which permission plugin you are using. There should be a command for adding permissions via your permissions plugin. Simply use that command and add the permission nodes that you mentioned to the group that you would like to be able to drop/pickup items.
Hello,
I have just started my first Minecraft (Bukkit) server provided by a professional Minecraft Server Host.
Just started learning how to add/remove Bukkit plugins to my server. I found this plugin very useful, since a newcomer player cannot destroy all the things i already built, however no clue where to add antibuild.pickupitems and antibuild.dropitems permission. It would be nice if my players could drop and pick up items. Please help me in wchich config files on my server i have to write in these two permission nodes.
Thanks for your help!
Cheers
hello im using antibuild and worldguard.. how can i make high priority the world region?
even if i make a region thats free to build and break antibuild blocks it. and cant build or break blocks on regions for non-ops ppl only.
please help.
Can I disable opening trap doors/doors and spinning itemframes?
@AriArk
I would use permissions with groups to do that. works for me
How do I enable building on just one world, because I have a survival world, a lobby and some other minigames. I want all protection to be disabled on survival. How do I do this. I've tried to enable the lock, then given the permission 'antibuild.lock.bypass.survival', but it doesn't work, is there another way? Do I have to allow all to build, then lock the worlds I don't want to build in? Or is there a simple way?
@Mbros
Just install a permissions plugin on your server (I recommend PermissionsBukkit). Then you can set up the permissions better than in the permissions.yml. Do you have any other questions? :)
Will OPs still be able to build? cuz I don't want myself to build or destory things, my players kept saying that I'm too op cuz I destroy things..
So, I'm currently using Anti-Build! But, I have a locked world where I just spawn animals for Skyblock users. Anyways, I want to lock the world so players can only kill the animals and pick up the drops from the animals. But when i do /antibuild lock <worldname>, I then add the permisson node: antibuild.lock.pickup, so players can pick up items in any world. So would anyone help me with this problem. I have the following plugins: Anti-Build, ChestShop, ClearChat, ClearLag, ColoredSigns, EssentialsChat, Essentials, EssentialsGroupManager, EssentialsProtect, EssentialsSpawn, HeavySpleef, IslandWorld, JavaDocs, Lockette, Mulitiverse-Core, PluginMetrics, TimedBroadcast, TimTheEnchanter, Updater, Vault, WorldEdit, WorldGuard, and WorldReset! Thank you anyone who helps, I really need help right now. If you can, please update this so this feature is available. Please PM me or reply back, Thank you again.