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.
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.
Got a question, suggestion, or problem? Post it on the issue tracker.
What could be a nice feature to add; be able to add a bunch of region names to a textfile, and have the plugin pick from those in addition to what i guess is a hardcoded list of names. 1 region name per line e.g , but discarding more than 10 character lines and illegal characters.
Also, having the region posts possibly appearing on dynmaps as markers with names would be awesome. So that when a new region opened up and /or got named it would also run the command to add a dynmap marker, with the 'sign' icon showing on the map.
punching signs on the teleportation posts doesnt do anything? am i doing it right?
@bigscary
<3 *hug*
4.9 Updates
@norsemines
When on, players spawn exactly on the spawn point. When off, Vanilla behavior spawns them nearby, somewhat unpredictably.
@norsemines
I'm guessing it's if you want PopulationDensity to handle the first join spawn, as vanilla spawns the player in a random predefined area (I'm not sure the Minecraft wiki is correct on the area from my tests) around the spawn point.
Trying to find the meaning of 'PreciseWorldSpawn: true/false', am i misreading the configuration docs?
@Treydun
Great point, thanks for that. I will do it.
@tomaste
That's odd, I will look into this.
Hey Bigscary, I was wondering if it would be possible to add a safety check to the removeMonstersAround function.
Currently my players are getting killed by zombies, which are then picking up all their good armor and weapons, and then getting despawned when the player respawns.
A couple checks that I have been adding are if(element.getCustomName() == null) and if(element.getRemoveWhenFarAway())
This prevents it from removing named mobs and mobs that are holding items and otherwise shouldnt despawn.
Thank you very much for your time. I cannot tell you how much I appreciate this plugin
Hi!
I noticed that population density is filling my log with errors a few times a day. Here is the log:
http://pastebin.com/dE83sXNd
It seems to be related when my server does a map render in the background.
Thanks in advance for any help!
@bigscary
Yeah I saw your thing about animals, although I don't want to risk anybody's farm. Regardless, I'm already hunting for other plugins. Can't find any that appear to do your login queue and idle-boot-when-almost-full though. Update: Might've found something for idle/afk.
@The_PC_Tech_Guy
Nope, you're right - sounds like you want the secondary features but not the primary features. You'd probably be better off grabbing smaller plugins which do only the lag reduction and idle boot / queue / reserved slots. If you can't find any, tell me and I'll add disabling the teleportation posts to the todo list.
By the way, removing monsters alone doesn't fix lag. True it fixes lag spikes due to grinders, but the long term, persistent lag big servers fight is due to animals because they don't despawn like monsters do.
Hi, I'm really interested in putting this plugin on my main server, but it seems not much of it is configurable. I'd like to use the loginqueue, reserved slots, entity thinning (for monsters only, not animals), and the idle-kick-when-near-full features, but I don't need the plugin finding regions or setting up new ones, doing any teleportation stuff, or measuring server performance and taking actions.
Perhaps more configuration nodes can be added, or did I miss the nodes I want to disable?
@Duffa13
Something like "thin over crowded entities".
The entity clearing doesn't kick in until 15 tps, or 5 minutes of <19 tps. So world edit and saving shouldn't cause an issue. As for your point about servers which can't run at 19, that's scary. I'll think about adding the option.
@Saturner28
Tickets are disabled because comments are easier for everyone except me, and I like things to be easy. You can post your problem here in the comments.
Does anyone know how to create a ticket here? I know this sounds noobish but when I press the Ticket link, it tells me "This page does not exist." I am experiencing a large issue with this plugin, so I need to submit a ticket. Can anyone please help?
/@bigscary
Thank you so much for implementing my suggestion. Where exactly can I find the option in the config? What is it called?
Also, would it be possible to customize at what tps the automatic lag reduction kicks in? If it is a large server and worlds are saving, someone is doing world edit or maybe even a full server backup then it is likely the tps will drop a little and it is not always necessary for the lag reduction to kick in at 19/20 tps. In fact I think you will find alot of servers cant even run at 19 tps (depending on their server specs).
4.8.1 Updates
@Duffa13
Yeah I get that they don't get it - a laggy server is worse than losing a few animals, because it can be downright unplayable. Often, the only fix is to reduce the total entity count. Animals are frequently the root cause behind recurring server lag. It's definitely a problem I wish Mojang would get around to addressing.
@bigscary
I really like the /lag feature for the players and also the mob spawners being disabled and kicking of the idle players so if there was an option to enable some features and disable others that would be good. Although it leaves enough mobs in the chunk to repopulate, once players have passive mobs within their claims (using grief prevention) they would not like them removed as they have invested effort into protecting them and they don't really want to have to keep doing it if you know what I mean.
@jenks1999
Nope - they're still there on my 1.8 server. Maybe another plugin?
@Duffa13
So they don't want lag, but they want to keep giant piles of animals? Next version will have an option to turn it off. :) Did you explain that it always leaves more than enough to breed, and that it never removes pets, anything with a nametag, or villagers?
Rabbits seemed to be removed from this and Guardians. Actually all 1.8 mobs seem to be removed with this plugin.
Is there anyway to customize the lag reduction features? My players aren't too happy about entity thinning...