mojira.dev
MC-310633

Brewing stand bottle slots no longer accept glass bottles or fully brewed lingering potions

The three bottle slots of the brewing stand used to accept any glass bottle, potion, splash
potion or lingering potion. Since 26.3 Snapshot 3 they only accept items that are the input of
some brewing recipe. Empty glass bottles are no longer accepted at all, and finished potions
that are not an input to any further recipe — which is most lingering potions — can no longer
be put back into a brewing stand.

The same check is used for hopper insertion, so automated brewing setups that push glass
bottles into a brewing stand now back up.

Steps to Reproduce (glass bottles)

  1. Create a Survival or Creative world in 26.3 Snapshot 6.

  2. Place a brewing stand and open it.

  3. Try to put an empty glass bottle into any of the three bottom slots.

Observed Results: the slot rejects it; the bottle cannot be placed.
Expected Results: the bottle is placed, as in 26.2 and every earlier version.

Steps to Reproduce (finished lingering potion)

  1. Brew a Lingering Potion of Fire Resistance.

  2. Add redstone to it to get a Lingering Potion of Fire Resistance (8:00) — this recipe exists,
    so the input is accepted.

  3. Take the resulting extended lingering potion and try to put it back into a bottom slot.

Observed Results: the slot rejects it.
Expected Results: it can be placed, as in 26.2.

Steps to Reproduce (hopper)

  1. Place a hopper feeding into the top of a brewing stand and fill it with glass bottles.
    Observed Results: the bottles stay in the hopper.
    Expected Results: they are inserted into the bottle slots.

Scope

Of the 46 vanilla potion types across the three potion items (138 combinations), 25 are now
rejected, including 23 of the 46 lingering potions — essentially every extended ("long") and
otherwise terminal lingering potion. All 279 vanilla brewing recipes take a potion, splash
potion or lingering potion with specific contents as their input; none takes a glass bottle,
which is why bottles are rejected outright.

Cause

BrewingStandMenu.PotionSlot#mayPlace changed from an explicit item-type test to a recipe
lookup:

26.2: return itemStack.is(Items.POTION) || itemStack.is(Items.SPLASH_POTION)
|| itemStack.is(Items.LINGERING_POTION) || itemStack.is(Items.GLASS_BOTTLE);

26.3: return this.propertySet.test(itemStack); // RecipePropertySet.BREWING_INPUTS

BREWING_INPUTS is the union of every BrewingRecipe's input ingredient, so it is a set of
brewable inputs, not a set of things that belong in a bottle slot. BrewingStandBlockEntity's
canPlaceItem uses the same set, which is why hoppers are affected too.

This appears to be a side effect of moving brewing to the recipe system in 26.3 rather than an
intentional restriction: nothing in the changelog mentions a change to what the bottle slots
accept, and rejecting empty bottles has no gameplay rationale.

Comments 0

No comments.

yuluo

Nathan Wolf

Confirmed

Platform HC

Important

Crafting, UI

26.3 Snapshot 6

26.3 Snapshot 9

Retrieved