Global Configuration
The below YAML shows you the structure and default values for the global configuration (config/paper-global.yml
).
Click on a leaf node to view the description for that setting.
block-updates:Whether to disable any form of block updates for note blocks on the server. Disabling block updates leads to note blocks no longer updating their block state, allowing for technically invalid note blocks to remain in the world, which might be useful for mapmakers.
Whether to disable any form of block updates for tripwires on the server. Disabling block updates leads to tripwires no longer updating their block state, allowing for technically invalid tripwires to remain in the world, which might be useful for mapmakers.
chunk-loading-advanced:Set to true if the server will match the chunk send radius that clients have configured in their view distance settings if the client is less-than the server's send distance.
Specifies the maximum amount of concurrent chunk generations that an individual player can have. Set to 0 to let the server configure it automatically per player, or set it to -1 to disable the limit.
Specifies the maximum amount of concurrent chunk loads that an individual player can have. Set to 0 to let the server configure it automatically per player, or set it to -1 to disable the limit.
chunk-loading-basic:The maximum rate at which chunks will generate for any individual player. Set to -1 to disable this limit.
The maximum rate at which chunks will load for any individual player. Note that this setting also affects chunk generations, since a chunk load is always first issued to test if a chunk is already generated. Set to -1 to disable this limit.
The maximum rate in chunks per second that the server will send to any individual player. Set to -1 to disable this limit.
chunk-system:Sets whether the server should use parallel chunk generation. The default value will be used as true. Possible options are true, on and enable to make the server use the system and false, off or disabled to disable.
Sets the number of threads to be used for read and write operations with chunks. If any value below zero is set, only one thread will be used.
Sets the number of threads to be used for parallel chunk generation. If any value below zero is set, the server will determine the best number depending on the number of available CPU cores. This is capped at a quarter of available processors and can be less for systems with very few processors. (Note: Hyper-Threaded threads do not count).
collisions:Sets whether the server should allow players to collide with one another. This option can be broken by plugins interacting with the scoreboard. If you are having trouble with this option, try without plugins installed
Collisions with boats and minecarts are often subject to client/server disagreement, which may cause glitchy behaviour for players. This setting attempts to mitigate this desync by sending precise locations for entities involved in collisions. Having this enabled will use more bandwidth; however, in the majority of cases, this is a worthy tradeoff
commands:Workaround for a client bug preventing entity type tag suggestions from functioning in target selectors. Resolves MC-235045
Instructs the server to return a list of players when tab-completing when there are no other completions available
Whether the /time command should act on all worlds or just the sender's current world
console:Enables Mojang's Brigadier (advanced) command completions in the server console
Enables Mojang's Brigadier highlighting in the server console
Whether the console command sender has all permissions
item-validation:The maximum length of an item's display name in characters
The maximum length of a lore line in characters
Whether to resolve selectors in books. With this enabled, players given creative mode will be able to crash the server in yet another way
logging:Whether to remap Spigot mapped stacktraces to Mojang mappings in logging. Has no impact on Mojang mapped servers
Whether player IP addresses should be logged by the server. This does not impact the ability of plugins to log the IP addresses of players
messages:Default message sent to players when they have insufficient permissions for an action, formatted with MiniMessage. Plugins may override this for their commands
Whether the server should use the player's display name (set by plugins) or actual name in quit messages
kick:Message sent to players when Mojang's authentication servers are unreachable. Formatted using MiniMessage.
Message sent to players when they are throttled for connecting too frequently. Formatted using MiniMessage.
Message sent to players who are detected flying. Formatted using MiniMessage.
Message sent to players who are detected riding a flying vehicle. Formatted using MiniMessage.
misc:Causes the server to lose the same precision that the client does for entities preventing desync. Fixes MC-4
Loads bukkit's permission.yml file before plugins, allowing them to check information set there immediately on enable
Sets the maximum amount of players that may join the server in a single tick. If more players join, they will be postponed until later ticks to join but not kicked. This is not related to connection throttling found in bukkit.yml
The maximum size of the region file cache
Use an alternative luck formula allowing luck to be applied to items that have no quality defined. Makes major changes to fishing formulas
Whether phantoms, wandering traders, etc. should be able to spawn in custom overworlds. Defaults to false in order to match vanilla behavior
Disables the attempts to translate worlds that use the same generation as the Overworld, The Nether, or The End to general dimensions rather than the specific dimension key of the world.
chat-threads:The minimum number of threads to keep in the chat thread pool
The maximum number of threads to allow in the chat thread pool. The default value is -1, which means no maximum
A higher compression level means less data transmitted at the cost of more CPU time. The default value is -1, which means that the server will use the default value of the defined compressor. Note that Paper is currently using the Velocity compressor, which uses a default compression level of 6 as a middle ground between performance and data transmission.
packet-limiter:all-packets:The action to take once the limit has been violated. Possible values are DROP which will ignore packets over the limit, and KICK which will kick players for exceeding the limit
The interval, in seconds, for which max-packet-rate should apply
The number of packets allowed per player within the interval
The message players are kicked with for sending too many packets. Formatted using MiniMessage.
Override the global configuration for any individual named packet. You can find the names of every packet as they are displayed on timings. For more experienced users, packets named here use Mojang mappings regardless of the server.
player-auto-save:How many players should be saved at most in a single tick. A value of -1 will set a recommended value based on player-auto-save.rate of either 10 or 20
How often player data should be saved in ticks. A value of -1 will use ticks-per.autosave in bukkit.yml
proxies:Whether the server should process PROXY Protocol messages. This is completely unrelated to Velocity or BungeeCord. Only enable this if you are using HAProxy or similar
bungee-cord:Instructs the server how to handle player UUIDs and data when behind BungeeCord. Always set to match your proxy's online-mode setting
velocity:Whether the server should accept Velocity Modern Forwarding
Instructs the server how to handle player UUIDs and data when behind Velocity. Always set to match your proxy's online-mode setting
The secret string that is shared by your Velocity proxy and this server. This needs to match your proxy's secret as defined in the forwarding.secret file
scoreboards:Some scoreboard plugins leave hundreds of empty scoreboard teams around, dramatically slowing down login times. This sets whether the server should remove those empty teams automatically
Whether the server should track plugin scoreboards with only dummy objectives. This is a breaking change; however, it provides a much more sensible default value. Enabling this with plugins using many scoreboards will incur a performance degradation
spam-limiter:Sets the threshold at which the server will consider incoming packets spam and ignore them
The number that the recipe spam counter increases by when a player presses a recipe
The number that the recipe spam counter can reach until the server kicks the player for spam
The number that the internal tab spam counter increases by when a player presses tab in the chat window
The number that the internal tab spam counter can reach until the server kicks the player for spam
timings:Controls the global enable state of Timings
Configuration entries to hide in Timings reports
The interval in seconds between individual points in the Timings report
The total amount of data to keep for a single report. This value is validated server-side. Large reports will be rejected
Instructs Timings on what to put in for the server name
Instructs Timings to hide server name information in reports
Specifies the URL of the Timings Viewer server where Timings reports are sent
Instructs Timings to provide more specific information in its reports. For example, specific entity types causing lag rather than just "entities"
unsupported-settings:Whether the server should allow the creation of headless pistons. These are often used to break permanent blocks
Whether unbreakable blocks can be broken with vanilla exploits. This includes bedrock, end portal frames, end portal blocks, and more
Whether to allow duplication of TNT, carpets, and rails. This does not control sand duplication
Whether the server should validate usernames. While this may allow users with special characters in their name to join, it can also cause issues with commands and plugins
Allows the server to customize the format of saved region files. This supports ZLIB, GLIB and NONE, where None namely allows for compression to be disabled
Whether the server should allow players to overstack items in the grindstone