BlockProtection Reloaded
BlockProtection
This is a continuation of the BlockProtection plugin by Kanlaki101. A block protection plugin based off of OwnBlocks by cvenomz. BlockProtection will save any block you place down, to prevent other players from breaking it. Only the player who placed the block, anyone on his friends list, or an admin can break the block.
Developers, have suggestions, or would like to help? I welcome any and all help. Join me in IRC, or PM me!
Dependencies
Vault: Vault is required for BlockProtection to work on your server. Vault is used as an API so that BlockProtection can hook into almost every permissions system.
You can get Vault Link.
WorldEdit is Soft Dependencie. Needed for selected region block protection transfer.
You can get WorldEdit Link.
Features:
Block Protection
Every block your players place will be protected in the database.
Block Exclude List
Prevent certain blocks from being protected.
Admin Bypass
Your admins can bypass BlockProtection and break any player's blocks.
Friends System
Allow your players to build with friends! They can add/remove them as needed.
Where do I begin?
Installation:
- Make sure you have Vault installed.
- Drop BlockProtection.jar into your /plugins folder.
- On first load, config.yml, friendslist.yml, and the Database.db will be created.
- Open config.yml and edit it to your liking, then use the /bpreload command.
Permissions:
- bp.admin (Defaults to op) Allows players bypass BlockProtection, add blocks manually, and get the utility tool
- bp.friend (Defaults to true) Allows access to all of the Friends List features
- bp.reload (Defaults to op) Allows admins to reload all settings from the configuration file
- bp.user (Defaults to true) Allow players to use BlockProtection, and view the owner of blocks
- bp.giveblock (Defaults to op) Allows to give block (by Tool (stick by default))
- bp.transfer (Defaults to op) Allows to transfer blocks from WorldEdit selected region
Commands
- /bp [on/off] Toggle BlockProtection on/off, adding on/off is optional.
- /bpadd [playername] Add a player to your friends list
- /bpadmin Toggle BlockProtection bypass on/off
- /bpclear Clears your entire friends list
- /bplist List all players from your friends list
- /bpreload (Will not reload changes to "save-interval". Restart required!) Reloads settings from config.yml
- /bpremove [playername] Remove a player from friends list
- /bptool Gives the player 1 of the "utility tool"
- /bpgive [playername] All blocks will be given to Name player, by using Tool. To disable write /bpgive.
- /bptransfer [playername] After region selected by World edit. This command will transfer protection of selected blocks to [playername]. When no arguments are given the protection of the selected blocks will be removed. You need bp.transfer or bp.admin to do this.
- /bpimport [world] Import's blocks from WatchBlock MySQL. Check config for MySQL connection settings. If there are many blocks in the database please wait.
Suggestions/Help:
Very important: If you want something added or fixed, reply to questions I will ask!
To submit a ticket for help or a suggestion, click the ticket tab on the top of the page. Create a new ticket, and add the appropriate label.
I have som suggestions..the option to disable the broadcast,when saving the database,and perhaps support for mysql? Edit:already functional suggestion removed..
@lenivets09
Could you give me you server ip so i can come by? than i might be able to find out what the problem is:) And yeah, you need Vault for this to work...
@tiwar
I'll add that button right now:P
If i was not to laggi... plugin doesn't work with Essentials.
Sorry but i have :) all enabled , and no Errors.. And no work :)))
@lenivets09 perhaps a silly question:you have vault right?
Added permissions ... still doesn't work.. I can see that block owned By : balblabla
But i can destroy with Player any block..
When i write /bp its disable protection.. on Player - i dont have permission , but it's stupid. If user doesn't have permission he can destroy bloks o_O
@lenivets09
did you add bp.user & bp.friend in your permissions? try /bp ingame and see if it's on. regards tiwar
Doesnt do anythig for me... 1.4.6 0.2... Just writes with info tool owner of Block , but doesnt protect anythign.. I can steal break all blocks..
enable-by-default: true
enable-bypass-by-default: true
Trying with Admin and Player .. Player breaks Admin bloks..
@blackwolf12333
could you give me the format,so i can add the friendslist manually? probably the problem lies in some write accsess thingy,im running mineos plus. i will try to pinpoint it. and thank you for your time, cheers Edit:you should add a donate button
@tiwar
EDIT: That is weird, it works for me. Also you are right, this doesn't support multiple worlds totally, i'll add a function to disable it in specified worlds.
@blackwolf12333
sweet =) another thing i noticed now.Doing /bpadd does'nt add the user to my friends list. when typing /bplist afterwards,does'nt show any friends added. It does not add the friend to the list in "friendlist.yml" either. have any idea of what im doing wrong? cheers Edit:i have "bp.user" & "bp.friend" in permissions added. Edit 2: Sorry to bug you so much,but i came to think of another thing..How about the option to disable eg.nether from the blockprotection?
@tiwar
I can add that yeah, and also thanks for reporting the error:)
EDIT: Just saw what the error caused, it isn't really bad, but I'll have it fixed:)
and i have a request..
is it possible to make so you can't place blocks upon or to the side of a claimed block? cheers tiwar
This is a really nice Plugin :D
hi! im really glad you picked up on this plugin,thanks. the plugin loads fine,without any errors,but when it tries to save i get this. [start] 2012-12-29 06:09:56 [WARNING] [BlockProtection] Task #18 for BlockProtection v3.0.0 generated an exception java.lang.NullPointerException at info.kanlaki101.blockprotection.utilities.BPDatabase$1.run(BPDatabase.java:35) at org.bukkit.craftbukkit.v1_4_6.scheduler.CraftTask.run(CraftTask.java:53) at org.bukkit.craftbukkit.v1_4_6.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:530) at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849) 2012-12-29 07:09:56 [INFO] [33;1m[BlockProtection] Saving database. Expect some lag ...[m [end] regards tiwar