mojira.dev
MC-188223

Structure blocks and fill...replace command directionally break and drop blocks that require support

When a structure block or the fill...replace command is trying to replace an area, most blocks within that area that are attached to a supporting block will break instead of being replaced by the command (and the contents of their loot tables will drop) if the block supporting them is being replaced with a block that cannot support them and is positioned either below, north, or west of them. Command feedback from the fill command will confirm that the block is being broken instead of being replaced–those blocks will not be included in the count of blocks replaced.

This happens with: carpets, ladders, signs, banners, torches, lanterns, buttons, levers, pressure plates, tripwire hooks, lily pads, sea pickles, mushrooms, snow layers, kelp, bells, vines (if they are not also supported from above the region being replaced), coral and coral fans (both live and dead), and with one-high ferns, grass, flowers, and sea grass.

This doesn't happen with repeaters, comparators, redstone dust, sugar cane, bamboo, rails, chorus plants and flowers, scaffolding, or cactus.

Beds, doors, and two-tall flowers/ferns/grass/sea grass will always display "break" particles on at least one half, and may or may not drop items. Beds will drop themselves depending on the direction they're facing–a bed with its head towards the south or east will drop, a bed with the head to the north or west won't. Doors and two-tall plants will drop their loot table if their bottom half's support is being removed, but not otherwise.

Blocks which are attached to blocks above, south, or east of them will be replaced as normal, and will not drop their loot tables. Blocks whose supporting blocks are replaced with other blocks that can still support them will also be replaced as normal.

 

Linked issues

Attachments

Comments 7

user-f2760

Confirmed for 1.16.5.

user-f2760

Confirmed for 1.18.2.

Loumardes

for datapackers looking for a workaround :
In a single function file, setting the gamerule DoTileDrops to false before the fill command and back to true after works

Loumardes

confirmed in 1.19.2 by the way

Brain81505

Can confirm in 1.19.3

user-f2760

Per MC-235496, redstone dust is affected if it has some connections set to up.

Mason Barber

Can confirm for 1.20.1

GrifterMage

(Unassigned)

Community Consensus

Commands

Minecraft 18w11a, Minecraft 18w14a, Minecraft 18w14b, Minecraft 1.13.2, Minecraft 19w12b, ..., 1.18.2, 1.19.2, 1.19.3, 1.19.4, 1.21

Retrieved