mojira.dev
MC-88038

Furnace minecart go backwards when throught the corner

Description by @unknown:

PushX and PushZ

First of all this fields are very strange as setting them to a value does not actually cause them to get this value. Instead the game sees the number as percentage:

Estimated code

PushX = PushX / (PushX + PushZ) * 5
PushZ = PushZ/ (PushX + PushZ) * 5

This also results to values that are in total higher than 5 (maybe 5 is not the value).

You can also clearly see that when one value is 0, the other one becomes (if it is not 0) 5. This will be important in the next paragraph.

Moving in corners

Apparently a value for the other variable (not 0) is needed to make the MinecartFurnace to drive on a corner rail.

Reproducing this bug

You can easily reproduce this bug by summoning a MinecartFurnace with either PushX or PushZ 0 and have it drive in circles:

/summon MinecartFurnace ~ ~ ~ {PushX:1d,PushZ:0d,Fuel:32767s}

Side note

Powering a MinecartFurnace also results in strange Push values as it takes the position of the player relative to the MinecartFurnace. This results in a PushX and PushZ value which is not 0. However it would make more sense to only store one PushMain as this might be the underlying problem of MC-51053
It seems like the Motion is then set based on the Push values. A Push value of 5 will always result in a Motion close to 2.5

Linked issues

Attachments

Comments 5

Confirmed for

  • 15w36c

PushX and PushZ

First of all this fields are very strange as setting them to a value does not actually cause them to get this value. Instead the game sees the number as percentage:

Estimated code

PushX = PushX / (PushX + PushZ) * 5
PushZ = PushZ/ (PushX + PushZ) * 5

This also results to values that are in total higher than 5 (maybe 5 is not the value).

You can also clearly see that when one value is 0, the other one becomes (if it is not 0) 5. This will be important in the next paragraph.

Moving in corners

Apparently a value for the other variable (not 0) is needed to make the MinecartFurnace to drive on a corner rail.

Reproducing this bug

You can easily reproduce this bug by summoning a MinecartFurnace with either PushX or PushZ 0 and have it drive in circles:

/summon MinecartFurnace ~ ~ ~ {PushX:1d,PushZ:0d,Fuel:32767s}

Side note

Powering a MinecartFurnace also results in strange Push values as it takes the position of the player relative to the MinecartFurnace. This results in a PushX and PushZ value which is not 0. However it would make more sense to only store one PushMain as this might be the underlying problem of MC-51053
It seems like the Motion is then set based on the Push values. A Push value of 5 will always result in a Motion close to 2.5

Still Broken in 1.11 😞

Is this still an issue in the most recent versions (currently that is 1.12.2, or the latest 1.13 development snapshot 18w21b) of Minecraft? If so, please update the affected versions and help us keeping this ticket updated from time to time. If you are the owner/reporter of this ticket, you can modify the affected version(s) yourself.

Cannot reproduce anymore in 1.15.2 Pre-Release 1. Might be fixed along with MC-51053.

KakagouLT

(Unassigned)

Confirmed

(Unassigned)

Minecraft 15w36c, Minecraft 15w36d, Minecraft 16w41a, Minecraft 1.11, Minecraft 18w43c, 1.15.1

1.15.2 Pre-Release 1

Retrieved