3

Is there a way to destroy a certain type of block (ie. Oak wood planks) The command I've got so far is:

/blockdata ~-1 ~ ~ {Items:[{id:wooden_axe,Damage:#,Count:1,tag:{CanDestroy:["minecraft:planks 0"],display:{Name:"Axe"}},Slot:13}]}

I am using the blockdata command to get a wooden axe in the middle of the chest that can only break oak wood planks. With this command the wooden axe shows 'missingno' under it.

1

3 Answers 3

4

Unfortunately there is not currently a way to limit the CanDestroy or CanPlace NBT Tags to the Damage Value of a block.

For example: "minecraft:planks" for all wooden planks works, but Minecraft sees the string "minecraft:planks 0" as an error. This is what is causing the "missigno" error. If there is an error in the formatting of a datatag, i.e. string instead of an integer, capital where there should be a lowercase, symbol for an integer, Minecraft will usually skip that tag, and move on to the next. However, for the CanDestroy tag it seems to try to find the block instead of skipping it. When it can't find the block, it returns with "missngno", rather than nothing at all.

For the CanDestroy tag, you can only use a block id:

/blockdata ~-1 ~ ~ {Items:[{id:wooden_axe,Damage:0,Count:1,tag:{CanDestroy:["minecraft:planks"],display:{Name:"Axe"}},Slot:13}]}

You would also get the "missingno" error if you used an empty string, i.e. ""

It also happens that in your command, the Damage tag is being skipped as well. This is because you have the symbol # instead of an integer there. Minecraft sees this as a error and ignores the tag, leaving the default value, 0 damage, in its place. You could just as well leave the Damage tag off if you didn't want the axe to have any damage on it.

Sources:

In-game testing

https://minecraft.wiki/w/Tutorials/Command_NBT_tags

0

1.10 (currently in snapshot versions as of now) has a way to support this.

Instead of using damage values, you just use the damage value in the name like so:

/blockdata ~-1 ~ ~ {Items:[{id:wooden_axe,Damage:#,Count:1,tag:{CanDestroy:["minecraft:oak_planks"],display:{Name:"Axe"}},Slot:13}]}

The CanDestroy tag, like tarper24 said, does not support damage values (the numbers).

A change in 1.10 will fix this so you can use the above, but since it is snapshot form as of now you can only wait.

-1

This entire question was rendered obsolete by 1.13's removal of damage values, meaning that:

/data merge block ~-1 ~ ~ {Items:[{id:"wooden_axe",Count:1,tag:{Damage:#,CanDestroy:["minecraft:oak_planks"],display:{Name:"\"Axe\""}},Slot:13}]}

will now work to create an axe that can only break oak planks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.