WorldBorder
Further releases for Spigot 1.13+ are now being posted on the Spigot site. I do not plan to release any further updates here on BukkitDev.
- Full list of Commands and Permissions
- Changelog
- Further Miscellaneous Information
- Source available on GitHub
- Old discussion on main Bukkit forum
If you appreciate this plugin and actually want to see it developed further by me rather than only receiving compatibility updates, you are welcome to .
Thanks to the following people who have been kind enough to donate: jonDatz, xrobau, Gussi, Dizzy, R. Meijer, FoundationCraft, T. Bronner, R. Thompson, The Pokemon Server, legitplay.net, D. Senff, Vik1395, TagCraftMC, D. Strickner, M. Wilson, Rhythmatic, W. Downey, P. V. Gretener, MiniCraft Server, Cosmic Craft, ScarcityFree.com, polaris_iv (Forge port), matagin, T. Ahokas.
Also thanks to IMathe172I (Lang Lukas) for contributing code to support elliptic and rectangular border shapes, and Indiv0 for contributing code to support border wrapping.
Description
This plugin is intended to efficiently provide a border for each of your worlds, which only people granted special bypass access are allowed beyond. These borders can be round/elliptic or square/rectangular. As the plugin has been written with performance as the most important goal, it should have no performance impact on your server. Additional world trimming and filling commands are available as well.
Older plugins which originally inspired the creation of this one: rBorder and BorderGuard.
Features
- You can set up a separate border for each world, but only one border per world.
- You can have either round/elliptic or square/rectangular borders. Square/rectangular borders are slightly higher performance, round/elliptic borders make for nicer display maps. Different worlds can have different border shapes if you so choose.
- Configuration and border setup is done completely using commands in-game or through the server console. No need to ever edit the config file directly.
- Support for all permission plugins which interface with Bukkit's built-in "superperms" permission system.
- You can fully generate (fill) your world all the way to the border, filling in any missing chunks, including a configurable buffer zone just outside your border.
- You can trim off any world chunks beyond the border, getting rid of extraneous parts, with a configurable buffer zone left just outside your border.
- You can use a bypass command to allow specific players to go beyond all borders.
- Borders can be automatically displayed in DynMap if you use that plugin.
- All plugin data is automatically saved whenever any borders or settings are changed.
- If a player crosses a border while in a vehicle, the momentum of the vehicle is stopped and it is moved back inside the border with the player.
- When a player is moved back inside a border, they will be moved to a safe vertical location if needed.
- Borders for specific worlds can be set to wrap around instead of just knocking back players who cross the border, instead sending them to the opposite edge of the border.
English Tutorial:
Spanish Tutorial:
Of special interest are the Fill command and the Trim command features:
Borders are also displayed automatically by default in DynMap if you have it:
I'm using the same version of WorldBorder (1.8.6), Spigot 1.11.2 (latest build of yesterday) and using Java JDK 1.8.0_121 on Windows 10 Pro x64. Was using 1.8.0_102 for a while and just upgraded it this week. I have not experienced either scenario you're describing above. This doesn't appear to be an issue with how much memory you throw at it, but something else. How big is the world you are trying to fill? The largest world I have is 10,000,000 blocks (1/3 the max) and that took days to fill, but never crashed with 4GB RAM allocated to it.
I have the same issue. I ran it for 8 hours straight at default frequency (20) and it managed to fill 8% of the world. However when I looked it was hung, Not doing anything at all. Console would not update although I could join the server. The time it was hung for was wasted. I did it a second time before work, Same thing.
So I said, I'll just bump the frequency up to 1000 and it will get done, Wrong. Within the first 10 minutes I lost nearly all of my ram.
[09:18:13] [Server thread/INFO]: [WorldBorder] [Fill] World map generation task automatically continuing. (free mem: 8756 MB)
[09:28:36] [Server thread/INFO]: [WorldBorder] [Fill] 881 more chunks processed (1678257 total, ~16.9%) (free mem: 642 MB)
So, There is an issue with the fill function. If you have a giant world this could cause you a massive headache having to restart the server every time it runs out of ram. I'm just going to revert to older spigot versions to see if World Border will like those more.
As I linked on your identical ticket on GitHub, something posted in this issue is likely related:
https://github.com/Brettflan/WorldBorder/issues/75
WorldBorder 1.8.6 on Paper build 1090 (1.11.2) seems to be working fine with Java 1.8 u121.
https://i.gyazo.com/8172723fb028904ebf0f03527dd1090d
Screenshot shows running fill command on new world with 25,000 square radius, at 1000 freq, 2500 padding on my dev server with 12gb ram allocated to Paper on 32gb host.
WorldBorder 1.8.6 doesn't generate Woodland Mansions or End Cities correctly in Spigot 1.11.2.
Do you know if this works with MC 1.11 or do you plan to update for 1.11? Thanks
Everything is working fine for me on 1.11.2. All but the Fill function, It seems to have a massive memory leak when filling the world.
Can confirm what is being said below crashes every time i try to load a new world.fixed it.
WorldBorder crashing players online while filling in 1.11
Happens after a while online, client error is simply "null" ... server console showing no errors.
Happens if you're in the world you are filling or if you're not. Same thing.
Update:
Yup fill task is causing some insane lag.
This is with Nobody online what so ever, generating a normal world (not nether or end) http://i.imgur.com/S6wTWnd.png
Can anyone confirm that the fill commands works well on 1.11? I've had issues in the past with animals not generating along with terrain.
Animal spawning has nothing to do with world chunk generation.
Really? I was told that animals generate along with the terrain.
Sorry, you're right. Animals do apparently spawn with the terrain, as well as later on randomly when players are nearby.
This is the first time I've heard of a problem like that, though, and it's very unlikely there's anything I could do about it within WorldBorder if there is indeed a problem since WorldBorder uses the chunk loading method provided by Bukkit.
Update: generated my entire overworld with fill on 1.11. So far, appears to be no errors. Animals are throughout the world as normal, no chunk errors. All is well, thanks!
There seems to be no issues with Spigot 1.11 as of today.
Glad to see your still updating... Im updating my servers to spigot 1.10.2 now we will see what happens soon enough
Seems to be working great on Spigot and Paper 1.11
@ChadL123
I don't see the need. For one thing, "corner" doesn't mean all that much with a round/elliptic border, where the corner coordinates are unreachable. For another, it's not something most people would need to check, and if you do need to know, you can figure it out easily enough based on the center coordinates and radius value(s).
May I ask why there's no command to check what the cords of the corners are? Would make things a lot easier on server owners behalf
@BZFlag
Use /worldborder for visual border :)