Compatibility
Minecraft: Java Edition
1.21–1.21.9
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
1.14.x
1.13.x
Platforms
Creators
Details
Licensed MIT
Created 3 years ago
Updated 3 weeks ago
Changelog
Minecraft Version Changes
- Adds support for Minecraft 1.21.9 and 1.21.10
- Drops support for Minecraft 1.20.5 and below on Paper
Bug Fixes
- #631 Fixes unregistered commands reappearing after a minecraft:reload. This comes with some other notable changes around command registrations and unregistrations. You can read about these on the command unregistration page in the documentation.
- #608 The RecipeArgument no longer throws any exceptions on Spigot
- #494, #503 Fixes the ConcurrentModificationException from happening when registering/unregistering commands at runtime
Module Changes
- #414, #517 Splits up the CommandAPI into modules specific for Paper and Spigot:
- Removes the
commandapi-bukkit-shademodule and thecommandapi-bukkit-shade-mojang-mappedmodule - Adds the
commandapi-paper-coreand thecommandapi-paper-shademodules which are made to work on Paper - Adds the
commandapi-spigot-coreand thecommandapi-spigot-shademodules which are made to work on Spigot - Adds the
commandapi-paper-test-toolkitand thecommandapi-spigot-test-toolkitwhich are replacingcommandapi-bukkit-test-toolkitfor Paper and Spigot respectively - Moves and adds a few Kotlin DSL modules:
commandapi-core-kotlin -> commandapi-kotlin-corecommandapi-bukkit-kotlin -> commandapi-kotlin-bukkitcommandapi-velocity-kotlin -> commandapi-kotlin-velocity- Newly added:
commandapi-kotlin-paper - Newly added:
commandapi-kotlin-spigot
New features
- On Paper it is now possible to register commands at bootstrap
API Changes
- Changes the
CommandAPIBukkitConfigclass into an abstract one in favour of the newly addedCommandAPIPaperConfigorCommandAPISpigotConfigclasses, depending on the modules you use - The
FloatRangeArgumenthas been renamed toDoubleRangeArgumentand now returns aDoubleRange - The
PlayerArgumentandOfflinePlayerArgumenthave been replaced by thePlayerProfileArgumentwhich returns aList<PlayerProfile>. ThePlayerProfileclass changes depending on if you are on Paper or on Spigot. Use theEntitySelectorArgument.OnePlayerif you want aPlayerobject. - The
AsyncOfflinePlayerArgumenthas been replaced by theAsyncPlayerProfileArgument - The
ChatArgument,ChatComponentArgumentandChatColorArgumentdo no longer have any Adventure prefixes and return different types depending on the platform. - The
ChatArgumentreturns aSignedMessageobject on Paper. Also resolves #381 - The
BlockStateArgumentnow returns aBlockStateobject instead of aBlockDataobject
Config Changes
- Replaces the
use-latest-nms-versionandbe-lenient-for-minor-versionsconfig options with afallback-to-latest-nmsconfig option:- When loading the CommandAPI and this config option is set to true it will first check if the current version is supported and chooses that
- In case the current version isn't a supported version, the CommandAPI will choose the latest nms version available which might or might not work correctly
- This config option is set to true by default on Paper and false on Spigot
Files
Metadata
Release channel
ReleaseVersion number
11.0.0Loaders
Game versions
1.20–1.21.9Downloads
223Publication date
October 4, 2025 at 3:16 PMPublisher
JorelAli
Owner


