đ Commands
Most CraftEngine commands start with /craftengine (alias /ce); a few are standalone player commands (e.g., /search-recipe, /search-usage). The enabled state, permission node, and command path of every command are recorded in plugins/CraftEngine/commands.yml and can be freely customized there (changes require a restart). Most commands support a --silent (shorthand -s) flag to execute silently without feedback messages.
Below, [ ] denotes a required argument and ( ) an optional one.
Basic Commandsâ
reloadâ
/ce reload [all/recipe/config/pack]
Reloads plugin resources. Defaults to config when no argument is given. config/recipe reload configuration and recipes, pack regenerates the resource pack, and all does both.
uploadâ
/ce upload
Manually uploads the resource pack to the configured host.
clean-cacheâ
/ce clean-cache [type]
Clears automatically allocated cache data. Available types: custom_model_data, custom_block_states, visual_block_states, font, all (default). Cannot be used while the plugin is reloading.
Item Commandsâ
item browserâ
/ce item browser [player]
Opens the item browser for the specified player(s) (admin).
/ce
A player can simply type /ce to open the item browser for themselves (shortcut).

item getâ
/ce item get [item-id] (amount)
Get a specific quantity of an item (1â9999, default 1).
item giveâ
/ce item give [player] [item-id] (amount)
Give a specific quantity of an item to player(s).
item clearâ
/ce item clear [player] [item-id] (max-count)
Clear matching CraftEngine items from a player's inventory. A max-count of 0 only counts without removing. Use the --match-tag flag to match by item tag.
item search-recipe / search-usageâ
/ce item search-recipe [player] [item-id]
/ce item search-usage [player] [item-id]
Open the recipe/usage lookup interface for the specified player.
/search-recipe [item-id]
/search-usage [item-id]
A player queries the recipe/usage of their own item.

item custom-model-dataâ
/ce item custom-model-data [value]
Set the custom model data value of the held item (player only).
item item-modelâ
/ce item item-model [value]
Set the item model of the held item (namespaced key, player only, 1.21.2+).
item remove-componentâ
/ce item remove-component [component]
Remove the specified data component from the held item (player only, 1.20.5+ component release).
Feature Commandsâ
feature send-packâ
/ce feature send-pack [player]
Send the resource pack to the specified player(s).
feature totem-animationâ
/ce feature totem-animation [player] [item-id] (sound) (volume) (pitch) (min-volume) (min-pitch)
Play the Totem of Undying animation for player(s). Use the --no-sound flag to mute.

feature localeâ
/ce feature locale set [player] [locale]
Set the player's locale.
/ce feature locale unset [player]
Unset the player's locale.
feature toggle-entity-cullingâ
/ce feature toggle-entity-culling [player] (state)
Toggle entity culling for a player. state is true/false; omit to toggle.
feature entity-culling-distance-scaleâ
/ce feature entity-culling-distance-scale set [player] [scale]
Set the entity culling distance scale for a player (0.125â8).
feature display-entity-view-distance-scaleâ
/ce feature display-entity-view-distance-scale set [player] [scale]
Set the display entity view distance scale for a player (0.125â8).
feature place-featureâ
/ce feature place-feature [feature] (location)
Place a vanilla configured feature at the given location (player only). Defaults to the player's position when omitted.
feature migrate-world-storageâ
/ce feature migrate-world-storage [world] [type]
Migrate a world's chunk storage format. type is mca or pdc, migrating from that type to the storage type currently enabled in the config; switch the target storage type in the config first, then migrate from the old type.
feature world-settingsâ
/ce feature world-settings [world] [setting] (value)
Get or set a world option. value is true/false/default; omit to query the current value.
Resource Commandsâ
resource listâ
/ce resource list
List all packs under the resources folder (with enabled/disabled state).
resource enableâ
/ce resource enable [pack]
Enable the specified resource pack (writes to its pack.yml).
resource disableâ
/ce resource disable [pack]
Disable the specified resource pack.
resource createâ
/ce resource create [pack] (namespace) (author) (description)
Create a new resource pack skeleton. Uses the pack name as the namespace if none is specified.
resource save-defaultâ
/ce resource save-default [path]
Regenerate built-in default resources. Available paths: /default_assets, /default_feature_populator, /default_templates, /internal, /legacy_armor, /remove_shulker_head.
Debug Commandsâ
debug visual-state-usageâ
/ce debug visual-state-usage [block-type]
Aliases: /ce debug appearance-state-usage, /ce debug clientside-state-usage
Retrieves the client-side (visual) block state usage for a given block type. Red sections indicate manually assigned states, yellow sections represent automatically assigned states, and green sections denote available states. Hover over a section to inspect the specific state.

