
Maintenance
Simple maintenance mode plugin for Paper/Spigot
Список изменений
Maintenance v2.0.0 Release Notes
This is a major update featuring numerous new features, including scheduled maintenance periods and full multilingual support, along with extensive bug fixes and security improvements.
Important Notes When Updating
-
Permission nodes have been changed. In addition to
maintenance.admin, a newmaintenance.bypasspermission has been added. Administrators withmaintenance.adminautomatically receivemaintenance.bypass. If you manage permissions individually through a permissions plugin, please review your existing permission assignments. -
The structure of
config.ymlhas been changed. Existing configuration files will automatically have the new settings added when the plugin starts, so no manual migration is required.
New Features
-
Scheduled Maintenance: Use
/maintenance on <duration> [reason]to specify when maintenance should end. Example:/maintenance on 30m Server update -
Automatic Maintenance End: Maintenance mode automatically ends when the specified duration has elapsed.
-
Automatic Countdown Announcements: Countdown messages are automatically broadcast before maintenance ends, including 1 hour, 30 minutes, 10 minutes, 5 minutes, 1 minute, 30 seconds, and more.
-
Schedule Persistence: Scheduled maintenance retains its remaining time across server restarts and resumes automatically.
-
Maintenance Reason: A reason can be specified when starting maintenance and is displayed on the kick screen and server status.
-
/maintenance reload: Reloadconfig.ymland language files without restarting the server. -
/maintenance status: Display the current maintenance status, reason, and remaining time. -
/maintenance help: Display the available commands. -
Tab Completion: Automatically suggest subcommands and duration formats using the Tab key.
-
maintenance.bypassPermission: Staff members who do not have permission to manage maintenance can be individually granted access to join the server during maintenance. -
Hex Color Support: All messages now support
&#RRGGBBhex color codes. -
Enhanced Server List Display: While maintenance mode is active, the player count is hidden and a warning banner is displayed in the version section.
-
Full Multilingual Support: All kick, command, and broadcast messages are available in English and Japanese and automatically follow the player's client language.
-
Modrinth Update Notifications: OPs are notified when a new version is released. Notifications can be disabled in
config.yml, and the Modrinth project ID can be customized.
Bug Fixes & Improvements
-
Fixed an issue where the maintenance kick reason could overwrite a login rejection already made by another plugin.
-
Fixed an issue where new settings were not added to
config.ymlafter updating the plugin. Configuration files now support automatic merging. -
Fixed an issue where command messages were hardcoded in English. All messages are now fully managed through language files.
-
Replaced deprecated APIs such as
kickPlayer(String)with the latest Adventure Component API. -
Fixed resource processing that could cause Japanese language files to become corrupted during the build process by explicitly enforcing UTF-8 encoding.
-
Eliminated the possibility of
NullPointerExceptioncaused by null configuration values by providing default values for all settings.
Technical Changes
-
Updated the Paper API to
1.21.11-R0.1-SNAPSHOTwith Java 21 builds. -
Centralized plugin version management in Maven, eliminating duplicate version definitions between
pom.xmlandplugin.yml. -
Refactored the codebase by separating responsibilities into dedicated components:
MaintenanceManagerMaintenanceTabCompleterUpdateCheckerDurationUtil
Commands
| Command | Description |
|---|---|
/maintenance on [duration] [reason] | Enable maintenance mode |
/maintenance off | Disable maintenance mode |
/maintenance status | Display the current status |
/maintenance reload | Reload configuration and language files |
/maintenance help | Display the list of commands |
Permissions
| Permission | Description | Default |
|---|---|---|
maintenance.admin | Manage maintenance mode (includes bypass access) | OP |
maintenance.bypass | Allows joining the server during maintenance | OP |
