mojira.dev
MCPE-186302

Hoppers collect items that touch the side of full blocks on top of them at X and Z coordinates > 2048 and < -2048

Note: this behavior was described in MCPE-155479, but because that report also described other issues that were already reported it was resolved as a duplicate. This issue is causally unrelated to either MCPE-99462 or MCPE-55824.

Steps to reproduce

  1. Place a hopper at 2049 100 2049 or -2050 100 -2050.

  2. Place a column of several blocks of glass or stone on top of the hopper.

    [media]
  3. Toss items against each side of the column.

Expected result

The hopper does not collect the items.

Observed result

The hopper collects the items.

[media]

Code analysis (from MCPE-155479)

Hopper::_getItemAt() defines a cube fetch range with a side length of 1, and inwards in all axes shrink by 0.0001. The float in C++ is only accurate to 6-7 digits in decimal, so when the value exceeds 2048, the shrinking by 0.0001 does not have any effect. (MCPE-99462 supersedes this bug at chunk borders, so it cannot be observed at X/Z +2048 or -2049.)

[media]

Attachments

Comments 2

[media][media][media]

GoldenHelmet

(Unassigned)

1291549

Community Consensus

Multiple

1.21.22 Hotfix

Retrieved