Platforms

Supported platforms

Imperat supports various platforms as shown in the table below:

Platform Name Compatible Platforms Supported Versions
imperat-bukkit Bukkit / Spigot / Paper 1.8.8 - 1.21.11
imperat-bungee BungeeCord / Waterfall 1.21-R0.2
imperat-velocity Velocity 3.5.0
imperat-minestom Minestom 1.21.11
imperat-jda JDA (Java Discord API) 6.1.1
imperat-hytale Hytale Game 2026.02.18-f3b8fff95
imperat-cli Any OS / Console Any version

Platform Differences

The main differences between all platforms are the implementation of Imperat that represents the framework on this platform along with the Implementation of CommandSource that represents the command-sender on this platform. They are following the naming format: <platform>Imperat, Same with the senders/sources : <platform>CommandSource (except for CLI) as shown in the table below:

Platform Name Implementation to Use CommandSource (Command Sender)
imperat-bukkit BukkitImperat BukkitCommandSource
imperat-bungee BungeeImperat BungeeCommandSource
imperat-velocity VelocityImperat VelocityCommandSource
imperat-minestom MinestomImperat MinestomCommandSource
imperat-jda JDAImperat JDACommandSource
imperat-hytale HytaleImperat HytaleCommandSource
imperat-cli CommandLineImperat ConsoleCommandSource

BUKKIT Brigadier Integration

You can integrate Imperat with Mojang's Brigadier for enhanced command features (like suggestions and argument types) on compatible servers (Minecraft 1.13+). Just add a boolean parameter (which represents whether imperat will integrate with brigadier or not) in your builder method:

BukkitImperat imperat = BukkitImperat.builder(this, true)
    .build();

Do NOT register your commands within your plugin's plugin.yml file. Imperat handles registration dynamically and internal conflicts may occur if defined in both places.