Links
Tags
Creators
Details
1.4.2
Compatibility
Changes
π BanMenu Update 1.4.2
Update from 1.4.1 to 1.4.2
Thank you for using BanMenu!
Version 1.4.2 introduces a fully configurable maintenance system with dynamic MOTD and server icon handling, including deep Minecraft and Discord integration.
This update focuses on server availability control, player flow during maintenance, and visual server state management.
β¨ New Features
π§± Server State Management (Maintenance, MOTD & Icons)
π§ Advanced Maintenance Mode
- New global maintenance system with full control over player access.
- Activate maintenance using:
/maintenance on/maintenance on <time>/maintenance off
- Supported time units:
s(seconds),m(minutes),h(hours),d(days)
Example:/maintenance on 10m,/maintenance on 2h,/maintenance on 1d
- If no timer is provided, maintenance is enabled immediately and a configurable kick countdown (defined in
maintenance.yml) starts. - If a timer is provided, it defines the duration of the maintenance mode, after which maintenance is automatically disabled.
- During an active countdown:
- Players without
banmenu.maintenance.joinare kicked once the countdown expires. - Players with
banmenu.maintenance.joinmay join even while the countdown is running.
- Players without
- Fully configurable kick, join, and maintenance messages.
β³ Dynamic Countdown System
- Countdown time formatting adapts automatically based on remaining duration:
> 48 hoursβ days only (e.g.5 days)> 24h & β€ 48hβ days + hours (e.g.1 day 14 hours)β₯ 2h & β€ 24hβ hours onlyβ₯ 60m & < 120mβ hours + minutesβ₯ 2m & < 60mβ minutes onlyβ₯ 60s & < 120sβ minutes + seconds< 60sβ seconds only
- All time unit names are configurable in
maintenance.yml.
π Maintenance Bossbar
- Optional bossbar displayed only during maintenance.
- Shows dynamic countdown information.
- Bossbar visibility is permission-based:
- Only players with
banmenu.maintenance.bossbar.showwill see it.
- Only players with
- Fully customizable text and appearance.
π Dynamic MOTD System
- New
motd.ymlwith support for:- Multiple MOTDs
- Random MOTD selection per server refresh
- Separate MOTD pools for:
- Normal operation
- Maintenance mode
- Maintenance MOTDs are only active if explicitly enabled.
- MOTDs automatically switch based on server state.
πΌοΈ Dynamic Server Icon System
- New
server-icons/directory structure. - Supports:
- Multiple server icons
- Random icon per server refresh
- Separate icon pools for:
- Normal operation
- Maintenance mode
- Maintenance icons are only used if enabled.
- Icons automatically switch together with maintenance state.
π€ Discord Integration
- All maintenance commands are available via Discord:
/maintenance on/maintenance on <time>/maintenance off
- Command availability via Discord depends on:
- Properly configured Discord integration
- Linked Minecraft permissions
- Current permission checks are based on Minecraft permissions.
- Planned feature: native Discord role-based permission checks.
π New Permissions
| Permission | Description |
|---|---|
banmenu.maintenance.use |
Allows enabling and disabling maintenance mode |
banmenu.maintenance.join |
Allows joining the server during maintenance |
banmenu.maintenance.countdown.info |
Allows viewing maintenance countdown information |
banmenu.maintenance.bossbar.show |
Allows seeing the maintenance bossbar |
banmenu.maintenance.cooldownbypass |
Bypasses command cooldowns for maintenance commands |
π§ Technical Changes
- New configuration files:
maintenance.ymlmotd.yml
- New directory structure:
server-icons/
- All existing configuration files have been extended.
- Internal refactoring for:
- Improved maintenance state handling
- Optimized server ping logic for MOTD & icon refresh
- Better synchronization between server state and visual output
β οΈ Important Notes
- Backup recommended before updating.
- This update introduces soft breaking changes.
- Recommended update process:
- Create backups of all configs.
- Stop the server.
- Delete the
BanMenuplugin folder.- SQLite users may keep the database file.
- MySQL users do not need any database changes.
- Start the server to regenerate fresh configs.
- Manually transfer configuration values section by section from backups.
- Server restart required after updating.
- Test maintenance permissions and Discord integration before production use.
Optional dependencies
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:4WpXRDGz:GhiPFDbZ"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:4WpXRDGz:GhiPFDbZ"
}

