UploadedDec 23, 2015
Supported Bukkit Versions
Support a hard-working dev! Please consider my other projects:
- Gave /Claim an optional radius parameter.
- Fixed some minor issues with /Claim and chest-based land claim creation which were causing errors to appear in server logs.
- Fixed an issue with backward compatibility (for flat file mode claims) which should improve error messaging when there's a problem.
DO NOT Update GriefPrevention to 11.3 or later until you've updated your server to the LATEST 1.8 (this will require re-running buildtools.jar to get an updated 1.8 server jar file). This is unavoidable, and due to a change made by the Spigot/CraftBukkit team somewhere along the way in 1.8 development. Symptoms of an outdated 1.8 server include errors logged during boot, explosions destroying blocks where they shouldn't, and entities like armor stands, item frames, and animals NOT being protected.
Recent Major Changes
- Narrow land claims - Version 12.1 and higher. The config setting for minimum claim size (height and width) has been replaced with TWO settings - width and total area. These new settings default to 5 and 100 respectively, to allow for more narrow land claims, empowering players to more efficiently protect railways and roads, so they might actually do that now rather than rolling the dice and then complaining to admins when someone damages their roads. :)
- Selling accrued claim blocks - Version 11.0.2 and higher. If players sell accrued blocks, those blocks will NOT re-accrue over time.
- Nether portal protections disabled by default - Version 10.6 and higher. For sake of performance, the feature which prevents nether portals from being created in land claims without permission (by creating a nether portal at the corresponding coordinates in another dimension) is turned off by default. You can enable it in your config file. This "grief" is very difficult to execute, opportunities to attempt it are rare, and it's surprisingly expensive to prevent. Even when it works, the "victim" might actually be appreciative, since he didn't have a nether portal nearby already.
- PvP worlds reset - Version 10.4 and higher. This area of the config file has been frustrating for many for a long time. I've rewritten it to be more readable, much easier to edit, and now you can have an empty PvP worlds list on a PvP server, if that's what you want. When you update to this version, you will have to customize this part of the config file again (if you ever customized it at all).
- Finding offline players by name - Version 9.0 and higher. For sake of performance (not producing lag), players and admins can only target offline players who've recently logged in with Grief Prevention slash commands like /trust, /transferclaim, /claimslist, and so on. I plan to keep working on this to make all players targettable without causing a lag problem. This limit on who can be targetted is a temporary solution to work around a problem introduced by the CraftBukkit team when they made the switch to support player UUIDs.
- UUID Conversion - Version 8.1 and higher. During boot, an often very slow, one-time conversion process will replace player names in your data with player UUIDs. This process can take as long as one second for each player who has EVER played on your server. Make a backup before you upgrade, and please be patient. If this process is interrupted, you'll have to restore from backup and start over. This change will ensure players who change their names will not lose claim blocks or access to their land claims. If there's a problem, I need to know whether you're online/offline/bungee, whether in database or flat file mode, I need your boot logs from the conversion attempt, and if possible, a snapshot of your data from before the update.
- Disabled worlds in config - Version 8.5 and higher. If a world is "disabled" for land claims, then no land claims which already exist in that world (including administrative land claims) will be protected. For those upgrading from an earlier version ONLY, to ensure all existing land claims are protected, GP has defaulted worlds which were disabled to allow claims again, including player-made land claims. If this isn't what you want, update your config.yml.
- Piston limiting - Version 8.1.7 and higher. Pistons won't move blocks outside of land claims. This is a huge performance win, but if you want the old rules back, there's a new config option to disable this rule. Yes, players do get an explanation/warning when they place pistons outside of land claims, to avoid confusion for newly-placed pistons.
- /DeathBlow Removed - Version 9.3 and higher. It's no longer necessary, since the items players drop on death are now protected. This protection is on by default in non-PvP worlds, and off by default in PvP worlds. You may customize it in the config file. You can still use /kill to kill a player, although /kill will not send the player's inventory to another player as /deathblow did.
All Recent Changes
- Added /Claim command to create a land claim centered at the player's current location. If the player doesn't have any claims yet, this land claim will have the same size as an automatic chest-based land claim (radius modifiable in your config file). Land claims after the first require survival players to be holding the land claim modification tool (default golden shovel), keeping that "you gotta earn additional and larger land claims" concept alive. Additional land claims will appear as the smallest square which satisfies the minimum area you've set in your config file. Creative mode players always have access to the tool, so they don't have to hold one to prove it.
- Added /ExtendClaim command to change the size of a land claim or subdivision, especially handy for scenarios like claiming a mountain or extending a land claim into a solid wall as in an underground build, where getting into position to right-click a claim corner block is inconvenient. To use the command, stand in the claim you want to change, face the direction you want to change, and then specify the amount like /ExtendClaim 5 or /ExtendClaim -2. It even works with diagonals. Like the /Claim command, survival mode players will have to hold a golden shovel in hand to prove they have one before they can use this command.
- Added config options to ban players using a command line you specify, so GP can work better with any ban management plugin you have installed. By default, GP writes directly to the server ban list because that way it can record information about the ban like a reason (ex. spam) and a source (GriefPrevention) and show the banned player a message on the way out. The Vanilla /ban command only records a reason.
- To reduce invincible pets scattered about, administratively-deleted land claims (expirations or /DeleteClaim) will automatically set free any pets belonging to the owner of the land claim, allowing other players to tame or otherwise remove them without getting an administrator's help.
- Added permission griefprevention.eavesdropimmune to prevent a player (presumably an admin) from being eavesdropped upon by other admins. Now you can give a player permission to eavesdrop and still eavesdrop on him, whereas before everyone who could eavesdrop was immune to eavesdrop.
- Updated /RestoreNature with lots of new block types added in 1.8. Land restorations will leave less (hopefully zero) player construction behind.
- Equipping a golden shovel while you're standing inside a claim you own will automatically show you the boundaries of your claim, so you can skip the stick-right-click to find your corners.
- Improved claim management where water is involved - now much easier to create claims on water and resize claims when the corner to be adjusted is on water.
- Ensured players who place minecarts on another player's track can get their carts back by only allowing cart placement when the placer has permission to remove minecarts in that same location.
- Added a config option to tweak the delay between a new player joining and his receiving the land claiming manual.
- Whispers from admins can't be ignored.
- Fixed shift-click with stick finding too many claims.
- Improved logging for claim loading problems.
- Fixed blank lines in bad words file causing too many mutes.
- Now displaying player UUID in place of name when his name isn't in your local server data (instead of "someone").
- Fixed some servers losing subdivisions during upgrade.
- Disabled claim creation in worlds where claims will fail to load on next boot (worlds which are not yet loaded at the time GP booted).
- Stopped deleting claims from worlds which do not exist at the time GP boots.
- Messages.yml now supports formatting codes via the dollar sign ($). Find instructions at the top of your messages.yml.
- Added a config option to protect pets outside of land claims even in PvP worlds. Note that pet wolves are NEVER protected in PvP worlds because they have the potential to attack players, who should be able to defend themselves.
- Fixed ip re-use limiter being too aggressive.
- Added permission nodes for /Siege, /UnlockDrops, and /Trapped. All players have the new nodes by default.
- Soft-muted players can no longer send private messages to players who aren't soft-muted (see list of whisper commands in your config file).
- Soft-muted players can no longer use chat commands like /me to work around softmute (see list of chat commands in your config file).
- Made slash command lists for chat and whisper commands smarter - all aliases are now auto-detected so you don't have to tediously research and list every valid command variation. Or a translation - eliminated workarounds to get away with spam or dodge eavesdropping.
- Added a handy comment to the top of the config file, which provides a URL for the setup/config page.
- Added plenty of scary bugs to celebrate Halloween and GriefPrevention's version 13.0. ;) Yes, this is a joke. But seriously, did you know that since I started this project in 2011, GriefPrevention has released more than 200 versions, and has been downloaded about 350,000 times? O.o
- Made monitoring soft-muted messages easier. They will now appear in your server logs, and if you configure your abridged GP logs to include admin activity, they'll also appear there.
- Added an option (default off) to prevent rabbits eating crops.
- API: Added a public datastore method to get all the claims in a specified chunk.
- API: Made the shovel mode enum public.
- Added the griefprevention.seeinactivity permission node, which will show a claim owner's offline time when you inspect his claim with a stick.
- Allowed for adding a player to a personal ignore list while the ignored player is offline.
- Added PvP world options to disable flint/steel and dumping lava buckets near other players. By default the rules are off, so allowing PvP by build.
- Better new player detection for creative mode - this means players in creative mode severs with GP can use MineChat.
- Cleaned up the help experience around some claims-related slash commands.
- Fixed a free claim blocks exploit which was doable on servers where players can /sellclaimblocks.
- Fixed rare "data too long for column..." errors in database mode.
- Fixed hitting the concurrent database connections limit for servers who are online without a reboot for a very long time.
- Added support for empty banned words list (bannedwords.txt).
- Admins can't be ignored anymore - they have a new permission node "griefprevention.notignorable", which you can take away if you don't want players using /ignore to determine who has administrative permissions.
- Your basement and other underground structures will now be automatically protected by extending a new surface level land claim downward when you create a new claim, provided those structures are built with player block types and connected to other player-type blocks inside the initial land claim at surface level. In other words, fewer "I didn't realize my land claim didn't reach all the way to bedrock" complaints.
- Fixed the boot issue with database mode which appeared in 12.6.1.
- Improved database mode reliability after a period of server inactivity.
12.6 BETA Update
- Added auto-mute for chat trolls. Players who've very recently joined your server and spout profanity (see new bannedWords.txt file) will be automatically muted. They won't know they're muted, and an admin can undo the mute with /SoftMute.
- Added a lite profanity filter. If a player who isn't new to the server uses a word from bannedWords.txt, he'll get a warning and his message will not go out. Later uses of banned words from that player will be muted. Note that this banned words list does not support regular expressions by design - see the setup/config page for an explanation.
12.5 BETA Update
- In creative mode worlds, fluids won't flow outside of land claims.
- In creative mode worlds, several block types (cobble, obsidian, water source, lava source) won't form outside of land claims.
12.4.1 BETA Update
- No more attackers placing TNT in besieged land claims.
- Now cleaning-up any water above sea level in creative mode worlds when a land claim is removed.
- Fixed siege attackers having permission to toggle /ClaimExplosions.
- Fixed invincible attack dogs in pvp worlds labelled as non-pvp worlds in the GP config file.
12.4 BETA Update
- Performance boosts for creating, resizing, deleting, and managing permissions in land claims.
- Claim subdivisions (sub-claims) now have unique IDs.
- During a siege, attackers may now place TNT inside the defender's land claim and ignite it.
- During a siege, TNT will now destroy soft block types (see config).
- After a siege ends, during the period where the defender's doors are unlocked for looting purposes, attackers may now continue to break soft block types.
- Squids are now protected in land claims.
- Added an administrative /ClaimBook command which gives a player a replacement claim information book.
- Fixed an intermittent problem saving player data.
- Allowing narrow land claims (5 blocks wide). Introduced a minimum total area, default 100. If you previously customized the minimum claim size, you'll want to reconsider and adjust again since you now have two different settings to play with.
- Improved the repeat message anti-spam.
- Reduced the delay between a new player join and delivering a claim book to 10 seconds (from 30).
- API: Made GriefPrevention.lookupPlayerByName(string) public.
- API: Made player ignore lists public (see PlayerData.ignoredPlayers).
- Added a cancellable event to GriefPrevention's API so that other plugins may selectively disable the pvp protections.
- Now giving new players GP reference books. This solves a few persistent problems. 1) players somtimes miss the in-context help messages, 2) players who watch the instructional video and play on non-default config servers get confused because the tools are not golden shovel and stick on their server, and 3) built-in command help is clunky. Yes, you can turn this off in your config BUT before you do, know that 1) only new players will get the books, 2) no player will ever receive more than one from the plugin, and 3) the books arrive about 30 seconds after joining, so they won't interfere with any on-join kits.
- Tweaked the portal trap fix's timing (10 seconds standing in a portal instead of 5).
- In non-PvP worlds, players were successfully mounting tamed horses outside of land claims without permission, and placing fire and lava near other players. This is now fixed. :)
- Claim managers (/PermissionTrust) may now use /UnTrust again, but can't target other managers.
- In creative and survival-requiring-claims worlds, players may now create their first land claim using a chest like they would in Survival mode worlds.
- Reduced punishment for trying to chat an IP address that's not on the allow list (see config file for allow list) to message mute for first offenses.
- Now supporting an empty list of commands requiring access trust when used in land claims.
- In worlds where land claims are disabled, right-clicking with a stick doesn't prompt any messages now.
- Stopped eavesdropping private messages directed at players who have the eavesdrop permission.
- Added an API to determine whether or not a player is on the /softmute list.
- When GP bans a player, there will now be notes in your ban file identifying GP as the source and listing a reason.
- Configuring a redstone comparator (default: right click) now require build permission inside land claims.
- Fixed log spam when claim block accrual rate is set to zero.
- Fixed /ContainerTrust not allowing farming in claim subdivisions.
- Fixed invincible guard dogs in PvP worlds.
- Added /AdminClaimsList.
- Fixed an easy workaround for the CAPS filter. Case-sensitive URLs may suffer, but are uncommon anyway.
- Fixed "in-pvp" status remaining after a player dies.
- Added smarts for dynamically generated/loaded worlds - PvP rules on/off will be determined by Bukkit's world.getPVP().
- Claim managers can't use /untrust anymore - because managers shouldn't be able to kick-out other managers.
- Visualizations play nicer with signs.
- Added a permission node for the /ignore commands - griefprevention.ignore.
- Claim files for non-existent worlds are deleted.
- The "commands requiring access trust" config option now supports slash commands with specific parameters, like "/warp create".
- Once in PvP combat, a player can't just step over the line into a protected area when he starts losing the battle. Players who are in PvP aren't protected from PvP by land claims until they've gone 15 seconds without attacking or being attacked (default value - see PvP cooldown in your config file).
- Admins can use /ignoreclaims to attack players in land claims where they would otherwise be protected.
- Performance improvements for data storage.
- Fixed database migration (was briefly broken after the /ignore feature was added).
- No claiming land during PvP combat.
- Players offline for up to 90 days are now targetable with slash commands (was 30 days).
- To get sign notifications in-game (in the chat), use griefprevention.eavesdropsigns, instead of just griefprevention.eavesdrop (which still works for whispers).
- There's no more permission to automatically bypass pvp protections in land claims. Instead, use /ignoreclaims to toggle that bypass on and off.
- Output from /claimslist and /trustlist is now customizable in messages.yml.
- Stopped trying to auto-fill big holes in creative mode worlds. It was valuable when sea level is set correctly (see config file), but problematic when that setting is incorrect. I decided to make that trade-off.
- Better logging for secondary storage (file system or database) problems.
Added /ignore, so players can help themselves when there's no admin online to use /softmute and shut down a problematic chatter. Also helpful in reducing drama, which nobody likes. In addition to ignoring standard chat messages, an ignored player also can't use any whisper commands (see GP config file) targeting the player who's ignoring him.
Added /separate, an administrative command which forces two players to ignore each other. They are not notified, and can't see the force-ignored player on their /ignorelist. When two players can't get along but you don't want to totally /softmute either of them, this is a good option. Required permission: griefprevention.separate
- Disabling creature protections in the config file will now allow villagers to be attacked without permission inside land claims.
- Added a new config option so that server owners may allow anyone to trade with villagers, even in land claims where they have no permissions.
- Fixed sign placement entries in server logs not including the placing player's name.
- Added per-defender /siege cooldown.
- Performance boosts for equipping the golden shovel and delivering claim blocks.
- To combat using bots (or multiple accounts in general) to fill a server's slots so honest players can't connect, there's now a limit to how many players can connect at the same time using the same IP address. There are exceptions for players who have exhibited "human" behavior. :) You can change the limit in your config file, but I recommend giving the default a try first, since increasing the limit increases your vulnerability to this type of "attack".
- /AdjustBonusClaimBlocks (/acb) now works with player UUIDs.
- Removed formatters from the abbreviated logs for better readability.
- Improved sign formatting in abbreviated logs for better readability.
- Major new feature! Now server owners can quickly and conveniently review what happened during the time they were offline using GriefPrevention's new abridged logs. Unlike the noisy server logs, these logs are very selective about what they include and formatted for easy reading. They also automatically delete themselves after 7 days (default), and may optionally include GP administrative activity, like admins deleting land claims or giving players bonus claim blocks for example. Use this feature to make the most of other GP features like /softmute and suspicious bucket logging! :)
- Fixed explosion protection config settings. Now all permutations work - for example you could allow explosions only IN land claims, or only outside, or only outside below sea level, or everywhere or nowhere... and the /claimexplosions command will enable explosions for individual land claims temporarily.
- Added support for RoyalCommands plugin.
- Fixed /restorenature bugs associated with setting the sea level very low.
- Configuring GP to not protect horses now also stops them from being protected from damage in land claims.