
A simple and easy-to-use Minecraft server restart announcement plugin for Paper servers.
A simple and easy-to-use Minecraft server restart announcement plugin for Paper servers.
Version: 1.0.1
messages.yml/announcer start <time> [interval] [display] - Start a restart countdown
10m, 30m, 1h)60s, 2m) - optional, defaults to 60 secondschat, bossbar, title) - optional, defaults to chat/announcer stop - Cancel the current restart countdown
/announcer status - Check if a restart is currently running and see time remaining
/announcer reload - Reload the plugin configuration and messages
/announcer toggle - Toggle the execute-shutdown setting. When disabled, the plugin will only send announcements without stopping the server
/announcer set message <message> - Set the restart announcement message
/announcer help - Show help information
Examples:
/announcer start 10m - Restart in 10 minutes, announce every 60 seconds in chat/announcer start 30m 2m bossbar - Restart in 30 minutes, announce every 2 minutes on the boss bar/announcer start 30s 2s title - Restart in 30 seconds, announce every 2 seconds as titleannouncer.start - Permission to start restartsannouncer.stop - Permission to stop restarts announcer.status - Permission to check statusannouncer.reload - Permission to reload plugin# Default settings
defaults:
# Default restart time if not specified (in minutes)
restart-time: 10
# Default announcement interval if not specified (in seconds)
announcement-interval: 60
# Shutdown method
# Options: "shutdown" (uses Bukkit.shutdown()), "stop" (uses /stop command), "restart" (uses /restart command)
shutdown-method: "shutdown"
# Execute shutdown
# Set to false to only send announcements without stopping the server
# If set to false, your batch/bash start script or a separate watchdog script must handle the server reboot
execute-shutdown: true
# Permissions
permissions:
start: "announcer.start"
stop: "announcer.stop"
status: "announcer.status"
reload: "announcer.reload"
# Main restart message - use %time% for time remaining
restart-message: "<red><bold>Server will restart in <yellow>%time%<red>!"
# Command messages
commands:
no-permission: "<red>You don't have permission to use this command."
player-only: "This command can only be used by players."
# Start command
start:
usage: "<red>Usage: /announcer start <time> <interval>"
example: "<gray>Example: /announcer start 10m 60s"
already-running: "<red>A restart is already in progress!"
success: "<green>Restart scheduled in %time% with announcements every %interval%"
invalid-time: "<red>Invalid time format. Use: 5m, 10m, 30m, 1h, etc."
invalid-interval: "<red>Invalid interval format. Use: 30s, 60s, 2m, etc."
# Stop command
stop:
no-permission: "<red>You don't have permission to stop restarts."
not-running: "<blue>No restart is currently running."
success: "<green>Restart cancelled."
# Status command
status:
running: "<blue>Restart in progress: %time% remaining"
not-running: "<blue>No restart is currently running."
# Help command
help:
header: "<blue>RestartAnnouncer Commands:"
start: " /announcer start <time> <interval> - Start a restart countdown"
stop: " /announcer stop - Cancel the current restart"
status: " /announcer status - Check restart status"
help: " /announcer help - Show this help"
# Reload command
reload:
no-permission: "<red>You don't have permission to reload the plugin."
success: "<green>Plugin reloaded successfully."
plugins folderconfig.yml and messages.yml files/announcer help to see available commandsWhen updating the plugin to a new version, it's recommended to:
RestartAnnouncer folder from your plugins directoryplugins folder with the new oneconfig.yml and messages.yml filesThis ensures that any new configuration options are properly added and prevents issues with config migration. Save a backup of your messages.yml to avoid having to retype any changes made previously.
The plugin supports various time formats, for example but not limited to:
30s, 60s5m, 10m, 30m1h, 2h, 6hThe plugin supports different ways to stop the server when the countdown reaches zero:
shutdown (default): Uses Bukkit.shutdown() - the most reliable methodstop: Uses the /stop command - standard Minecraft command (also uses Bukkit.shutdown(), recommended to use default 'shutdown') restart: Uses the /restart command - may not work on all servers, use with cautionYou can configure this in config.yml:
shutdown-method: "shutdown" # Options: shutdown, stop, restart
You can configure the plugin to only send announcements without actually stopping the server if you want to execute the restart manually:
execute-shutdown: false # Set to false for announcements only
When execute-shutdown is set to false:
The plugin supports MiniMessage color codes in messages:
<red>, <blue>, <green>, <yellow>, etc.<bold>, <italic>, <underline><reset> to reset formattingIf you need help or have suggestions, please open an issue on the GitHub repository or join the linked Discord and navigate to # plugin-help