manual assigned states
automatically assigned states

free state
debug auto-state-usageâ
/ce debug auto-state-usage [state-group]
Retrieves the allocation usage of a given auto state group. Colors mean the same as in visual-state-usage.
debug real-state-usageâ
/ce debug real-state-usage
Alias: /ce debug serverside-state-usage
Inspects the usage of server-side real block states. Takes no arguments.

manual assigned states
automatically assigned states
free state
debug item-dataâ
/ce debug item-data
Alias: /ce item debug
Inspect the item data (such as NBT or components) of the held item. Use the --client-side flag to view the data after client-side conversion (including decryption).

debug get-block-internal-id
/ce debug get-block-internal-id [block-state]
Retrieves the server-side real block namespace ID corresponding to a custom block state, commonly used in tools like WorldEdit and data packs.
Q: Why must we use the real block namespace ID (e.g., craftengine:custom_666) in native Minecraft data packs, instead of a name like default:palm_log?
A: Because the configuration file is only loaded after the server starts, while datapacks are loaded much earlier during server initialization. The server cannot recognize a non-existent block ID at this stage. To ensure that pre-registered custom blocks can adapt to the latest user configurations, CraftEngine employs a container-style dynamic binding solution.
debug get-block-state-registry-idâ
/ce debug get-block-state-registry-id [block-state]
Obtains the registry ID of the corresponding block state (not commonly used).

debug target-blockâ
/ce debug target-block [--this]
Inspect the data of the block the cursor points at (or use the --this flag to use the player's current position). Includes the real block state, visual state, name, behaviors, block entity info, and any custom tags.
debug is-section-injectedâ
/ce debug is-section-injected
Checks whether each section of the player's current chunk has been injected. A return value of false indicates an abnormal condition that requires investigation.

debug setblockâ
/ce debug setblock [location] [block-state]
Place a CraftEngine block state at the specified location.
debug spawn-furnitureâ
/ce debug spawn-furniture [location] [furniture-id] (variant)
Place furniture at the specified location, optionally with a variant.
debug clear-cooldownâ
/ce debug clear-cooldown [player]
Clear the player's item cooldowns.
debug is-chunk-persistent-loadedâ
/ce debug is-chunk-persistent-loaded
Check whether the player's current chunk is force-loaded (not available on Folia).
debug entity-idâ
/ce debug entity-id [world] [entityId]
Retrieve entity data by entity ID.
debug custom-model-dataâ
/ce debug custom-model-data (item-id)
Retrieve the custom model data value of an item. Uses the held item when the id is omitted.
debug item-modelâ
/ce debug item-model (item-id)
Retrieve the item model value of an item (1.21.2+). Uses the held item when the id is omitted.
debug imageâ
/ce debug image [image-id] (row) (column)
Retrieve how the specified image is referenced in a font (MiniMessage, MineDown, and RAW formats).
debug furnitureâ
/ce debug furniture
Toggle the player's furniture debug mode, used to visualize furniture bounds and composition (player only).
debug migrate-templatesâ
/ce debug migrate-templates
Migrate {xxx} placeholders to ${xxx} syntax across each pack's configuration files.
debug optimize-furniture-structureâ
/ce debug optimize-furniture-structure [world] [file] (y-offset)
Optimize furniture within a structure file: removes collision entities and adjusts furniture Y coordinates by the given offset.