The bug
When excluding the namespace of a resource name, the default namespace "minecraft" is supposed to be assumed. This does not work properly for some items. Table here:
Commands
Context | Works? | Examples |
---|
Entity ID | ✔ | /summon cow
/summon minecraft:cow
/kill @e[type=cow]
/kill @e[type=minecraft:cow]
|
Item ID | ✔ | /give @a apple
/give @a minecraft:apple
/clear @a apple
/clear @a minecraft:apple
/replaceitem entity @a slot.weapon.mainhand 0 apple
/replaceitem entity @a slot.weapon.mainhand 0 minecraft:apple
/kill @a[hasitem={item=apple}]
/kill @a[hasitem={item=minecraft:apple}]
See also MCPE-164366 |
Block ID | ✔ | /setblock ~ ~ ~ stone
/setblock ~ ~ ~ minecraft:stone
/fill ~ ~ ~ ~ ~ ~ stone
/fill ~ ~ ~ ~ ~ ~ minecraft:stone
/execute if block ~ ~ ~ stone run say found
/execute if block ~ ~ ~ minecraft:stone run say found
/clone ~ ~ ~ ~ ~ ~ ~ ~ ~ filtered normal stone
/clone ~ ~ ~ ~ ~ ~ ~ ~ ~ filtered normal minecraft:stone
See also MCPE-164366 |
Structure ID | ✔ | /locate structure village
/locate structure minecraft:village
|
Item components | ✔ | /give @p dirt 1 0 {"can_place_on":{"blocks":["dirt"]},"can_destroy":{"blocks":["dirt"]}}
/give @p dirt 1 0 {"minecraft:can_place_on":{"blocks":["minecraft:dirt"]},"minecraft:can_destroy":{"blocks":["minecraft:dirt"]}}
|
Structure ID | ❌ | /structure load test ~ ~ ~
/structure load minecraft:test ~ ~ ~
Uniquely, structure IDs default to the bizarre "mystructure " namespace |
Recipe ID | ❌ | /recipe give @a acacia_wood
/recipe give @a minecraft:acacia_wood
See MCPE-176610 |
Particle ID | ❌ | /particle mobflame_emitter ~ ~ ~
/particle minecraft:mobflame_emitter ~ ~ ~
|
Camera ID | ❌ | /camera @a set free
/camera @a set minecraft:free
|
Fog ID | ❌ | /fog @a push fog_plains test
/fog @a push minecraft:fog_plains test
|
Entity event | ❌ | /summon sheep ~ ~ ~ 0 0 entity_born
/summon sheep ~ ~ ~ 0 0 minecraft:entity_born
/event entity @e[type=sheep] entity_born
/event entity @e[type=sheep] minecraft:entity_born
|
Of related relevance is that damage types, effect IDs, enchantment IDs, dimension IDs, and biome IDs are hardcoded resources without namespaces in Bedrock, so their relevant commands (/damage
, /effect
, /enchant
, /execute in
, and /locate
) will actually produce a syntax error if the minecraft
namespace is provided.
Pack files
Context | Works? | Example |
---|
Behavior file identifier | ❌ | {
"format_version": "1.21.0",
"minecraft:entity": {
"description": {
"identifier": "zombie",
"is_spawnable": true,
"is_summonable": true
},
"components": {}
}
}
|
Behavior file components | ❌ | {
"format_version": "1.21.0",
"minecraft:entity": {
"description": {
"identifier": "minecraft:skeleton",
"is_spawnable": true,
"is_summonable": true
},
"components": {
"scale": {
"value": 2
}
}
}
}
|
Loot table items and functions | ✔ | {
"pools": [{
"rolls": 1,
"entries": [{
"type": "item",
"name": "apple",
"functions": [{
"function": "set_count",
"count": 10
}]
},
{
"type": "item",
"name": "minecraft:diamond",
"functions": [{
"function": "minecraft:set_count",
"count": 10
}]
}]
}]
}
Entries do not support namespaces, see MCPE-151385 Conditions also do not support namespaces (not yet reported) |
This table is incomplete, I didn't feel like testing every pack file, but I'm pretty sure most of them do not work.
Of related relevance is every pack file that does not support namespaces to begin with: MCPE-137614
This also applies to the camera command
❌/camera @s set free pos ~5
✅/camera @s set minecraft:free pos ~5