Skip to content

Protection Plugins

TheBusyBot edited this page Sep 1, 2024 · 1 revision

Slimefun4 supports a lot of protection plugins out of the box.
This is done in order to prevent players from abusing Slimefun Items to grief other people.
This article contains a list of all supported protection plugins as well as instructions on how to add support for your plugin.

Supported Protection Plugins

The following plugins are supported by default.
Plugins that support offline players will even provide support for Programmable Androids if the owner of that android is offline.
If a plugin does not support offline players, then your android will always require you to be online in order to function properly

✔️ = Full Support
➖ = Partial Support (e.g. only in unprotected regions)
❌ = No Support
N/A = Not applicable

Plugin Support for Players Support for Offline Players Support for PvP Support for Entities
ASkyBlock ✔️ ✔️
BentoBox ✔️ ✔️ ✔️ ✔️
BlockLocker ✔️ ✔️ N/A N/A
ChestProtect ✔️ ✔️ N/A N/A
FactionsUUID ✔️ ✔️ ✔️ ✔️
FunnyGuilds ✔️
GriefPrevention ✔️ ✔️ ✔️
HuskTowns ✔️ ✔️ ✔️ ✔️
LandLord ✔️ ✔️ ✔️ ✔️
Lands ✔️ ✔️ ✔️ ✔️
Lockette ✔️ ✔️ N/A N/A
LWC ✔️ N/A N/A
PlotSquared ✔️ ✔️ ✔️ ✔️
PreciousStones ✔️ ✔️ ✔️
RedProtect ✔️ ✔️ ✔️
Towny ✔️
WorldGuard ✔️ ✔️ ✔️ ✔️

You cannot see your protection plugin?

Either the plugin offers no integration, support for it hasn't been added by the author of that plugin or it is actually supported.
A lot of plugins actually require WorldGuard or other plugins from the above list and use that plugin in the background.
If a plugin does not show up in this list, then please ask the author of that plugin if it uses another protection plugin in the background.

If it does not, then feel free to link them this article as we will walk over how to add support later.

Supported Protection Loggers

Slimefun4 also supports a few protection loggers.
These loggers can for example allow you to rollback certain actions, such as blocks destroyed in an unusual manner by Slimefun Items.
Here is a list of all plugins we support by default.

Plugin Support for broken Blocks Support for placed Blocks
CoreProtect ✔️ ✔️
LogBlock ✔️

Adding Support for your protection plugin

Protection Integration is handled in dough (https://github.com/baked-libs/dough).
To add support for your own plugin, all you have to do is make a Pull Request to that repository.
Here is what you need to do:

  1. Add your plugin as a dependency to the pom.xml (in dough-api and dough-protection)
  2. Create a new class that extends ProtectionModule.java and add it to the modules - package
  3. Override the required methods; make sure to distinguish between the different types of Interaction.java; also consider to add support for offline players or make an instanceof-check if not.
  4. Load an instance of your class when your plugin loads in ProtectionManager.java
  5. Submit a Pull Request to dough
Clone this wiki locally