Minecraft Mods

PlotSquared - Advanced plot system

  • 23,871 views, 2 today
  • 1,320 downloads, 0 today
  • 47
  • 29
  • 26
Empire92 avatar Empire92
Level 62 : High Grandmaster Batman
Chat | Wiki | Website Source Dev Builds | JavaDocs }
The top world management plugin!
By Citymonstret Empire92
PlotSquared is the most advanced multiworld plot generator and management system!

The generator offers a level of control unmatched by any other plot generator, control percentage composition of each plot section, or even use a schematic for road or plot components. It is also capable of running alongside other generators such as terrain control either as clusters of plots, or augmented generation (see below for examples).​

For end users, PlotSquared comes with a lot of cool features. Merge plots and build with your friends, change plot settings such as time/weather using our extensive flag system, leave comments on other plots and much more.​

What is most important however is having a fast and reliable server. PlotSquared runs well even with hundreds of thousands of plots. Plot clearing is near instant, and you can keep your world clean with lots of useful functions: plot purging, condensation, expiry, world trimming, dynamic world-border, chunk-processor, + more.

For those of you running PlotMe, conversion is automated, and more information is provided on our installation page

For those of you running Plotz, conversion is automated using this converter.
 (Just a few)
  • Fast, Scalable and Efficient
  • Easy installation
  • Quick support
  • Built for minecraft 1.5, 1.6, 1.7 and 1.8
  • Allows offline mode servers
  • Plot Merging
  • Instant plot clearing
  • Customize and regenerate all roads in a map
  • Partial plot worlds (see image below)
  • Extensive flag system
  • Plot purging and old plot removal
  • Dynamic world border and world chunk trimming
  • Mass plot condensation (to reorganize entire plotworld)
  • Chunk / WorldEdit processor to prevent lag / crashes
  • Powerful API (see addons)
  • Large range of official addons (includes Web interface)
  • Multiworld
  • PlotMe conversion
  • MySQL and SQLite integration
  • Four tiers of plot allowance (Owner, Helper, Trusted, Denied)
  • Configurable messages
  • Multiple configurable plot generators
  • Plot naming
  • Mob protection
  • Interactive plot listing
  • Optional redstone disabler when plot owner is offline
  • Supports non square plots (with AdvPlots addon)
  • Dynmap integration (with Plot2Dynmap addon)
  • WorldEdit and VoxelSniper masking
  • Metrics (disable in config)
  • + More
More Info
Official addons we created:
Official generators:
  • HybridGenerator (This is bundled with PlotSquared.jar and supports plot + road schematics as well as Augmented generation)
  • BiomeGenerator (Natural biomes within plots)
  • PlotSquaredSG (Standalone generator)
  • AdvPlots (Non square schematic generation)
  • BasicPlots (Basic generator with 1 plot per chunk)
  • PlotSquaredMG (Large custom terrain gen)
  • IslandPlots (Islands in ocean)
Useful plugins (third party):
Paid (third party)

Video tutorial: LBEGaming
Spoiler - click to show video

Want a feature added? Suggest it in the discussion section!
CreditCitymonstret, Empire92
Progress90% complete
Game VersionMinecraft 1.8.1

7 Update Logs

Multiple updates : 07/17/2015 11:08:26 pmJul 17th, 2015

If you are below version 2.12.5, it is recommended to upgrade.
Important changes:
- An issue related to plot tiers being duplicated has been fixed. This would in specific cases lead to drastically increased memory usage, and errors when stopping the server.
- An issue related to plugin incompatibility has been resolved. This was caused by code related to making PlotSquared unload/loadable using a plugin manager.

Other changes:
- Added a permission node for merging with friends: plots.merge.other
- Added plot rate event
- Considerable optimizations to kill road mobs task
- optimizations to the event system
- Fixed plot list only displaying the available subcommands.
- Fixed hangings being breakable by entities
- Fixed comment fetching for global inbox
- Fixed PlotMe conversion skipping plot members / denied.
- Fixed PlotMe UUID caching without conversion nulling specific config values
- Fixed an issue with some format codes not being translated
- Fixed regenallroads delaying longer than it says it would. credit: @LaxWasHere
- Fixed undesirable blocks being allowed for plot component setting
- Fixed a repo in the pom
- Fixed various inconsistencies with translation color and messages
- Tweaked plot condense to be more specific
- Updated README.md
- Incremented version number
Important information:
- This release includes a large number of changes, we encourage you to test it out before putting it on a live server
- You are encouraged to update any plugin that hooks into PlotSquared
- Some new features are unpolished and will be improved in the following updates
- A lot of stuff is undocumented as documentation is boring

