PT-BR EN
Channel Icon

Crazy Ozz

Official Channel Website

Command Block

How to Create Explosive Arrows in Minecraft 1.21+

Version 1.21+ Java Edition

Step 1: Let's get our custom bow with the superflecha tag and a slight name effect.

give @a bow[minecraft:custom_data={superflecha:1b},minecraft:rarity=rare]

Step 2: Now, we need to place a Repeat command block set to Always Active with the following command:

execute as @e[type=arrow,nbt={inGround:0b},tag=!flecha] if items entity @p weapon.mainhand minecraft:bow[minecraft:custom_data={superflecha:1b}] run tag @s add flecha

This command detects if the arrow is still in the air and if the nearby player has the custom bow in hand.

If the player is holding this bow, the fired arrow will receive a tag.

Step 3: Now we’ll detect if the tagged arrow has hit the ground to trigger our function.

Place this command in a Repeat command block set to Always Active:

execute at @e[type=arrow,tag=flecha,nbt={inGround:1b}] run function comandos:tnt_arrow

If you don’t know how to create a function, watch this video to learn.

Below are the commands inside the function that will instantly summon TNT and remove the arrow to prevent infinite TNT explosions:

summon tnt ~ ~ ~ {fuse:0}

kill @e[tag=flecha]

Still have questions? Watch the video below