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.
Got a question, suggestion, or problem? Post it on the issue tracker.
Spigot 1.11
And in previous versions too.
And I do not work at the team / InviteToRegion
[11:53:58 ERROR]: null org.bukkit.command.CommandException: Unhandled exception executing command 'addregion' in plugin PopulationDensity v5.1 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchCommand(CraftServer.java:649) ~[spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.PlayerConnection.handleCommand(PlayerConnection.java:1335) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.PlayerConnection.a(PlayerConnection.java:1170) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_111] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_111] at net.minecraft.server.v1_11_R1.SystemUtils.a(SourceFile:46) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:739) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:675) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:574) [spigot-1.11.jar:git-Spigot-f950f8e-b64d852] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111] Caused by: java.lang.NullPointerException at me.ryanhamshire.PopulationDensity.PopulationDensity.sendMessage(PopulationDensity.java:1466) ~[?:?] at me.ryanhamshire.PopulationDensity.PopulationDensity.sendMessage(PopulationDensity.java:1460) ~[?:?] at me.ryanhamshire.PopulationDensity.PopulationDensity.onCommand(PopulationDensity.java:589) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.11.jar:git-Spigot-f950f8e-b64d852] ... 15 more</p>
How do you keep regions/signpost from appearing in your city world? I tried to get around this by placing my city world in an instance so when you go out the gates, your really going to another copy of the world but I am afraid that it will eventually try to teleport them into the fake city in the managed world since there is a wilderness signpost in it. Any help would be appreciated.
Unfortunately this is by design... You can send the post high up by placing a block at y = 240ish directly above the center of the post.
PRs to implement such a feature may also be considered.
Found out that my issue was in fact not due to a math error, but the post indeed did not have a clear view of the sky. If you're interested in reading a log of my detective work https://github.com/techfortress/PopulationDensity/issues/2
Hey all! After 5 years of developing Minecraft plugins, I've finally decided to kick my game up a notch and switch to independent game development (that's right, standalone apps!). Because my free time is down to only an hour a day now, it would be impossible for me to continue maintenance on my 7 plugin projects and also make progress on anything new, so I'm transitioning all my work to other developers. RoboMWM (PC Tech Guy on BukkitDev) will take over GriefPrevention, and my premium plugin projects are 'on the market'.
If you'd like to tag along on my future adventures, you can follow me on Facebook here. As I'm diving into unfamiliar waters, I dunno exactly what I can promise, but my imagination tells me I'll be sharing screenshots, videos, and demo versions of my work, and also asking for feedback and other ideas through those channels. I hope the combination of my professional software engineering skills and the free time project management / design experience I picked up from Minecraft plugins and World of Warcraft addons will add up to fun, relevant, profitable games. You'll be happy to hear that what I've earned from Minecraft via premium resource purchases and YouTube ad revenue hasn't been squandered on 'beer and pizza' or 'phat lewtz', but stashed away for future investments like buying/commissioning multimedia assets for my dream projects.
Wish me luck! I've been working hard, and now I'm using that momentum to chase the gamer dream. ;)
Did some calculations with the post coordinates I found, and stepped through it while reading the code, and things definitely aren't matching up because of this.
https://github.com/BigScary/PopulationDensity/pull/4
I don't have much time at the moment to check the rest of this (it seems there's a lot of leftover code from older versions when, I guess, region sizes were configurable). E.g. this seems quite redundant https://github.com/BigScary/PopulationDensity/blob/master/src/me/ryanhamshire/PopulationDensity/PopulationDensity.java#L1332
In my opinion, I'd forego the weird "region coordinates" thing altogether if possible (at least it's redundant for the blockbreakevent handler) - some other options include checking block metadata (though idk how efficient that is), or just using normal old locations.
So, this is interesting. Seems like region posts that are far from the first spawn post aren't protected. They will regenerate, yes, but they aren't protected, and can be mined. I'm at one that's in a jungle biome around x -7500, z -8500
Sir Dev, our players are not able to fly anymore after teleporting to any region. We might think this has to do with NoCheatPlus.
The teleport high in the sky scares the out of players. Request to make on option to switch this on/off in the config. We prefer that player are teleported onto the platform.
Thank you for the great plugin, we're using it for years :)
@Luke_James
I have this problem too...
You do test the plugins after an update...
Because I have updated the plugin and the fly bug is still there...
Useful plugin :D
I've set NewPlayersSpawnInHomeRegion and RespawnInHomeRegion to false, however whenever I type /spawn I am teleported in the sky above my homeregion... I used this plugin a couple of years ago and I don't recall having this issue. I'd like my players to go to the server spawn when typing /spawn, and respawn at their bed or home that they've set using /sethome, but the plugin doesn't seem to want to let that happen? I liked PD because players could choose whether to go to /spawn, their /homeregion or their own personal homes that they've set, but now they respawn at their homeregions no matter how I change the config.
Hi, friendly reminder to push to github, thanks! Also, as mentioned on spigot, the latest version does indeed remove the custom signs from the config.yml.
@bigscary
That will be nice. You can not do that you can turn on or off in the config. And if you do the old system back ta teleport to a pole region teleported you x/z 0.500 is spawned instead of 0.000 because nocheatplus see it sometimes fly hacks because then you will be teleported into the glowstone block.
(Translate with Google translate from Dutch into English)
@MinePuppeh
Ask the paper guys to stop spamming that warning at you. It's not an error, just a really verbose warning.
@cillic1052
@NonStopGamePlay
Alright, I'll change it. I think you'll find it annoying to be flying up at y=256 after every teleport, though.
If I /randomregion of /visit use, I can not fly.
https://www.youtube.com/watch?v=-Ij8M39AWmY
Server info: CraftBukkit version git-Spigot-078e2f8-9ff3d7f (MC: 1.10.2) (Implementing API version 1.10.2-R0.1-SNAPSHOT)
(Translate with Google translate from Dutch into English)
Good plugin! 10/10
I wanted to report that with the newest version of population density that it stops people from flying when opped and they do visit redstone
I'm still getting this spammy error on every single teleport running the latest Paper. Many people use Paper and this is the only problem with any of your plugins while running Paper. I'd appreciate it if you'd look into it:
http://pastebin.com/pVzLawzD
it would have been nice if you gave us an option to turn off the region post jumping thing you did