UUID caching
- Now occurs on a separate thread so it has minimal impact on startup
- Completely bypasses the Bukkit system for fetching player data files (which is required for it to be async)
- Skips checking the UUID if using case insensitive and offline mode if the player name is already lowercase
- Used a custom NBT library which is much faster than the Bukkit system

Flag system:
- Flags can be designated as plugin only, and cannot be modified by players
- Fixed plot default flags being modified when any plot changes it's flags (/plot reload would fix this)
- Added multiple new flags related to plot protection ( misc-place, hanging-place, vehicle-place, mob-place etc)
- Tweaked the behavior of multiple flags to be more logical (protection related)
- Fixed heal and feed flags

Plot expiry:
- Recolored and looks a lot nicer
- The modified-blocks flag is added and allows the plugin to skip rechecking the number of modifications every day

- Added debug command to remove all of a specific flag from plots: /plot debugexec remove-flag <flag>

- PlotSquared will not check for updates on startup
- Update the plugin using /plot update (or specify an update url with /plot update <url> )

Plot analysis
- Relevant debug command: /plot debugexec analyze
- I've been working on some more interesting plot analysis which will in future give a better indication of quality content rather than blocks changed
- The main problem with blocks changes is that if a plot is entirely set to a blob of stone it will pass that requirement, despite the fact that it's a blob of stone
- With the plot analysis it will calculate the complexity of the build based on (currently 13) different metrics

Rating priority
- Relevant command to teleport to the next plot: /plot rate next
- PlotSquared will try to prioritize higher quality plots to receive more ratings
- Low quality plots will still be rated, just not as much as higher quality builds

Plot popularity
- Relevent command to list popular plots: /plot list top
- Will sort the plots based on average rating and number of ratings

Event system
- Fire can no longer be put out in protected areas
- Right clicking a block with food or a book in denied areas will no longer prevent you from eating or reading
- Dragon egg teleportation is now prevented
- fixed armor stands being placed outside allowed area
- fixed item frames and paintings being placeable outside allowed area
- fixed eating and reading being restricted where it shouldn't
- recoded player interact event
- tried centralizing some logic to the EventUtil class

- Changed the permissions class to an enum
- Started using the enum permissions in place of hardcoded ones

- PlotSquared is now maintaining its own configuration classes independent of Bukkit
- Invalid configuration files are now renamed and a new one is generated (rather than part or all of it being deleted)

Plot downloading
- Added plot downloading using /plot download
- Added config option web.url and web.server-ip
- Uses an external service for storage

- Fixed an issue with SQLite bulk inserts sometimes skipping the last few
- Added PlotMe conversion for PlotMe 0.17.X

- Added italian language translations

- Added multiple permission packs to the plugin (see the permissions page on the wiki)

Road schematics
- Fixed logs not being rotated correctly for road schematics

Tweaks / Minor modifications
- Fixed a typo in plot visit no permission message

- Improved the StringComparison class to provide better command feedback
- Block names will now be matched to their corresponding id if used in configuration or commands formerly requiring block ids
- Plot deny will now kick the corresponding player from the plot if required
- Fixed plot music duplication and not being able to easily stop music
- Plot ratings now support multiple categories and feature a GUI if there are categories (will be documented later)

Misc Fixes
- PlotSquared can now be unloaded and loaded by most plugin managers
- Fixed chunk sending for 1.7.10 clients
- Fixed linebreaks in the translations file behaving strangely

- Added PlotInventory class which allows for easy inventory GUI creation (used in plot musc / rating)
- Added various methods to the Plot class to simplify common tasks
- PlotSquared class renamed to PS, which is now a singleton; use PS.get() for the instance
- Added javadocs to lots of methods
- Restructured various classes / methods
- Minor tweaks to the PlotAPI class
- Plots can be marked as temporary in which case changes will not be made regarding it in the DB (may behave strangely for plot moving or bulk plot function)
Cumulative update log for 2.11.13/23


