mojira.dev
MC-2023

Minecart rails break when moved with a block under certain conditions

The Bug

Pushing and pulling a minecart rail simultaneously with the block it's on will cause the rail to break once the extension/retraction has completed. This holds true for normal rails, powered rails, and detector rails.

Note:

  1. A ghost rail can also be created in this setup when the rail breaks (see MC-75716).

  2. The directional randomness in the described setup has been fixed with the 24w33 redstone experiment. The lever closer to the piston is now consistently is the one which causes the rail to break. The rail breaking is the only remaining bug here with the experiment enabled.

Related issues

Attachments

Comments

migrated
[media][media][media][media][media]
migrated

If you put the rail and the block underneath it on an ABBA circuit, it works (push block first and then rail to extend, pull rail first then block to retract). I agree that it shouldn't be that way, and you should be able to push them both at the same time, but that is a currently working fix (used that for my toggleable destination train station).

migrated

Confirmed in 13w03a. Really want my train station to work again.

migrated

Confirmed in 13w04a.

migrated

Confirmed in 13w05b and 13w06a.

migrated

Confirmed in 13w09b.

migrated

Confirmed in 1.5.

migrated

Affects beta 14x03b. When retracting the rails, all are broken. When pushing the rails, all are broken, but the visual of the rail typically remains (you get the rail back but it looks like it is there; when you place a minecart on it, both the rail and the minecart disappear).

migrated

Confirmed to still be an issue in 1.8.1pre3.

galaxy_2alex

Reopened, Thanks.

FaRo1

Confirmed for 1.10.1.

migrated

Confirmed for 1.13 & 18w30b.

migrated

Confirmed for 18w31a.

migrated

Confirmed for 18w32a.

migrated

Confirmed for 18w33a.

migrated

Confirmed for 1.13.1.

migrated

Confirmed for 1.13.2-pre2.

Jack McKalling

Does not appear to happen anymore in 18w48a. Might have been fixed earlier.

migrated

Did you push with the block it's on?

Jack McKalling

Pushed both the rails plus the block that supports it, yes.

FaRo1

It's different now (18w48a), but definitely not fixed: Pushing a rail and the block it's on sideways together (or a diagonal rail and the block it's leaned on) drops it, but the rail is still there visually (ghost block).

Up/down movement seems to be completely fine.

Jack McKalling

Please show picture of what you're doing where it drops the rail, as I cannot reproduce.

I've tried all orientations and positioning I could think of that would follow the rule "rail and the block it is attached to". The only way my rails drops is when I push the block below it but not the rail itself.

FaRo1

OBS isn't properly set up yet, so the file is too big for an attachment: https://drive.google.com/open?id=1BV3xRXw_iAclGNIPndg9hTU8eo0oz0i3

FaRo1

Apparently the sharing setting wasn't correct before. Should be fixed now, everyone should be able to view the file.

Jack McKalling

Thanks. I've summarized your and my findings in one hopefully more convenient screenshot. (as of screenshot, in 18w48b)

[media]
Jack McKalling

I think the problem is more complicated or incomplete from above observations.

I tested the same configuration in four different mirrored orientations (more exist even!), and the problem doesn't happen consistently. Observe the piston orientations and each lever. Red blocks lead to dropped rails, green ones don't.

[media]
Jack McKalling

Confirmed for 18w49a, the above conclusions still apply

Jack McKalling

Confirmed for 18w50a, as above

Jack McKalling

Confirmed for 19w02a

Jack McKalling

Confirmed for 19w03a

Jack McKalling

Confirmed for 19w03b

Jack McKalling

Confirmed for 19w03c

Jack McKalling

Comfirmed for 19w04a

Jack McKalling

Confirmed for 19w04b and 19w05a

Jack McKalling

Comfirmed for 19w06a

Jack McKalling

Confirmed for 19w07a

Jack McKalling

Confirmed for 19w09a

Jack McKalling

Confirmed for 19w11a

Jack McKalling

Confirmed for 19w11b

Jack McKalling

Confirmed for 19w12a

Jack McKalling

Confirmed for 19w12b

Jack McKalling

Confirmed for 19w13a

Jack McKalling

Confirmed for 19w13b

Jack McKalling

Confirmed for 19w14a

Jack McKalling

Confirmed for 19w14b

Jack McKalling

Confirmed for 1.14 pre-1

Jack McKalling

Confirmed for 1.14 pre-2

Jack McKalling

Confirmed for 1.14 pre-3

Jack McKalling

Confirmed for 1.14 pre-4

Jack McKalling

Confirmed for 1.14 pre-5

Jack McKalling

Confirmed for 1.14

Jack McKalling

Confirmed for 1.14.1 pre-1

Jack McKalling

Confirmed for 1.14.1 pre-2

Jack McKalling

Confirmed for 1.14.1

migrated

Confirmed in 1.16-pre3.

migrated

Confirmed in 1.16-pre5.

migrated

Confirmed in 1.16-pre6.

migrated

Confirmed in 1.16-pre7.

Jack McKalling

I've rotated and mirrored the exact same structure in all directions now, and the results of whether the rail breaks and leaves a ghost block (red) or behaves normally (green) is consistent and seems directional. I can't figure out exactly how or why, but this is what it does:

[media]
PR0CESS

So just to clarify what is actually happening here. It's not random or sometimes happens.
It's redstone update order.

All you need to create this bug is have the power source update the bottom piston before the top piston. It's that simple!

What's a reliable way to do this you may ask?

[media]
migrated

Can confirm in 1.19-rc2

migrated

This could be fixed by postponing the rail's check for a block beneath it till the next tick (ie in the code check for unsupported rails BEFORE performing piston pushes, this would delay rail check to the next tick)

Brain81505

Can confirm in 1.19.3 and 23w04a

Brain81505

Can confirm in 23w05a

Brain81505

Can confirm in 23w06a

Brain81505

Can confirm in 1.20.1

[Mod] Jingy

The rail breaking and leaving behind a 'ghost rail' still exists, but the directional randomness of the issue is fixed with the 24w33a redstone experiment:

[media]

The lever 'closer' to the pistons will always be the one to result in a ghost rail being created/the rail breaking. I've added the 'experimental_redstone_fixed' label indicating that the randomness is fixed, however the behavior of MC-75716 still exists.

Jack McKalling

(Unassigned)

Confirmed

Platform

Normal

Minecart

experimental_redstone_fixed, piston, rail, rails

Minecraft 1.4.3, Minecraft 1.4.7, Snapshot 13w03a, Snapshot 13w04a, Snapshot 13w09b, ..., 23w05a, 23w06a, 1.20.1, 1.20.2, 24w34a

Retrieved