Diagnose Minecraft pausing when no players are online
A Minecraft server can remain running while its game simulation pauses after the last player leaves. That is different from the panel marking a stopped process as offline. Before changing restart schedules or buying more memory, establish which condition actually occurred and whether pausing is intentional on your installed version.
Separate process state from game ticking
Record the last player's departure time, panel state, console output and the next player's join time. If the process exited, collect the final log lines and exit information. If the process stayed running and resumed when someone joined, an empty-server pause is a more plausible explanation. Do not repeatedly force-stop a process to test a pause.
Check pause-when-empty-seconds in server.properties against the reference for your exact release. This option is version-sensitive. Current Paper documentation describes it as disabled by default because plugins may expect continued activity with no players. That is not evidence that every vanilla build, Paper fork or older 1.21.11 installation has the same effective setting.
Decide whether continuous ticking is required
List jobs you expect to happen while the server is empty: scheduled plugin work, economy updates or other background tasks. Confirm their documented behaviour. Some jobs use game ticks while others use separate timing, and a configured timer is not proof that a world will remain simulated under every condition.
Also distinguish pausing from chunk loading. Keeping the server unpaused does not mean every distant farm runs while no players are present. Spawn rules, loaded chunks, dimensions and plugin behaviour still matter. Avoid creating permanent chunk loads just to mask an unexplained pause.
Make one controlled change
Download the properties file and arrange a restart. Stop the server cleanly. If your build supports the documented property and you require pausing to be disabled, use:
pause-when-empty-seconds=-1
If you deliberately want empty-server pausing, use the supported non-negative interval for your release only after checking plugin compatibility. Do not copy a vanilla value into a plugin-heavy server without testing. Save, start and confirm there are no configuration errors.
Observe a complete empty-and-rejoin cycle
Have the test players leave during a quiet period and record what the console reports. Wait longer than any configured pause interval. Rejoin using an ordinary client and confirm that normal activity resumes. Test one specific background task you rely on, using its own documented status or output, rather than inferring success from the panel's uptime display.
A frozen console timestamp alone is weak evidence because a quiet server may simply have nothing to log. Conversely, a watchdog dump or out-of-memory exit is not normal empty-server pausing. Keep the distinction in your support notes.
Recover
Restore the original property and restart if plugins misbehave or the test does not meet your needs. If the server actually stopped, investigate the exit separately using the log and resource history. Do not disable watchdog protection, change authentication or reinstall the server as a response to an unverified pause.
Related help
- Find Minecraft logs and send useful troubleshooting details
- Tell a Java memory error from a killed Minecraft process
- Diagnose Minecraft lag with TPS, MSPT and spark
Reference
Paper empty-server pause property. Paper vanilla-like configuration considerations.
No comments to display
No comments to display