Grief Prevention

Grief Prevention

AUTOMATICALLY PREVENTS ALL FORMS OF GRIEF, including build/break, theft, spam, fire, spawn camping, lava, treetopping and more, so you don't have to undo any damage after the fact. No configuration or database required! Stop responding to grief and prevent it instead. Grief Prevention will solve your grief problems without requiring you to manage a roster of trained administrators, juggle 10 different anti-grief plugins, take away cool standard game features, publish a training manual / tutorial for players, or add explanatory signs to your world. You can also choose to integrate PvP elements into build design to finally get a PvP experience befitting a sandbox game about creativity.

Grief Prevention stops grief before it starts automatically without any effort from administrators, and with very little (self service) effort from players. Solve all your grief problems with a single download, no database, and no configuration step.

Download the Latest Build Here

These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Because the BukkitDev staff has quit, they probably never will be, so go ahead and use them. :)

http://dev.bukkit.org/media/images/76/965/gp_video.png

Official Servers

You can experience this plugin for yourself (as a player) by joining any of these public servers. :) We maintain these servers personally, which helps us catch bugs and spot opportunities for new features and improvements. Have fun!

Feature List

Yes, everything is customizable. See administrative details.

  • No database or world backups required.
  • Extremely efficient CPU / RAM usage.
  • Land claims are easy to manage.
    • New players get automatic claims around their first chests.
    • Players who ask for help in chat get an instant link to a demonstration video.
    • Resizing claims and creating new claims is done with ONLY the mouse, no slash commands.
    • When a player appears to be building something nice outside his claim, he's warned and shown his claim boundaries.
    • Claim boundaries are easy to see, and don't require any client-side mod installation.
    • Extremely easy-to-remember, single-parameter slash commands for giving other players permissions.
    • Claim subdivision and granular permissions are available to organize towns and cities. Watch this video.
  • It's IMPOSSIBLE to grief a land claim. Watch this video.
    • No building or breaking.
    • No stealing from ANY containers.
    • No using crafting equipment.
    • No sleeping in beds.
    • No button/lever usage.
    • No adjusting redstone repeaters.
    • No pushing blocks in with pistons.
    • No pulling blocks out with pistons.
    • No TNT damage.
    • No creeper damage.
    • No damage from TNT cannons.
    • No explosive damage from other plugins, like Extra Hard Mode or Magic Spells.
    • No enderman block changes.
    • All doors may be automatically locked (optional, see config file).
    • No killing or luring animals away.
    • No stealing water.
    • No trampling crops, by players, animals, or monsters.
    • No growing trees inside the claim by planting outside.
    • No building overtop, all claims reach to the max build height.
    • No placing or breaking paintings / item frames.
    • Fluids will not flow into a claim from outside.
  • Excellent anti-spam protection
    • Warns, then mutes, then may kick or bans (configurable) spammers.
    • Most spammers get only one message out before they're muted.
    • Almost no false positives.
    • Blocks server advertising.
    • Blocks repeat message spam.
    • Blocks ASCII art (ex. Nyan Cats) spam.
    • Blocks similar message spam.
    • Blocks unreadable (gibberish) message spam.
    • Blocks CAPS.
    • Blocks macro spam (very different messages in quick succession).
    • Blocks login/logout spam, even when the spammer has multiple accounts.
    • Blocks death spam.
    • Blocks slash command spam, including /tell, /emote, and any more you add.
  • Wilderness Protection and Rollback
    • Fire doesn't spread or destroy blocks.
    • Creepers and other explosions don't destroy blocks above sea level.
    • TNT doesn't destroy blocks above sea level.
    • Griefers can't dump water or lava above sea level, unless they claim the land first.
      • The fluid will not flow out of the claim.
      • Deleting the claim removes the fluid to prevent spillage.
    • No planting trees on platforms in the sky ("tree grief").
    • Instant, point and click nature restoration for not-claimed areas. Watch this video.
      • Insanely easy and fast fixes for penises, swastikas, and anything else unsightly.
      • Point at what you don't like and click, and it's fixed. Even from far away.
      • Never accidentally changes blocks inside land claims.
      • No need to investigate who built it, who broke it, or when they did it.
      • Doesn't matter if the griefer built with "natural" blocks, it will still be fixed.
      • No database.
      • No backups.
      • No chunk regeneration (it's dangerous for technical reasons).
      • Fixes bad chunk generations, like floating islands. It will be better than new.
      • Fills holes, even next to water to correct big spills.
      • Smooths noisy terrain.
      • No griefer construction is safe. If it's unnatural enough to be noticeable by players, it will be removed or filled-in.
  • Land claims can't be used as a griefing tool.
    • Land claims beyond the first require a golden shovel.
    • Minimum claim size prevents sprinkling small claims to annoy other players.
    • Max claim allowance grows with time played on the server, and can't be cheated by idling.
    • It's impossible to get a player "stuck" inside a land claim.
    • A simple administrative slash command will instantly remove all of a griefer's claims, no matter where they are.
  • Catches clever griefers.
    • Enhances the /ban command to ban ALL a griefer's accounts (not just his IP address).
    • Logs sign placements.
    • Optionally, logs whispers and opens them to administrative eavesdropping.
  • PvP Protections.
    • When PvP is off, no setting fire or dumping lava near other players.
    • Absolutely bullet-proof anti-spawn-camping protection, which requires no configuration.
    • No logging out, stashing items, or using plugin teleportation to escape combat.
    • Optional siege mode, to answer players who hide in their claimed houses to avoid combat.
  • Supports your server growth.
    • Permit players to exchange server currency for claim blocks (requires configuration and other plugins).
    • Grant claim blocks automatically for votes, donations, etc (console command provided, other plugins required).

Troubleshooting and Common Questions

Save yourself some time! Check this page for the answer to your question.

Compatibility with non-CraftBukkit Servers

This applies to both heavy mods that change the core game (Tekkit, Feed the Beast, etc) and also unofficial variations on CraftBukkit like Spigot and CraftBukkitPlusPlus.

We design, implement, and test Grief Prevention for Official CraftBukkit. There simply isn't enough time for us to also test on all the other popular platforms, or investigate bugs reported on those platforms, or even become experts on those platforms (there are SO many mods and mod platforms out there!). If you think you have a bug, PLEASE don't report it unless you can also reproduce the problem on CraftBukkit. If a bug happens ONLY on a non-CraftBukkit server, then your contact should be the platform or mod developer, because their emulation of CraftBukkit is a little off leading to accidental behavioral changes in CraftBukkit plugins, or their mod doesn't follow the golden rule (see below).

Ultimately, it's likely that the "fix" for a grief problem on a non-CraftBukkit server will be to disable/uninstall/reconfigure the mod that makes the grief possible. That was certainly the case for most of Tekkit Classic in my experience, and I suspect it will be the case for many mods who don't strictly follow the golden rule, "ask plugins permission before you change anything".

We want everyone everywhere to be worry-free about grief, but we'd need a team of full-time developers to pull that off. Unfortunately, we have a only couple of part time developers, and there's no money in plugin development to hire anyone (or even pay ourselves). So with the time we have, we do what we can - do our best work on the main platform and hope other platforms will be similar enough to CraftBukkit to also run Grief Prevention effectively.

In-Depth Topics

Extensions

There is a DynMap plugin for GriefPrevention, which adds markers for player claims to your DynMap.

If you want to your players to buy/sell/lease claims, then you can install the Real Estate plugin for GriefPrevention. This Plugin has been updated by SuperPyroManiac to work with more recent GriefPrevention Builds. You can find his version of GP-RealEstate here.

GriefPrevention Flags adds flags to your grief prevention claims for PvP (admin claims only), and Mob spawning at the moment. (More features in the works!)

Flags Is a fork of GP-Flags that also supports other Region/claim type plugins, as well as adding several other features, such as support for Subdivisions, Multiple Worlds, and even flags on a world itself.

HardcoreClaims is a plugin that will allow a player's claims and GP information to be wiped when they die. thus every time a player dies they are set back to square one. It also integrates with Flags to allow per-claim control over whether a claim is deleted.

More Great Plugins!

  • Anti-XRay
    • Limits how quickly players can mine valuables, based on their play time / values mined ratio.
    • Keeps your valuables in the ground, so non-cheating players can find them (unlike ore loggers).
    • Practically free to run, unlike the tremendously expensive Orebfuscator.
    • Most legit players won't notice, but xrayers will ragequit and move on.
  • Population Density
    • Automatically assigns new players to wilderness where they'll find other new players and plenty of space, wood, and ore.
    • Optional teleportation system which can't be abused by players to escape combat or save them from being lost.
    • Login queue to guarantee fairness when the server is full.
    • Optional reserved spots for administrators.
    • Automatically removes idle players when the server is nearly full.
  • EnderHoppers
    • Allows the use of Hoppers with EnderChests inside a Claim
    • Items are taken from and added to the EnderChest inventory of the Claim owner
    • Supports The Better Ender Chest Plugin

Command Reference

Player Commands

CommandDescriptionAliases
/AbandonClaimDeletes the claim you're standing in.
/ClaimExplosionsToggles if explosions are allowed in the claim.
/TrustGives another player permission to edit in your claim./t
/UnTrustRevokes any permissions granted to a player in your claim./ut
/AccessTrustGives a player permission to use your buttons, levers, and beds./at
/ContainerTrustGives a player permission to use your buttons, levers, beds, crafting gear, containers, and animals./ct
/TrustListLists the permissions for the claim you're standing in.
/SubdivideClaimsSwitches your shovel to subdivision mode, so you can subdivide your claims./sc
/BasicClaimsPuts your shovel back in basic claims mode./bc
/PermissionTrustGrants a player permission to share his permission level with others./pt
/Untrust AllRemoves all permissions for all players in your claim.
/AbandonAllClaimsDeletes all of your claims.
/BuyClaimBlocksConverts server money to claim blocks./BuyClaim
/SellClaimBlocksConverts claim blocks to server money./SellClaim

Admin Commands

All of the permissions below start with "griefprevention.". For example, "restorenature" is "griefprevention.restorenature".

CommandDescriptionPermissionAliases
/AdjustBonusClaimBlocksAdjusts the number of claim blocks available to a player.adjustclaimblocks/acb
/RestoreNatureSwitches the shovel to restore nature mode.restorenature/rn
/RestoreNatureAggressiveSwitches the shovel to aggressive restore mode.restorenatureaggressive/rna
/RestoreNatureFillSwitches the shovel to fill mode.restorenatureaggressive/rnf
/IgnoreClaimsToggles claims override.ignoreclaims/ic
/AdminClaimsSwitches the shovel to administrative claims mode.adminclaims/ac
/BasicClaimsSwitches the shovel back to basic claims mode./bc
/DeleteClaimDeletes the claim you're standing in.deleteclaims/dc
/DeleteAllClaimsDeletes all claims belonging to a specific player.deleteclaims
/DeathBlowKills a player, optionally giving his items to another.deathblow
/ClaimsListLists a player's claims and claim block details.adjustclaimblocks

Permissions

PermissionDescription
griefprevention.deathblowAllows the use of the /deathblow command
griefprevention.restorenatureAllows the use of the /restorenature command
griefprevention.restorenatureaggressiveAllows the use of the /restorenatureaggressive command
griefprevention.lavaPlayers with the permission may place lava anywhere they have build permission, but still not near other players.
griefprevention.adminclaimsAllows creating, deleting and building for an admin claim
griefprevention.ignoreclaimsAllows the player to ignore claims using the /ignoreclaims command
griefprevention.deleteclaimsAllows the player to delete and resize other player's claims
griefprevention.createclaimsAllows players to create additional claims when Claims.CreationRequiresPermission is set to true
griefprevention.claimsThis permission is granted to everyone by default, and is necessary for the claims-related slash commands.
griefprevention.buysellclaimb­locksThis permission is granted to everyone by default and allows the player the ability to buy/sell claim blocks
griefprevention.adjustclaimblocksAllows the player to adjust player's bonus claim blocks amount
griefprevention.eavesdropAllows the player to see PMs
griefprevention.admineavesdropOnly in versions for MC 1.5 and up Allows a player to see PMs from players with the griefprevention.eavesdrop permission as well.
griefprevention.spamAllows the player to bypass the spam protection
griefprevention.loginspamMC 1.5 and up Allows the player to bypass the login spam protection

Performance

According to the Bukkit wiki, a CraftBukkit server should have 1GB of RAM per 20 player slots. If you follow that guidance and run a reasonable number of plugins, I guarantee that you will not have a problem with lag or memory usage. I can say this with certainty because I'm running a middle-tier (as in, average pricing) hosted servers with the recommended RAM/players ratio, and I run several additional plugins with no issues. This has been my experience over several months running anywhere from 1 to 4 servers with an active player population.

It is normal for your server to spend more time running Grief Prevention code versus other plugins. After all, GP is watching all your players all the time, and is keeping them all happy while not bothering you. Grief Prevention is extremely efficient at doing its job - performance has been and always will be the most important factor in design and implementation decisions, because the only thing worse than a griefy server is a laggy server.

Of course any server owner will eventually have a problem if he pushes his hardware too much, for example by running lots of heavyweight plugins. If you do have a problem, the solutions are to either add more RAM/cpu power, re-prioritize your plugins to drop a few you don't desperately need or reduce your max players.

Project Status and Future

From BigScary: I've re-joined the project. Yes, I know many of you had a very bad experience with the beta builds, there were many bugs. We've rolled-back the buggy features which were added after I left the project, and then I added necessary anti-grief features for new game elements (leashes, hoppers, mounts). UUID support is next on my list.

Because all of the Bukkit staff have simultaneously quit the project, it's extremely unlikely that Bukkit will ever be updated to support Minecraft 1.8 or later servers. Also, there's a legal issue which resulted in all craftbukkit builds being removed from the internet in general. The law is slow, so that makes future bukkit versions even less likely.

Due to these circumstances, my current plan is to wait for a new mod platform to emerge (spongepowered.org is looking promising), then build a new grief prevention plugin for that new platform. Until then, Tux and I will perform the minimum maintenance needed for this project, which includes fixes for grief (including UUID support), bug report investigations, and bug fixes. There will be no feature adds (like new config options or per world configs).

How to Upgrade to 8.0+ Builds

Starting with GriefPrevention 8.0.3, you can keep any claims and player data that was created by the broken "beta" builds. You just have to customize your config file again (a new config.yml will be generated in a folder named "GriefPreventionData").

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

  • Avatar of stgram stgram Feb 23, 2014 at 15:40 UTC - 0 likes

    @GodsDead: Go

    If you run out of space, every plugin that writes data on shutdown will erase its own data, it is a terrible flaw. This is why I keep backups of essentials, and switched to SQL for GP. The data you need is absolutely lost in its current state.

    http://minecraft-mp.com/regular-banner-25773-6.png

  • Avatar of Bubbbaaa Bubbbaaa Feb 23, 2014 at 15:21 UTC - 0 likes

    @GodsDead: Go

    That is where "daily" backups come in handy for problems of this sort

  • Avatar of GodsDead GodsDead Feb 23, 2014 at 14:58 UTC - 0 likes

    I have a majour problem that I need assistance with ASAP, I have had no problems at all with GP for 11 months or so until today, the server crashed last night due to memory, when I restarted it, GP didn't load any of the claims at all, I can see the data is still there, New claims can be created and a restart saves them, but I need to use the data before this happened. The new claims look like they are following the correct ID number we have 358 or so. Its flat file, and I do have access to MYSQL.

    EDIT: I opened up some of the claim data files all 358 are completely blank, GP has wiped all claim data?

    Last edited Feb 23, 2014 by GodsDead
  • Avatar of user_549837 user_549837 Feb 23, 2014 at 03:03 UTC - 0 likes

    Getting this spammed in the console:

    Could not pass event EntityDamageByEntityEvent to GriefPrevention v7.8

    Any input on how to fix?

  • Avatar of Mysticforce12345 Mysticforce12345 Feb 23, 2014 at 00:46 UTC - 0 likes

    I was wondering if Grief Prevention could add like if someone like claims an area and somebody can use worldedit on the claim can u add like a permissions node or like something in the config that blocks worldedit grief? Thanks!

  • Avatar of Arton123 Arton123 Feb 22, 2014 at 23:26 UTC - 0 likes

    This should have a better setup for how permissions are show, the way it is now it kind of hard to even figure, atleast for me. I find this a good setup. http://dev.bukkit.org/bukkit-plugins/ontime/pages/permissions/

  • Avatar of stgram stgram Feb 22, 2014 at 22:30 UTC - 0 likes

    @BC_Programming: Go

    Thanks for the fix. I saw enough mysql errors for the rest of my life. :D

    As for the stable builds, perhaps some way of rating each version, or writing tickets to? If 3 people find the same terrifying bug in one build, the other 3000 should not download it, to limit the damage, while you work on it. And if a build gets enough upvotes, it is considered stable. Some sort of system like that, to help the community.

  • Avatar of BC_Programming BC_Programming Feb 22, 2014 at 19:31 UTC - 0 likes

    @Smac3223: Go

    Seems like it's just been dev builds for quite some time now. After last times horrid bug that deleted claims I'd rather hold off on the buggy dev builds till a stable one is released. As it stands my server is still running on the 7.8-beta-b213 and claims in 'The End' simply do not work. Upon the daily restart they just vanish. No idea why..

    I could tag any version as stable if I wanted to. There wouldn't be anything particularly "stable" about it. There are no unit tests so it can't be based of passing them, and Even spending an entire evening messing with it on my test server I can barely get any code coverage. Even tagging a build as beta brings with it more assumptions of stability than feel I am able to responsibly guarantee.

    Even so, I was going to try to get another beta available here soon. providing build 279 as a beta would be no less arbitrary than earlier builds.

    That said, the main concern would be what happens with the changes to PlayerData names, particularly in existing data that would be brought forward. It worked when I tried earlier with 7.7, but I "only" have three accounts (one of which I recently bought solely for testing GP with all-lowercase users).

    Even with a stable build/upgrade I think it will be prudent to replicate any database information GP is using and/or flat file information, to avoid a worst-case scenario that some unlucky individuals experienced from some of the dev builds.

    At least now that you've mentioned the version you have I can stop trying to reproduce your issue. That said I'm not sure why you would be booted to the overworld when you log back in in any case.

  • Avatar of BC_Programming BC_Programming Feb 22, 2014 at 19:20 UTC - 0 likes

    @fungreenfox: Go

    Should be fixed now with #279.

    @pr4xt3roy: Go

    /giveclaim has a separate permission and is primarily for players to give one of their claims to another player. (It doesn't give or take claim blocks). Players can use it without administrator permissions, but without admin it only works on their claims.

    /transferclaim is primarily for switching a claim from a admin to a player claim. (and vice versa) by those with the proper permissions/ops. transferclaim was used previously to give claims to other players, but it required an admin and two commands- one to make the player claim an admin claim, and one to make it a player claim owned by the new owner. With /giveclaim it will not require an admin to perform the task where one player wants to give ownership of their claim to another.

  • Avatar of jaime29010 jaime29010 Feb 21, 2014 at 22:22 UTC - 0 likes

    I love this plugin, thanks you developers for creating this amazing plugins

    Last edited Feb 21, 2014 by jaime29010

Facts

Date created
Dec 14, 2011
Categories
Last update
Sep 16, 2014
Development stage
Mature
License
GNU General Public License version 3 (GPLv3)
Curse link
Grief Prevention
Downloads
236,265
Recent files

Authors