mojira.dev
MC-56037

Killing falling_block entity: texture disappears while falling but the block is still there

The bug

When you have a repeating command block (command: kill @e[type=falling_block]) and you let an anvil (sand/gravel/dragon egg) fall on the ground it doesn't fall, only the texture disappears. So it is still there as a ghost block (you can't walk through). When you update the anvil by placing a block where the anvil was before it appears, floating in the air.

Code analysis

Code analysis by @unknown can be found in this comment.

Linked issues

Attachments

Comments

marcono1234

Confirmed for 14w21b

Also happens with all FallingSand entities like sand, red sand, gravel and dragon egg

galaxy_2alex

Is this still a concern in the current Minecraft version? If so, please update the affected versions in order to best aid Mojang ensuring bugs are still valid in the latest releases/pre-releases. If this has been done, we can reopen the issue.

Keep in mind that the "Resolved"-Status on this ticket just means "Answered", and that we are waiting for further information on whether this issue still exists or not. We will reopen it as soon as the requested information has been delivered.

KingSupernova

Confirmed for 1.8.2 pre-4. The entity will disappear immediately, and you can't walk through where it was. The impassible area is where the entity was when it died, not where it would have landed. Reloading the world fixes the bug, and causes the block to appear. It will not update, and will remain floating.

KingSupernova

Also, if you update the invisible block, it will appear for a moment, then disappear again.

KingSupernova

This bug (or a very similar one) will also occur if the fallingsand is teleported away.

KingSupernova

Confirmed in 16w15b. Any blocks placed in the block where the invisible sand block is will disappear from your inventory and will make the sand appear. They will reappear in your inventory when you reload the world.

marcono1234

Please link to this comment in the description

The following is based on a decompiled version of Minecraft 1.9 using MCP 9.24 beta.

The method net.minecraft.block.BlockFalling.checkFallable(World, BlockPos) only spawns the FallingSand entity but does not replace the block (this was maybe done to prevent FallingSand duplication?). The method net.minecraft.entity.item.EntityFallingBlock.onUpdate() then removes the block if the FallingSand entity has a Time of 0. It looks like the problem is that the server does not call the method before the FallingSand entity is killed. However as the client receives the packets delayed, it creates a FallingSand entity but runs the onUpdate() method before receiving the packet to kill the FallingSand entity. This way the server did not remove the block, however the client did.

Edit: Expected behavior described in MC-72248.

marcono1234

Relates to MC-72248

bemoty

Can confirm for MC 1.12.1.

Kraif

Confirmed for 1.13.1.

George

Guys I know how to fix it. Place buggy blocks again (just place anything they will back) and use /fill for this cuboid of bug blocks. Helped for me ✔

Avoma

Can confirm in 20w48a.

Avoma

Can confirm in 21w03a.

Avoma

Can confirm in 21w05b.

Avoma

Can confirm in 21w06a.

Avoma

Can confirm in 21w07a. Video attached.

ampolive

I cannot reproduce the texture disappearance in 1.17. The block texture doesn't disappear in Avoma's video either. Have I misunderstood this issue?

PR0CESS

@Marcono1234 Seems this is related to: MC-151488

mattp12

This must have been fixed at some point. It happens in 1.18 but doesn't in 1.19, so somewhere in between.

I'm on 23w04a and cannot reproduce, the blocks are killed and disappear.

wobst.michael

This has been fixed along with MC-72248.

Szoszk

(Unassigned)

Confirmed

Low

Block states, Commands

Minecraft 14w21b, Minecraft 1.8.1, Minecraft 1.8.2-pre4, Minecraft 15w34a, Minecraft 15w34b, ..., 21w05b, 21w06a, 21w07a, 1.17.1, 1.18.1

22w03a

Retrieved