Shield
Shield - A collection of common Bukkit protection plugin API
Author: Malikk
Version Beta 1.2
Shield is an API, bridging the gap between the many region protection plugins and the common plugin. Through Shield, plugin developers can easily access a variety of methods, without hooking a specific protection plugin, and have them applied universally. Hours of work adding support for a small handful of protection plugins is a thing of the past. A lot of work has been put into making Shield as easy to use as possible, so all of the api can be found in a single interface, clearly labeled and clearly documented automatically as soon as you've configured your build path.
Features
- Get region objects from Players, Locations, and names and prioritize them based on the config's plugin preference order.
- Run checks across several plugins and return whether or not all the plugins agree with permissions queries. (i.e. check canBuild across plugins)
- Set, edit, and check custom flags for you plugin
- Throw custom exceptions so you know exactly how to handle situations, such as an invalid region name or if a flag hasn't been set
Usage
Developers
To develop with Shield, all you have to do is download the jar and add it to your project's build path. For help hooking in Shield, check out the Shield Wiki.
Servers
Provided you are using a protection plugin supported by Shield and a plugin using its API, all you have to do is download Shield and drop it into your plugins folder. If you are using multiple protection plugins you can set their priorities in the config file.
Supported Protection Plugins
- Residence (http://dev.bukkit.org/server-mods/residence/)
- WorldGuard (http://dev.bukkit.org/server-mods/worldguard/)
- Regios (http://dev.bukkit.org/server-mods/regios/)
- AntiShare (http://dev.bukkit.org/server-mods/antishare/)
and soon many more!
Help
For help implementing and using Shield, check out the Github Wiki. Use the forums here for discussion and questions, and the tickets page for suggestions and bug reports.
I'll be leaving the comment section up here until I get some actual traffic.
@CommodoreAlpha
Thanks, but I've pretty much stopped work on it. No one was really chomping at the bits to use it and it was a colossal amount of work to get it even to the point where it is now.
There's actually been some action on the github page. If enough devs can help me out I'll go through all the pull requests and get this project back up and running, its just too much work for one guy to tackle the ins and outs of EVERY protection plugin AND the api and infrastructure that holds them all together.
I must say, this is an excellent plugin that's pretty underrated; I think the only reason why it's not more popular now is that most developers don't know about its existence. I believe most developers are still going through the tiresome practice of supporting protection plugins individually (mainly WorldGuard alone).
I forked this plugin. I will see if I can get some stuff expanded on for ya. If I get time. I would like to use this for my plugins for my server. However It lacks support for some plugins we use. I will try and help you out :)
I also help with ModDamage. It just does not list me on bukkit page. Only on github Readme page.
EDIT:
Its very very hard to update to latest version of AntiShare. So much of its API has changed. I got part of it to work.
Storm uses this: http://dev.bukkit.org/bukkit-plugins/storm/files/27-storm-v2-0-0/
Think that you could include Grief-Prevention on your protection list? I know you havn't looked into this in a while, but if you get back into it maybe give it a try?
Id rathewr dump factions, and use more squad based, so no worries here anymore works great.
@antichip
Probably factions updated and changed the name of something and Shield needs an update. If its a quick update, i'll fix it, but honestly no one uses this, lol. It hasn't taken off as much as i thought it would and it's a lot of work to maintain myself with my other plugins/actual life.
You should make a ticket tho, that will it will show up in my todo list.
hello, I am sorry bor the bother or inconvienience, first Off I shot a glass piece at my spawn and all glass attached to it shattered, I was so freaking mad as it was alot to do, i just walked away, then I walked back over and noticed it regenerating, so i dont mind, it is cool, but what about only breaking the one piece that was shot?
Ok now my real question
10:47:40 PM [INFO] [ShieldAPI] Detected Towny: Waiting 10:47:40 PM [SEVERE] [ShieldAPI] Plugin ShieldAPI vBeta 1.2 has failed to register events for class com.malikk.shield.plugins.Protect_Factions because com/massivecraft/factions/Faction does not exist. 10:47:40 PM [INFO] [ShieldAPI] Detected Factions: Waiting 10:47:40 PM [INFO] [ShieldAPI] Enabled
Any thoughts as to the cause of this?
Please support GriefPrevention :)
Dang, no support for GriefPrevention. Otherwise I would have used it.
@PhoenixOfWar
Making a flag for worldGuard defeats the entire point of Shield. And idk if it works on 1.5.1, I haven't tested it and no ones reported anything.
Does this work on 1.5.1?
I need it to go alongside with EpicGlass. Spawn has a lot of glass and well, can't have players just running into things. It's either Shield works and I install it, or; I disable/remove EpicGlass.
EpicGlass should add in a flag for WorldGuard "glassbreak" by default, so we don't have to wait on another plugin to update [at least, for those who use worldguard].
@sirnixalot98
This plugin takes a long time to update, as I have to update all the dependancies.
Update for 1.5?
@pacothegint
2 things
1) If you were following the wiki, that was outdated. It should be "ShieldAPI", not "Shield", as there is another plugin called Shield
2) plugin.log is not a built in method. You'll have to make it
I'm having problems hooking into the plugin. on the onEnable part both the plugin.log parts have errors any help?
@Malikk65
Yeah you can look at how I check the precious stones api, as it should be pretty straightforward as to how to handle other checks just by looking at mine there.
@titen96
I started adding it awhile back, but was having some problems with it's api, as its not so conventional compared to most protection plugins.
I can take another look at it soon, but I've also been talking about another dev about doing it and he might get it done quicker. It just depends on a lot of things.
Do you know how long until precious stones compatibility is added?
@TOOTHPlCK1
Oh, wow... This is what Shield aims to alleviate, lol.
I've been a bit unsure of how I wanted to add support for plugins that aren't full blown region systems, but simply lock chests, etc.
This will probably come in handy, thanks.