GriefDefender/bukkit/src/main/java/com/griefdefender/configuration/category/ClaimCategory.java

96 lines
7.7 KiB
Java
Raw Normal View History

2019-07-24 05:31:17 +02:00
/*
* This file is part of GriefDefender, licensed under the MIT License (MIT).
*
* Copyright (c) bloodmc
* Copyright (c) contributors
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
package com.griefdefender.configuration.category;
import java.util.ArrayList;
import java.util.List;
2019-07-24 05:31:17 +02:00
import ninja.leaping.configurate.objectmapping.Setting;
import ninja.leaping.configurate.objectmapping.serialize.ConfigSerializable;
@ConfigSerializable
public class ClaimCategory extends ConfigCategory {
1.3.1 Update * Fix wrong type being displaying in /claiminfo. * Fix claim teleport in nether. * Fix claim visuals in/out of liquids. * Fix inventory check on interaction. * Fix walkspeed, gamemode, and weather options not resetting back to default on claim exit. * Fix option gui not displaying decimals for doubles. * Fix entity dupe on schematic restore. * Fix claim schematic creation dates on load. * Fix wither causing damage when spawned by players. * Fix ice/snow form flags. * Fix visuals not showing on snow. * Fix inability to attack tameable entities with no owner. * Fix claim cleanup task exiting prematurely. * Fix scaffolding not breaking fully. * Fix Flag GUI preset/advanced translations. * Fix '/cog <group>' not displaying options for group. * Fix option GUI toggle value hover. * Fix block burn across blocks not triggering block-spread. * Fix monsters such as phantom and ghast not being ignored during entity-damage checks. * Fixed tamed entity protection when source is not entity. * Fix snow-melt showing up as block-modify instead of block-break * Fix player buckets not checking place or break. * Fix 'fire-spread' and 'vehicle-use' flag definitions. * Fix NPE when changing claim type * Fix visuals loading unloaded chunks. * Fix player options not being set while in claim. * Fix isTileInventory check. * Fix user playerdata in PlaceHolderProvider. * Fix claim resize exploit. * Fix flag definitions GUI not showing inheritance values. * Fix entity explosion getting wrong user sometimes. * Fix tracking data not always being saved. * Fix #crops tag not working. * Fix tnt chain explosions. * Add 'player-fly-speed' option. * Add support for decimal values in option GUI. * Add missing translation when deleting all player claims. * Add restore claim in progress message. * Add pl_PL language support. Thanks to Maul for contribution * Add permission 'griefdefender.admin.bypass.pvp-creative' to bypass pvp creative protection. * Add permission 'griefdefender.user.claim.rent.base' for new '/claimrent' command. * Add permission 'griefdefender.user.claim.rent.sign' to control rent sign usage. * Add permission 'griefdefender.user.claim.sell.sign' to control sell sign usage. * Add flag definition 'turtle-egg-hatch' * Add flag definition 'falling-block-break' . * Add flag definition 'fire-entity-damage'. * Add flag/option enable control to respective configs. * Add group context support for flag definitions. * Add new context gd_claim_default=user and gd_claim_override=user which applies to all claim types except wilderness and admin. * Add owner override support with gd_claim_override=claim context. You can use this context to have owners be affected in claims. They also have the ability to toggle these. * Add villager-trade and villager-farm definitions. * Add /claimtax command. * Add /claimrent command. Note: To create a rental via command ex. /claimrent 10h - creates rental for $10 per hour ex. /claimrent 10h 5 - creates rental for $10 per hour w/ max 5 days. * Add claim restore functionality for 1.14+ servers. Note: To restore a claim, use /claimrestore * Add toggle support for isExpired in /claiminfo * Add Rent/Sell signs. * Add item frame rotation protection. * Add support for 'AsyncWorldEdit'. * Add /claimrent command for displaying rentable claims. * Add PvP config to manage pvp control. * Add PvP protection when flying during PvP. * Add PvP protection when in creative mode. * Add override support for options. * Add gd_claim_override=claim support for /cf command. * Add entity-damage logs for monster damage. * Add tracking support for piston item spawns. * Add client visual queue to avoid sending too much traffic in a single tick. Default 12 block changes per tick. See 'client-visuals-per-tick' in global.conf to change. * Add 'filler-spacing' to visual config. Default 10 * Add explosion surface blacklists for block/entities. * Add new flag 'inventory-item-move' * Add falling block tracking. * Add rent-schematic-restore-admin for controlling rent restores in admin claims. * Add explosion-cancel-block-limit for controlling explosion block size limit in devents. * Enhance claim visual functionality. * Refactor visual backend to be more efficient with server resources. * Ensure block transactions are never sent more than once to client during a single visual update. * Further enhance visual functionality with left/right clicks. * Improve '/gddebug' by adding a fully functional filter. Ex. '/gddebug record creeper' would show all actions with creeper. Ex. '/gddebug record claim' will show only claim you are standing in. * Cleanup option permission lookups. * Implement visual API. * Improve claim getChunks call. * Improve context display in debug paste. * Allow renters to interact with living entities. * Allow bank/tax systems to be used separately. * Allow pistons to be protected in wilderness. * Confirm buttons will now be invalidated after first click. * Deny owner item spawns in claim that is rented and can restore. * Deny '/giveblocks' on self. * Check max accrued blocks during /giveblocks. * Only adjust accrued blocks when using /giveblocks. * Optimize tracking data saves. * Force last active date save on player login. * Ignore drowning damage. * Move 'pvp' user definition to admin. * Change 'player-health-regen' option default to 0. * Change 'player-walk-speed' option default to 0. * Change 'tax-rate' option default to 0.1 * Change 'fall-entity-damage' to global default context. * Change 'fall-player-damage' to global default context.
2020-06-06 01:26:14 +02:00
@Setting(value = "explosion-block-surface-blacklist", comment = "A list of source id's that cannot cause explosion damage to blocks above sea level."
+ "\nEx. If you add 'minecraft:creeper' to the list, creepers would not be able to cause blocks to explode above sea level."
+ "\nNote: This will have higher priority than 'explosion-block' flag.")
public List<String> explosionBlockSurfaceBlacklist = new ArrayList<>();
@Setting(value = "explosion-entity-surface-blacklist", comment = "A list of id's that cannot cause explosion damage to entities above sea level."
+ "\nEx. If you add 'minecraft:creeper' to the list, creepers would not be able to hurt entities above sea level."
+ "\nNote: This will have higher priority than 'explosion-entity' flag.")
public List<String> explosionEntitySurfaceBlacklist = new ArrayList<>();
@Setting(value = "explosion-surface-block-level", comment = "The 'Y' block level that is considered the surface for explosions. (Default: 63)")
public int explosionSurfaceBlockLevel = 63;
@Setting(value = "claim-block-task-move-threshold", comment = "The minimum threshold of movement (in blocks) required to receive accrued claim blocks. (Default: 0)"
+ "\nNote: The claim block task runs every 5 minutes which is the time each player will get to move the required amount of blocks.")
public int claimBlockTaskMoveThreshold = 0;
Update for 1.5.9 release. * Fix playerdata getting wrong accrued claim block value if world context existed while in global mode. * Fix Citizen NPC's being denied entry to claim when flag 'enter-claim' is false. * Fix some zh_HK translations. * Fix NPE during potion splash. * Fix enderman-grief flag definition. * Fix villager-trade flag definition. * Fix villager-farm flag definition. * Fix timing NPE in EntityEventHandler. * Fix owner name showing for enter/exit prefix in wilderness/admin claims. * Fix untamed animals being denied when attacking eachother. * Add 'claim-block-task' setting in global.conf to control whether block accrue task runs. * Add animal-block-modify flag definition. * Add ravager-block-break flag definition. * Add silverfish-block-infest flag definition. * Add new visual config setting 'cuboid-level-visuals-2d' under visual category to control whether cuboid visuals should be show during inspection of 2d claims with owner min/max level between 0-255. * Add ru_RU translations for new flag definitions. * Remove 'ForSale' click function in '/claiminfo' as it is no longer needed. * Rewrite EntityChangeBlockEvent handling. Handler will now use the proper block flag when handling source/target block changes. * (Sponge) Fix 'flowing_water' spam in gddebug. * (Sponge) Add ice form/melt detection. * (Sponge) Fix NPE in Nucleus listener. * (Sponge) Fix rent sign interval. * (Sponge) Fix compatibility with LittleTiles mod. * (Sponge) Fix inability to disable modification/investigation tool in config. * (Sponge) Fix some more debug spam during block pre event.
2021-01-08 19:59:00 +01:00
@Setting(value = "claim-block-task", comment = "Whether claim block task should run to accrue blocks for players. (Default: True)"
+ "\nNote: If in economy-mode, use setting 'use-claim-block-task' under economy category."
+ "\nNote: To configure amount accrued, see 'blocks-accrued-per-hour' option at https://github.com/bloodmc/GriefDefender/wiki/Options-(Meta)#global-options")
public boolean claimBlockTask = true;
Update for 1.5.10 release. * Fix ClaimBlockTask prematurely exiting if a player had max claim blocks. * Fix TaxApplyTask not pulling funds from claim bank first. * Fix ClaimContextCalculator overwriting option claim contexts. * Fix player option commands running during a command causing a loop. * Fix player-command-enter running command from subclaim. * Fix player-command-exit running command to subclaim. * Fix player contexts not being added in all cases where a player is involved. * Fix flag definitions not accepting any context. * Fix elytra enter-claim bypass. * Add 'claim-create-radius-limit' to global config. * Add Simplified Chinese language support (zh_CN). * Add enter-claim flag permission check on player login. * Add enter/exit-claim support for player respawns. If denied, GD will respawn player back in source claim in a safe location. * Add TE NBT id support for mods such as gregtech. * (Hybrid) Fix mohist EntityType mod registration. * (Hybrid/Sponge) Add TE NBT id support for mods such as gregtech. See new setting 'tile-id-nbt-map' under mod category in global.conf * (Sponge) Add 'interact-item-force-list' to global config. Used to force interact-item flag checks when a player left/right-clicks with an item in hand. * (Sponge) Add check to prevent re-registration of worlds. * (Sponge) Add workaround during collisions when user is wrapped in ProjectileSource. * (Sponge) Add EntityThrowable support for getEntityOwner. * (Sponge) Add method to get internal DamageSource type name. * (Sponge) Fix NPE when cancelling claim with '/claimrent cancel' * (Sponge) Fix wrong block being checked during bucket interactions such as lava and water. * (Sponge) Fix block-pre not handing certain mod permission checks such as AE2 cables. * (Sponge) Fix 'block-id-convert-list' feature not using correct id during player interactions. * (Sponge) Fix item-pickup flag not checking trust.
2021-02-06 00:06:14 +01:00
@Setting(value = "claim-create-radius-limit", comment = "The radius limit for the /claimcreate command. (Default: 256)")
public int claimCreateRadiusLimit = 256;
Update for 1.5.0 * Fix blockstate id lookup not using proper id when block data was different than actual block. * Fix block-break showing air as target when source block broke on its own. * Fix race condition when migrating GP Bukkit playerdata. * Fix race condition during flag definition saves. * Fix wrong owner showing in claim when non-owner changes claim type. * Fix explosions causing no sound when cancelling event. * Fix rent min message showing max. * Fix rent min payment not being applied as credit. * Fix rent restore not working on rent end. * Fix sell sign not working when rent system was disabled. * Fix '/abandonall' not giving all money back when using economy mode. * Fix '/claimsell' requiring for sale to be turned on. * Fix '/givepet' taming pets without owner. * Fix explosion sounds not triggering on cancel. * Fix pvp 'allow-fly' only affecting creative mode. * Fix confirmation message not showing after abandoning a subdivision. * Fix wrong location being checked when placing water/lava with bucket. * Fix dynmap owner style colors not being used. * Fix NPE when using /reload. * Fix ghost claim overlap error when creating claim. * Fix user showing up as cause when using rtp. * Fix high memory usage caused by GDClaimManager fastutil usage. * (Bukkit) Fix NPE during InventoryMoveItemEvent. * (Sponge) Fix explosion-surface being triggered with no settings. * Refactor CompletableFuture handling when applying LP permissions and meta to avoid race conditions. * Remove owner override context for flag definition 'fire-spread' as it doesn't affect global overrides. * Change flag definition 'turtle-egg-hatch' target from 'air' to 'turtle-egg-hatch' * Change flag definition 'snow-melt' target from 'air' to 'snow' * Change onPlayerInteractBlockSecondary event priority from lowest to low in order to support plugins that need to cancel early. * Add support for CustomItems. Any customitem used in game will show up in debug as customitems:<item_id>. You can also use customitems for modification and investigation tool in config. * Add support for Slimefun4. Any slimefun item/block used in game will show up in debug as slimefun:<id>. You can also use slimefun items for modification and investigation tool in config. * Add '/acball' command for adjusting all online players' bonus blocks. * Add '/claiminvestigate' command to investigate claims. * Add '/claimtool' to toggle claim tool usage. * Add source/target any contexts to flag definitions. * Add 'piston-protection-in-claims' setting to control piston protection within claims. * Add pvp setting 'combat-logout' to determine if a player should be killed on logout during combat. Default 'false'. * Add `projectile-impact-entity` to `endcrystal-use` flag definition. * Add aquatic target for `monster-animal-damage` flag definition. * Add `restrict-world-max-height` to determine if claiming should be restricted to world max height. Default 'true'. * Add ability to control dynmap color settings by claim type. * Add permission griefdefender.user.claim.command.info.teleport.inside which controls whether a player can ONLY teleport within the claim they are in. This is useful if players become trapped. Note: This does not allow players to teleport to any other claim except the one they are in. It can only be used if the player cannot build in claim. * Add permission griefdefender.user.claim.command.info.others.creation-date to control whether a player sees creation date in /claiminfo * Add permission griefdefender.user.claim.command.info.others.last-active to control whether a player sees last active date in /claiminfo * Add permission griefdefender.user.claim.command.info.others.claim-uuid to control whether a player sees claim uuid in /claiminfo * All flag definitions will now persist. * Refresh player option cache on permission change. * Show TP info in '/claiminfo' when player does not have TP permission. * (Sponge) Use 'tnt' as identifier instead of 'primedtnt' to match bukkit. * (Sponge) Use 'item_frame' as identifier instead of 'itemframe' to match bukkit.
2020-08-16 06:39:38 +02:00
@Setting(value = "piston-protection-in-claims", comment = "Whether piston protection should be enabled within claims. Note: This does not affect pistons crossing into another claim, that is always protected. This only determines whether or not GD should process pistons if it doesn't cross into another claim.")
public boolean pistonProtectionInClaims = false;
2019-07-24 05:31:17 +02:00
@Setting(value = "auto-chest-claim-block-radius", comment = "Radius used (in blocks) for auto-created claim when a chest is placed. Set to -1 to disable chest claim creation.")
public int autoChestClaimBlockRadius = 4;
@Setting(value = "border-block-radius", comment = "Set claim border of specified radius (in blocks), centered on claim. If set to 1, adds an additional 1 block protected radius around claim.\n" +
"Note: It is not recommended to set this value too high as performance can degrade due to deeper claim searches.")
public int borderBlockRadius = 0;
Update for 1.5.0 * Fix blockstate id lookup not using proper id when block data was different than actual block. * Fix block-break showing air as target when source block broke on its own. * Fix race condition when migrating GP Bukkit playerdata. * Fix race condition during flag definition saves. * Fix wrong owner showing in claim when non-owner changes claim type. * Fix explosions causing no sound when cancelling event. * Fix rent min message showing max. * Fix rent min payment not being applied as credit. * Fix rent restore not working on rent end. * Fix sell sign not working when rent system was disabled. * Fix '/abandonall' not giving all money back when using economy mode. * Fix '/claimsell' requiring for sale to be turned on. * Fix '/givepet' taming pets without owner. * Fix explosion sounds not triggering on cancel. * Fix pvp 'allow-fly' only affecting creative mode. * Fix confirmation message not showing after abandoning a subdivision. * Fix wrong location being checked when placing water/lava with bucket. * Fix dynmap owner style colors not being used. * Fix NPE when using /reload. * Fix ghost claim overlap error when creating claim. * Fix user showing up as cause when using rtp. * Fix high memory usage caused by GDClaimManager fastutil usage. * (Bukkit) Fix NPE during InventoryMoveItemEvent. * (Sponge) Fix explosion-surface being triggered with no settings. * Refactor CompletableFuture handling when applying LP permissions and meta to avoid race conditions. * Remove owner override context for flag definition 'fire-spread' as it doesn't affect global overrides. * Change flag definition 'turtle-egg-hatch' target from 'air' to 'turtle-egg-hatch' * Change flag definition 'snow-melt' target from 'air' to 'snow' * Change onPlayerInteractBlockSecondary event priority from lowest to low in order to support plugins that need to cancel early. * Add support for CustomItems. Any customitem used in game will show up in debug as customitems:<item_id>. You can also use customitems for modification and investigation tool in config. * Add support for Slimefun4. Any slimefun item/block used in game will show up in debug as slimefun:<id>. You can also use slimefun items for modification and investigation tool in config. * Add '/acball' command for adjusting all online players' bonus blocks. * Add '/claiminvestigate' command to investigate claims. * Add '/claimtool' to toggle claim tool usage. * Add source/target any contexts to flag definitions. * Add 'piston-protection-in-claims' setting to control piston protection within claims. * Add pvp setting 'combat-logout' to determine if a player should be killed on logout during combat. Default 'false'. * Add `projectile-impact-entity` to `endcrystal-use` flag definition. * Add aquatic target for `monster-animal-damage` flag definition. * Add `restrict-world-max-height` to determine if claiming should be restricted to world max height. Default 'true'. * Add ability to control dynmap color settings by claim type. * Add permission griefdefender.user.claim.command.info.teleport.inside which controls whether a player can ONLY teleport within the claim they are in. This is useful if players become trapped. Note: This does not allow players to teleport to any other claim except the one they are in. It can only be used if the player cannot build in claim. * Add permission griefdefender.user.claim.command.info.others.creation-date to control whether a player sees creation date in /claiminfo * Add permission griefdefender.user.claim.command.info.others.last-active to control whether a player sees last active date in /claiminfo * Add permission griefdefender.user.claim.command.info.others.claim-uuid to control whether a player sees claim uuid in /claiminfo * All flag definitions will now persist. * Refresh player option cache on permission change. * Show TP info in '/claiminfo' when player does not have TP permission. * (Sponge) Use 'tnt' as identifier instead of 'primedtnt' to match bukkit. * (Sponge) Use 'item_frame' as identifier instead of 'itemframe' to match bukkit.
2020-08-16 06:39:38 +02:00
@Setting(value = "restrict-world-max-height", comment = "Whether to restrict claiming to world max height. (Default: True")
public boolean restrictWorldMaxHeight = true;
2019-07-24 05:31:17 +02:00
@Setting(value = "expiration-cleanup-interval", comment = "The interval in minutes for cleaning up expired claims. Default: 0. Set to 0 to disable.")
public int expirationCleanupInterval = 0;
Update for 1.2.0 release. * Implement custom flag system to allow admins to create any flag they desire with contexts. See wiki for more info. * Rewrite option and flag GUI's to be more user friendly. * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling * Refactor option system to support generics. * Add many new options. See https://github.com/bloodmc/GriefDefenderAPI/blob/master/src/main/java/com/griefdefender/api/permission/option/Options.java * Add new permission 'griefdefender.user.claim.option' to control what options user's can use in their claims. Ex. If a user tries to use 'player-deny-fly', GD will check 'griefdefender.user.claim.option.player-deny-fly' * Added the following permissions to allow admins to designate a player to manage options 'griefdefender.admin.claim.command.option.group.{type}' 'griefdefender.admin.claim.command.option.player.{type}' * Add new claim restore setting 'auto-schematic-restore'. This setting will allow servers to have newly created claims auto-generate a schematic. When these claims expire, the auto-generated schematic will be used for restore. Note: This setting is only designed for newly created worlds where players cannot build in the wilderness. Use with caution and read comments carefully. * Add new message setting 'enter-exit-chat-type'. This setting is used to control the default chat type (Chat/ActionBar/Title) used when sending enter/exit claim messages to players. Note: This can be overridden by plugins. * Add support for controlling raids. You can find the new toggle in /raid * Add various GP command aliases to make it easier for users transitioning to GD * Add confirmations for all claim delete commands. * Add GPFlags migrator. Note: When the GP Bukkit migrator is enabled, GD will automatically look for GPFlags data and migrate with claim data. * Add support for EntityCombustByBlockEvent, EntityCombustByEntityEvent, and EntityDamageByBlockEvent. * Add EssentialsX hook to deny '/fly' command when 'player-deny-flight' is true for a user * Add event result cache. * Add contexts to hover in '/cf' command * Add /givepet command * Add confirmations to abandon and delete commands * Add support for /sellblocks in economy mode * Add new messages for economy mode * Fix NPE during checkSizeLimits * Fix interactions with custom inventories. * Fix custom flags not showing up in '/cf' command. * Fix interact-inventory denying action when interact-block-secondary is true * Fix interact-inventory not checking entity ids. * Fix shovel location being reset with insufficient blocks * Fix GP Bukkit migrator not handling subdivisions properly. * Fix 'block-break' flag being ignored in wilderness * Fix invalid playerdata UUID files being loaded causing errors in console. * Fix HashSet error in TaxApplyTask * Fix 'command-execute' flag * Fix PvP setting in /claiminfo. * Fix claim overrides not checking default group. * Fix various message issues * Fix 'minecraft:air' showing up as used_item context. * Fix EntityChangeBlockEvent user tracking. * Fix abandonclaims not returning blocks to player. * Fix players not being able to use pet inventories in other claims. * Fix players being kicked when using gd callbacks. * Fix '/cf' display issues * Fix '/cf' mod id not being set properly with contexts * Fix '/cf' item id context lookups * Fix '/scb' command * Fix '/gddebug' start/end time. * Fix economy plugin detection * Fix economy mode buy/sell not applying proper funds * Fix ClaimBlocks task not depositing funds while in economy mode * Prevent /buyblocks working in economy mode * Remove economy mode check from /scb and /acb * Rewrite option and flag GUI's to be more user friendly. * Improve PermissionHolderCache * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling Note: '/lp verbose' will no longer be able to track GD flag lookups. * Increase cache to 30min * Change gddebug paste site to griefdefender.github.io
2019-08-23 22:49:00 +02:00
@Setting(value = "auto-nature-restore", comment = "Whether survival claims will be automatically restored to world generated state when expired. \nNote: This only supports world generated blocks. Consider using 'auto-schematic-restore' if using a custom world.")
2019-07-24 05:31:17 +02:00
public boolean claimAutoNatureRestore = false;
Update for 1.2.0 release. * Implement custom flag system to allow admins to create any flag they desire with contexts. See wiki for more info. * Rewrite option and flag GUI's to be more user friendly. * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling * Refactor option system to support generics. * Add many new options. See https://github.com/bloodmc/GriefDefenderAPI/blob/master/src/main/java/com/griefdefender/api/permission/option/Options.java * Add new permission 'griefdefender.user.claim.option' to control what options user's can use in their claims. Ex. If a user tries to use 'player-deny-fly', GD will check 'griefdefender.user.claim.option.player-deny-fly' * Added the following permissions to allow admins to designate a player to manage options 'griefdefender.admin.claim.command.option.group.{type}' 'griefdefender.admin.claim.command.option.player.{type}' * Add new claim restore setting 'auto-schematic-restore'. This setting will allow servers to have newly created claims auto-generate a schematic. When these claims expire, the auto-generated schematic will be used for restore. Note: This setting is only designed for newly created worlds where players cannot build in the wilderness. Use with caution and read comments carefully. * Add new message setting 'enter-exit-chat-type'. This setting is used to control the default chat type (Chat/ActionBar/Title) used when sending enter/exit claim messages to players. Note: This can be overridden by plugins. * Add support for controlling raids. You can find the new toggle in /raid * Add various GP command aliases to make it easier for users transitioning to GD * Add confirmations for all claim delete commands. * Add GPFlags migrator. Note: When the GP Bukkit migrator is enabled, GD will automatically look for GPFlags data and migrate with claim data. * Add support for EntityCombustByBlockEvent, EntityCombustByEntityEvent, and EntityDamageByBlockEvent. * Add EssentialsX hook to deny '/fly' command when 'player-deny-flight' is true for a user * Add event result cache. * Add contexts to hover in '/cf' command * Add /givepet command * Add confirmations to abandon and delete commands * Add support for /sellblocks in economy mode * Add new messages for economy mode * Fix NPE during checkSizeLimits * Fix interactions with custom inventories. * Fix custom flags not showing up in '/cf' command. * Fix interact-inventory denying action when interact-block-secondary is true * Fix interact-inventory not checking entity ids. * Fix shovel location being reset with insufficient blocks * Fix GP Bukkit migrator not handling subdivisions properly. * Fix 'block-break' flag being ignored in wilderness * Fix invalid playerdata UUID files being loaded causing errors in console. * Fix HashSet error in TaxApplyTask * Fix 'command-execute' flag * Fix PvP setting in /claiminfo. * Fix claim overrides not checking default group. * Fix various message issues * Fix 'minecraft:air' showing up as used_item context. * Fix EntityChangeBlockEvent user tracking. * Fix abandonclaims not returning blocks to player. * Fix players not being able to use pet inventories in other claims. * Fix players being kicked when using gd callbacks. * Fix '/cf' display issues * Fix '/cf' mod id not being set properly with contexts * Fix '/cf' item id context lookups * Fix '/scb' command * Fix '/gddebug' start/end time. * Fix economy plugin detection * Fix economy mode buy/sell not applying proper funds * Fix ClaimBlocks task not depositing funds while in economy mode * Prevent /buyblocks working in economy mode * Remove economy mode check from /scb and /acb * Rewrite option and flag GUI's to be more user friendly. * Improve PermissionHolderCache * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling Note: '/lp verbose' will no longer be able to track GD flag lookups. * Increase cache to 30min * Change gddebug paste site to griefdefender.github.io
2019-08-23 22:49:00 +02:00
@Setting(value = "auto-schematic-restore", comment = "Whether survival claims will be automatically restored to its claim creation schematic on abandon/expiration. "
+ "\nNote: Enabling this feature will cause ALL newly created claims to automatically create a special schematic that will be used to restore claim on abandon/expiration."
More fixes and improvements for 1.2.2 release. * Fix flags being reset on claim deletion. * Fix user claim flag permission check. * Fix sign interaction not using proper flag 'interact-block-secondary'. * Fix '/claimexpand' and '/claimcontract' tab completion. * Fix 'entity-damage' flag attempting to protect dropped items. * Fix 'player-keep-inventory' not clearing drops on death. * Fix 'player-keep-level' not clearing XP drops on death. * Fix EntityChangeBlockEvent using wrong source location. * Fix claim create mode triggering twice on first right-click. * Fix default/override claim types not showing up properly in Flag GUI. * Fix entity-damage flag not using proper user on left-click. * Fix abandon-delay default value. * Remove ability to resize claims when auto-schematic-restore is enabled. * Add support for setting no modification/investigation tool in config. * Add '/claim', '/gd mode claim' command to toggle a new claim mode for inspecting and claim creation. * Add 'combat-timeout' pvp setting to config to control how long a player stays in pvp combat after an attack. * Implement 'abandon-delay' option. * Implement 'player-teleport-delay' option. * Implement 'pvp' option. - When a player attempts to attack another player, both players must have pvp allowed. If 1 player is not allowed to PvP, the attack will be cancelled. * Improve '/claimlist' command. - Only trusted claims will be shown to users. - Admins can use '/ignoreclaims' to see all claims. - Fixed server crash if too many claims were listed. - Fixed subdivision filter. * Improve '/claimspawn' command. - The command now takes the following arguments '/claimspawn [name] [player]' Ex. If you want to spawn in a claim that you own named 'lair', you would enter '/claimspawn lair' Ex. If you want to spawn in a claim owned by 'Mike' named 'stables', you would enter '/claimspawn stables mike' * Improve flag definition defaults. * Improve flag default configuration. Fixes #51, Fixes #53, Fixes #54 Fixes #55, Fixes #56, Fixes #57
2019-09-18 17:28:49 +02:00
+ "\nNote: Enabling this feature will disable ability to resize claims."
Update for 1.2.0 release. * Implement custom flag system to allow admins to create any flag they desire with contexts. See wiki for more info. * Rewrite option and flag GUI's to be more user friendly. * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling * Refactor option system to support generics. * Add many new options. See https://github.com/bloodmc/GriefDefenderAPI/blob/master/src/main/java/com/griefdefender/api/permission/option/Options.java * Add new permission 'griefdefender.user.claim.option' to control what options user's can use in their claims. Ex. If a user tries to use 'player-deny-fly', GD will check 'griefdefender.user.claim.option.player-deny-fly' * Added the following permissions to allow admins to designate a player to manage options 'griefdefender.admin.claim.command.option.group.{type}' 'griefdefender.admin.claim.command.option.player.{type}' * Add new claim restore setting 'auto-schematic-restore'. This setting will allow servers to have newly created claims auto-generate a schematic. When these claims expire, the auto-generated schematic will be used for restore. Note: This setting is only designed for newly created worlds where players cannot build in the wilderness. Use with caution and read comments carefully. * Add new message setting 'enter-exit-chat-type'. This setting is used to control the default chat type (Chat/ActionBar/Title) used when sending enter/exit claim messages to players. Note: This can be overridden by plugins. * Add support for controlling raids. You can find the new toggle in /raid * Add various GP command aliases to make it easier for users transitioning to GD * Add confirmations for all claim delete commands. * Add GPFlags migrator. Note: When the GP Bukkit migrator is enabled, GD will automatically look for GPFlags data and migrate with claim data. * Add support for EntityCombustByBlockEvent, EntityCombustByEntityEvent, and EntityDamageByBlockEvent. * Add EssentialsX hook to deny '/fly' command when 'player-deny-flight' is true for a user * Add event result cache. * Add contexts to hover in '/cf' command * Add /givepet command * Add confirmations to abandon and delete commands * Add support for /sellblocks in economy mode * Add new messages for economy mode * Fix NPE during checkSizeLimits * Fix interactions with custom inventories. * Fix custom flags not showing up in '/cf' command. * Fix interact-inventory denying action when interact-block-secondary is true * Fix interact-inventory not checking entity ids. * Fix shovel location being reset with insufficient blocks * Fix GP Bukkit migrator not handling subdivisions properly. * Fix 'block-break' flag being ignored in wilderness * Fix invalid playerdata UUID files being loaded causing errors in console. * Fix HashSet error in TaxApplyTask * Fix 'command-execute' flag * Fix PvP setting in /claiminfo. * Fix claim overrides not checking default group. * Fix various message issues * Fix 'minecraft:air' showing up as used_item context. * Fix EntityChangeBlockEvent user tracking. * Fix abandonclaims not returning blocks to player. * Fix players not being able to use pet inventories in other claims. * Fix players being kicked when using gd callbacks. * Fix '/cf' display issues * Fix '/cf' mod id not being set properly with contexts * Fix '/cf' item id context lookups * Fix '/scb' command * Fix '/gddebug' start/end time. * Fix economy plugin detection * Fix economy mode buy/sell not applying proper funds * Fix ClaimBlocks task not depositing funds while in economy mode * Prevent /buyblocks working in economy mode * Remove economy mode check from /scb and /acb * Rewrite option and flag GUI's to be more user friendly. * Improve PermissionHolderCache * Refactor permission handling to support more permission plugins. * Refactor permission lookups to use storage directly for better context handling Note: '/lp verbose' will no longer be able to track GD flag lookups. * Increase cache to 30min * Change gddebug paste site to griefdefender.github.io
2019-08-23 22:49:00 +02:00
+ "\nNote: It is HIGHLY recommended to disable building in the wilderness before using this feature to avoid players exploiting."
+ "\nNote: It is also recommended to ONLY use this feature in newly created worlds where there is no existing player data."
+ "\nNote: This does NOT affect deletions. If admins want to restore back to original schematic, they can select '__restore__' by using /claimschematic command.")
public boolean claimAutoSchematicRestore = false;
More fixes and improvements for 1.2.2 release. * Fix flags being reset on claim deletion. * Fix user claim flag permission check. * Fix sign interaction not using proper flag 'interact-block-secondary'. * Fix '/claimexpand' and '/claimcontract' tab completion. * Fix 'entity-damage' flag attempting to protect dropped items. * Fix 'player-keep-inventory' not clearing drops on death. * Fix 'player-keep-level' not clearing XP drops on death. * Fix EntityChangeBlockEvent using wrong source location. * Fix claim create mode triggering twice on first right-click. * Fix default/override claim types not showing up properly in Flag GUI. * Fix entity-damage flag not using proper user on left-click. * Fix abandon-delay default value. * Remove ability to resize claims when auto-schematic-restore is enabled. * Add support for setting no modification/investigation tool in config. * Add '/claim', '/gd mode claim' command to toggle a new claim mode for inspecting and claim creation. * Add 'combat-timeout' pvp setting to config to control how long a player stays in pvp combat after an attack. * Implement 'abandon-delay' option. * Implement 'player-teleport-delay' option. * Implement 'pvp' option. - When a player attempts to attack another player, both players must have pvp allowed. If 1 player is not allowed to PvP, the attack will be cancelled. * Improve '/claimlist' command. - Only trusted claims will be shown to users. - Admins can use '/ignoreclaims' to see all claims. - Fixed server crash if too many claims were listed. - Fixed subdivision filter. * Improve '/claimspawn' command. - The command now takes the following arguments '/claimspawn [name] [player]' Ex. If you want to spawn in a claim that you own named 'lair', you would enter '/claimspawn lair' Ex. If you want to spawn in a claim owned by 'Mike' named 'stables', you would enter '/claimspawn stables mike' * Improve flag definition defaults. * Improve flag default configuration. Fixes #51, Fixes #53, Fixes #54 Fixes #55, Fixes #56, Fixes #57
2019-09-18 17:28:49 +02:00
@Setting(value = "investigation-tool", comment = "The item used to investigate claims with a right-click.\nNote: Set to empty quotes if you want to assign no item and use '/claim' mode exclusively.")
2019-07-24 05:31:17 +02:00
public String investigationTool = "minecraft:stick";
More fixes and improvements for 1.2.2 release. * Fix flags being reset on claim deletion. * Fix user claim flag permission check. * Fix sign interaction not using proper flag 'interact-block-secondary'. * Fix '/claimexpand' and '/claimcontract' tab completion. * Fix 'entity-damage' flag attempting to protect dropped items. * Fix 'player-keep-inventory' not clearing drops on death. * Fix 'player-keep-level' not clearing XP drops on death. * Fix EntityChangeBlockEvent using wrong source location. * Fix claim create mode triggering twice on first right-click. * Fix default/override claim types not showing up properly in Flag GUI. * Fix entity-damage flag not using proper user on left-click. * Fix abandon-delay default value. * Remove ability to resize claims when auto-schematic-restore is enabled. * Add support for setting no modification/investigation tool in config. * Add '/claim', '/gd mode claim' command to toggle a new claim mode for inspecting and claim creation. * Add 'combat-timeout' pvp setting to config to control how long a player stays in pvp combat after an attack. * Implement 'abandon-delay' option. * Implement 'player-teleport-delay' option. * Implement 'pvp' option. - When a player attempts to attack another player, both players must have pvp allowed. If 1 player is not allowed to PvP, the attack will be cancelled. * Improve '/claimlist' command. - Only trusted claims will be shown to users. - Admins can use '/ignoreclaims' to see all claims. - Fixed server crash if too many claims were listed. - Fixed subdivision filter. * Improve '/claimspawn' command. - The command now takes the following arguments '/claimspawn [name] [player]' Ex. If you want to spawn in a claim that you own named 'lair', you would enter '/claimspawn lair' Ex. If you want to spawn in a claim owned by 'Mike' named 'stables', you would enter '/claimspawn stables mike' * Improve flag definition defaults. * Improve flag default configuration. Fixes #51, Fixes #53, Fixes #54 Fixes #55, Fixes #56, Fixes #57
2019-09-18 17:28:49 +02:00
@Setting(value = "modification-tool", comment = "The item used to create/resize claims with a right click.\nNote: Set to empty quotes if you want to assign no item and use '/claim' mode exclusively.")
2019-07-24 05:31:17 +02:00
public String modificationTool = "minecraft:golden_shovel";
@Setting(value = "claims-enabled",
comment = "Whether claiming is enabled or not. (0 = Disabled, 1 = Enabled)")
public int claimsEnabled = 1;
@Setting(value = "player-trapped-cooldown", comment = "The cooldown time, in seconds, when using the '/trapped' command. (Default: 300)")
public int trappedCooldown = 300;
@Setting(value = "protect-tamed-entities", comment = "Whether tamed entities should be protected in claims. Default: true")
public boolean protectTamedEntities = true;
@Setting(value = "reserved-claim-names", comment = "A list of reserved claim names for use only by administrators."
+ "\nNote: Names support wildcards '?' and '*' by using Apache's wildcard matcher."
+ "\nThe wildcard '?' represents a single character."
+ "\nThe wildcard '*' represents zero or more characters."
+ "\nFor more information on usage, see https://commons.apache.org/proper/commons-io/javadocs/api-2.5/org/apache/commons/io/FilenameUtils.html#wildcardMatch(java.lang.String,%20java.lang.String)")
public List<String> reservedClaimNames = new ArrayList<>();
2019-07-24 05:31:17 +02:00
public ClaimCategory() {
}
}