- Added a new interactive plot list
- Added optional redstone disabler for when plot owner and trusted are offline.
- Added max plot members option to each world (defaults to 128)
- Added option "keep-if-modified" which will ignore and add the keep flag to expired plots which meet the modified block requirement
- Added option "ignore-if-modified" which will ignore an expired plot which meets the modified blocks requirement
- Added setData method to SetBlockQueue for mass changing block data
- Added several debug commands associated with regenallroads
- Added permission for admins to see plot chat "plots.admin.command.chat"
- Added air height to RegenAllRoads in case of existing schematic
- Added option to allow members to WorldEdit
- Added conversion of Multiverse-Core worlds.yml and Bukkit.yml to PlotMe converter
- Added plot physics flag (must enable disable-physics flag in settings.yml)
- Added wrapping of OfflinePlayer to PlotPlayer object from BukkitUtil.getPlayer(...)
- Added new syntax options to plot visit and info

- Modified RegenAllRoads to be less intensive (but take longer)
- Optimized the trim command to cope with large deletions
- Optimized and restructured the flag system
- Removed some useless debug information
- Removed some unused messages from the translations file

- Fixed the cluster command not being added during startup
- Fixed plot swapping and moving using invalid hashcodes for the local copy (DB was correct)
- Fixed clearing and deleting not restoring plot schematic
- Fixed plot music duplication and disabling
- Fixed plot time being relative
- Fixed plot clearing not teleporting the players to the top under certain circumstances
- Fixed commandPreProcess processing registered commands (it now skips if registered)
- Fixed plot border generation
- Fixed PlotMe -> MySQL conversion not working under certain circumstances
- Fixed PVE bypass on unowned plots not behaving as expected
- Fixed errors from invalid plot music
- Fixed failed schematic pasting not recovering properly

Credit: @confuser, @Byteflux
Minor update
- Added persistent attributes API to PlotPlayer class
- New command /plot toggle (perm: plots.toggle)
- Titles can now be toggled on/off with /plot toggle titles
- Added option to settings.yml: protection.physics-listener.enabled (adds the disable-physics flag)

