Grief Prevention

7.8 and Later GriefPrevention Configuration

This page attempts to document the new Configuration setup, options, and behaviours that have been changed and added to the Plugin since the last Release.

This Document is up to date to Development Build #282
Note that the "7.8" Version is used as a placeholder for the Development builds, since that is intended to be the eventual end result of the Development builds.
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Development builds are available from the jenkins build site.

GriefPrevention Configuration

Starting with Version 7.8, GriefPrevention will revamp almost entirely the way configurations are handled. This was done to support different configurations across different worlds. In addition, many configuration options have been expanded, changed, added, and even removed. This document will seek to document these configuration settings.

The Data Folder has changed!

In order to prevent the upgrade from obliterating existing configuration information, GriefPrevention 7.8 saves to the "GriefPrevention" folder, rather than "GriefPreventionData". This has been done because there are changes to the Flat Datastore format which will occur automatically if data is found but which are not reversible to allow for 7.7 to run again. You can copy or rename your existing GriefPreventionData folder, however do so with the knowledge that you will lose configuration information and may lose other data.

Backups

Sometimes there are data storage or other issues that can cause loss of data. It is advised that before updating the plugin you make sure you have up to date backups- this is particularly true for Beta and Development builds, but it's a rare case where a person regrets making a backup. If you are using the 'FlatFile' data store (this is the default) you will simply need to make a copy of your ./plugins/griefprevention folder. if you are using MySQL, you will need to backup, dump, or export the appropriate database. data loss is inevitable in the long run, so it's always a good idea to make backups before you try out a new version, that way if you have problems you can always roll back to a previous version.

Forge
Some server mods allow for the installation and use of Bukkit plugins. One popular solution is MCPC+. unfortunately because of how the Bukkit API is integrated into forge, GriefPrevention might not work as well as other Forge-native solutions (World-Guard may work better as it has a Forge-native mod that you can use).

