Selecting the correct server JAR (Java Archive) is a critical decision for any Minecraft server administrator. The choice directly impacts performance, scalability, plugin compatibility, and stability. The following is a comparative analysis of the most prominent server forks available.
Folia represents a paradigm shift in Minecraft server architecture, developed by the PaperMC team. Its primary innovation is not simple optimization but a fundamental rewrite of the server's task scheduler.
- Core Concept: Folia introduces region-based multithreading. Unlike traditional servers where the main game loop (entity processing, block ticks) is confined to a single CPU thread, Folia divides the world into regions and assigns each region to its own independent thread. This allows the server to utilize multiple CPU cores for game logic, breaking the single-core bottleneck that has historically limited server performance.
Pros:
- Unprecedented Scalability: By distributing the game's tick loop across multiple cores, Folia can support extremely high player counts (hundreds of players) while maintaining a stable 20 TPS (Ticks Per Second), a feat unattainable on single-threaded forks.
- Next-Generation Performance: It is designed specifically to solve the core performance limitations of the vanilla server, making it the most "optimized" solution for large-scale servers.
Cons:
- Massive Plugin Incompatibility: This is the most significant drawback. Folia breaks the traditional Bukkit/Spigot/Paper API, which assumes a single-threaded environment. Consequently, almost all existing plugins are incompatible and must be entirely rewritten to support Folia's asynchronous, multi-threaded API.
- Incompatible Tooling: Critical diagnostic tools, such as Spark, are not compatible with Folia due to its new architecture.
- Experimental and Complex: As a newer technology, it is more complex to manage and may not be suitable for server owners who are not prepared to deal with a highly limited plugin ecosystem.
Paper (formerly PaperSpigot) is a high-performance fork of Spigot and is widely considered the de facto standard for modern Minecraft servers.
- Core Concept: Paper focuses on optimizing the existing single-threaded server model. It includes thousands of patches, bug fixes, and performance enhancements not found in Spigot, such as an advanced light engine (Starlight), asynchronous chunk loading, and optimized entity/block ticking.
Pros:
- Excellent Performance: Offers a dramatic performance increase over Spigot, providing a stable and responsive experience for the vast majority of servers.
- Vast Plugin Compatibility: Maintains full compatibility with all plugins developed for Spigot and Bukkit, while also offering its own expanded Paper API for plugin developers.
- Stability and Ease of Use: It is exceptionally stable, well-documented, and simple to set up, making it the default choice for new and experienced administrators alike.
Cons:
- Single-Threaded Limitation: Like its predecessors, Paper's main game loop is still bound to a single CPU thread. Its performance is heavily dependent on high single-core processor speeds and will eventually bottleneck at very high player counts or with heavy plugin usage.
Purpur is a "downstream fork" of Paper. This means it includes all of Paper's code and optimizations and then adds more on top.
- Core Concept: Purpur's primary goal is not raw performance (as it's already based on Paper) but extreme customization. It provides an extensive configuration file that allows administrators to tweak hundreds of obscure gameplay mechanics, from mob AI and drop rates to block physics.
Pros:
- All of Paper's Benefits: Inherits 100% of Paper's performance optimizations and excellent plugin compatibility.
- Extensive Customization: Allows for deep modification of vanilla gameplay mechanics directly via configuration files, often eliminating the need for multiple small "tweak" plugins.
- Additional Fixes: Often includes further experimental optimizations and bug fixes that have not yet been merged into Paper.
Cons:
- Overwhelming Configuration: The sheer number of options can be daunting for beginners.
- Minor Update Lag: As it depends on Paper, new Minecraft version updates for Purpur may be released slightly after Paper's.
Spigot is the direct successor to Bukkit and forms the foundation upon which Paper and Purpur are built.
- Core Concept: Spigot was created to provide the Bukkit API (which allows for plugins) while also adding its own performance improvements over the vanilla server.
Pros:
- Historical Importance: It established the server plugin API that the entire modern ecosystem relies on.
Cons:
- Obsolete Performance: Spigot lacks the thousands of critical performance patches and modern optimizations found in Paper. Running a server on Spigot in the modern era will result in significantly worse performance (lower TPS, more lag) compared to Paper.
- No Longer Recommended: There is no practical reason to use Spigot when Paper offers full plugin compatibility with vastly superior performance.