How many Administrators of Minecraft servers (no matter what age or skill set) have run into that guy , you know, the one builder or even rogue administrator who decides it would be all sorts of fun to “stress test” the server using WorldEdit to replace large zones with droppable objects?
Objects that will bring a server to it’s knees can be beds, arrows, carrots, and possibly others if the area selected is big enough to overwhelm a server. Usually what happens is the command is sent and there is a wtf moment as the server suddenly drops all clients and the server appears offline. Now usually what happens at this point is the administrator restarts the server and people attempt to rejoin the server which unfortunately causes the server to crash again as chunks with the objects are now reloaded into memory and the server crashes again. Administrators are now left with only two options, restore from a backup (you are taking backups, right?) or the painful process of deleting the world.
Deleting the world will not sit well with your builders or even your users if this unfortunately happens while your server is live. What is an administrator to do at a time like this?
First, don’t panic! Don’t delete that world! The first thing your going to want to do is lock down the server to a whitelist with just you, this will prevent people from attempting to join back in and crashing the server. Additionally if you don’t wish to use the whitelist method, switch the server to a different port.
Next you will need to grab this plugin.
This will allow you to clear all currently dropped items that have littered your server and causing it to crash. Don’t let the fact that the plugin was released for 1.8 discourage you, this plugin was able to help me save a world that was littered by carrots after a botched WorldEdit replacement (made by yours truly: long story short, while attempting to find the best outside appearance for a spawn I had decided to pull a number at random which happened to be 141, or as I quickly discovered, the item id for carrots.) on a Bukkit server running 1.13.
Once you have the plugin don’t join the server yet, while usually plugins that clear dropped items require a user to be in-game in to clear around, this one will actually can be called from the server terminal, simply type “cd clear” and it will remove all those pesky items crashing your server.
Now you should join the server alone and make sure you are able to join without the server crashing. I found from my mistake that my client was still rendering a few carrots left over from the initial spawn that were left over that were “frozen” and technically didn’t count as “dropped objects” yet so in order to prevent these leftover carrots from crashing the server I flew around the zone and continued to issue “/cd clear” until every last carrot was removed.
Not only did this save my friend and I from losing countless hours inside the server (we did not have backups since the mistake had occurred before we had everything in place) it saved me from being strangled by my buddy since both of us initially thought I had just cost us the world and several hours of work due to a careless mistake.
Once you can verify that you are able to rejoin the server it is safe to turn off the whitelist (or if you moved the server to a new port move it back) so that your users may join back.
Since I figured I’m not the first or last person who has been plagued by this nightmare I decided to write this blog post to serve as a warning to others as well as a guiding light to those who have found themselves in the same position.