Even so, GriefPrevention can be used on MCPC+. To that end, it also supports attempting to search through the configuration files of forge mods to try to find blocks the identify as containers or access protection. Griefprevention will be able to search through the Mod config files and discover the ID of applicable blocks. This is done by searching for specific patterns; first it searches for the block { section, then it will look for names that match a regular expression. The regular expressions used can be customized to add support for new blocks during a search. You can change the regular expressions in the config.yml, through the Mods.Container.IncludeRE and ExcludeRE settings. There are similar settings for Access Blocks as well as "Trash" blocks. These are Regular Expressions. The Plugin will search for the block section and then see if the name contains a match for the regular expression. If it matches and it does not match the exclusion regular Expression, it will be added as a container, Access, or Trash block. To learn about Regular Expressions, there are numerous sources online, such as http://www.regular-expressions.info/.

When this scan is completed, the scan config setting is set to false and the discovered items are saved to the template file and used when creating new world configurations.

config.yml

The standard goto file for GriefPrevention settings has up through 7.7, been config.yml. config.yml is still there, however most configuration options have been moved to separate world-specific configuration files. config.yml contains 'global' settings, including some settings about how to handle world configurations.

In the following, Group paths are specified using dot notation. each dot separated element represents a node in the yml tree.

GriefPrevention.Groups

This setting is used for specifying GriefPrevention-specific groups. Note that most GriefPrevention slash commands that accept a player name- in particular the various trust commands- also accept group names and even permission nodes. Permission nodes can be specified with square brackets, such as [Permission.Node], and group names can be specified by prefixing with g: as in g:groupname. It's also possible to explicitly deny access by prefixing an exclamation mark. This is primarily useful if you want to allow build trust to all players with a given node or in a given group, except for a few. A valid Groups setup might look like this:

  Groups:
    Awesome Dudes:
    - BigScary
    - Tux2
    - Mulreay
    - camerongray
    - cengbrecht
    Other Dudes:
    - somebody
    - Paul
    - Paul 2443
    - FatSally234
    - NotactuallyPaul
    - PaulthePoller    
    Pidgeon Mufflers:
    - Garglebargle
    - Choople
    - Chad
    Chickpea eaters:
    - fettered
    - finklestein
    - turkeytanner

Essentially, the griefprevention.groups section is a list of groups and their members.

Database/storage configuration

the config.yml setting GriefPrevention.DataStore indicates the data storage method to use. Valid options currently are flat or mysql. The options for the given Data Storage method are found in a separate configuration file, the "dataconfig.yml" file, which should be present in the same location as config.yml. They will contain a section for each type. Note that the "flat" storage method currently doesn't have any options.

mysql

The MySQL Data storage looks like this:

mysql:
  Host: localhost
  Database: GriefPrevention
  URL: jdbc:mysql://localhost/GriefPrevention
  Username: Jobber
  Password: Jobbers


You specify the Host, Database Name, and appropriate URL as well as Username and Password.

If a valid Flat file datastore is found, data will be migrated from that to the database if a database is selected. This is important to keep in mind: if you switch from MySQL to the flat storage mechanism and then switch back, the flat data will overwrite all your MySQL data due to a migration. the GriefPrevention.AllowAutomaticMigration setting controls whether this migration can take place. If that option is set to false than no migration will occur and you will 'start fresh'.

GriefPrevention.Claims.MaxAccruedBlocks
default:1000
is the maximum number of claim blocks a player can have; GriefPrevention.Claims.InitialBlocks is the starting number all players start with.

GriefPrevention.Claims.AutoSubClaimsSwitch
default:false
This is a global option, and determines whether using a golden shovel inside an existing claim for which the player has permissions will result in the automatic switch to the subclaims shovel mode, which would normally require the /subdivideclaims command. This will also switch from the subdivision mode if you use a shovel outside of a claim with subdivision mode enabled. Because this is not as intuitive as it was intended this option defaults to false.
GriefPrevention.Siege.CooldownTime
Specifies the timeout in seconds between sieges on the same player or claim. Defaults to one hour.
GriefPrevention.Claims.DeleteWithUnrecognizedOwner
default:false

When enabled, if a claim is found that has an owner for whom there is no playerData, that claim will be deleted.

GriefPrevention.EnableWorldWatcher

Enables or disables the world watcher listener. This is disabled by default. This is most useful for plugins that may in the future rely on the movement events that GriefPrevention can fire for claim entry and exit, which should also use API methods when they are instantiated to start this listener. The option is provided however in case it may be desirable to forcibly enable it for some reason, such as for plugins that may not be able to run startup code but are able to handle arbitrary events, such as scripted plugins.

GriefPrevention.DisabledCommands

Contains the list of GriefPrevention commands which GriefPrevention should not attempt to register. For example "ignore" is a common command to add to this list, as it is a command implemented by other plugins whose functionality may be preferred.
GriefPrevention.GlobalClaimsEnabled, GriefPrevention.GlobalPVPEnabled,GriefPrevention.GlobalSiegeEnabled, and GriefPrevention. GlobalSpamEnabled

These settings can be used to disable these settings across the entire server. In order for Claims, PVP, Siege, and Spam functionality to take place both this setting and the setting for the appropriate world must be true.

GriefPrevention.AllowAutomaticMigration

This option must be set for GriefPrevention to migrate data from the Flat datastore to the database.

World Configurations

Each world is packed with a number of configuration options:

GriefPrevention.SeaLevelOverride

This includes two "settings". GriefPrevention.SeaLevelOverride.Enabled determines whether the override is enabled, and if so the GriefPrevention.SeaLevelOverride.Setting entry is used to override the SeaLevel for GriefPrevention logic that deals with the Sea level of a world. The sea level of a world is used for several things, including Nature restore as well as the entries in the 'Rules' section. When disabled, Grief Prevention will use the Sea Level that is returned for the world itself through the bukkit API; In the Nether, this will be 32; in the overworld, 63. This setting is provided primarily because Sea Level values may not be set appropriately when using mods and/or plugins.

GriefPrevention.Rules

Starting with Dev build 90, GP has moved the "rules" to a separate category in order to prevent them from getting mixed in with the others. This section is filled with a heirarchy of values that indicate various rules for all sorts of behaviours. All of these entries have their own set of sectional data. For example:

GriefPrevention:
  Rules:
    CreeperExplosions:
      Wilderness:
        AboveSeaLevel: Allow
        BelowSeaLevel: Allow
        SeaLevel: 0
      Claims:
        AboveSeaLevel: Deny
        BelowSeaLevel: Deny
        SeaLevel: 0
        ClaimControl: Disabled

The rule here is "Rules.CreeperExplosions". And this rule is used to determine where creeper explosions are allowed. This setting allows Creeper explosions to destroy blocks in the wilderness, but not inside claims. Valid values for the AboveSeaLevel and BelowSeaLevel properties are Allow and Deny.

The "SeaLevel" Node can be an offset or an absolute value. prefixing a number with + or - will indicate that the rule should use an offset of that many blocks from the world's sea level when performing location comparisons. insert a value directly and it will be taken as an absolute offset. 0 means to use the default.

The Claims.ClaimControl setting deserves some additional explanation. This setting is on all of the Rules values, but it is only valid for rules that will involve a Player. in this case, a Creeper Exploding does not involve a Player, and so the setting for Claim Control here is not used. For rules that do involve players, however, this can be used to require a specific level of trust inside claims for that Action. Valid values for ClaimControl are RequireNone, which means that no claim check is performed at all and it should be allowed. This will force this action to be available to all players. RequireOwner,RequireManager,RequireAccess,RequireContainer, and RequireBuild, which require the player performing the action to have the specified trust in the claim. "Disabled" means to not perform claim checks. If a claim check is performed, it will be rejected and a Message shown saying that configuration is disabled. This compares to None as the direct opposite; RequireNone means to unilaterally allow the feature; Disabled means to unilaterally disable it. For example, If you set the GriefPrevention.Rules.LavaBuckets entry as such:

LavaBuckets:
      Wilderness:
        AboveSeaLevel: Allow
        BelowSeaLevel: Allow
        RequiredPermissions:
        - GriefPrevention.Lava
      Claims:
        AboveSeaLevel: Allow
        BelowSeaLevel: Allow
        ClaimControl: RequireBuild

This also introduces us to the RequiredPermissions list. This is valid within both the Wilderness and Claims section of a rule. This configuration rule for Lava Buckets sets it up in such a way that Lava Buckets require the Player to have GriefPrevention.Lava permissions. You can list multiple permissions on separate lines. The Player must have at least one of the permissions in order for the action to be allowed.

Special, Optional settings can be specified in a rule to allow for specific overrides for Attackers and Defenders during a siege as well as players that are in PVP Combat. As an example, let us imagine we wanted to configure our server so that the Attacker during a Siege could use Levers- but the Defender cannot. Additionally, let's make it so Levers require build trust during PVP. Naturally we would need to change the GriefPrevention.Rules.Lever. The new items we would want to add would be a Claims.SiegeAttacker node:

    Levers:
      Wilderness:
        AboveSeaLevel: Allow
        BelowSeaLevel: Allow
      Claims:
        AboveSeaLevel: Allow
        BelowSeaLevel: Allow
        ClaimControl: RequireAccess
        SiegeAttacker: Allow
        SiegeDefender: Deny
      PVP: AllowRequireBuild

Claims.SiegeAttacker within a given rule changes the rules for the Attacker during a Siege. It can be used to forcibly allow or deny permission on a claim that the Attacker would or would not normally have permission to interact with. SiegeDefender is used in the same capacity for the defending player. the PVP option is used to change the requisites for a player that is tagged as being in PVP Combat. The most likely use-case for this would be for disallowing certain actions during PVP. Valid settings for these are None , Allow, Deny, AllowRequireAccess, AllowRequireBuild, AllowRequireOwner. None is the default for each and results in no setting being saved back to the configuration.

Tamables

The option 'TameableAllowOwner' entry on a Rule specifies that if the Rule is being applied to an Entity that is Tamable and by a player who is that Tamable Creatures owner, than it should be allowed. This is most useful for rules that apply to tamables such as breeding, feeding, and so forth.

SpecialFlags

The SpecialFlags setting is most useful when using a Rule definition in the context of a Override (see below). In particular, it will only apply a rule if the appropriate special flag conditions are met. This setting is a List of Special Flags that apply. It is probably a good idea not to include mutually exclusive options since then the rule will never apply but who am I to judge. Valid SpecialFlags are:

ClaimRule_RequireNoClaims will require the player being tested have no claims for this behaviour to pass.
ClaimRule_RequireClaims, requires the player to have claims to pass.
ClaimRule_Claim, will allow on a claim. Will still test set permission value.
ClaimRule_Wilderness allows in wilderness.

The specialflags interact in difficult ways with the other similar settings so it is ideal to only implement and use the SpecialFlags when used for Overrides.

Before a discussion on each individual rule, there is also the BreakOverrides and PlaceOverrides settings.

These are placed as Rules but have a slightly different structure.

1    BreakOverrides:
2      TNT:
3        Materials:
4        - TNT:*:TNT
5        Name: TNT
6        Wilderness:
7          AboveSeaLevel: Deny
8          BelowSeaLevel: Deny
9        Claims:
10          AboveSeaLevel: Allow
11          BelowSeaLevel: Allow
12         SiegeAttacker: Allow
13          SiegeDefender: Deny
14          ClaimControl: RequireBuild

Within each override, one can create a list of overrides for Breaking or placement. an "override" will do what it says on the tin- it will override any existing rule or permission in the contexts for which it applies. By example, GriefPrevention includes one Break and Place override- the override applies for TNT. The Materials: Node here tells us it applies to TNT. The form for specifying Materials is the same as elsewhere in the configurations- Name/ID:Data:Description. The first will be matched against the "Material" Enumeration.

Name is used for identification. If in-game commands or features are added for viewing or these overrides are otherwise somehow exposed, this will likely be used for that purpose.

Wilderness and Claims apply equally here as they do within the Rules. This rule in particular overrides TNT breaking so that a player that is sieging another player can break TNT if they please; the intent being the mirror a similar override for TNT placement.

Special Flags are particularly useful for within Overrides. For example, if we want to mimic the behaviour of GriefPrevention.NoSurvivalBuildingOutsideClaims, we can set block placement and block breaking rules to deny. This will prevent either outside of a claim, and claims will require permission.

We ned an override, though, since we want to allow players to place a chest- so we do this:

    PlaceOverrides:
      CHEST:
        Materials:
        - CHEST:*:CHEST
        Name: CHEST
        Wilderness:
          AboveSeaLevel: Force_Allow
          BelowSeaLevel: Force_Allow
        Claims:
          AboveSeaLevel: Allow
          BelowSeaLevel: Allow
          SiegeAttacker: Allow
          SiegeDefender: Deny
          ClaimControl: RequireBuild
        SpecialFlags:
        - ClaimRule_RequireNoClaims

This will override the placement rule for placing chests, but only if that player has no claims. That will allow the chest to be placed which will also cause the GP logic for creating new claims to take place.

GriefPrevention.NoSurvivalBuildingOutsideClaims

This option has 'made a come-back' so to speak. By adding this setting to a world configuration, GriefPrevention will set the override and placementrules such that no block placement can occur outside claims, but players can place down a chest if they do not have any claims. This should mimic the behaviour from previous versions of GP which hard-coded that capability.

The Rules themselves are varied and Numerous. Let us go through them.

GriefPrevention.Rules.BlockPlacement and GriefPrevention.Rules.BlockBreaking

The Actual placement and breaking of blocks and the requirements for them have been moved to these two rules. The default will mimic the previous behaviour, but the rules can be adjusted. These rules will control block placement and block breaking everywhere- the default is to allow everywhere, but to require Build trust in claims.

GriefPrevention.Rules.SilverfishBreak

This rule controls Silverfish breaking blocks.

GriefPrevention.Rules.FireSpreadOrigin & GriefPrevention.Rules.FireSpreadTarget

When Fire spreads, these rules are checked. The Origin is the block the fire is spreading from, and the target is the block it is spreading to. This rule can be used to prevent fire spreading into claims, but allowing it to spread in the wilderness.

GriefPrevention.Rules.FireDestroys

When Fire 'breaks' a block. For example, when Logs burn, they will eventually burn out and disappear. This rule controls where that 'decay' can happen. By Denying this in certain locations, fire will spread, but not actually destroy anything. Nonetheless a lot of fire may be created and modifications to this Rule should be considered with that in mind, unless used in conjunction with modified Fire Spread rules.

GriefPrevention.Rules.CreeperExplosions

This rule controls Creeper Explosions. This rule is different from the 'BlockDamageCreeperExplosion' rule in that this applies to the Explosion occuring at all. The BlockDamage setting is checked for all the Blocks affected by the explosion. So if BlockDamageCreeperExplosion is allowed outside of claims, a Creeper exploding inside a claim could still damage blocks outside the claim that are in the explosion radius. The CreeperExplosions setting however determines whether those explosions occur in the first place. This will also prevent those explosions from doing damage to entities and other players.

GriefPrevention.Rules.WitherExplosions
This rule controls Wither Explosions. This is for both the Explosion when the Wither finishes "charging" and becomes active as well as any Wither Skulls. As with the CreeperExplosions setting, this setting determines whether the event is cancelled entirely. This is in contrast to the BlockDamageWitherExplosions rule, which is used per-affected block to determine if that block should be destroyed.

GriefPrevention.Rules.TNTExplosions
This rule controls TNT Explosions. As with the other similar rules, this rule determines whether the event is cancelled entirely. This is in contrast to the BlockDamageTNTExplosions rule, which is used per-affected block to determine if that block should be destroyed.

GriefPrevention.Rules.OtherExplosions
This rule applies to detected explosions that don't apply to the other rules. This is common when dealing with Modded servers such as MCPC, where modded blocks such as IndustrialCraft2's Nuclear Reactors or other machines can explode in some situations.

BlockDamage equivalents

Each of the explosion rules has a corresponding rule that applies per-Block that was affected by the explosion to determine if that block can be destroyed as a result of the explosion.

GriefPrevention.Rules.EnderDragonDamage

Controls whether the explosions caused by the Ender Dragon can destroy blocks. Normally the Ender Dragon can destroy any block except for End Stone, Obsidian, and Ender Chests.

GriefPrevention.Rules.EnderPortalFill

Controls whether, and what, players can place Eye's of Ender within empty Ender Portal Frames. By default requires build trust if said frame appears within a claim for which the player does not have trust.

GriefPrevention.Rules.WitherEating

The Wither normally "eats" blocks in order to get closer to the player. This controls the rules regarding where the Wither can do this.

GriefPrevention.Rules.FlowerPots[b]

Controls the placement of Flowers within Flowerpots. Note that this does not apply to placing the flowerpots themselves, only placing flowers within those flower pots.

[b]GriefPrevention.Rules.ItemFrameItems**

Controls the ability of players to place and remove items from an Item Frame.

GriefPrevention.Rules.SpawnEggs

Controls the ability of players to use Spawn Eggs. These are the Spawn Eggs typically only available in Creative mode, but which can be acquired in Survival with some plugins, such as MonsterBox.

Buckets

GriefPrevention.Rules.WaterBuckets and GriefPrevention.Rules.LavaBuckets separate the permissions for filling and placing into two groups, Place, and Fill. This results in Claim Behaviour data in the expected format described above for GriefPrevention.Rules.WaterBuckets.Place, GriefPrevention.Rules.WaterBuckets.Full, and GriefPrevention.Rules.LavaBuckets.Place and GriefPrevention.Rules.LavaBuckets.Fill.

Water defaults to preventing placement above sea level in the wilderness and requiring build trust in claims. LavaBuckets defaults to requiring GriefPrevention.Lava permission in the wilderness and only allowing it below sea level and requiring build trust within claims.

Build rules

GriefPrevention.Rules.BuildSnowGolem, GriefPrevention.Rules.BuildIronGolem and GriefPrevention.Rules.BuildWither Are the 'Build' rules. apply for Iron Golems, Snow Golems, and Withers. When denied the blocks will remain in place but the mob will not be spawned.

GriefPrevention.Rules.TrashBlockPlacementRules

When placing "Trash" blocks, this setting controls where they can be placed as well as where they can be destroyed. By default Trash Blocks can be placed and broken anywhere outside of claims and require, like other blocks, Build permissions when this is done within a claim.

GriefPrevention.Rules.VillagerTrading

Determines the rules regarding Villager Trading. When disabled, You cannot Trade with Villagers in that location. By Default it disallows Villager Trading entirely, except on claims where players have Access Trust.

GriefPrevention.Rules.VehicleDamage

Determines where vehicles can take damage from a player. This defaults to being allowed outside of claims and requiring Container Trust on claims.

GriefPrevention.Rules.VehicleBreaking

Controls breaking of vehicles. This applies to Boats and Minecarts. (Killing a pig with a saddle or a Horse for example doesn't constitute breaking a vehicle, just to be clear).

GriefPrevention.Rules.VehiclePlacement.Boats and GriefPrevention.Rules.VehiclePlacement.Minecarts
Controls the placement of boats and minecarts. This rule can be changed such that players can place, say, minecarts in claims, even without permission. Since minecarts cannot be placed without a rail this can be useful for the construction of railway stations within a claim, while allowing the player to place minecarts.

GriefPrevention.Rules.EnvironmentalVehicleDamage

Determines where Vehicles can take damage from the environment. Environmental damage are things such as cacti and Lava. Defaults to only being allowed outside of claims.

GriefPrevention.Rules.ZombieDoorBreaking

Determines the rules for Zombies being able to break doors.

GriefPrevention.Rules.SheepShearing

Determines rules for a player to shear sheep. Defaults to allowing wilderness and requiring Container Trust on claims.

GriefPrevention.Rules.SheepDyeing

Determines rules for a player to Dye Sheep. Defaults to Wilderness and requiring Container Trust on claims.

GriefPrevention.Rules.BonemealGrass

Determines rules surrounding where players can bonemeal grass. Note that the effect extends out from the location and can add grass or flowers to locations that the player would not otherwise have permission to affect. Defaults to wilderness and requiring Build trust on claims.

GriefPrevention.Rules.PlayerCropTrample

Determines rules surrounding Crops being trampled. This applies also to tilled soil being turned back into dirt. This defaults to allowing trampling in the wilderness and requiring Build trust to trample on claims.

GriefPrevention.Rules.EndermanPickup

Determines rules surrounding where Enderman can pick-up blocks.

GriefPrevention.Rules.EndermanPlacement

Determines rules surrounding where Enderman can place blocks.

GriefPrevention.Rules.ArrowsHitWoodButtons

Determines rules for Arrows activating wooden buttons. Claim affected is the claim where the button is, not the shooting player.

GriefPrevention.Rules.BlockTweaking

'BlockTweaking' applies for certain items, such as NoteBlocks, Repeaters, and Comparators. These allow you to right-click to "tweak" their state. This setting determines where this can be done.

GriefPrevention.Rules.CreatureDamage

Determines where and by whom Creatures/Animals can be damaged. Defaults to allowing in the wilderness and requiring players to have Container Trust to damage creatures within a claim.

GriefPrevention.Rules.WoodenDoors, TrapDoors, FenceGates,StonePressurePlates,WoodenPressurePlates, StoneButton,WoodenButton,Levers

Determines required trust and locations for these items. Defaults to allowing in all cases except for the stone button and levers, which require Access Trust.

GriefPrevention.Rules.EndermanPickup and GriefPrevention.Rules.EndermanPlacement

Determines rules for placing and pickup of blocks by Enderman. Defaults to protecting blocks within claims as well as above sea level.

GriefPrevention.Rules.EnderPearlOrigin and GriefPrevention.Rules.EnderPearlTarget

Determines required permissions in each location for a teleport to be successful. In order for a teleport to be possible, the position being teleported from must pass the Origin test, and the position being teleported to must pass the Rules for EnderPearlTarget. By default, both of these require at least Access Trust when dealing with a Claim on either end. Note that a rejected attempt will no longer consume an EnderPearl.

GriefPrevention.Rules.Containers

Essentially Container Trust. Allows you to change the trust levels and locations that Containers can be accessed. Defaults to anywhere in the wilderness and requiring Container permissions inside claims.

GriefPrevention.Rules.FireExtinguishing

Controls the action of players Extinguishing flames. When you left click on a block face that is on fire, that fire is extinguished. This setting controls whether that can occur. The default setting requires Build Trust within claims, and has no restrictions in the wilderness.

GriefPrevention.Rules.FireSetting

Controls the use of Flint & Steel and Fire charges to ignite blocks. This defaults to requiring GriefPrevention.Lava permission in the wilderness, and being allowed with build permission on claims.

GriefPrevention.Rules.Breeding

This rule applies when trying to use a farm animals Breeding Item on said animal. This means using Seeds on Chickens, using Carrots on Pigs, using Golden Apples on Horses, and using Wheat on Cows, Mooshrooms, and Sheep. This also means using Raw fish or Fish on Tamed Ocelots that are at full health as well as using various raw and cooked meat items on Wolves that are at full Health.

GriefPrevention.Rules.Feeding

This rule applies when feeding various animals. Note that this does not apply for cases where that feeding would in fact put that animal into love mode; that is covered by GriefPrevention.Rules.Breeding instead. This rule applies for Horses, Ocelots, and Wolves, and involves using Feed items on those mobs. For horses, this includes Apples, Wheat, and Hay Blocks. for Tamed Wolves, this is any number of meats when that Wolf is not at full Health, and for Tamed Ocelots when using Raw Fish or Fish when the mob is not at full health.

GriefPrevention.Rules.Taming

This rule applies when taming various animals. Currently this controls the usage of Bones on Wild Wolves and Fish on Wild Ocelots, as well as whether a player can ride a horse and try to tame it.

GriefPrevention.Rules.LeadUsage

This rule controls where a Player may use Leashes. This includes the use of a Leash on mobs as well as attaching a leash to Fences. Defaults to Requiring Access Trust within claims.

GriefPrevention.Rules.EquineInventory

With Horses, when you right-click a Horse, Donkey, or Mule while you are sneaking, This will open that mobs inventory screen. This setting controls this, and the default is to require Container trust in claims, but allow elsewhere; This means of course that if you take your horse outside of a safe claim, other players will then be able to access that horse/Mule/Donkey's inventory.

GriefPrevention.Rules.NameTags

This rule controls the use of NameTags. Default is to require Container Trust in claims.

GriefPrevention.Rules.Dispensers

Provides a number of rules for the action and usage of Dispensers. This includes control over the use of Lava, Water, Arrows, FireCharges, Flint and Steel, Positive Potions, Negative Potions, Spawn Eggs, Fireworks, Snowballs, Eggs, and any other dispensed element not covered by medicare the other rules.

End of Rules

GriefPrevention.Siege.Enabled
Default:true
Indicates whether Sieges are enabled in this world. A Siege is performed by an attacker and a defender; the attacker must be near a claim of the defender, and that defender must be inside the claim. When the siege begins, the defender is notified, and during the siege building and accessing containers is unavailable. A siege ends when the attacker gives up, the defender leaves the claim, or the defender or attacker is killed. If the attacker is killed their items are dropped on the ground as expected (unless a death chest plugin is installed) If the defender is killed, their items are transferred to the attacker until the attacker's inventory is full if the GriefPrevention.Siege.ItemTransfer setting is enabled.

GriefPrevention.Siege.ItemTransfer
default: true
This indicates whether, when a player wins a siege, the defeated players items will be automatically transfers to the winner. If set to true, the items in the inventory of the losing player will be given to the victor. If this fills up the inventory, some items will remain and be dropped on the ground where the defeated player was killed, as expected. If set to false, no transfer occurs and all the items will be dropped by the dead player as per vanilla operations. Note that some other plugins can conflict with this feature, which is why this option was added.

GriefPrevention.Siege.BlockRevert
Default:true
This setting indicates whether Blocks will revert after a siege ends. What this means is that blocks destroyed by attackers will be replaced after the siege is over. The actual reversion of blocks will occur at the same time that attackers on the claim are ejected from the claim. This is implemented to prevent griefing of claims by attackers through the use of the siege function.

GriefPrevention.Siege.BreakableBlocks
Default: [DIRT,GRASS,LONG_GRASS,COBBLESTONE,GRAVEL,SAND,GLASS,THIN_GLASS,WOOD,WOOL,SNOW]
A list of blocks that can be broken during a siege. refer to the Bukkit documentation on the "material" Enumeration to determine appropriate names to be used in this list. This may be changed to use a similar format to some of the other material listings.

GriefPrevention.Spam.Enabled
Default:true
This option enables and disables the spam protection features in the world. This world-based configuration can be used to create worlds where more trusted players are not subject to various spam protections (for example).

GriefPrevention.Spam

The GriefPrevention Spam protection works through the use of a "SpamCount" value. Legitimate messages by a player reduce this spam count; that is, if the spam protection doesn't trigger for any number of possibilities from the chat message, the spam count for that player is reduced (unless it is zero, of course). You can change the threshold of the SpamCount values to perform Bans and Kicks by changing the GriefPrevention.Spam.BanThreshold,GriefPrevention.Spam.KickThreshold, and GriefPrevention.Spam.MuteThreshold values. How GriefPrevention increments this value depends on the other settings.

GriefPrevention.Spam.Enabled
default:true

This determines whether GriefPreventions Spam Protection logic is enabled for this world.

GriefPrevention.Spam.DelayThreshold
default:1500
This is the delay threshold, in milliseconds, used to determine when the messages from one player are spam. This increments the "Spam count" for this player if a chat message is received within this threshold from their previous message.

GriefPrevention.Spam.CapsMinLength
default:true

Determines the minimum run of Caps that are required for it to count as a violation. The text will be lowercased and that players "spamcount" value will be incremented.

GriefPrevention.Spam.NonAlphaNumMinLength
default:5

This determines the minimum length a message must be for checks to be performed on the content of the message for AlphaNumerics and whitespace.

GriefPrevention.Spam.ASCIIArtMinLength
Determines the maximum length of a run of characters which contain heavy use of non-alphanumerics before they are considered spam.

GriefPrevention.Spam.ShortMessageMaxLength

Determines the length threshold where messages are no longer considered "short" for the frequent short message protection.

GriefPrevention.Spam.MuteThreshold
default:4

If a player's SpamCount get's this high, the player will be muted. This means that they're chat will no longer appear to other players.

GriefPrevention.Spam.KickThreshold
default:6
If a player's SpamCount get's this high, the player will be kicked. This is done by running the commands in the GriefPrevent.Spam.KickCommand entry.

GriefPrevention.Spam.BanThreshold
default:8
If a player's "SpamCount" gets this high, then the player will be banned. This is performed by running the commands in the GriefPrevention.Spam.BanCommand entry.

GriefPrevention.Spam.KickCommand
default: kick {0}
GriefPrevention.Spam.BanCommand
default: ban {0};kick {0}

When a player is kicked or banned by the spam protection, this command, or these commands, are run. Multiple commands can be separated using semicolons, and you can use {0} as a placeholder for the player name, as done here.

GriefPrevention.Spam.LoginCooldownSeconds
default:120

Indicates the cooldown required between separate logins by the same player.

GriefPrevention.Spam.MonitorSlashCommands
default: /me;/tell;/global;/local
a semicolon separated list of slash commands to monitor. These should be those commands that can show messages to other players.

GriefPrevention.Spam.WarningMessage
default: Please reduce your noise level. Spammers will be banned.

Message sent to players when the warning threshold is reached.

GriefPrevention.Spam.BanMessage
default: Banned for spam.

Message shown as the ban message when players are banned for hitting the BanThreshold.

GriefPrevention.Spam.AllowedIpAddresses
default: 1.2.3.4; 5.6.7.8

semi-colon separated list of IP addresses that will not trigger spam protection.

GriefPrevention.Spam.DeathMessageCooldownSeconds
default: 60

Doesn't show messages for players that die within this many seconds of their previous death.

GriefPrevention.Claims.InsufficientSneakResetBound
default:0
Sets an upper limit on the number of claim blocks required. If a player is sneaking when they try to create a claim and require more than this set value, the claim corner they already set is removed as the first corner.

GriefPrevention.Claims.Enabled
Determines whether Claims are enabled for this world.
GriefPrevention.Claims.SiegeTamedAnimalDistance
default:20

During a siege, Attackers will be able to attack tamed animals (Ocelots and Wolves, for example) that are within this many blocks of the Defender.

GriefPrevention.Claims.MaxClaimBlocks
default:0

This option controls the maximum number of blocks a Player may have. 0 indicates that there is no limit.

GriefPrevention.Claims.BlocksAccruedPerHour
default: 100.0

Controls the number of blocks delivered to players over the span of an hour. This is done every 10 minutes, and as such you need to enter a value that is 12 or greater in order for players to gain claim blocks. Values less than 12 will result in the task delivering 0 claim blocks each time due to Integer division.

GriefPrevention.Claims.AbandonReturnRatio
Default:1.0

When players abandon claims, they will 'retrieve' this ratio of the original claim block quantity. For example of a player creates a 10x10 claim and abandons it and this setting is set to .5, they will only be reimbursed with around 50 blocks. Note that the calculation is not always block-perfect, and may be off by one or two blocks.

GriefPrevention.Claims.PerPlayerLimit
default:0

This setting imposes a Limit on the number of claims a player may have in the world for which this configuration is for. This defaults to 0 and indicates that players may have as many claims as they can create with their claim blocks. Setting this to another value indicates that players may make at most that number of claims, regardless of the number of claim blocks they posess.

GriefPrevention.Claims.SiegeLootChests
default:0

This setting controls the number of Chests that may be looted after a player is defeated during a siege. This defaults to 0 which is the same behaviour that was present in Version 7.7 and earlier. using a non-zero value will allow that number of chests to be opened after the Defender is defeated, but only within the timeout where the claim is accessible by the Attacker. This also applies to all the chests opened in that duration, so if 5 players attacked and defeated a player in a siege, while all five can open chests, they will only be able to open up to the maximum chests specified in this option.

GriefPrevention.Claims.AbandonAutoRestore
default:false

When set to true, this will perform an automatic Nature restoration on claims that are automatically cleaned up.

GriefPrevention.Claims.Expiration.ChestClaimDays
default:7
A "chest claim" is the automatic claim created when players place a chest when they have no other claims. One of these claims will expire 7 days after the Owning player has last logged in.

GriefPrevention.Claims.Expiration.UnusedClaimDays
default:14
This is used in a similar fashion to the ChestClaimDays setting, but applies to claims created using the Claim Creation tool (by default, the Golden Shovel). the cleaning of these claims requires an investment score calculation to determine how many non-natural blocks are in the claim and essentially try to determine the "value" of the claim. This score gives a 'score' for various non natural blocks such as stone brick, glass, and chests, and subtracts points for things like lava and fire. If the calculated score exceeds the value in GriefPrevention.Claims.ClaimCleanup.MaxInvestmentScore, then the claim will not be cleaned up even if the claim owner has not been on in the given time period.

GriefPrevention.Claims.Expiration.AllClaimDays
default:0

When set to a non-zero value, this works similarly to the unusedClaimDays and ChestClaimDays settings, but forces claims that hit it's expiry time to be cleaned up, regardless of investment score. This can be used to set an upper limit to prevent the long term presence of claims by players that have not been on the server for an extended period of time.

GriefPrevention.Claims.AutomaticNatureRestoration:
default:false

when set, abandoning claims will cause them to be automatically "nature restored".

[b]GriefPrevention.Claims.AutomaticNewPlayerClaimsRadius
default:4
When players first place a chest and have no Claim, GriefPrevention will give them a claim of this size extending outwards from where they placed the chest.

GriefPrevention.Claims.ExtendIntoGroundDistance
default:5
This setting controls the creation of claims and how far they extend under where they are created. This is also used when players "extend" their claim downwards vertically by placing or breaking blocks below owned claims.

GriefPrevention.Claims.CreationRequiresPermission
default:false

When set, Players will require the "griefprevention.createclaims" permission in order to create claims.

GriefPrevention.Claims.MinimumSize
default: 10
The minimum size a claim can be in the X and Z directions. Players will not be able to shrink claims to be smaller than this in either direction nor will they be able to create new claims that are smaller than this value.

GriefPRevention.Claims.MaximumDepth
default:0

This is the lowest Y coordinate that can be claimed. This will also prevent default Chest Claims from being created below this depth.

GriefPrevention.Claims.TrappedCommandCooldownMinutes
default: 480 (8 hours)
This controls the amount of time between players being able to use the /Trapped command. This option is in Minutes, rather than hours as in 7.7 and earlier.

GriefPrevention.Claims.InvestigationTool
Default: STICK

Controls the item used to investigate claims. You can use any Name that is specified in the "Material" Bukkit Enumeration. For reference, you can find a list of these items at http://jd.bukkit.org/dev/apidocs/org/bukkit/Material.html for the current development builds of bukkit.

GriefPrevention.Claims.ModificationTool
default: GOLD_SPADE
Controls the item used to create and resize claims and subdivisions. You can use any Name that is specified in the "Material" Bukkit Enumeration. For reference, you can find a list of these items at http://jd.bukkit.org/dev/apidocs/org/bukkit/Material.html for the current development builds of bukkit.
GriefPrevention.Claims.NoSurvivalBuildingOutsideClaims
default:false
When enabled, this prevents players from placing or breaking blocks outside of their claims. There is, however, an exception to this: Items and blocks in the "TrashBlocks" list can be placed and broken. By placing Ores and other valuables within that list and using this setting, you can create a configuration that forces players to spelunk and prevents branch mining.

GriefPrevention.Claims.WarnWhenBuildingOutsideClaims

This controls whether a warning message is shown to players when they build outside of their claims. Messages will not be shown for any block in the Trash Listing when they are placed, and they are only shown every GriefPrevention.Claims.WildernessWarningBlockCount blocks placed.

GriefPrevention.Claims.AllowUnclaimingLand
default: true

determines whether players can abandon or shrink their claims.

GriefPrevention.Claims.AutoRestoreUnclaimedLand
default:false
Determines if NatureRestoration Logic is run after a player abandons a claim.

GriefPrevention.Claims.WildernessWarningBlockCount
default: 15
sets the number of non-trash blocks between Warning messages when WarnWhenBuildingOutsideClaims is set.

GriefPrevention.CleanupTasks.Entity
default:true

determines if the Entity cleanup Task is started when the plugin is enabled.

GriefPrevention.ClaimCleanup.MaximumSize
default:25

Maximum size, in either direction, that a claim can be before it is no longer considered viable for the standard Claim Cleanup. (Note that AllClaimDays overrides this). This limit is imposed for performance reasons as normally the decision to discard a claim requires an evaluation of the contents of that claim to assess the possible investment by it's owner.

GriefPrevention.ClaimCleanup.MaxInvestmentScore
default:400

The maximum calculated investment score beyond which claims will not be considered for cleanup except when they expire the AllClaimDays setting. This score is calculated based on the contents of the claim; Player-placed blocks such as Stone brick, Bricks, CobbleStone, planks, etc add to this value, and blocks such as Lava and Fire reduce the score.

GriefPrevention.ClaimCleanup.Enabled
default: true

determines whether the ClaimCleanup task is enabled.

GriefPrevention.Expiration.MessageCooldown.Claim
GriefPrevention.Expiration.MessageCooldown.Stuck
default:0

This is the number of seconds that must elapse between the automatic messages being shown to players who trigger the claim and stuck messages. Players that say Stuck, Trapped, and similar words will normally be shown a message about the trapped command, and players using words like claim or plot will be given information on how to create claims. This setting determines the number of seconds that must elapse before the player is shown each message again.

GriefPrevention.CreativeRules

Determines whether creative mode rules are in effect for this world. Creative Mode rules require claims before building or breaking blocks, as well as a number of other limitations.
GriefPrevention.PvP.Enabled

This will set the PvP state of the world when the configuration loads. This option also changes a few default options based on whether PvP is enabled or not. (Sieges are disabled by default without PvP, for example).

GriefPrevention.PvP.BlockContainers
default: true
Whether Attempts to access Containers when a player is in PvP combat will be blocked.

GriefPrevention.PvP.ProtectFreshSpawns
default:true
whether respawned players are protected from PvP until they either open a chest or pick up items.

GriefPrevention.PvP.PunishLogout
default: true
If a player logs off while they are still flagged as being in PvP combat and this option is enabled, they will be dead when they log back on.

GriefPrevention.PvP.CombatTimeoutSeconds
default: 15

Number of seconds that must elapse after a player either attacks or is attacked by another player before they are no longer considered to be in PvP combat. Whether a player is in PvP combat controls several other options.

GriefPrevention.PvP.AllowCombatItemDrop
default: false
Controls whether players can drop items from their inventory while flagged as being in PvP Combat.

GriefPrevention.PvP.BlockedSlashCommands
default:/home;/vanish;/spawn;/tpa

semicolon-delimited List of commands that cannot be used while a player is in PvP combat.

[b]GriefPrevention.PvP.ProtectPlayersInLandClaims.PlayerOwnedClaims
GriefPrevention.PvP.ProtectPlayersInLandClaims.AdministrativeClaims
default:false
whether players are protected in Player Owned and Administrative claims. This prevents PvP combat from occuring in these claims.

GriefPrevention.SignEavesDrop
default:true
Whether sign eavesdropping is enabled. if enabled players with GriefPrevention.EavesDrop permission will be notified when players place signs.
GriefPrevention.Eavesdrop.Enabled
default:false
When enables monitors Player commands for the use of commansd listed in the WhisperCommands setting, and notifies any online players with GriefPrevention.Eavesdrop permissions of PMs.

GriefPrevention.EavesDrop.WhisperCommands
default: /tell;/pm;/r

Semi-colon separated list of commands that will trigger eavesdropping.

GriefPrevention.Trees.RemoveFloatingTreetops
default:true
Controls whether GriefPrevention will automatically remove tops of trees that players leave behind.

GriefPrevention.Trees.RegrowGriefedTrees
default:true

Controls whether trees will be automatically replanted if nobody else replants a tree within 3 minutes.

GriefPrevention.LimitSkyTrees
default:true

When enabled, planting trees requires Either a Grass or a dirt block that has more blocks beneath it.

GriefPrevention.FireSpreads
GriefPrevention.FireDestroys
default:false
Whether fire can spread and destroy blocks, respectively.

GriefPrevention.AddItemsToClaimedChests
default:true
When enabled, players can place or donate items in chests on other peoples claims by left clicking on the chest twice with the item they wish to give away.

GriefPrevention.SmartBan
default:true

Enables logic that will attempt to determine and automatically ban players that the Plugin determines to likely be alternate accounts of an recently banned player.

GriefPrevention.CreaturesTrampleCrops
default: false
Controls whether creatures can trample crops.

GriefPrevention.Mods

This section contains settings specific to mods, and controls which BlocksIDs require various Trust Levels, as well as a list of Players that are ignoring all claims. The ideal case for using these settings on a Modded Server would be to enable the config.yml setting, GriefPrevention.Mods.PerformConfigSearch This will enable the search logic, and the new settings will be added to your current template file.

Permissions

Permissions have been changed a bit as well:

GriefPrevention.Commands.<CommandName>

Permission node for each Command.

griefprevention.admin.eavesdrop

EavesDropping permission.

griefprevention.admin.claims
Administrator claims permission. Controls which players can administer Admin claims.

griefprevention.admin.tool

Whether you can use the admin tool. This is used primarily with Forge servers for adding containers and blocks to the container and access listings.

griefprevention.admin.lock

Gives permission to lock any claim.

griefprevention.admin.claims
Gives Administrative claims permission. Equivalent to 7.7 and earlier GriefPrevention.adminclaims.

griefprevention.claimblocks.buy

Gives permission to buy claim blocks.

griefprevention.claimblocks.sell

Gives permission to sell claim blocks.

griefprevention.claims.allow
Allows use of claims.

griefprevention.claims.ignorelimit
Allows a player to ignore the claim limit for a world.

griefprevention.claims.ignorelimit

Allows player to exceed the World Claim Limits

griefprevention.claims.give

Allows player to use /giveclaim to give their claims to another player.

griefprevention.claims.chestcreate

Allows players to create claims using the auto-claim functionality when they place a chest. defaults to true.

griefprevention.claims.toolcreate

Allows players to create claims using the claim tool (Golden Shovel). defaults to true.

griefprevention.claims.delete

Allows player to delete claims.

griefprevention.claims.ignore

Gives permission to use /ignoreclaims. Likely to be replaced by the /ignoreclaims command permission.

griefprevention.claims.investigatearea

Gives permission for a player to use Shift while using the investigation tool to investigate an area.

griefprevention.claims.lock

Allows player to lock their claims.

griefprevention.claims.transfer

Allows player to transfer claims between players.

griefprevention.placement.lava

Gives permission to place lava and fire in certain circumstances.

griefprevention.placement.water

Gives permission to place Water in certain circumstances.

griefprevention.admin.horses

Allows a player to ride and essentially "take" a horse in any claim.

griefprevention.eavesdrop.standard

Standard eavesdropping.

griefprevention.spam.login

Login spam. Allows player to login even within the login timeout.

griefprevention.pvp.noimmunity

Prevents player from ever having immunity from PvP.

griefprevention.spam.chat

prevents spam logic from occuring for this player.

griefprevention.spam.notignorable

Prevents a player from being added to any players ignore list with the /ignore command.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Dentych Dentych Apr 19, 2014 at 19:28 UTC - 0 likes

    @BryanChung: Go

    Permissions are not working for me either. I've given admins all the fancy permission nodes and neither are working.. :/

    BFAK:90803835,94feef2be53bade7f41a5cb51b13ecd467bf11d4ac80bdf9b1d75764ca5241df

  • Avatar of OmniscientHF OmniscientHF Apr 18, 2014 at 19:15 UTC - 0 likes

    I have an upgrade rank. I want to give them access to this plugin but not allow any GP access to default rank. However the plugin doesn't seem to allow that. I'm using Group Manager permissions.

  • Avatar of fungreenfox fungreenfox Apr 14, 2014 at 16:45 UTC - 0 likes

    @TerriLN: Go

    I assume it claims into the sky, but not sure.

    The dataconfig file is for specifying the MySQL server options, for locating that one. Flat is for "flat file", when you have no My SQL settings. MySQL is for storing the data info into a database instead of flat file.

  • Avatar of TerriLN TerriLN Apr 08, 2014 at 20:05 UTC - 0 likes

    Hello, I would like to know how to set it so when a player claims land, it automatically claims from the bedrock to the sky limit. I can find the depth setting in the config. And assume you can just set that for a high number to reach the bedrock. However I can not find anything on setting how high it claims.

    Also what exactly is the dataconfig.yml what exactly is that file for? in mine the only thing in there is this: flat: {}

    Any help would be greatly appreciated. Thanks Terri

  • Avatar of x_pipehitter_x x_pipehitter_x Apr 07, 2014 at 22:12 UTC - 0 likes

    @Armoured_King: Go

    Thank you for the reply and help!

  • Avatar of BryanChung BryanChung Apr 06, 2014 at 08:50 UTC - 0 likes

    I'm on 7.8 and I'm sure I given griefprevention.claims.ignore permission to my Moderator group using bPermissions. But they still do not have the permission to /ic or /ignoreclaims ... something wrong? :(

  • Avatar of Armoured_King Armoured_King Apr 06, 2014 at 06:07 UTC - 1 like

    @x_pipehitter_x: Go

    in the griefprevention folder open worldsconfig folder and edit your creative world name.yml

    and look where it says enabled: true

    change to false and GriefPrevention will not be enabled in that world the first 18 lines are for pvp and the very first config after that is what you want. mine is line 19

    http://puu.sh/7XRdo.png i hope the screen shot works

  • Avatar of Armoured_King Armoured_King Apr 06, 2014 at 05:59 UTC - 0 likes

    @CJelly: Go

    in your griefprevention folder open the the worldconfig folder then edit the world.yml (or worldname you want to edit)

    look for and edit this line: default will be 4 make it -1

    AutomaticNewPlayerClaimsRadius: -1

  • Avatar of CJelly CJelly Apr 05, 2014 at 18:01 UTC - 0 likes

    I'm using the lasted version of this plugin for mine craft 1.7.5 and I am trying to figure out how to prevent the Autoclaim when you place a chest. I looked through the config file multiple times and couldn't find it. could someone help?

  • Avatar of DanNetwalker DanNetwalker Mar 29, 2014 at 08:31 UTC - 0 likes

    I'm testing this mod as the main protection for my server, and I can say I'm pretty pleased with it. It's just, I don't think I fully understand configuration...

    Lets suppose I want to let the players break wheat or potatoes in an admin claim (a farm in spawn town, that gets replanted by command blocks). Where should I config that blocks as "breakable"? Should I define a subclaim where players can break blocks? What's the easier?

Facts

Date created
Jul 03, 2013
Last updated
Mar 02, 2014