Uploaded image for project: 'Minecraft (Bedrock codebase)'
  1. Minecraft (Bedrock codebase)
  2. MCPE-154333

There are only 2^32 possible carver arrangements, despite there being 2^64 seeds

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • None
    • 1.18.30, 1.20.15 Hotfix
    • Confirmed
    • Multiple
    • 776369

      Very closely relates to MC-250445. Likely also relates to MC-111378, MC-236650, MCPE-18739, MCPE-95011 and MCPE-154323.

      This is specifically the Bedrock Edition equivalent of MC-250445; the differences between these two tickets constitute MCPE-154323.

      The bug

      Bedrock Edition recently expanded to allow for the main world generation to support 64-bit seeds. However, this only appears to affect the superficial terrain shape and noise caves; it appears that carvers will end up being the same for very many seeds.

      How to reproduce

      A keen eye can be used to reproduce this on any seed - just create a world with a desired seed, locate a carver cave, then create another world with a seed which has an integer multiple of 4294967296 added to the previous seed and go to those exact coordinates. Assuming that the cave's generation hasn't been interrupted by something like an aquifer, surface terrain or a structure, the cave's basic shape should be identical.

      I've specifically opted to use the seed 1669320484, which becomes 5964287780 when 4294967296 is added to it. The choice of this seed is due to the very unique cave generation it results in (MCPE-95011), which makes the similarities between the two seeds incredibly obvious. The weird cave generation is not the focus of this bug report - I'm just using it since it makes the matching caves across different seeds obvious.

      Expected results

      Cave generation would use all 64 bits of the seed, just like the rest of terrain does.

      Actual results

      It only uses the lower 32 bits of the seed. As a result, any given carver layout will be shared by another 4,294,967,295 other seeds.

      How to fix

      Carvers should be made to also respect the upper 32 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 Java Edition as to fix MC-250445 and MCPE-154323. Such a change could also fix MC-111378 and MCPE-95011.

            Awesoman3000 Connor Steppie
            Votes:
            11 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              CHK: