[Feature]: Grace period for stoponlyifnoplayers before forcing stop, restart or update

Aperta
#5,138 0 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@dgibbs64 ci sta già lavorando.

Dal 1/11/2026.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

command: monitor command: restart command: stop command: update priority: medium scope: all servers type: feature
Priority

priority: medium

User story

As a server admin using stoponlyifnoplayers, I want a blocked stop, restart or update to be forced after a set time so that busy servers still get their scheduled restarts and updates.

Game

No response

Linux distro

No response

Command

command: stop, command: restart, command: update, command: monitor

Problem statement

stoponlyifnoplayers="on" (added in v26.2.0, #4595) protects players by refusing to stop the server while anyone is online:

  • stop is refused.
  • restart is postponed, and monitor restarts the server once it is empty.
  • update will not stop the server when stoponlyifnoplayersallcommands="on", so it waits for the next run.

Nothing ever forces it. Many servers are never completely empty, because of AFK players or idlers, so on those servers a scheduled restart or update can be postponed forever. This was raised in #786 and agreed as a follow-up.

Scope and impact

scope: all servers

Further information

Add a grace period setting, for example stoponlyifnoplayersmaxdelay in minutes (default 0 = wait indefinitely, the current behaviour):

  1. When a stop, restart or update is blocked because players are online, record when it was first blocked.
  2. monitor and later runs keep checking. If the server empties, the command runs as it does today.
  3. Once the grace period has passed and players are still online, the command runs anyway and the forced stop is logged.
  4. The record is cleared once the command completes.

This pairs well with in-game warnings (#674): warn players during the grace period, then force the stop when it ends.

Alternatives considered

Turning stoponlyifnoplayers off for scheduled jobs. That loses the protection completely rather than limiting how long it can delay a restart.

Lingua principale
Shell
Stelle
4.9k
Fork
870
Merge medio
22h 45m
PR unite (30g)
128

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di GameServerManagers/LinuxGSM

Tutte le issue di GameServerManagers/LinuxGSM

Issue simili

Altre issue su Shell/Bash

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.