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.
I love how you wrote a lot of details... but many will turn away looking at just writing and no pics :(
Every new player that joins the server gets kicked from an internal server error. They are able to rejoin, and everything seems to work as intended after.
Still a bit un-nerving as this seems to be the ultimate solution for me atm.
Uploaded Beta 1.1, which adds several configuration options, including both of the options requested in comments! :) See updated description text above for details.
@megabytes
Agreed on tweaking the sizes and resource minimums.
Okay, I understand where you're coming from. That sense of immensity comes at a price, though. Say two friends join the server a week apart - without teleportation, how will they find each other? F3 to get coords sounds unpleasant, hacky, and slow. Is there a way we can make this scenario work without shrinking the world?
As for griefing options, I know LogBlock is very popular as a grief UNDO. I've yet to see experience any plugin which effectively prevents grief in the first place, but doesn't require adminstrators to manually set protected areas for each player. Maybe that's a good future project. :) I have some ideas. But I have to get this one done first.
@bigscary
400x400 seems like a good number, but it would take testing on a live server with other players to be sure. We have a player on our server that has put up "safe havens" at every 500x500th block in the world for new players to camp out at night as they look for unclaimed land/resources. Guaranteeing resources is only a matter of adjusting the percentage of resources that determines the guarantee, another thing that needs testing on a live server to find the right figures.
My suggestion below is inspired by the fact that we don't allow players to teleport on our server and would probably disable that aspect of this plugin during trials. It's not only a huge crutch for PVP, but also makes the world feel less...grand. We like to keep it feeling like a vanilla server, but also give players the means for protecting their builds and belongings from griefing and theft.
@SirMonsterSlayer
Under the current design, a new player can go anywhere he wants and make that new region his home. There's nothing forcing players to stay in the area where they spawn - it's just a suggestion (and a good one - the player will find resources, active players, and lots of space there). And the wilderness is only 200 blocks away, guaranteed.
@micdoodle8
Yes, once I get the whole thing stable, I'll release the source. HOWEVER! This is the perfect time to request configuration options. What tweaks did you have in mind?
@megabytes
My immediate thought is that I don't want to get into the business of trying to stop griefers. There's this rule of thumb that an addon should do one thing and do it well - I'd only be adding a small impediment to griefing in general, since there are some workarounds, and nothing to stop griefing in the open region (no invite needed there). Other plugins, especially LogBlock, do a MUCH better job of hobbling griefers.
HOWEVER, still it's an interesting idea and I'm going to give it some thought. I'll balance ease of implementation against the payoff and let you know. :)
Since you've got a mind for grief, I could REALLY use your help. I need to test the plugin itself against grief - can you think of any ways to grief the system itself? For example, can you imagine a way to grief teleporting players because you know where they land, or to hide or destroy the region posts? I'd really appreciate some feedback in that area. :) Care to set up a small server on your desktop and see if you can break something?? Can you sabotage the available resources to undermine the system, or find an easy way to upset the balance of space and resources?
My math was wrong - it's 400x400 = 160000 square blocks. It's huge. Actually it's so huge, that I'm concerned it will be too difficult to find the guaranteed available resources. What do you think? And yes, it's bedrock to sky.
I think this is a great idea though I don't like that you are forced to this region.... could you make a "lite" version where new players will only be teleported to this very "free region" ? right now we use random spawns to scramble the players around but this is pretty much not the effect I wanted ;(
Is it possible to get the source files for some minor tweaks? :)
Can you clarify the 1600 square meters region size? Is this a 40x40 block square, bedrock to sky? You mentioned it's roughly equal to the max view distance, which I think is around 200 blocks?
Great idea!
We have a strong community of players on our server, but one problem we face is a low adoption rate - it's tough to get new players to stick. I think a big reason is because of the lack of immediate resources or building space. This plugin may be a solution to our problem.
I did notice a small weakness that can be exploited by an organized group of griefers: "When a new player joins, he or she may immediately move into any region, even into the wilderness. No, this isn't a perfect solution - but players who aren't trying to intentionally abuse the system won't upset the balance."
We've had our server attacked by organized groups and usually they don't get very far. This is because we took great care in building our server and plugins to be self-policing. Players manage themselves, allowing us (admins) to be very hands-off. By allowing players to immediately change their home region, a small group of players could cause a great deal of grief and damage to a particular target. I'd like to offer a solution:
New players aren't allowed to move regions for the first week. Instead, established players (at least a week old?) can "invite" these brand new players during their first-week period to join their home region. This would allow friends of established players to join and immediately start playing in the same home region via invite. An organized group could still exploit this, but would require a much greater effort, especially if you capped the number of region invites to a couple per day/week or based on the age/play time of the player.