This allows to load more chunks without ticking them. This is an option you want to purposefully set low, somewhere around 3 or 4, because of the existence of view-distance. This includes furnaces smelting, crops and saplings growing, etc. Essentially the distance from the player that things will happen. Simulation distance is distance in chunks around the player that the server will tick. AKA, it won't kick your players because 1 packet gets dropped somewhere along the linesĬhunks server.properties simulation-distance Responding to any of them in any order will keep the player connected. Has known incompatibility with TCPShield.Įnabling this sends a keepalive packet once per second to a player, and only kicks for timeout if none of them were responded to in 30 seconds. You can enable Purpur's alternate keepalive system so players with bad connection don't get timed out as often. If your server is in a network with a proxy or on the same machine (with less than 2 ms ping), disabling this (-1) will be beneficial, since internal network speeds can usually handle the additional uncompressed traffic. Setting this higher may also hurt clients with slower network connections. Setting it higher can save some CPU resources at the cost of bandwidth, and setting it to -1 disables it. This allows you to set the cap for the size of a packet before the server attempts to compress it. Configurations Networking server.properties network-compression-threshold Make sure to set up a vanilla world border ( /worldborder set ), as it limits certain functionalities such as lookup range for treasure maps that can cause lag spikes. The nether dimension is 8x smaller than the overworld (if not modified with a datapack), so if you set the size wrong your players might end up outside of the world border! It's key to remember that the overworld, nether and the end have separate world borders that need to be set up for each world. Keep in mind that with Paper and above your tps will not be affected by chunk loading, but the speed of loading chunks can significantly slow down when your server's cpu is overloaded. Make sure to set up a world border so your players don't generate new chunks! Note that pregenning can sometimes take hours depending on the radius you set in the pregen plugin. If you still want to pregen the world, you can use a plugin such as Chunky to do it. Though, pregeneration is commonly used to generate chunks for world-map plugins such as Pl3xMap or Dynmap. Map pregeneration, thanks to various optimizations to chunk generation added over the years is now only useful on servers with terrible, single threaded, or limited CPUs. If you're seeking more performance gains, optimize your server or invest in a personal private fork. Many forks further downstream from Pufferfish or Purpur will encounter instability and other issues.Any plugin/software that enables/disables/reloads plugins on runtime.Bukkit/CraftBukkit/Spigot - Extremely outdated in terms of performance compared to other server software you have access to.Any paid server JAR that claims async anything - 99.99% chance of being a scam.Purpur - Pufferfish fork focused on features and the freedom of customization.Pufferfish - Paper fork that aims to further improve server performance.Paper - The most popular server software that aims to improve performance while fixing gameplay and mechanics inconsistencies.There are currently multiple viable popular server JARs, but there are also a few that you should stay away from for various reasons. Your choice of server software can make a huge difference in performance and API possibilities. If you think you found inaccurate information within this guide, you're free to open an issue or set up a pull request to correct it. This guide only aims to help you understand what options have impact on performance and what exactly they change. Tinkering around with the options to fine tune them to your servers needs is what it's all about. Each server has their own needs and limits on how much you can or are willing to sacrifice. There will never be a guide that will give you perfect results. Use the table of contents located above (next to README.md) to easily navigate throughout this guide. Some things may still apply to 1.15 - 1.19.īased on this guide and other sources (all of them are linked throughout the guide when relevant). This allows the server to save chunks off the main thread, lessening the load on the main tick loop. This option is forcibly set to false on Paper and its forks, but on other server implementations you need to switch this to false manually. Note for users that are on vanilla, Fabric or Spigot (or anything below Paper) - go to your server.properties and change sync-chunk-writes to false.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |