ProtectionStones [Updated for 1.13 - 1.16 + WG7] 2.8.3

The easiest grief prevention method that players will enjoy!

  1. EspiDev
    Native Minecraft Version:
    Tested Minecraft Versions:
    • 1.13
    • 1.14
    • 1.15
    • 1.16
    Source Code:
    AxelDios (Original), Vik1395 (2015-2016), Dragoboss (2016-2017), Jerzean (2018), EspiDev (2018+)
    Get support for this plugin on the M.O.S.S. Discord!

    Ever needed an easy, yet powerful way to prevent grief, and protect a certain area?

    This plugin allows players to protect land using a block that they place down. It creates a WorldGuard region at a set radius (configurable) around where the block is placed. The plugin also allows players to add and remove people to the region, as well as set flags (defined in the config).

    • WorldGuard 7+
    • WorldEdit 7+
    • Vault (Optional)
    • PlaceholderAPI (Optional)
    • Spigot 1.13.2+
    Appreciate my work?
    Donations are appreciated! :)

    1.8 - 1.12 (NOT MAINTAINED):
    I did port one version of ProtectionStones backwards, but I do not provide support or updates for this version:


    To install ProtectionStones, make sure you have the requirements above already installed. You can simply just add the plugin to the plugins folder, and it will generate the default configuration.

    Adding new blocks:
    To add new protection blocks, go into plugins/ProtectionStones/blocks, and copy and paste the default block1.toml file and rename it (ex. block2.toml). Then, you have to change the "type" and "alias" fields in the new block config, since there cannot be duplicates.

    Configuring flags:
    Flags allow for customisation of region behaviour. ProtectionStones uses WorldGuard flags, meaning that WorldGuard is actually doing the protecting, not ProtectionStones. You can view the list of WorldGuard flags here.

    It is also possible to use other plugins that add flags to WorldGuard, such as WorldGuard Extra Flags and use them in ProtectionStones.

    The permission list is on the wiki: By default, no permissions are given to players, so you have to add them explicitly. You can also view the recommended permissions to give for commands here.

    Other Recommendations:
    WorldGuard by default prevents hoppers from going between regions. I recommend setting "ignore-hopper-item-move-events" in WorldGuard's config to false to fix this.

    If you want to protect against water and lava flow, you can set "high-frequency-flags" and "protect-against-liquid-flow" to true in WorldGuard's config.

    WorldGuard config:

    Default Config Files:

    Translated Versions of messages.yml:
    Interested in having the plugin messages in a different language? Users have contributed translated versions of the messages.yml file. Contact me if you want to supply a messages.yml file in a different language!



    ProtectionStones has support for PlaceholderAPI! View them here.


    When I add a new block config, an error occurs!
    Read the error. Most likely you made a configuration mistake, you can read the TOML spec here, or ask me. Another known issue is that configs made in Notepad (Windows) cause issues with the plugin. Please use a better text editor (ex. Notepad++) for the time being, while I investigate ways to mitigate this.

    When I get the protection block from the creative inventory, it doesn't work (nothing happens when I place it)!
    Since v2.0.0, the config options "restrict-obtaining" is enabled by default. This restricts obtaining the protectionstones to just /ps get and /ps give (and plugins that use the API), since they attach NBT data to the block. That means that when the block is obtained through natural means, it won't work as a protection block. You can set "restrict-obtaining to false to negate this behaviour.

    How can I add protection blocks in a kit?
    Since v2.0.0, the config options "restrict-obtaining" is enabled by default. This restricts obtaining the protectionstones to just /ps get and /ps give (and plugins that use the API), since they attach NBT data to the block. You need to add a command (/ps give) to give the block to the player in the kit. For EssentialsX, check the kit section here.

    How can I sell protection blocks in a shop?
    There are many ways to sell protection blocks, with the easiest being setting a price on /ps get (requires Vault, configured in the block config). You can also use external plugins to sell the protection block, either through running a command (/ps give) or giving an item that was obtained through /ps get or /ps give. Known plugins to work are: ShopChest, ChestCommands.

    Why don't players see the region merge menu?
    Be sure to give players the protectionstones.merge permission.

    Why do some flags apply to members of the region as well? (ex. block-break deny)
    By default flags apply to everyone, including members of the region. You have to use region groups (using -g) to change this (ex. set the group to apply to only nonmembers). You can read about this here.

    How do I change the block type of a region after players have already created regions with it?

    You can use the command /ps admin changeblock [world] [fromblock] [toblock] to do this. Create a new config (block.toml file) in the blocks folder with the changed block type, while keeping the old one still loaded. Do /ps reload, and run the command to do the conversion. After it completes, you can remove the block config with the old type.

    Why does [x] flag not work?

    Flags are handled by WorldGuard, and some of their behaviours may not be what you expect. You can read more about WorldGuard flags here:

    How can I allow PS regions to overlap or be created inside manually created WorldGuard regions?
    You can use the concept of priorities in WorldGuard, and set the manually created WG region to a lower priority than the ProtectionStones regions.

    I found a bug! How do I get it fixed?
    Please file this issue on either GitHub, or post it on the discussion page.

    I want a new feature!
    Please file this issue on either GitHub, or post it on the discussion page. The feature may not be aligned with the goals of the plugin, so it might also be worth making another plugin that uses the developer API instead.

    Is there a developer API?
    Yes there is! It still is in a beta stage though right now, so methods are bound to change. You can see the WIP wiki page here:



    Usage Statistics:


    This plugin is based off of the original ProtectionStones.

    Migrating from older versions of ProtectionStones (<2.x.x)

    The transition from older versions should be seamless, so just drag the plugin in to the plugins folder and enjoy! The plugin will automatically update your configs and regions.

    You can find the original plugin here:
    Emma94, Diclo, Flak and 8 others like this.

