How to Throw Blocks Around in Minecraft with the FallingSand Entity - For Dummies

In Minecraft, sand and gravel blocks fall if there are no blocks underneath to support them. While one of these blocks is falling, it temporarily turns into the FallingSand entity, before turning into a block again when it lands.

However, the addition of data tags to the game marked a huge change in the usefulness of these entities — namely, you can make an entity out of any block and drop it onto the world.

The FallingSand entity has tags that can change which block it represents, what it does when it falls, and even which data tags the block has. For example, you can throw a chest into the air so that it lands, damages anyone it hits, and fills itself with a particular arrangement of items. You can discover unlimited possibilities by turning blocks into entities like this — get creative!

If you summon a FallingSand entity without data tags, it disappears almost instantly. If you want to summon it properly, set the Time tag to equal at least 1, indicating that the entity exists.

The tags available to FallingSand entities are described in this list:

  • Block: The name of the block represented by the entity.

  • Data: An integer determining the variant of the block being used (for example, wool color) with 0 being the default.

  • DropItem: A byte equal to 1 if the block should drop an item when mined by a player.

  • FallHurtAmount: If the HurtEntities tag equals 1, this number is proportional to the amount of damage that entities receive when the block falls on them.

  • FallHurtMax: If the HurtEntities tag equals 1, entities cannot take more than this amount of damage when the block falls on them.

  • HurtEntities: A byte equal to 1 if the entity should cause damage to whatever it lands on. Damage is proportional to how far the entity had fallen.

  • TileEntityData: A compound containing all the tags that will be related to the block.

  • Time: The number of ticks (20ths of a second) for which the entity has existed.

For example, consider the following command:

summon FallingSand ~ ~1 ~ {
Motion:[0.0,0.5,1.5],
Block:command_block,Time:1,HurtEntities:0,
TileEntityData:{
CustomName:Aerial Commander,Command:
 say Hello World
}
}

This command produces a command block that is launched across the horizon and, when it lands and is powered, produces this message:

[Aerial Commander] Hello World