mojira.dev
MC-82010

Moving blocks do not tick past the world border, causing them to stay offset when pushed by a piston

The bug

Moving_Block do not tick past the worldborder causing them to stay offset / create a ghost block when pushed by a piston.

This seems like a regression of MC-54366

Pistons still try to push blocks through the worldborder, however they stay at the position they were as some kind of "ghost" blocks (very likely the piston_extension block, which the client still renders, however it doesn't exist anymore, /testforblock returns air). After reloading this area they are gone.

Code analysis

Based on 1.11 decompiled using MCP 9.35 rc1

The method net.minecraft.block.BlockPistonBase.canPush(IBlockState, World, BlockPos, EnumFacing, boolean) only tests if the position of the block to move is inside the worldborder, but not if the new position is inside it as well.

The reason why the piston_extension tile entity is not removed is because the method net.minecraft.world.World.updateEntities() removes only invalid tile entities inside the worldborder.

Linked issues

MC-280495 if yow "push" a block with a piston by the yorld border the block glitches out causing the piston head to glitch out really bad ant the block then cant be broken but also can be stood onn Resolved MC-271328 Piston glitches into shulker when pushing it into the world border. Resolved MC-271329 Block outline disappears after pushing block next/outside world border using piston Resolved MC-269923 Semi-blocks pushed by pistons at the border Resolved MC-268308 Block can't be destroyed after pushed against world border by a piston Resolved

Attachments

Comments 16

Pistons fail pushing blocks trough worldborder

Pistons can somehow still push blocks trough the worldborder

Your summary and description contradict each other.

I changed the description

Confirmed for 1.9

6 more comments

Not sure if this helps, but the block will disappear if tnt tries to explode it.

 

Just saying.

It is not a ghost blocks. It is a "moving_block". When a piston push a block, it creates a "moving block" outside of the worldborder.

Can confirm in 1.17.1

That was already marked as affected.

I would like to ask that we rename this bug report from: Pistons fail pushing blocks through worldborder, creating ghost blocks to Moving_Block's do not tick past the world border causing them to stay offset when pushed by a piston

Cause the current title is completely inaccurate

marcono1234

(Unassigned)

Confirmed

Platform

Low

Block states, Rendering

moving_piston, piston, world-border

Minecraft 1.8.7, Minecraft 15w47c, Minecraft 15w51b, Minecraft 1.9, Minecraft 1.9.2, ..., 1.20.4, 24w12a, 1.20.6, 24w18a, 1.21.1

Retrieved