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
Looking for a 1.12.2 or earlier-compatible version? Check here.
Got a question, suggestion, or problem? Post it on the issue tracker.
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.
Overview
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.
Requirements
- v6.0 and higher require Java 21
Setup, Configuration, and Commands documentation
Metrics: Like most other plugins this plugin collects anonymous metrics to see who's actually using this plugin, and this information is used to determine popularity as well as what features matter or not in the grand scheme of things.
Sponsors:

Got a question, suggestion, or problem? Post it on the issue tracker.

-
View User Profile
-
Send Message
Posted Sep 13, 2012EDIT: It's working now, but was not working before, I've left this comment just encase this was a small bug or something you may want to investigate.
I'm having a problem where if I am at the spawn of my world I cannot use /homeregion even though I've set it to have a city region. It's saying that i'm already in my home region.
Is the city region not separate from other regions?
-
View User Profile
-
Send Message
Posted Sep 12, 2012@k7iwon
Go to bukkit.yml, where you can create aliases for commands. See details on bukkit wiki. For example, you could shorten /visitregion to /vr. I think you'll find that players only very rarely use the commands at all, anyway.
It could be that essentials is overriding the spawn setting. There wouldn't be anything I can do about that.
-
View User Profile
-
Send Message
Posted Sep 12, 2012Very good plugin, and i'm using your other plugin anti-xray. they are useful for me. but this plugin, population density, has too long commands to type. i want easy one. And, when players die, they are not re-spawn in their home region. also new arrivals are not spawn in their home region too. they just spawn in default spawn area which had set with essentilas plugin. i had tested many times. of course, i had set the configuration. is there some problem with other plugins, like essentials(2.9.3), permissionsEx(1.19.2) or authme something? plz answer me.
-
View User Profile
-
Send Message
Posted Sep 11, 2012@Assertive
I'm very uncertain about whether you can run the latest PD on a Tekkit server (or any MC 1.2.5). I just haven't tried it. PD also loads chunks as necessary to scan the open region, but always unloads them again after and cleans up memory (garbage collects).
@WizardCM
I think you must have logged in before the initial scan was done. New players won't be assigned to start in a region which is all ocean, because it doesn't have enough resources (trees, coal, etc). Probably the scan was incomplete, and you logged-in while it was still searching for a suitable region.
Did you turn off the region post building? That could explain why you were dumped directly in the water. Ordinarily, building the region post guarantees that players will always be on solid ground when they spawn.
EDIT: After looking at your picture, it looks to me like the trees are close enough to be useful, so that might actually be a correct region. PD scans for 200 blocks radius from the region post. In the very rare case (maybe this is one!) where it puts players in a region where you think resources are too far from the post, you can use /addregion to nudge it along.
-
View User Profile
-
Send Message
Posted Sep 11, 2012I have a suggestion! Don't create a region if there is a lot of water (or shift it if the majority of it is in a River/Ocean biome). This was the first region I was provided with (obviously without an island of dirt, so I spawned underwater).
-
View User Profile
-
Send Message
Posted Sep 10, 2012@bigscary
Awesome, we appreciate this very much. Are we able to run 3.4 with 1.2.5? I haven't been keeping up with listeners lately but I know some things have changed.
I'll get you some profiles soon.
Edit: We also noticed mcmmo was ridiculously heavy and ended up pulling it. He is calling chunk load events for some reason and it's just way too taxing with 200+ online.
-
View User Profile
-
Send Message
Posted Sep 10, 2012@Assertive
I already improved the block events, see 3.4 update. :) By the way, fakeblockbreakevent is generated by McMMO. I'm not sure if that tidbit is relevant, but I'm sharing anyway.
I'm always, ALWAYS interested in good profiling numbers. If you can share a profile from say... a couple of hours during peak time, that would be extremely useful to me.
-
View User Profile
-
Send Message
Posted Sep 8, 2012@bigscary
I turned off the post creation. The bug happens when a GP claim is already there, and a post/region is created from PD. You can still see the claim with a stick, but it's like, nulled out. I had to do an adminclaim and grant it to the player and it was instantly fine.
We're just using NoLagg for these examinations, but we can run VisualVM too. Right now we're at 275 online and this is what we're looking at: http://i.imgur.com/AKdgx.png
Now FakeBlockBreakEvent is super-high.
Anyway, if you want to see some profiling results I'll run VisualVM tonight when we don't have nearly as many people online. Again, thanks for your time and looking into some optimization. This plugin is almost mandatory for big servers.
Edit: we would be willing to test beta versions if you tried to improve the block events. We can supply the profiling too.
-
View User Profile
-
Send Message
Posted Sep 8, 20123.4 Updates!
-
View User Profile
-
Send Message
Posted Sep 8, 2012@Assertive
I don't see this issue you're reporting. You're telling me that if you put a GP claim around a region post, now all players can edit inside that GP claim? I tried that myself, and it's not happening for me.
Moving posts is too expensive. If you think block breaking is slowish now, it'll be a million times worse when the posts aren't at mathematically convenient coordinates. I'll check on the block break event to see what I can do.
What did you turn off? Player claims? That's crazy man, everybody's gonna get griefed. Or if you meant PD region scans, you could reduce them to once per 12 hours if once per 6 hours is too frequent for you. But that might mean an overcrowding problem.
EDIT: Hey, how long did you sample? Please sample at least 24 hours, if you haven't already. And by the way what did you use for profiling? I like that it profiles scheduled tasks as well. I may have an idea for making block place/break cheaper, let me think on it a while.
EDIT 2: Oh, crap. I just remembered you're running Tekkit, so you're probably on an older version of both plugins. It might be that your problem has been fixed (although I don't remember anybody reporting this exactly). The solution may be to just wait for Tekkit to catch up to 1.3.1.
-
View User Profile
-
Send Message
Posted Sep 7, 2012@bigscary
Okay. Yeah, if GP is in an area and PD comes along and claims that area, it 'nulls' that GP claim. It's still there and everything (visible with stick, etc.) but it doesn't check any players: they can freely edit.
Hopefully since you run both of these amazing plugins it can do some sort of check in the future to at least go horizontally along a players claim? It seems messy though as sometimes the post is in the middle of a house and I have no idea how you would handle that. Maybe stack on top of player-placed blocks? Or maybe '/movepost postname' would let us move the posts? That would be sweet too.
It is also very possible that a machine is ticking since it seems to not rely on tps or anything, I didn't think of that! I finally got a real stack trace today and we found a thread collision from another plugin so we're fixing that part.
We have a pretty big server so these claims fill up fast and people are always being consumed by the next region post. I've had to turn them off for now. Even on our new map as of early Tuesday morning, we have already 1500 players with GP claims alone!
Finally, the BlockBreakEvent is pretty heavy from this plugin with this many players online. Any way to better optimize this? We may be a rare case, but it would help tremendously and I understand if there won't be a fix. http://imgur.com/6y02R
Thanks again!
-
View User Profile
-
Send Message
Posted Sep 7, 2012@Assertive
Well the version you picked seems okay for Tekkit. Did you mean GriefPrevention instead of GriefProtection? It's normal for PD to clear the area around the post, despite land claims. It's not something that's reasonably fixable, and should not be a widespread problem (since there's only one post every 400 blocks). Still, I wonder why you're getting that error message. :\ I will try it on my Tekkit server to see if I have any problems.
Log messages aside, are you seeing any actual problems in game?
EDIT: Oh, idea... is it possible somebody has set up a machine which is trying to modify near a region post every 4 seconds or so? Since the machines aren't real players, that could explain the error message you're seeing in your logs. I'll have a look at the PD source code to see if anything pops out at me.
-
View User Profile
-
Send Message
Posted Sep 6, 2012http://pastebin.com/HzSHWmvm every 4 seconds.
Also, we're having issues where a new region post is created and it ignores all GriefProtection claims in that area. Config issue or bug?
We run Tekkit so its 1.2.5 and PopulationDensity version 3.1
-
View User Profile
-
Send Message
Posted Sep 3, 2012@bigscary
Awesome, thanks for the prompt response and for building and maintaining such great plugins :)
-
View User Profile
-
Send Message
Posted Sep 3, 2012@D1G1T4L3CH0
There's probably an error message in your boot log that you missed. You have to set the managed world config variable. This is also mentioned in the setup instructions.
@TheLittlestTeapot
If you had read the instructions or looked at your logs instead of waiting for somebody else to hold your hand, you probably would have had this fixed in minutes instead of days. Forgive me for going on vacation for the national holiday.
@makskay
Yes, it minimizes expansion by keeping a tight spiral to its regions. You may EVENTUALLY use up all the available space, at which time you should expand your borders.
Folks have asked me to automatically figure this out somehow, by hooking into various border plugins. I've told them I won't do it, because it's very rare that you'll completely run out of space, and then the manual fix is extremely quick and easy. :)
-
View User Profile
-
Send Message
Posted Sep 2, 2012Hi,
Does this plugin offer any sort of support for bordered worlds? I'm considering employing it on the next iteration of my server's survival world (since it looks great and we've had good experiences with GriefPrevention) but I don't want to end up with the currently active region outside of the border that keeps the world from becoming unmanageably large.
If it doesn't, is there any way that you (or I, considering that I have experience with Bukkit plugineering myself) could patch in border support?
Thanks for any help you can provide.
-
View User Profile
-
Send Message
Posted Sep 2, 2012@ D1G1T4L3CH0
Same problem... somebody please help. It has been 1 day and 17 hours......
-
View User Profile
-
Send Message
Posted Aug 31, 2012Hi. I'd really like to use this plugin. But every command I attempt to issue ends up in an internal error.
CraftBukkit version git-Bukkit-1.3.1-R2.0-b2340jnks (MC: 1.3.1) (Implementing API version 1.3.1-R2.0)
PopulationDensity version 3.3.1
Debian Linux
Java 7
Plugins (28): AutoItemBarReload, SkyChest, GroupManager, Level Announcer, SpamGuard, Commandspy, ModReq, MineBackup, BooksWithoutBorders, Craftipedia, CoreProtect, MultiCommand, Permissions, AntiXRay, BKCommonLib, SimpleChestLock, PopulationDensity, FoundDiamonds, CrazyCore, Essentials, EssentialsXMPP, EssentialsSpawn, EssentialsGeoIP, CrazyLogin, dynmap, NoLagg, EssentialsChat, VanishNoPacket
The error on console when any command from the plugin is executed:
I previously used /setspawn for new players before this plugin. that's from essentials I believe. I'm not certain of the cause, but but there might be a conflict.
I have tried addregion to force it to make a new region because I suspected it just hadn't created a region yet. But after running for a few hours, all commands still don't work.
I tried uninstalling and reinstalling the plugin and removing the config. I even tried the plugin alone, without any other plugin. Same result.
Looking forward to using this plugin.
-
View User Profile
-
Send Message
Posted Aug 31, 2012@bigscary
Thanks for the fast replys. I think it got fixed now.
Long live population density!
-
View User Profile
-
Send Message
Posted Aug 30, 2012@Desertive
I think I fixed that in the latest. Please tell me if it doesn't seem fixed to you.
@Hoolean
I'm very glad you like it, please go post about in on some administration forums somewhere, so other servers can get the benefit! :)