- Plot rating now functions correctly
- Fixed the /reload command (which you shouldn't be using) not loading plots from the DB
Minor update:
- Started work on improving the plot title system
- Optimized mass plot saving (it is a lot faster now) (used for PlotMe conversion + UUID conversion + DB importing)
- Plot music is now flag based
- Fixed an issue with teleportation with plot deny
- Fixed PlotPlayer caching
- Fixed an issue with conversion of merged plots
- modified ExpireManager (should fix bungee issue)
- Fixed an error in the PlotAPI class
- Fixed an error with plot chat
- Plot setup can now be executed from console
- Added an option for plot expiry clear interval 
(useful if you just converted and have a lot of plots)
- Added hook for WorldEdit schematic exporting (supports entities and such)
- Plot component setting is now Async for ClassicPlotManager and limited to one task per plot
- PlotSquared should now be more stable after using the (not recommended) reload command

- Fixed plot deletion not removing denied users from the DB
- Fixed an error with one of the help pages
- Fixed the page numbers for help sometimes being incorrect
- Fixed a URL in the README.md
- Fixed template creation from the bundled town world
- Fixed entity,mob,animal,hostile,vehicle cap flags
Changes since last update log:

This version completely renames HELPERS and TRUSTED. Associated commands have been changed. Players may need to be informed about the change.

The following are the new commands:
(added users can build while owner is online)

/plot add <player>
(trusted users can build always in plot)

/plot trust <player>
(denied users cannot enter plot)

/plot deny <player>
(remove a user from the plot)

/plot remove <player>
(untrust a user from the plot)

/plot untrust <player>
(undeny a user from the plot)

/plot undeny <player>​


  • Command '/plot debugexec' is now usable from ingame
  • The greeting flag can now be embedded into the title %greeting%
  • Added PlotPlayer metadata to the PlotSquared API
  • Creative block picking is now restricted (i.e. Chest contents cannot be copied from other plots)
  • Added optional plot inbox notifications
  • Finally finished plot rating system; players can now rate plots
  • PlotSquared can now convert from AthionPlots (works with same converter as PlotMe, LOL)
  • Fixed an issue where '*' was not recognized as everyone when P^2 takes the shortcut for UUID caching
  • Fixed an issue with fire being extinguishable in other plots
  • Fixed an issue with world loading and Cauldron
  • Fixed an issue with world loading of external generators with certain setups
  • Fixed setup command for empty configuration steps
  • Fixed recovering from invalid translation messages
  • Fixed reading an empty inbox sometimes causing an exception
  • Fixed augmented data population for type 2 terrain mode 0 worlds
  • FIxed augmented clearing for type 2 terrain mode 0 worlds
  • Fixed regenallrodas for type 2 worlds
  • Fixed plot clear schematics for terrain mode 0 worlds
  • Fixed unlink with hybrid, schematic enabled worlds placing air above the side of the roads
  • Various other fixes
Changes made by community members:
Credit: @soulofwolf

  • Redesigned the translations file. Messages are now grouped
Credit: @Byteflux
  • Added a command to toggle local plot chat
  • UUID caching from non-standard world path
  • Fixed player caching
-- Fixes --
To quote a previous changelog:

Fixed an issue with regenerating all road schematics. Our previous tweak actually made it worse. It should be perfect now.
^ Should actually be working now. Previously it sometimes skipped chunks, which appears to be fixed now.

Attempted to address a performance issue with plot outlining. There should be much less lag associated with using /plot fill outline

Fixed an issue with specific outdated versions of Spigot (1.8.3) crashing the server when trying to get the name of the world during initialization. (as MCProHosting continues to have this as their default jar despite it being out of date and non functional with many custom generators).

Updated german translation file (credit: @Krauti2/EvilOlaf)

Added player meta to the PlotPlayer API (for temporary storage of player information).

Fixed an issue with terrain generating over roads in Augmented world types. (If you are interested in having underground tunnels, maybe I can add this back as an option).

Improved tab completion, and command auto-correction.

The plot WorldEdit command blacklist is now configurable (previously you needed to have the bypass permission).

--- Coming Soon! ---
Mop cap

Create an account or sign in to comment.

05/19/2016 3:04 pm
Level 49 : Master Artist
fWhip avatar
1.9 update incoming anytime?
02/06/2016 1:38 pm
Level 1 : New Explorer
SuperZeee avatar
how do you change the road?
10/17/2015 2:08 am
Level 1 : New Miner
Wylietrout avatar
How do you allow mobs are certain plots and not allow them on others?
09/05/2015 9:01 am
Level 10 : Journeyman Dragon
ShadowScienceZ avatar
Sad thing EMP shut down :c This would be great to add to the freebuild world to stop griefing xDD
02/12/2015 6:32 pm
Level 57 : Grandmaster Programmer
sycoinc avatar
Some nice additions onto plotme's basics... like the custom shaped plots and plot world generation in main worlds. ( i was head admin on the server that created plotme until we closed last year)
02/12/2015 6:52 pm
Level 62 : High Grandmaster Batman
Empire92 avatar
Hows Athion going? You would be able to add custom roads to an existing PlotMe world if you converted.
02/12/2015 7:23 pm
Level 57 : Grandmaster Programmer
sycoinc avatar
Athion is using out very own coded plot plugin so we have full control over it + all original code also... had the creator of plotme as one of the developes for our server so that helped.

Otherwise Athion is well + plotme does do custom roads (but not like your schematiced versions)
02/09/2015 4:03 pm
Level 55 : Grandmaster Slime Tamer
TomConn avatar
Question: Can I use this as a 'Mod' and not just a Plugin for Multiplayer servers?
02/12/2015 10:24 am
Level 77 : Legendary Engineer
FEX___96 avatar
tryed cauldron (serversoftware)?
07/18/2015 3:48 am
Level 20 : Expert Cake
mcrocks999 avatar
Why would you need a forge server?
Planet Minecraft


© 2010 - 2021