-
Bug
-
Resolution: Unresolved
-
None
-
1.18.2, 22w16b
-
Confirmed
-
World generation
-
Low
-
Platform
The bug
The generation of carvers only appears to use the bottom 48 bits of the world seed, and ignores the top 2^16. As a result, the arrangement of carvers in one world will be shared by another 65,535 worlds, despite noise caves differing.
As it appears that Mojang intended to eliminate such similarities with the fixing of MC-236650, the fact that this remains is likely a bug.
How to reproduce
This can be seen by generating a world with a desired seed, locating a carver-based cave, then generating another world with an integer multiple of 281474976710656 added to the seed and flying to the same location. Assuming that the carver's generation has not been interrupted by another cave, not being underground or some other factor, the basic cave layout should appear identical.
The screenshots provided with this ticket use the seeds 1 and 281474976710657, with coordinates provided.
Expected results
The carvers would appear completely different for all 2^64 seeds.
Actual results
The carvers are a complete match for seeds constructed in this way.
How to fix
Carvers should be made to also respect the upper 16 bits in the world seed as to eliminate duplicate caves like these.
If the carver RNG is redone, it should also be reworked in the same way in Bedrock Edition as to fix MCPE-154323. Such a change could also fix MC-111378 and MCPE-95011.
Further notes
This likely affects world generation as far back as Beta 1.8, and possibly even earlier (in b1.8 to 1.6.4, it affected the entire world like with MC-236650, but from 1.7 onwards only affects carvers and other minor details): https://www.minecraftforum.net/forums/minecraft-java-edition/seeds/2229720-can-two-different-seeds-produce-identical-worlds
- relates to
-
MC-250696 The Nether only uses the bottom 48 bits of the seed for many aspects of terrain generation
- Open
-
MCPE-95011 Certain seeds cause features to repeat
- Open
-
MCPE-154323 Parity issue: Carvers do not generate in the same place in Java and Bedrock
- Open
-
MC-111378 Math error (random generation of zero) causing map gen to fail
- Resolved
-
MC-236650 Minecraft in 1.18 has 2^48 seeds instead of 2^64 seeds.
- Resolved
-
MC-256359 The End only uses the bottom 48 bits of the seed for many aspects of terrain generation
- Resolved
-
MCPE-18739 Entering a seed past a 32bit integer truncates it to be under the 32 bit integer limit
- Resolved