Drinking a level 1 potion under a level 2 beacon and leaving results in the effect being lost
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect.
This also happens if you drink a potion of speed 2 and then drink a longer lasting potion of speed 1.
This happens because the lower level effect is not tracked - only the highest new level effect is stored. The HiddenEffect nbt tag only updates when the new effect is higher than the current effect, thus fails when the opposite happens.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, drink a potion of level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true
2. Drink a Level 1 potion of swiftness with longer duration. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to MC-169839.
Created Issue:
Drinking a level 1 potion under a level 2 beacon and leaving results in the effect being lost
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Run:
/effect give @s speed 5 100 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Run:
/effect give @s speed 5 100 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 100 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 100true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored. The HiddenEffect nbt tag only updates when the new effect is higher than the current effect, thus fails when the opposite happens.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect. This happens because the lower level effect is not tracked - only the highest new level effect is stored. The HiddenEffect nbt tag only updates when the new effect is higher than the current effect, thus fails when the opposite happens.
To reproduce:
1. Create a beacon with level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true2. Drink a Level 1 potion of swiftness. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.If you stand within range of a beacon with a Level 2 effect, then drink the same potion type with a Level 1 effect, then leave the region, your longer lasting Level 1 effect gets removed along with the Level 2 effect.
This also happens if you drink a potion of speed 2 and then drink a longer lasting potion of speed 1.
This happens because the lower level effect is not tracked - only the highest new level effect is stored. The HiddenEffect nbt tag only updates when the new effect is higher than the current effect, thus fails when the opposite happens.To reproduce:
1. Create a beacon with level 2 speed. Alternatively, drink a potion of level 2 speed. Alternatively, run:
/effect give @s speed 5 1 true2. Drink a Level 1 potion of swiftness with longer duration. All this will do is update the current effect by making particles show and the potion icon show up in the HUD, but nothing else is modified including the duration of the current effect.
3. After the first effect runs out within 5 seconds, you no longer have any swiftness, thus you lost the effect of the potion you drank.
This issue relates to
MC-169839.
The Bug
If you have 3 or more levels of the same potion effect applied at the same time, when the duration of the highest level runs out, a lower level will be remembered - but when the duration of that lower level runs out, it will not remember the levels below it.
To Reproduce
Run the following commands very quickly one after the next. (Using a chain of command blocks helps to run them quickly.)
/effect give @p jump_boost 20 /effect give @p jump_boost 15 1 /effect give @p jump_boost 10 2 /effect give @p jump_boost 5 3
Open your inventory and watch the duration count down. When “Jump Boost IV” runs out, there will be 5 seconds of “Jump Boost III” left - but when “Jump Boost III” runs out, it doesn’t give you “Jump Boost II”.
Additional Notes
Repost of MC-1541 for bedrock.
When a stronger effect overwrites a weaker effect the weaker effect is gone forever even if the weaker effect had a higher duration than the stronger effect. This was fixed in java edition in 1.15.2, by making the weaker effect come back after the stronger effect expires, but hasn’t been fixed on bedrock edtition yet.
How to reproduce:
1. Run this command: effect @s regeneration 99999999 0 true
2. Run this command: effect @s regeneration 2 1 true or throw a splash potion of regeneration 2 at you.
What I observed: After the stronger effect expires the weaker effect doesn’t come back, it is completely deleted.
What I expected: After the stronger effect runs out the weaker effect will come back (If the weaker effect is longer than the stronger effect).
In survival this can often happen when a beacon overwrites the effect. This can cause you to lose 8 minutes of an effect if you enter a beacon area. Or if you use a totem of undying, the fire resistance 2 effect (See MCPE-52364) was able to cause you to lose the fire resistance effects from a potion.
When this got fixed on java edition there also were some bugs that related to it MC-169930 MC-169839 MC-169840 MC-169965. MC-169964 is also currently a bug in java edition. Hopefully they are not in the game when it gets fixed on bedrock edition.