Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.

v1.6.1 - Two new command context for better compatability

Changelog

This update brings two new command context options, SERVER_AS_PLAYER and DANGEROUSLY_OP, improving compatability with mods that don't use Brigadier or use altered permission checking such as WorldEdit.

Changelog

  • Two new command context
    • SERVER_AS_PLAYER
      • This is the same as running a command as the server with execute as @p, but in a way cleaner and faster way.
    • DANGEROUSLY_OP
      • This context is highly discouraged, it works by briefly giving OP to the player to execute the command; this is done sequentially in a code block synchronized to the server op list, so it should generally be ok to use, but try to avoid this one if possible.
  • Updated documentation

For the curious

If you are wondering how DANGEROUSLY_OP works, here's the (Yarn) code snippet:

case DANGEROUSLY_OP -> {
    synchronized (server.getPlayerManager().getOpList()) {
        server.getPlayerManager().addToOperators(player.getGameProfile());
        server.getCommandManager().executeWithPrefix(player.getCommandSource(), parsedCommand);
        server.getPlayerManager().removeFromOperators(player.getGameProfile());
    }
}

GitHub: https://github.com/CamperSamu/ItemCommander/releases/tag/1.6.1

Full Changelog: https://github.com/CamperSamu/ItemCommander/compare/1.6.0...1.6.1

Files

itemcommander-1.6.1+1.20.4.jar(68.33 KiB) Primary Download
itemcommander-1.6.1+1.20.4-sources.jar(41.47 KiB) Download

Project members

Camper_Samu

Owner


Technical information

License
CC0-1.0
Client side
unsupported
Server side
required
Project ID