Features and Changes

  • Vanished Players (Bukkit API, Not Invisibility)
    • In Paper, vanished players are better hidden. Arrows, fishing hooks, and other projectiles can fly through vanished players, as if they aren't even there. Players can place blocks even if someone is invisible standing directly in front of them.
  • Undead Horses [CONFIGURABLE]
    • Undead horses can be leashed, as though they are just normal horses, if you so want them to be
  • Squid Spawn Heights [CONFIGURABLE]
    • The spawning height of squid entities can be altered via our config file
  • Blocking Damage Modifier [CONFIGURABLE]
    • The damage modifier a player gets for blocking (right clicking with a sword) is configurable
  • Cacti and Reeds [CONFIGURABLE]
    • Cactus and Reed growth height can be altered in our config file
  • Baby Zombie Movement [CONFIGURABLE]
    • The speed at which baby zombies move can be altered
  • Fishing time ranges [CONFIGURABLE]
    • The amount of time it takes for a fish to be caught can be altered
  • Nerfed Mob Jump [CONFIGURABLE]
    • Spawner mobs nerfed via the spigot.yml config setting, are allowed to jump in Paper, to reduce breakage of vanilla gameplay mechanics, like spawner traps
  • Despawn Ranges [CONFIGURABLE]
    • The vanilla ranges that control when entities are despawned can be altered.
  • Falling Block Height Nerf [CONFIGURABLE]
    • Falling blocks can optionally be removed from the world when they reach a certain height, nerfing long range cannons
  • Chest Ticking
    • In Paper, chests and enderchests do not tick, improving server performance
  • Tick Loop
    • The server tick loop has been further altered to improve performance
  • Nether Void Damage [CONFIGURABLE]
    • The server can optionally apply void damage to those that get above the nether's bedrock roof
  • Vanilla Redstone
    • Multiple internal changes to help redstone act more like it did on a vanilla server
  • Throttled Light Updates [CONFIGURABLE]
    • Vanilla optimizes light updates to let them only run when the server has time to spare, and will hold off on them if the server is lagging.
  • Disable Player Crits [CONFIGURABLE]
    • Critical hit attacks by players can be disabled to alter gameplay
  • End Credits [CONFIGURABLE]
    • The end game credits that appear when leaving The End dimension can be disabled
  • Flying TNT Entities [CONFIGURABLE]
    • TNT, FallingBlock, and Enderpearls can be configured to either load chunks as they fly, or be removed from the world when they reach an unloaded chunk. Preventing players from using long distance cannons to shoot through terrain
  • World Generation Settings [CONFIGURABLE]
    • Numerous world generator settings can be controlled from within Paper
  • Timings Version 2
    • Paper implements Timings Version 2, the latest revision of timings. Offering a tremendous increase in performance details to server owners without the need to run a full profiler.
  • Improved Chunk Saving
    • Will retry instead of giving up after a failure, and also fixes race conditions that could result in chunk rollbacks.
  • Non Player Arrow despawn [CONFIGURABLE]
    • Make arrows fired by skeletons despawn quicker since players can not even pick those up.
  • Use $sender in commands.yml
    • You may use $sender to represent the sender of the command in your commands.yml aliases.
  • Ability to disable treasure maps [CONFIGURABLE]
    • If you are concerned about your Map ID's depleting, you can turn off Treasure maps from Villagers.
  • Optimized Auto Saving of Chunks
    • The auto save process has been drastically improved. It is absolutely recommended to use the built in auto save and remove all cronjob or externally scheduled saving tasks/plugins. They will never do as good of a job as Paper's auto save.
  • Remove Player Collisions [CONFIGURABLE]
    • 1.9 introduced forced player collisions for servers that do not use scoreboards and was able to turn them off. Paper includes the ability to turn off player collisions even for servers who do not use scoreboard teams with the ability to disable it themselves.
  • Enhanced Vanilla Loot Tables [CONFIGURABLE]
    • 1.9 Introduced a new system to control the loot that is generated into chests in Mineshafts, Fortresses and such. Paper includes an option that lets you specify an automatic refreshment behavior so that servers with long term worlds can have a better experience where new players can still go and find treasure in already explored areas.
  • Vanilla Name Colors [CONFIGURABLE]
    • Paper has the option to restore Vanilla name formatting based on Scoreboards for servers who do not use custom chat formatting.
  • Chunk Inhabited Time Difficulty Scaling [CONFIGURABLE]
    • You may turn off the vanilla feature that makes chunks difficulty scale up the longer a chunk has been used. This is useful for servers with long term worlds where the spawn chunks are guaranteed to max out where players are by design meant to stay in the same area.
  • Arrow Despawn Rate [CONFIGURABLE]
    • You can configure arrows to despawn at a different interval than normal items on the ground.
  • Grass Spread Rate [CONFIGURABLE]
  • You may control how fast grass spreads, improving performance of your server.
  • Optimized Scoreboard Saving [CONFIGURABLE]
  • Many plugins have bugs in their use of Scoreboards that over time makes the entire Scoreboard system lag the server. Paper has optimized this case and automatically corrects the problem for you.
  • Faster Chunk Saving to Disk [CONFIGURABLE]
  • A problem for super active servers is that when lots of chunks get unloaded, the server may not fully unload them quick enough. The server by default sleeps between each save, and when there are a lot of chunks to save, it is possible that the server adds to that queue faster than it drains it.

Paper by default will remove the unnecessary delay, allowing the chunks get out of memory faster. This has tremendous performance benefits on memory consumption and Garbage Collection.

  • Improved Chunk Unload logic [CONFIGURABLE]
  • When a player is building, it is common that they move back and forth in a small area. This constantly causes the chunks surrounding the player to change between in range and out of range. This ultimately causes a lot of "thrashing", with unnecessary chunk unloads and loads.

Paper optimizes this by ensuring a chunk is 'out of range' from a player for a configurable amount of time (default 10s), allowing the server to avoid thrashing chunks that are still likely to be used by the player.

  • Keep Spawn Loaded range per world [CONFIGURABLE]
    • Instead of relying on the view distance for keeping a spawn loaded, one can increase or decrease the range of a worlds spawn to stay loaded. Have a super active fixed sized spawn? Ensure the range covers the entire spawn and avoid unnecessary unload/reload cycles. Have a world that is barely used? Set the range to 1, resulting in faster server start up times and less memory.
  • ... and many many more! (this list is hard to keep up-to-date)

Performance

Paper has numerous performance optimizations that can not be found in CraftBukkit and Spigot

By using Paper, you can be sure that the communities leading developers are constantly working to improve the servers performance, finding new areas to improve and optimizing them in any way possible that does not break the game.

There are literally too many improvements in Paper that Spigot does not have to list.