⚠️ Breaking changes ⚠️
Due to Mojang's changes to the gamemode switcher in recent Minecraft versions, OperatorLevel now handles the gamemode switch.
There are 4 new permissions:
operatorlevel.gamemode.adventure
operatorlevel.gamemode.survival
operatorlevel.gamemode.creative
operatorlevel.gamemode.spectator
If you want to keep old behavior you'll need to give operatorlevel.gamemode.*
permission to those that have operator level 2 or above. Or you can restrict the gamemode switcher to only some of the gamemodes if desired.
General
- Fixed compatibility with newer versions of Minecraft
- Added per-gamemode permissions
- Messages can now be customized by modifying the language files in
locale
directory
Paper
- Minimum supported Paper version is now
1.21.4
Sponge
- Now requires Sponge 15
⚠️ Please note that Sponge is currently untested, since PacketEvents doesn't work properly on that version yet!
- Fixed permission level resetting on respawn
Fixed permission level being reset when travelling between worlds.
This major update fixes a handful of bugs and introduces Sponge support.
OperatorLevel now depends on PacketEvents which allows for much greater control of the packets than before. While I generally try to avoid having to interact with packets directly, for a project that is entirely based on sending a singular packet to the client I think it's not too bad. And with this, we're able to implement the plugin on platforms that don't have any native API for sending the permission level to the player (Such as Sponge).
With PacketEvents, were now also able to block any packets sent by the server which would otherwise interfered with OperatorLevel's functionality. So no more loosing the permission level given by OperatorLevel when de-opping a player.
Changelog
- ⚠️ The plugin now requires PacketEvents
- Added Sponge support
- Fixed server overriding the plugin set permission level
This major update fixes a handful of bugs and introduces Sponge support.
OperatorLevel now depends on PacketEvents which allows for much greater control of the packets than before. While I generally try to avoid having to interact with packets directly, for a project that is entirely based on sending a singular packet to the client I think it's not too bad. And with this, we're able to implement the plugin on platforms that don't have any native API for sending the permission level to the player (Such as Sponge).
With PacketEvents, were now also able to block any packets sent by the server which would otherwise interfered with OperatorLevel's functionality. So no more loosing the permission level given by OperatorLevel when de-opping a player.
Changelog
- ⚠️ The plugin now requires PacketEvents
- Added Sponge support
- Fixed server overriding the plugin set permission level
⚠️ Breaking changes ⚠️
- Bumped required Java version to 21
- Bumped required Paper version to 1.20.6
- Changed
operatorlevel.x
permissions tooperatorlevel.level.x
New features
- Optional LuckPerms meta support for defining levels
- When using LuckPerms operator level will now update on the fly (No need to relog anymore)
- Added configuration
- Added
/operatorlevel reload
command
Initial version