Pufferfish and Paper are both two very popular Minecraft server jar options. In this article, we will discuss their pros and cons, and help you come to a conclusion on which is better for your server.
What is Pufferfish?
Pufferfish is a server jar that came on the market in November of 2021. This server jar is based on Paper, making it a Paper fork. Pufferfish aims to include a ton of performance improvements while remaining fully compatible with Paper. While Pufferfish does change some default vanilla behavior, it tries to stay as close to Paper as possible, while gaining a maximum performance advantage.
Pufferfish also includes a number of "enterprise" features that power users may find useful. It includes a rich Sentry.io integration that enables server owners to upload any errors produced by their server into Sentry's servers, where they can be analyzed later. It also includes a built-in profiler, called Flare, which is the only profiler for Minecraft servers that is capable of advanced features like memory profiling, at the time of writing.
For performance, Pufferfish includes partial asynchronous entity processing, faster map rendering using SIMD techniques, far faster entity brain ticking using a feature called DAB, optimized hoppers, memory efficiency improvements to reduce total garbage collection time, optimized raytracing algorithms, and many more features. Although the majority of these features do not create any noticeable impact to gameplay, any feature that does modify gameplay is fully configurable using the
pufferfish.yml configuration file.
Pufferfish is, first and foremost, a performance fork of Paper, and does not include any features that intentionally change gameplay.
What is Paper?
Paper is a fork of Spigot/Bukkit, meaning that it supports all Spigot and Bukkit plugins. Additionally, it provides many more API functions that plugins can use to implement additional features. Like Pufferfish, Paper also heavily focuses on optimization. Nearly all other server software supporting plugins is based on Paper, and as such, plugins that work on Paper will work on these alternate forks as well.
While Pufferfish tries to maintain vanilla compatibility as best as possible, it does unavoidably change some behaviors. Most players will not notice these changes, but especially technical players will be able to notice the difference. If maintaining minimal changes to gameplay is of utmost importance, then Paper is the fork for you.
What about Pufferfish+?
Pufferfish+ is an even faster version of the Pufferfish software. This software adds additional performance patches, including a fully asynchronous entity tracker and asynchronous pathfinding. It also includes other proprietary patches, and in total, improves the performance of most servers using it by approximately 30-35%, over a standard configuration of Pufferfish.
In conclusion, if you are looking for the best server jar for your server, choose Pufferfish if you want a regular, high performance server, and Pufferfish+ if you really want that extra boost, allowing you to handle even more players. If you want to maintain compatibility that is closest to vanilla while still supporting plugins, then Paper will be your best bet.