Recent Reviews

  1. dani626
    Version: 2.8.1
    good plugin

    add %player% variable to use in display_name = " " and lore = " " or the %player_name% variable from placeholder api
    from google translator
    1. EspiDev
      Author's Response
      please file an issue for this on github, i can't keep track of it here
  2. Oskicz25
    Version: 2.8.0
    Hi this plugin is sooo good but i want to do a anty pvp cuboid by this plugin can i do somethink to enable in block2 building and destroing? That players place normal cuboid and if they have vip a antypvp cuboid is there any way to do this?
    1. EspiDev
      Author's Response
      please ask for support on the discord server, i can't properly respond here
  3. KatelynnChan
    Version: 2.8.0
    vewy noice >:3 I like it better than using grief prevention. The author was nice to me when I was asking about making the protection stone breakable to all players although there's sadly no option for that, its actually alright.
    1. EspiDev
  4. LKits
    Version: 2.8.0
    Very, very nice plugin! Been using it and I'm really glad to find that it's not fully command-based.
    I like placing blocks, using items instead of writing commands.
    1. EspiDev
      Author's Response
      thank you :)
  5. Pipou
    Version: 2.7.7
    is it possible to make all players break the protection stones?
    It's for a fac server pls
    1. EspiDev
      Author's Response
      please ask for support on the discord server, i can't properly respond here
  6. darkhol
    Version: 2.7.7
    Hello, I need help, I have a problem, every time I want to put a protection stone as a normal user, it notifies me this message: you don't have permission to place a protection block, I already went to set permissions to each block, for example in block1. toml
    in the player section I put this configuration
    # Extra permission required to place this specific protection block (you still need protectionstones.create)
    # Also applies to / ps get (you still need protectionstones.get)
    # '' for no extra permission
    permission = 'protectionstones.create'
    But it does not allow me as a normal user to be able to put protection stones anywhere, does anyone know how to help me?
    1. EspiDev
      Author's Response
      please ask for support on the discord server, i can't properly respond here
  7. Ant4rez
    Version: 2.7.7
    Very good plugin, i have used it for a while and i don't face any important bug or something, the developer is active, i think also it has a great potential and can have many features, recommended.
    1. EspiDev
      Author's Response
      thanks :)
  8. cephalopoid_
    Version: 2.7.7
    It would be really, really cool if there was support for 1.12.2)))))))))))))))))
    1. EspiDev
      Author's Response
      In the discord server #info faq there are some options for 1.12.2, but I don't actively maintain older versions because I don't have much time or incentive to...
  9. Nxbzla
    Version: 2.7.7
    good plugin but you should add a way to set the max amount of claim blocks allowed. if so i cant find it anywhere
    1. EspiDev
      Author's Response
      protectionstones.limit.x permission, please read the wiki
  10. EnriqueS
    Version: 2.7.7
    1. EspiDev
      Author's Response
      check the greeting flag in the block config