PlotMe logo by xDizasterCYx


Greetings dear server admins! I present to you, PlotMe, a multi-world plot
management plugin. Each plot world has its own configurations. Each plot is also protected and only the owner can build on it. The paths/road surrounding the plots are protected against any type of griefing.
DynMap world example

Connections to Mojang server

The latest version of this plugin (v0.13d) and the next version going forward now connect to the mojang servers to request UUIDs of offline players when needed. This is to ensure players that change name do not lose their plots. This feature cannot be turned off.

What are UUIDs?

Mojang started creating a way to let players change their username. To allow this, each player now connects to servers using their name and their UUID which stands for Universely Unique Identifier. Each account is associated to 1 UUID and it will never change. This means that servers, when saving data, need to now save by UUID instead of saving by Username. This is to prevent players from losing their plots if they decide to change username.

News 2014-04-29

Released PlotMe v0.13c ONLY FOR 1.7.9 that provides support for UUIDs.
Also, I have posted a page containing the SURVEY RESULTS

CI - Continuous Integration

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.

LocalizationWorldEdit UsageDynMap Addon

Video Guides


To Do List

  • Find a way to make /plot move more stable.
  • Add function to move a plot from a smaller world to a bigger plot world.
  • Add a command to flag plots Done and a command for admins to see plots that are done
  • Add function to connect adjacent plots of the same owner.
  • Find a way to generate normal world plots

Optional Addon Plugins


  • NoPlugins
  • PluginGaurd (I don't know where people get this one, but it's incompatible)

Example Servers

Current Version Changes

Version 0.13f


  • Nullpointerexception on player login
  • Nullpointerexception when looking at a plot information on a currency plot world

Version 0.13de


  • Made SqlManager.addPlotComment() also accept the same arguments as the previous plotme version.

Version 0.13c


  • Updated to use UUIDs on Owner, Current Bidder, Allowed players, Denied players and commenters
    • On first start, server will fetch the UUID of every player in the database. This is made in an asynchronous process and should cause minimal lag to the server.
    • When testing if a player can build in an area, his UUID is now compared instead of his name.
    • Soon Mojang will allow players to change name. To compensate for that, when a player logs on the server, it will verify and update when needed his name on plots. This is also done asynchronously but I believe it could cause issues on dense servers with many many plots. If it becomes a problem, I might turn this into a manual process. The player would need to type a command to update plots with his name.
    • When you set a plot to a player, add a player, deny a player, if that player is not online, it will query the mojang server to fetch his UUID. This way, if the player changes name before he logs back on there is less chance of issues.


  • Items from Item frames can no longer be removed by unauthorized players
  • Snowman no longer leave snow behind them (You will see ghost snow but it will be gone if you relog)
  • Fixed the generator to properly use the second value in blocks defined in configuration (i.e RoadMainBlockId: '159:9')
  • Fixed migration from Flat file to SQL where it would not copy the allowed/denied/comments
  • Fixed a typo in a caption when removing denied players

Full changelog history


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

  • Avatar of RockyMan13 RockyMan13 Jul 23, 2014 at 21:39 UTC - 0 likes


    Could you add support for VoxelSniper please?


  • Avatar of Greenman1805 Greenman1805 Jul 23, 2014 at 20:08 UTC - 0 likes

    @mscott1106: Go

    The name of your world has to have the same name like the name in the config.

  • Avatar of mscott1106 mscott1106 Jul 23, 2014 at 16:52 UTC - 0 likes

    Plz help. I got this plugin along with mtiverse, so that I could use it to get to the world. So I make the world with the plots, but I try to use /plot me claim on a plot, but it says it's not a plot world!!! Plz help!!!

  • Avatar of Kervinou Kervinou Jul 23, 2014 at 15:56 UTC - 0 likes

    <<reply 2279667>>

    Hi !
    +1 for this question ;)

    ==> "Is there a way to give player one free plot while keeping all other plots for sale?"

    I use actually plotme.setowner permission that i have given to moderators, so modo take a plot by /p auto or /p claim and after he /p setowner <player>

    it is actually the only solution that i found, but if tomorrow, it is possible to have one plot free but other for sale, i am OK... it will be very good :-)


    French Minecraft Server and French Translated Plugins ;-)
    Playcraft Network: -- server:
    MadInCRAFT Only +18y & whitelist : -- server:
  • Avatar of lANTHONYl lANTHONYl Jul 23, 2014 at 15:00 UTC - 0 likes

    Is there a way for players to vote on other player builds, or are comments as far as it goes? Is there a way to give player one free plot while keeping all other plots for sale?

  • Avatar of lANTHONYl lANTHONYl Jul 23, 2014 at 12:51 UTC - 0 likes

    @Greenman1805: Go

    I noticed that too... Kinda makes it impossible to have things like fence be the wall :/

  • Avatar of Greenman1805 Greenman1805 Jul 23, 2014 at 11:03 UTC - 0 likes

    When I set a border with WorldBorder, can players get a Plot outside the border with /p auto?

  • Avatar of chsedv chsedv Jul 22, 2014 at 20:46 UTC - 0 likes

    When i use Bukkit 1.7.10R01 with latest Plotme 0.13f i have only errors in serverlog when type "mvtp bw1"

    22.07.2014 22:44:45 [INFO] Player issued server command: /mvtp bw1 22.07.2014 22:44:45 [SEVERE] Could not pass event PlayerTeleportEvent to PlotMe v0.13f 22.07.2014 22:44:45 org.bukkit.event.EventException 22.07.2014 22:44:45 at$1.execute( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.plugin.RegisteredListener.callEvent( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.plugin.SimplePluginManager.fireEvent( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.plugin.SimplePluginManager.callEvent( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer.teleport( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.craftbukkit.v1_7_R4.entity.CraftEntity.teleport( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at com.onarandombox.MultiverseCore.utils.SimpleSafeTTeleporter.safelyTeleport( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.onarandombox.MultiverseCore.utils.SimpleSafeTTeleporter.teleport( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.onarandombox.MultiverseCore.commands.TeleportCommand.runCommand( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.pneumaticraft.commandhandler.multiverse.CommandHandler.checkAndRunCommand( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.pneumaticraft.commandhandler.multiverse.CommandHandler.processFoundCommands( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.pneumaticraft.commandhandler.multiverse.CommandHandler.locateAndRunCommand( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at com.onarandombox.MultiverseCore.MultiverseCore.onCommand( [Multiverse-Core-2.5.jar:?] 22.07.2014 22:44:45 at org.bukkit.command.PluginCommand.execute( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.command.SimpleCommandMap.dispatch( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.PlayerConnection.a( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.PacketPlayInChat.a( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.NetworkManager.a( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.ServerConnection.c( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.MinecraftServer.v( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.DedicatedServer.v( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at net.minecraft.server.v1_7_R4.MinecraftServer.u( [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570] 22.07.2014 22:44:45 at [spigot-1.7.10-R0.1-SNAPSHOT1570.jar:git-Spigot-1570]

  • Avatar of kangarkooo kangarkooo Jul 21, 2014 at 11:12 UTC - 0 likes


    when you are planning to implement plot merging feature that connects (removes the road) between two plots with same owner next to each other?

  • Avatar of Greenman1805 Greenman1805 Jul 20, 2014 at 19:41 UTC - 0 likes

    When you create a plotme world where the plot size is higher than the default size, there are no blocks under the WallBlock.

    I could add a picture if you don't know what I mean.


Date created
Jun 03, 2012
Last update
May 02, 2014
Development stage
  • enUS
GNU Lesser General Public License version 3 (LGPLv3)
Curse link
Recent files



Optional dependency