In minecraft it matters in which direction you place something. Various redstone devices function slightly different, as do some minecart track layouts. Why is this? How can I avoid it and make use of it (if possible)?
1 Answer
When placing rails, or connecting redstone, connections going South and East will take priority over those going North and West. This is due to those directions always being checked first for connections on each axis. There is nothing that can be done to get around this, other than avoid ambiguous connections. Most redstone schematics will say whether they will only work in a certain orientation or not.
This isn't really a bug as such (it would be impossible to fix, since one direction must always take priority). Here's some pseudocode to illustrate the situation:
checkConnections(trackPiece):
if blockEast.isTrack:
connectEast
else if blockWest.isTrack:
connectWest
Since connectEast
and connectWest
are mutually exclusive, and one must be checked first, there will always be one direction on each axis that takes precedence.
The rule has a few important consequences, detailed on the wiki. Most notably:
Minecarts will favor South or East motion at a "+" intersection because they favor "starting" at the North or West edge.
Unpowered tracks will curve south or east when they are initially placed at a "T" intersection.
There are other block orientation quirks not directly related to this quirk listed on the wiki too.
Note on South-West vs. South-East
Prior to 1.9pre-4, West took precedence over East. Since that release, East has taken precedence over West.
-
"it would be impossible to fix, since one direction must always take priority" - this is false; one direction must always take priority in some situations, like a minecart which must go in one of two directions Jul 28, 2012 at 14:32
-
2@ninjagecko Even in something that seems like it 'shouldn't' need to take priority, like a redstone circuit, it has to take priority, programmatically, or else be determined randomly for each check, which would be even more chaotic. I don't know redstone circuitry that well, but I do know that in programming, there is no such thing as a non-deterministic outcome.– ZibbobzJul 29, 2014 at 14:35