New Options, Improved GUIs, Multi-Server support, LP v5, QoL/Stability Improvements and Fixes
IMPORTANT: Due to recent changes, you will need to backup then delete the following :
- ./plugins/GriefDefender/global.conf
- ./plugins/GriefDefender/lang
- ./plugins/GriefDefender/libs
This update finishes implementations of ALL options, adds LuckPerms v5 support, Multi-Server support for servers that share a LP database, and many quality of life improvements and bug fixes.
New player options
See
https://github.com/bloodmc/GriefDefender/wiki/Advanced-Options
Code (Text):
'player-command-enter' - Handles executing commands when a player enters a claim.
'player-command-exit' - Handles executing commands when a player exits a claim.
Note: both command options support the following placeholders : %player%, %owner%, %uuid%, %world%, %server%, %location%
'player-gamemode' - Used to determine the gamemode of a player when entering a claim.
'player-deny-godmode' - Used to determine if a player can be in godmode when entering a claim.
'player-walk-speed' - Controls the player walk speed when entering a claim.
'player-weather' - Controls player local weather when entering a claim.
'pvp-combat-command' - Used to determine if a player can use commands during PvP combat.
'pvp-combat-teleport' - Used to determine if a player can teleport during PvP combat.
'pvp-combat-timeout' - Used to determine how many seconds PvP combat is considered to continue after the most recent damage.
'radius-inspect' - Controls the radius in blocks to search within when inspecting for claims.
'spawn-limit' - Used to control the spawn limit for a specific set of entities in a claim.
Multi-Server Support
GriefDefender will now add a server context automatically if not set with a flag or option permission. This allows servers that share a permission database to not accidentally set permissions globally to all servers but only to the server they are on.
LuckPerms v5 Support
This version of GD now requires LP v5 in order to load correctly. You can find the latest LP version here
https://luckperms.github.io/
Spanish Language Support
GriefDefender now comes with a new translation for es_ES to support Spanish servers. A big thanks to YoSuboDeToh for providing the translations.
Changelog
Code (Text):
Sponge/Bukkit
* Fix teleport cancelled message showing after successful teleport.
* Fix command-execute and command-execute-pvp flags.
* Fix NPE in entity move handler.
* Fix door spam allowing user access.
* Fix debug filter with usernames.
* Fix permission lookups for 'any'.
* Fix command overrides.
* Fix '/cfg' and '/cog' commands.
* Fix 'create-mode' not working as intended.
* Fix 'any' usage with flag commands.
* Fix 'command-execute' usage.
* Fix 'command-execute-pvp' usage.
* Fix option removal/save with LP v5.
* Fix missing options from claim tab.
* Fix '/claimlist' showing claims to non-trusted users.
* Fix setOptionValue return result.
* Fix wrong version in 'plugin.yml'.
* Force local weather change to player on toggle.
* Add server context support.
* Add context support for controlling user flag command usage.
* Add context support to option GUI.
* Add permission 'griefdefender.user.claim.command.flag.arg' which controls if a user can use flag command with arguments.
* Add permission 'griefdefender.user.claim.command.flag.gui' which controls if a user can use flag GUI.
* Add new group context '#all' which can be used to represent all sources or targets.
* Add check for max inspection distance.
* Add radius-inspect option to config.
* Add active contexts when checking permissions.
* Add server context to getPermissionValue calls.
* Remove 'max-claim-inspection-distance' from config as it is now controlled by 'radius-inspect' option.
* Remove 'combat-timeout' from config as it is now controlled by 'pvp-combat-timeout' option.
* Implement Flag Definition API.
* Implement the following new options
'player-command-enter' - Handles executing commands when a player enters a claim.
'player-command-exit' - Handles executing commands when a player exits a claim.
Note: both command options support the following placeholders : %player%, %owner%, %uuid%, %world%, %server%, %location%
'player-gamemode' - Used to determine the gamemode of a player when entering a claim.
'player-deny-godmode' - Used to determine if a player can be in godmode when entering a claim.
'player-walk-speed' - Controls the player walk speed when entering a claim.
'player-weather' - Controls player local weather when entering a claim.
'pvp-combat-command' - Used to determine if a player can use commands during PvP combat.
'pvp-combat-teleport' - Used to determine if a player can teleport during PvP combat.
'pvp-combat-timeout' - Used to determine how many seconds PvP combat is considered to continue after the most recent damage.
'radius-inspect' - Controls the radius in blocks to search within when inspecting for claims.
'spawn-limit' - Used to control the spawn limit for a specific set of entities in a claim.
* Only save once when toggling flag definitions that include multiple definitions.
* Update LuckPermsProvider to v5.
* Improve PvP handling.
* Improve de_DE translations.
* Allow DynmapProvider to hide claim's by UUID.
* Allow teleports to non-trusted if claim is for sale and they have
permission to teleport.
* Deny teleport to non-trusted users if no permission.
* Server contexts will be automatically added if not found on set.
* Flag definitions will automatically add a server context if none is
found on deserialization.
* Option and Flag GUI will fallback to no server context if none is
found.
* Validate claim type permissions when using '/claimcreate'.
Sponge Only
* Fix block place handler not checking all transactions.
* Fix claim create triggering twice in claim mode.
* Fix some issues with visuals while claiming.
* Fix '/cf' command when using modid:any.
* Add support for fake player interacts.
* Add support for living entity mod id context groups.
Examples are as follows
modid:#all - This would block all entities with modid.
modid:#monster - This would block all monsters with modid.
modid:#animal - This would block all animals with modid.
These can be used in either source or target contexts.
* Improve sponge playerdata migration.