Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-205680

minecraft:location_check predicate floating point imprecision

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • 21w20a
    • 20w46a
    • Confirmed
    • Commands, Data Packs
    • Low

      When using a location_check predicate near the world border, the position granularity is 2 blocks. As an example, I was checking whether the fluid at a position met the tag #minecraft:water. In a 1*1*2 square from -1 2 29999981 to -1 2 29999982, the predicate would behave as if it were checking the block at -1 2 29999982.

      For the sake of completeness, I've attached the predicate I was using. The command used to check the predicate was `/execute if predicate datacore:dc_util/fluid/water`.

      How to reproduce

      1. Add the attached data pack to the world
      2. Create the structure from the screenshot
      3. execute if predicate test:water
      4. "Test Passed"

        1. the test passed from this position, effectively claiming there was water where I was standing..png
          697 kB
          Powell Whitaker
        2. water.json
          0.1 kB
          Powell Whitaker

            grum [Mojang] Grum (Erik Broes)
            P_Mania Powell Whitaker
            Votes:
            3 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              CHK: