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:
In reply to Sinfulnights:
Hello.
The trim command still does not work for me. I spoke about it last year:
https://dev.bukkit.org/projects/worldborder?comment=2049
You were telling me I had to make a mistake with the command so I resigned myself. Despite many tests I have never succeeded and yet I think to do things correctly. Actualy I want to reduce my Nether. It had a radius of 2500 blocks, I just reduced the radius to 700 blocks. On dynmap I check that the radius has changed well then I do the command:
/wb trim then /wb trim confirm
The plugin responds instantly:
In reply to Chevels:
In reply to Brettflan:
Yes, I executed the command in the Nether and it did not work:
[WorldBorder] [Trim] 0 entire region (s) and 0 individual chunk (s) trimmed so far (100.0% done)
My server is in 1.11.2 and I'm using the latest version of Worldborder (1.8.7). But the command did not work with previous versions of Spigot (1.9, 1.10). The last time this command worked for me was two or three years ago.
In reply to Chevels:
The map of my server is old because it was generated 6 years ago. By checking the file of my nether I realized that there was the old folder "region" in "\Heavy_nether\region". In an early update of Minecraft, the folder "region" of the maps has been moved into the "dim-1" folder (\Heavy_nether\dim-1\region). So I deleted the old folder "Region" and finally, the command worked!
I assume that by default Worldborder should use the first "region" folder it found, here "\ Heavy_nether\ region". Now it uses the right folder and it works fine.
I think this problem is atypical because there must not be many servers that use such old map. At least it will have brought to light an unusual problem^^
In reply to Chevels:
In reply to gmalone:
No problem! I hope this fix your issue too :)
Will there be an update for the 1.12 Pre-Releases or just the official 1.12 GA?
Thanks- Steve
In reply to smmmadden:
In reply to Brettflan:
Thanks - wanted to know as I keep these two pages updated.
Spigot Compatible Plugins for 1.11.2 and 1.12
In reply to Dcore18:
In reply to Dcore18:
when this plugin renders using the "fill, radius" method, does it render radially, or linearly?
In reply to Ghryst:
In reply to Brettflan:
Hi, i have a question... its compatible the "Auto Fill" with Epic World Generator?
I use the two together, no problems here
Is there any chances for a Forge port for Minecraft version 1.10.2? There's at the moment apparently zero mods which can do a nice, pre-filled, round world.
WorldBorder with Spigot 1.11.2 does some weird things.
I tried generating a world fill with a server instance of 8GB of memory and it seemed OK until it ran out of memory.. and then just sat there. No memory was ever freed and the generation could not continue. So I "wb fill cancel" and "stop" to shutdown the server. But then it got stuck on "Saving chunks for level 'world'/Overworld".
So I tried again but this time with 32GB of memory but this had the same problem. Memory usage just ticked up until there was no more memory available. Again, I canceled the fill, performed a "save-all" which completed instantly, and tried to stop the server but it hung on saving chunks again.
First of all, where is the memory going? And who isn't freeing it? I have ONLY WorldBorder and LagMeter loaded with no other plugins. Secondly, why is it hanging when the server stops? Are chunks not being written to disk by WorldBorder? Why did save-all work OK but the server still had chunks to save?
While I waited for the server to stop by itself, I examined the world's region folder. No new files were being written but the existing files were changing. But it wasn't just each file being touched once; it was often the SAME files being touched again and again. For example, I could filter by modification date, click on a file and watch it scroll away, and then watch it scroll past again as it is repeatedly modified.
Here is a screenshot of what I am describing:
https://www.youtube.com/watch?v=U0PRyGh9o2o
Is this a WorldBorder problem or a bug with Spigot's chunk generation?