How to Make Explosive Arrows in Minecraft 1.21+ and 26+ (Command Block)
Minecraft 1.21+ and 26+ Java Edition – Explosive Arrow Command Tutorial
In this tutorial, you will learn how to create explosive arrows in Minecraft 1.21+ and 26+ using command blocks.
This system allows you to shoot a special bow that makes arrows explode as soon as they hit the ground.
It works perfectly in Minecraft Java Edition and is great for adventure maps, minigames, and custom servers.
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
Download the ready and complete function by clicking here and place it inside the datapacks folder
If you don’t know how to create a function, watch this tutorial 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]