Population Density


Automatically places new players where they can find wood, animals, ore, and space to build. Also priority-based login queue, reserved slots for admins, idle boot ONLY when nearly full, entity thinning for lag reduction, and optional limited teleportation. Never again will your players experience a marathon run, spawn room full of portals, or maze of abandoned builds. This is a zero maintenance solution for administrators, and players don't need to learn any commands!

"This is THE plugin for large servers." – Mumblerit of muttsworldmine.com

This video explains the region post system to new players.
See below for information on administrative features.

Feature Summary

  • Assigns starting points for new players so that they can ALWAYS find space to build and beginner resources nearby. Players may be spawned directly there, or you can tell them about a slash command which will take them there.
  • Respawns animals, regrows grass, and replants trees in the new player area to guarantee important new player resources.
  • Removes idle players ONLY when the server is nearly full.
  • Login queue to ensure fairness when your server is full, can prioritize some players over others if you like.
  • Reserved slots for administrators.
  • Optional teleportation posts which help players socialize and trade, but aren't abuse-able to escape combat or save a lost or hungry player.
  • "Thins" extremely-dense crowds of monsters and animals, preventing ridiculous levels of farming or monster grinding from lagging your server.


Server owners often underestimate the badness in starting a player in a crowded area. Sure seeing builds makes your server look legitimate, but having to explore a long time just to find space to build and beginner resources is a major turn off for players who want to start playing right away. Even when players do find a place to start playing, they're often alone because other new players wandered into different areas.

PopulationDensity is the low-maintenance, easy-for-players answer to all these problems.

It works by automatically locating a region with lots of wood and ore, and then dropping new players in that region until they collect most of the easily accessible ore, cut down most of the trees, or crowd it with builds. Then PopulationDensity finds a new resource-wealthy region for future newbies and starts dropping new players there. If you have a great spawn area built up, you can instead spawn players there, and later tell them to use /HomeRegion when they're ready to start adventuring (or another command you define in commands.yml).

Additionally, optional teleportation commands help players move around quickly to admire builds and socialize while not compromising the game's integrity - players can only teleport from automatically-placed teleportation posts, so teleportation can't be used as an "easy-out" for players who mine or adventure themselves into trouble. That way, players keep the challenge of single player without the "players are too far apart" multiplayer issue.

Finally, if you have a "my server is always full" problem, then congratulations on your successful server! :) With PopulationDensity, you may optionally boot players who are idling so more players can log in and have fun, increasing your feel-good factor (or fattening your wallet, for some). when the server IS full, a login queue guarantees fairness, and administrative slots are set aside to guarantee administrators can always get in.

You can also assign players a queue priority to help them get on the server faster during peak times, to reward them for contributing to the server monetarily or through your community.

Official Servers

You can experience this plugin for yourself (as a player) by joining this public server. :) I maintain this server personally, which helps me catch bugs and spot opportunities for new features and improvements. Have fun!

Setup and Configuration

Command Reference

More Great Plugins!

