mojira.dev
MC-208978

Corner stairs only form consistently when placed in the same order

When placing stairs in a zig-zag/diagonal fashion, they seem to only connect properly and form a corner orientation if the order in which they are placed is the same.

To elaborate; if I zig-zag stairs from left to right, and then try to do the same from right to left, so that they meet in the middle, the two lines of stairs will not connect together, and so far as I can tell it is nearly impossible to make them (I tried placing in many different ways; against one stair, against the other, against the ceiling/floor, making the "middle" both an inner corner and outer corner, every way I could think of). After rebuilding a short line of stairs over and over again, every so often I could manage it, but as far as I can tell I can find no rhyme or reason why it happens sometimes and not others. The vast majority of the time, it fails. If I place all the stairs going left to right, or right to left, it happens flawlessly.

This happens even though there is no visual difference between the two lines of stairs; there is no way to tell if one line was placed left to right or right to left. There is no reason why they shouldn't connect.

Sometimes they seem more likely to connect if the stair at the beginning of each line is placed in such a way as to allow the second stair in the line to be placed as a corner stair immediately, without having to place a third stair in order to corner it, but this still doesn't always orientate properly until I break the whole line and rebuild it.

I've attached screenshots that hopefully illustrate the problem more clearly. I use a blackstone stair in the middle to more clearly show the issue. The fact that the middle stair is blackstone and not nether brick is not why this is happening, I've tested and this is the case even if the stairs are of the same type.

I have to redo an entire diagonal corridor now because I placed the stairs in the wrong order.

Linked issues

Attachments

Comments 6

Hey there!

Does MC-167183 happen to describe your issue?

MC-167183 is a similar issue, but not the same. The issue I'm encountering has to do with placing stairs in the same two directions, not placing a stair in an opposite direction against an existing line. 

The problem I encountered in my build was that I had a diagonal corridor, and along the ceiling I had upside-down stairs. At the start of the corridor I wanted the first stairs to be inner corners, without having stairs on both sides, only one side. One side of the corridor I placed all the stairs starting from the beginning of the corridor, but the other side I placed from the end. When I got to the beginning of the corridor on that line, I tried to place the last stair in a way so that it would form an inner corner without any stair to the right of it (I placed the stairs left to right).  I was able to do this easily for the other side of the corridor, but for this side the last stair would not form an inner corner unless I re-did the stair to the left of it, which then wouldn't connect to the stair to the left of that, and so on back down the line.

Put more simply (I hope), the issue is that when placing a diagonal line of stairs, the stair at a given end of the line can only be an inner corner if it is the first stair placed in the line, not the last. 

I'm sorry if this is confusing, I'm having a hard time finding a way to concisely describe it. If I have the chance later, I'll try to record a video of the process to illustrate it better.

This issue is caused by stairs being able to extend/collapse to connect with another adjacent stair, while being orientation dependent. What that means, is that a stair can be oriented in such a way that it shares the same external appearance as another orientation, but internally have different blockstates.

Look at it this way; is the stair placed facing left and connects to the right, or is it placed facing right and connects to the left? Both ways it looks the same, but behaves differently.
If you place two lines to meet in the middle, you can't mirror the placement or they won't end up connecting in the middle, as they would be facing the opposite way and offer ambiguity as to which way the middle should connect to.

It's the exactly the same thing as making a line with dots and stripes. If every stripe needs to be separated from the next one with one dot, then an even line of stripes and dots cannot start on both ends with a stripe.

Yeah, fixing this situation would require a lot of context to be send to the blackstone brick stairs (in the image); as either in can become inner left, or inner right, whereas the stair behind it (facing the exact same direction, and not a rotation of +/-90 degrees) would be outher left/right; this cannot logically be determined and is only going to cause more issues if changed.

Stairs simply cannot connect to something with the same or exact opposite rotation. To fix this bug without introducing a bunch more issues, there'd need to be a way to toggle between straight and inner/outer left/right manually (asking for which would be a feature request).

That makes sense, thanks for explaining it. I'm just glad someone understood my issue, I had the hardest time describing it and have no technical knowledge of stairs. I just know it was super annoying having to redo an entire line of 70 stairs because I started right to left instead of left to right or vice versa.

I can confirm in 23w42a. MC-12642 was reopened on 12/May/21 by SlicedLime, which closely relates to behavior very similar to this.

TorandoChaser

(Unassigned)

Community Consensus

Block states

1.16.4, 23w42a

Retrieved