Skip to content

Compatibility

Pratham Anand Basavanal edited this page Nov 10, 2026 · 1 revision

Compatibility

Server Platforms

Platform Status Execution Model Notes
Paper ✅ Supported Main thread + async workers Uses the native TPS/MSPT APIs
Purpur ✅ Supported Main thread + async workers Full Paper API
Pufferfish / Airplane ✅ Supported Main thread + async workers Paper-derivative support
Gale / Leaves ✅ Supported Main thread + async workers Paper-derivative support
Folia ✅ Supported Regionalised multithreading Dedicated region-aware scheduler (see below)
Spigot / CraftBukkit ✅ Supported Main thread + async workers Measures TPS/MSPT with a monotonic System.nanoTime() fallback
Unknown Bukkit forks ⚠️ Safe mode Conservative Runs with conditional optimizations turned off

Run /os version to see what OptimizeServer detected on your server.

Minecraft & Java

  • One universal JAR covers Minecraft 1.8.8 → 1.21.x+.
  • It is compiled to Java 8 bytecode (class version 52), so it runs on Java 8, 11, 16, 17, 21, and 25+.
  • It never requires a newer Java than your Minecraft version needs.

Optional Maven build profiles are available for modern-only builds:

Profile Java Minecraft
universal-java8 (default) 8 1.8.8 – 1.21.x+
modern-java17 17 1.18 – 1.20.4
modern-java21 21 1.20.5 – 1.21.x+

Folia

Folia runs each region of the world on its own thread, so the usual Bukkit scheduler is not safe there. OptimizeServer sends each task to the correct scheduler:

Work Scheduler
Server-wide tasks GlobalRegionScheduler
Chunk/location work RegionScheduler
Entity work EntityScheduler
Non-world work (I/O, analysis) AsyncScheduler / bounded worker pool

On Folia, chunk and entity counts come from event-driven counters, not from looping over World#getLoadedChunks() from an unrelated thread. Region-owned objects are never touched from the wrong thread.

If a module can't run safely on a platform, only that module is turned off, and the reason is logged.

Optional Integrations

Plugin Required? Notes
Spark No Installed automatically if missing. Paper's bundled Spark is detected.
Chunky No Installed automatically if missing. Never starts on its own.

Clone this wiki locally