My plugins solve Vanilla problems in ways which minimize impact on servers, administrators, and players, so everybody can enjoy Minecraft without having to learn to play the game in a new way or spend more time administrating than playing. My goals are effectiveness, simplicity, and efficiency. If you like this plugin, check out more of my work:

  • Grief Prevention
    • Prevents ALL types of grief, cheaply.
    • Easy for players and admins, mostly automatic.
    • Players claim land to prevent theft and house wrecking.
    • Automatically warn, mute, and kick or ban spammers.
    • Blocks dumping lava and setting fire on another player in non-PvP servers.
    • Disable fire damage, spread, or both.
    • Wipe away ugly builds with a right-click - no database required!
    • Automatically prevents spawn camping in PvP servers.
    • Prevent damage to the surface by limiting lava and water placement, and TnT damage.
    • Automatically clean up hanging tree tops.
    • Includes a creative mode for creative worlds.
    • Optional siege mode for build-based PvP.
  • 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.


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

  • Avatar of AdvanceGamingNextLvl AdvanceGamingNextLvl May 20, 2015 at 00:07 UTC - 0 likes

    @The_PC_Tech_Guy: Go

    I've tested it and your right. You can only fit up to 13 'M' characters on one line with the MLG pack. But without one (or with faithful 32x) you can fit 15 'M' characters on one line. I thought maybe this was only the case for smaller characters but it seems I'm dead wrong on that one.

    I vote for the config option.


  • Avatar of The_PC_Tech_Guy The_PC_Tech_Guy May 19, 2015 at 06:17 UTC - 0 likes

    @AdvanceGamingNextLvl: Go

    Now you know. The Comic Sans font in the MLG pack apparently made some of my sign text cut off. I agree that a configurable option would be a good option - or a warning if it's over 10 characters.

    This account is so old that I don't even use that username anymore.
    I now go by "robomwm"

  • Avatar of AdvanceGamingNextLvl AdvanceGamingNextLvl May 17, 2015 at 21:33 UTC - 0 likes

    @The_PC_Tech_Guy: Go

    Really? I was not aware of this. I mean, I am aware that the limit is based on the size of the characters, but not that resource packs could change the size of the characters them self. Could you send me a link to a resource pack that causes the character limit to be lessened? (Part of me can't believe this to be the case.)

    Still, I am wanting an increased to the character limit, even if it's just by a few. Maybe something like 12 or 14 would be safer? or just have it be configurable? (That I would like best)

    Last edited May 17, 2015 by AdvanceGamingNextLvl
  • Avatar of The_PC_Tech_Guy The_PC_Tech_Guy May 17, 2015 at 20:10 UTC - 0 likes

    @AdvanceGamingNextLvl: Go

    Character-line limit is dependent on font style. Those using a resource pack that has different font might not see all the words

  • Avatar of AdvanceGamingNextLvl AdvanceGamingNextLvl May 17, 2015 at 19:52 UTC - 0 likes

    With people on my server constantly requesting me to name regions for them I’ve been looking into ways to monetize it. I’ve figured out a system, but after looking into Population Density’s code I’ve found that the one most important method I need to call (nameRegion(coords, name)) is protected. Now I understand why it’s protected. But perhaps the method could be modified to check the given string (name), much like the /nameregion command does, and if somethings wrong it could throw an exception? That should make the method safe, and therefor could have it’s visibly changed to public.

    Also one thing that kind of frustrates me is the fact that we cannot choose which characters we want to be uppercase and lowercase when naming regions. As well as the 10 character limit.

    It would be nice if these limits could be lifted. I’ve tested how many wide characters would fit on one line of a sign and the answer is 15. So region names could be limited up to that amount without issue.

  • Avatar of TheLecturer TheLecturer May 15, 2015 at 19:49 UTC - 0 likes

    @bigscary: Go

    I removed the entire contents of PopulationDensityData directory, but not <world>/playerdata - I assume that is what you're referring to. I'll give that a try.

    EDIT. Ok deleting the main server playerdata fixed it. Thanks.

    Last edited May 15, 2015 by TheLecturer
  • Avatar of bigscary bigscary May 14, 2015 at 21:14 UTC - 0 likes

    @TheLecturer: Go

    Did you start entirely over, meaning all your server's player data was removed before you started back up again? PD's rule is to only send players to the new player area if they've never been on the server before. If you happen to have any data held over from your last map, that would be problematic for those players.

    Please share your logs, showing a new player logging in and getting assigned to a region that isn't your new player area?

  • Avatar of TheLecturer TheLecturer May 14, 2015 at 15:55 UTC - 0 likes

    Trying the latest version (4.9.3) on a new map. Only one region open so far (as expected), which is "0 0" and contains "redstone". However any new players joining are being assigned to a different region, wilderness (in fact in the middle of an ocean) - here's the contents of a file from PlayerData - 1 -2 Thursday, May 14, 2015 4:33:28 PM BST 100

    Here's the config.yml http://pastebin.com/3RNUWjxm


  • Avatar of The_PC_Tech_Guy The_PC_Tech_Guy May 10, 2015 at 09:06 UTC - 0 likes

    That's what I meant by command aliases (commands.yml) but this doesn't block /pluginname:command

  • Avatar of bigscary bigscary May 08, 2015 at 20:31 UTC - 1 like

    4.9.3 Updates

    • General performance fixes.
    • Fixed compat with latest 1.8.3 server builds (Spigot team broke this).

    @The_PC_Tech_Guy: Go

    You will get posts in the ocean by design. The rule is one post every 400 blocks without exception. However, no new players would be automatically assigned to start playing at that post, since there are no resources around for them to use.

    The post names are customizable with /nameregion, but right now the default names list is not customizable (it's on my todo list). You can already change the way they look (materials, not shape), and customize some of the signs on them.

    To block off the command, you could also use your commands.yml (it's a craftbukkit config file) to avoid involving another plugin. I'll check on the max distance thing.

    @TheLecturer: Go

    I think the spigot team may have broken something (again). I got the big ugly log error you shared via pastebin after I updated my server to the latest 1.8.3, but then after recompiling PopDensity (without any code changes!), it vanished. Maybe just using the new version I just uploaded will fix the issue for you.

    Since they took on the project after the 1.8 release, the Spigot team has broken my plugins 4 times. It used to be the case (when the original craftbukkit team was running the project) that breaking changes from them would only come with major version updates, like 1.7.10 to 1.8 for example, but the spigot team is a little sloppy by comparison. :\


Date created
Nov 16, 2011
Last update
May 08, 2015
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Population Density
Recent files
  • R: 4.9.3 for 1.8.3 May 08, 2015
  • R: 4.9.2 for 1.8.1 Apr 03, 2015
  • R: 4.9.1 for 1.8.1 Mar 16, 2015
  • R: 4.9 for 1.8.1 Mar 12, 2015
  • R: 4.8.1 for 1.8.1 Feb 18, 2015