The below YAML shows you the structure and default values for the world configuration. (
Click on a leaf node to view the description for that setting.
Controls the on/off state for the Anti-Xray system
Sets the Anti-Xray engine mode. 1 replaces specified blocks (hidden-blocks) with other "fake" blocks, stone (deepslate at y < 0), netherrack, or end_stone based on the dimension. In contrast, 2 will replace both hidden-blocks and replacement-blocks with randomly generated hidden-blocks. Similarly to engine mode 2, mode 3 will replace each chunk layer with a random block from the hidden-blocks list.
Sets the maximum height (y coordinate, starting from the bottom of the world) to which anti-xray will operate. Only integer multiples of 16 are accepted. All other values will be rounded down. The Minecraft Wiki page about Ore may be helpful in determining the best value for you
Radius for block updates which will be sent containing real block data when the client interacts with a block. Only values 0, 1, and 2 are accepted. Values smaller than 0 will be rounded up to 0, while values larger than 2 will be rounded down to 2. 0 is only designed for testing purposes. Do not use it in production
Whether to obfuscate blocks touching lava. Does not work well with non-stone-like ore textures. This is because lava, while being mostly opaque, does not cover blocks fully at the surface
Whether to allow players with the paper.antixray.bypass permission to bypass anti-xray. Checking this permission is disabled by default as legacy permission plugins may struggle with the number of checks made. This should only be used with modern permission plugins
With engine-mode: 1, these blocks will be replaced by stone (deepslate at y < 0), netherrack, or end_stone, based on the dimension. All types of air are ignored on this list. With engine-mode: 2, these blocks will be randomly placed in the world, replacing both hidden-blocks and replacement-blocks. Tile entities, such as chests or spawners, are not allowed on this list. Individual blocks may be added multiple times, increasing their chance of being placed. engine-mode: 3 is very similar to 2, but these blocks will be randomly placed where each vertical chunk layer will take the same block from the list.
With engine-mode: 1, replacement blocks are not used. Changing this list will have no effect. With engine-mode: 2, both replacement-blocks and hidden-blocks are randomly replaced by hidden-blocks. While tile entities are ignored in the hidden-blocks list, they may be added to the replacement-blocks list. All types of air blocks are ignored here. With engine-mode: 3, the behavior is the same as engine-mode: 2, but the replacement-blocks list is used to determine which blocks are used for each vertical chunk layer.obfuscation:items:
Controls whether durability information is sent to other players' clients. This may break resource packs that rely on durability values when observing other players
Controls whether unnecessary item information (such as enchantments, items in a shulker box/bundle, etc.) that can give cheat clients an advantage should be sent to other players' clients. This may break resource packs that rely on information such as enchantments, lore or item names when observing other players
Controls whether item information that affects how an item is displayed (such as lodestone compass positions) should be sent to other players' clients. This information could be used by cheat clients to give another advantage to the cheating player. However, this will affect how certain items look when held by another playerchunks:
Configures the world saving interval in ticks. Overrides ticks-per.autosave in bukkit.yml for this world. A value of -1 will use the global ticks-per.autosave in bukkit.yml
Delays chunk unloads by the specified time. Formatted as a duration with a single unit e.g. 10h or 25m. Supports d, h, m, and s.entity-per-chunk-save-limit:
Limits the number of experience_orb's that will be saved/loaded per chunk. A value of -1 disables the limit for a specific entity.
Limits the number of any type of entity that will be saved/loaded per chunk. A value of -1 disables the limit for a specific entity. Any entity may be added to the list, beyond the enumerated defaults
If 0 or greater, set the chunk inhabited time to a fixed number. Fixed in this instance means static or unchanging. This is not fixing a bug. The timer is increased when chunks are kept loaded because of player activity
The maximum number of chunks the auto-save system will save in a single tick
Sets whether the server will prevent players from moving into unloaded chunks or not
Sets whether the server will flush chunks to disk when they are saved. This may have a performance impactcollisions:
Allows players to take damage from cramming when colliding with more entities than set in the maxEntityCramming game rule
Whether vehicles should also be able to collide while only-players-collide is enabled
Sets whether climbing should bypass the entity cramming limit(maxEntityCramming game rule). If set to true, climbing entities will also be counted towards the entity cramming limit so that they can take suffocation damage
Instructs the server to stop processing collisions after this value is reached
Only calculate collisions if a player is one of the two entities collidingentities:armor-stands:
Instructs armor stand entities to do entity collision checks
Disable to prevent armor stands from ticking. Can improve performance with many armor standsmarkers:
Disable to prevent markers from ticking. This may affect how they behave as passengers of other entitiesbehavior:
Modifies the speed that baby zombies move at, where 0.5 is 50% faster than the mob base speed, and -0.4 would be 40% slower
Allows you to open chests even if they have a cat sitting on top of them
Disables creepers randomly leaving behind a lingering area effect cloud
Instructs the server to disable critical hits in PvP, treating them as normal hits instead
Whether spiders should be able to climb on the world border, as if it were a regular wall.
Takes a list of difficulties at which each entity will attempt to break doors
Controls whether ender dragons should always drop dragon eggs on death
Instructs the server to put a maximum value on experience orbs, preventing them all from merging down into 1 single orb. A value of -1 instructs the server to use no max value, allowing them to merge down into a single orb. This is especially noticeable when defeating boss monstersmobs-can-always-pick-up-loot:
Instructs the server to allow zombies to pick up loot. If set to false, the probability that a zombie picks up items depends on the world's difficulty (vanilla behavior)
Instructs the server to allow skeletons to pick up loot. If set to false, the probability that a skeleton picks up items depends on the world's difficulty (vanilla behavior)
Removes AI from pigmen spawned via nether portals
Makes parrots "sticky" so they do not fall off a player's shoulder when they move. Use crouch to shake them off
Disables spawning of phantoms on players in creative mode
Prevents phantoms from attacking players who have slept
If piglins should attempt to guard chests when angeredpillager-patrols:
Disables Pillager patrols and associated AI
Modify the spawn changes for patrols
Sets whether to remove the dragon if it exists without a portal
Determines if spawner nerfed mobs should attempt to float (jump) in water
Sets the chance for villager conversion to zombie villager. Set to "default" for default behavior based on game difficulty. Set to 0.0 to always have villagers die when killed by zombies. Set to 100.0 to always convert villagers to zombie villagers
Sets whether zombies and zombified piglins should target turtle eggs. Setting this to false may help with performance, as they won't search for nearby eggs
Sets the maximum number of seconds between phantom spawn attempts
Sets the minimum number of seconds between phantom spawn attempts
Sets whether the server should use follow range when targeting entitiesmob-effects:
If the specified entity should be immune to the wither effect
If spiders should be immune to poison
If undead mobs should be immune to regeneration and poisonsniffer:
The boosted hatch time, in ticks, a sniffer egg requires to hatch. Boosted hatching occurs when planted on specific blocks.
The non-boosted hatch time, in ticks, a sniffer egg requires to hatch.spawning:
Instructs the server to treat all chunks like slime chunks, allowing them to spawn in any chunk. This may actually decrease your chances of running into a Slime as they now have a much larger potential spawn areaalt-item-despawn-rate:
Determines if items will have different despawn ratesitems:
Sets a custom despawn rate for cobblestone of 300 ticks
Determines how long each respective item despawns in ticks. The item ids are the same as those used in the /give command. They can be viewed by enabling advanced item tooltips in-game by pressing F3 + H; the item id will appear at the bottom of the tooltip that appears when you hover over an item
Determines whether spawner mobs and other misc mobs are counted towards the global mob limit
The rate, in ticks, at which arrows shot from players in creative mode are despawneddespawn-ranges:monster:
The number of blocks away from a player in which each monster type (set individually) will be randomly selected to be despawned. This range takes effect both horizontally and vertically
The number of blocks away from a player in which each monster type (set individually) will be forcibly despawned. This range takes effect both horizontally and vertically<mob_category>:
The number of blocks away from a player in which each entity type (set individually) will be randomly selected to be despawned. Takes effect both horizontally and vertically
The number of blocks away from a player in which each entity type (set individually) will be forcibly despawned. Takes effect both horizontally and vertically
Whether to block players from changing the type of mob spawners with a spawn eggduplicate-uuid:
Specifies the method the server uses to resolve entities with duplicate UUIDs. This can be one of the following values:
- saferegen: Regenerate a UUID for the entity, or delete it if they are close.
- delete: Delete the entity.
- silent: Does nothing, not printing logs.
- warn: Does nothing, printing logs
If multiple entities with duplicate UUIDs are within this many blocks, saferegen will delete all but 1 of them
Instructs the server to remove certain NBT data from falling blocks. Note: Some adventure maps may require this to be turned off to function correctly, but we do not recommend turning it off on a public server
A list of nbt tags that will be removed from the EntityTag tag on items which spawn entities. The format of these strings follows the same format used to select nbt tags in vanilla commands. If the spawning was directly caused by a player and the player has the minecraft.nbt.place permission, the filter list will be ignored. The defaults are set to prevent entities from spawning or moving to a place other than the location they were placed. For example, if Pos wasn't included, a spawn egg could place an entity at any location. Note: Some adventure maps may require this to be an empty list to function correctly, but we do not recommend turning it off on a public server
Sets whether iron golems can spawn in the air. Iron farms may break depending on this setting
When set to "default", the Vanilla default will be used (=0). Set to 15 or greater to revert to pre-1.18 behavior
The rate, in ticks, at which arrows shot from non-player entities are despawned. The default value instructs the server to use the same default arrow despawn rate from spigot.yml that is used for all arrows
Determines whether the mob limit (in bukkit.yml) is counted per player or for the entire server. Enabling this setting results in roughly the same number of mobs, but with a more even distribution that prevents one player from using the entire mob cap and provides a more single-player like experience
Determines if the server attempts to start the ender dragon fight. Setting this to false will make the ender dragon not spawn in the end, even with a new world
Sets the chance that a "Skeleton Trap" (4 skeleton horsemen) will spawn in a thunderstorm. Takes a double between 0 and 1, where 0 is 0% chanceslime-spawn-height:spawn-limits:
The constant used to determine how many ambient mobs will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.yml
The constant used to determine how many axolotls will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.yml
The constant used to determine how many animals will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world, and the name. A value of -1 will use the value in bukkit.yml
The constant used to determine how many monsters will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.yml
The constant used to determine how many underground water creatures will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.yml
The constant used to determine how many water ambient mobs will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.yml
The constant used to determine how many water animals will be naturally spawned per world. This is identical to the value set in bukkit.yml, except that it can be configured per world. A value of -1 will use the value in bukkit.ymlwandering-trader:
How much the spawn chance will be increased on every failed wandering trader spawn
The maximum chance that a wandering trader will be spawned
The minimum chance that a wandering trader will be spawned
Time between wandering trader spawn attempts in ticks
The length of the wandering trader spawn minute in tickswateranimal-spawn-height:
The maximum height at which water animals will spawn. Note: The default value defers to Minecraft's default setting, which as of 1.12 is the sea level of the world (usually Y: 64)
The minimum height at which water animals will spawn. Note: The default value defers to Minecraft's default setting, which as of 1.12 is the sea level of the world (usually Y: 64)tracking-range-y:
Enables separate ranges for tracking ranges in the vertical (Y) direction.
Controls how far vertically in blocks animals are tracked (sent to) the player.
Controls how far vertically in blocks display entities are tracked (sent to) the player.
Controls how far vertically in blocks monsters are tracked (sent to) the player.
Controls how far vertically in blocks players are tracked (sent to) the player.
Controls how far vertically in blocks miscellaneous are tracked (sent to) the player.
Controls how far vertically in blocks other entities are tracked (sent to) the player.environment:
Instructs the server to completely block any knockback that occurs as a result of an explosion
Disables ice and snow formation. This also causes cauldrons to no longer be filled by rain or snow
Disables the suffocation check the server performs before teleporting a player. Note: While useful to keep your players out of walls, leaving this feature on may allow players to teleport through solid materials by logging out in specific locations
Maximum RNG value to apply frosted-ice effects at
Minimum RNG value to apply frosted-ice effects at
Instructs the server to enable (and tick) frosted ice blocks
Instructs the server to generate bedrock as a single flat layer
Sets the level above which players in the nether will take void damage. This is a vanilla-friendly way to restrict players from using the nether ceiling as a buildable area. Setting to disabled disables this feature
Instructs the server to cache entity lookups during an explosion, rather than recalculating throughout the process. This speeds up explosions significantly
The maximum range the server will try to create a portal around when generating a new portal
The maximum range the server will use to look for an existing nether portal. If it can't find one in that range, it will generate a new one
Whether to apply vanilla dimension scaling to portal-search-radiustreasure-maps:
If villagers should trade treasure maps and treasure maps from chests should lead to a featurefind-already-discovered:
Overrides the loot table-configured check for undiscovered structures. default allows loot tables to individually determine if the map should allow discovered locations in its search. All vanilla loot tables default to skipping discovered locations so changing this to false would override that behavior and force them to search discovered locations
Instructs the server to target the first treasure location found for maps obtained via trading with villagers
Sets the speed at which water flows while over lava
Sets the minimum delay between fire ticksfeature-seeds:
Enables autofilling random seeds for all available features you haven't already set a seed to. Using this in a controlled environment is also a good way of receiving a full list of features you can set seeds for
Sets the population seed for the specified feature. If set to -1, the Vanilla population seed stays unchanged and will not be overridden by the autofill optionfishing-time-range:
The maximum number of RNG ticks before catching a fish
The minimum number of RNG ticks needed to catch a fishfixes:
Prevent enderpearls from storing the thrower when in an unloaded chunk
The height at which falling blocks will be removed from the server. A value of disabled will disable this feature
Whether items should be prevented from merging through walls. Enabling this will incur a performance degradation. This is only necessary when merge-radius.item (spigot.yml) is large enough to merge items through walls
Instructs the server to keep Primed TNT entities from moving in flowing water
When set to false, loot tables will not attempt to split items with a stack size higher than the maximum into items of smaller stack sizes. This will prevent overstacked items from being lost or causing a chunk to become uninhabitable (due to players getting constantly kicked because of oversized packets) when a shulker box is broken in survival
The height at which Primed TNT entities will be removed from the server. A value of disabled will disable this featurehopper:
Instructs the server to apply a short cooldown when the hopper is full, instead of constantly trying to pull new items
Completely disables the InventoryMoveItemEvent for hoppers. Dramatically improves hopper performance but will break protection plugins and any others that depend on this event
Determines if hoppers will ignore containers inside occluding blocks, like a hopper minecart inside a sand block. Enabling this will improve performance for hoppers checking where to insert itemslootables:
Instructs the server to automatically replenish lootable containers. This feature is useful for long-term worlds in which players are not expected to constantly explore to generate new chunks
Sets the maximum number of times a lootable may be refilled. Note: The default value will allow a lootable to refill an infinite number of times
The maximum amount of time that can pass before a lootable is refilled. Formatted as a duration with a single unit e.g. 10h or 25m. Supports d, h, m, and s.
The minimum amount of time that must pass before a lootable will be eligible to be refilled. Formatted as a duration with a single unit e.g. 10h or 25m. Supports d, h, m, and s.
Resets the loot seed each time the lootable is refilled, effectively randomizing the new loot items on each refill
Prevents the same players from coming back and re-looting the same containers over and over
Per-player cooldown between reloots. Formatted as a duration with a single unit e.g. 10h or 25m. Supports d, h, m, and s.maps:
The number of cursors (markers) allowed per map. A large number of cursors may be used to lag clients
The interval in ticks at which cursors on maps in item frames are updated. Setting this to a number less than 1 will disable updates altogethermax-growth-height:
Maximum height cactus blocks will naturally grow to
Maximum height sugar cane/reeds blocks will naturally grow tomisc:
Instructs the server to never send the end game credits when leaving the End
Instructs the server to ignore shooter velocity when calculating the velocity of a fired arrow
Determines if the server will interrupt a sprinting player if they are attacked
Sets how large the queue of light updates off the main thread for each world should be. Vanilla uses 5, but this causes issues especially with plugins such as WorldEdit
Configure the maximum distance of a leash. If the distance to the leashed entity is greater, the leash will break
Specifies the redstone implementation that the server uses. Alternative implementations can greatly reduce the lag caused by redstone dust by optimizing power calculations and reducing the number of block and shape updates emitted. The following implementations are available:
- vanilla: The Vanilla redstone implementation.
- eigencraft: The Eigencraft redstone implementation by theosib.
- alternate-current: The Alternate Current redstone implementation by Space Walker.
Note: Both the Eigencraft and Alternate Current implementations change the behavior of redstone dust. You can read about how behavior is changed in each implementation's respective documention:
The number of ticks between a player activating their shield and it actually blocking damage
Whether commands executed by sign click should show failure messages to players
Controls whether the pathfinding of mobs is updated when a block is updated in the world. Disabling this option can improve the server performance significantly, while there is almost no noticeable effect on the game mechanics. This is recommended when there are lots of entities loaded, and you have automated farms or redstone clocksscoreboards:
Instructs the server to always treat non-player entities as if they are never on a team. Disabling this may slightly decrease the amount of time the server spends calculating entity collisions
Instructs the server to use the vanilla scoreboard for player nickname coloring. Useful when playing on adventure maps made for the vanilla server and clientspawn:
Allows players to use signs while inside spawn protection
Instructs the server to keep the spawn chunks loaded at all times
The range in chunks around spawn to keep loadedtick-rates:behavior:
The rate, in ticks, at which the server updates containers and inventories
Sets the delay, in ticks, at which the server attempts to spread grass. Higher values will result in a slower spread
How often mob spawners should tick to calculate available spawn areas and spawn new entities into the world. A value of -1 will disable all spawnersunsupported-settings: