mojira.dev
MC-63720

Banners don't move in wind when over certain "Time" value of the level.dat

The bug

Banners don't move in wind when over certain Time value of the level.dat.

Code analysis (by @unknown)

The following is based on decompiled version of Minecraft 1.8 using MCP. All method and class names are the names used in the decompiled version.

The Time value of the level.dat file is used for rendering banners, beacons (they are affected by this in 1.8 but not in 16w06a anymore) and guardians (can't find any problems here). If I understand it correctly, the conversion from long to float is with high numbers too lossy:

1000000696956L = 1000000720000f
1000000701016L = 1000000720000f

In the case of the banner using % 100L of the time should create the same moving animation but prevent this from happening.

Linked issues

Comments 54

Cannot reproduce this issue. Does it occur in a new SMP world.

Tim van der Linden

Only on servers
come join 83.83.203.234

does making a new map fix the issue.

Tim van der Linden

Yes it does, but does that mean they will never move on the old map?

Nope, just means your report isn't correct and should be redone, but please don't make a new one just yet, I don't exactly want to have to deal with duplicates. I'll get back to you.

44 more comments

Confirmed for minecraft 1.12.2 with spigot 1.12.2
Time NBT from world: 596314945
Good luck!

Confirmed for 1.13.1.

Confirmed for 19w14b.

Hmm, the banners in my snapshot testing world don't move (19w40a). Might not be fixed, more testing is required.

Reopened. This is still happening in 1.15-pre2. To reproduce, I just set Time in level.dat to 1000000696956.

Tim van der Linden

boq

Confirmed

(Unassigned)

animation, banner, precision-loss, time

Minecraft 14w30c, Minecraft 14w32a, Minecraft 14w32b, Minecraft 14w34b, Minecraft 14w34c, ..., Minecraft 1.12.2, Minecraft 1.13-pre10, Minecraft 1.13.1, Minecraft 19w14b, 1.15 Pre-Release 2

Minecraft 1.8-pre1, 19w35a, 1.15 Pre-release 3

Retrieved