Ambient property of potion effects with ShowParticles:0b is not disregarded
The bug
Potion effects with Ambient:0b and ShowParticles:0b cause other potion effects with Ambient:1b to be opaque. Hidden effects should have their Ambient property, like their color, disregarded for the purposes of rendering particles from other effects.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→
The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
Linked Issues
is duplicated by6
- Fixed
[Helper] clam lol- 20
- 10
- Confirmed
Low
- Particles Rendering
- ambient beacon particle potion-effect
16w05a - 21w44a
16w05a 16w05b 16w07a 16w07b 1.9-pre2 1.9-pre4 1.9 1.9.1-pre3 1.9.3-pre1 16w36a 16w44a 1.11-pre1 1.11.2 1.12-pre7 1.12 1.12.2 18w02a 1.13.1 1.14 1.14.4 19w39a 1.15.1 1.15.2 20w10a 20w18a 1.16.2 1.16.3-rc1 1.16.3 20w49a 20w51a 21w03a 1.16.5 21w05a 21w06a 21w07a 21w08b 21w10a 21w11a 21w13a 21w14a 21w15a 21w16a 21w18a 21w19a 21w20a 1.17-pre1 1.17-pre2 1.17-pre3 1.17-pre4 1.17-pre5 1.17-rc1 1.17 1.17.1-pre1 1.17.1-pre2 1.17.1-rc1 1.17.1 21w37a 21w38a 21w39a 21w40a 21w41a 21w42a 21w43a 21w44a- 1.18-pre1
Created Issue:
hideParticles and Ambient tags not working for potion effects in some cases
Particles from beacons are opaque and hideParticles doesn't work in the /effect command.
Environment
OS X 10.10.5
Particles from beacons are opaque
and hideParticles doesn't work in the /effect command.Particles from beacons are opaque. I can only assume this isn't intended since they used to be transparent.
hideParticles andAmbient tagsnot working for potion effectsin some casesAmbient tag not working for potion effects from beacons
Particles from beacons are opaque. I can only assume this isn't intended since they used to be transparent.
EDIT: To reproduce, run the following steps.
1. Make a beacon and set it to Haste I
2. The particles will be Ambient as is intended
3. Run: [noformat] /effect @p resistance 100 0 true [noformat]
4. The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
5. Run: [noformat] /effect @p resistance 0 [noformat]
6. The Haste particles will be Ambient again
Ambient tag not working for potion effects from beaconsPotion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
EDIT: To reproduce, run the following steps.
1. Make a beacon and set it to Haste I
2. The particles will be Ambient as is intended
3. Run: [noformat]/effect @p resistance 100 0 true[noformat]
4. The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
5. Run: [noformat]/effect @p resistance 0[noformat]
6. The Haste particles will be Ambient again
EDIT: To reproduce, run the following steps.
1. Make a beacon and set it to Haste I
2. The particles will be Ambient as is intended
3. Run: /effect @p resistance 100 0 true
4. The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
5. Run: /effect @p resistance 0
6. The Haste particles will be Ambient againThe bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
To reproduce
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect @p resistance 0
- The Haste particles will be Ambient again
OS X 10.10.5
macOS, Windows 10
macOS, Windows 10
is duplicated by
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
To reproduce
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect @p resistance
0- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
To reproduce
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
is duplicated by
is duplicated by
is duplicated by
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect is of the same type and a lower amplifier than the ambient effect.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect also ambient or is of the same type and a lower amplifier than the ambient effect.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect also ambient or is of the same type and a lower amplifier than the ambient effect. In other words, if an entity has any effect with Ambient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect also ambient
or is of the same type and a lower amplifier than the ambient effect. In other words, if an entity has any effect with Ambient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect also ambient. In other words, if an entity has any effect with Ambient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with
HideParticles:1b cause other potion effects with Ambient:1b to be opaque, unless the hidden effect also ambient. In other words, if an entity has any effect with Ambient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with Ambient:0b and HideParticles:1b cause other potion effects with Ambient:1b to be opaque. In other words, if an entity has any effect with Ambient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
Potion effects with HideParticles:1b cause other potion effects with Ambient:1b to be opaqueAmbient property of hidden potion effects is not disregarded
The bug
Potion effects with Ambient:0b and
HideParticles:1b cause other potion effects with Ambient:1b to be opaque.In otherwords, if an entity has anyeffectwithAmbient:0b, then all effect particles emanating from them will be opaque regardless of the respective Ambient property.To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
The bug
Potion effects with Ambient:0b and ShowParticles:0b cause other potion effects with Ambient:1b to be opaque. Hidden effects should have their Ambient property, like their color, disregarded for the purposes of rendering particles from other effects.
To reproduce
Survival
- Build a beacon and activate any effect
- Equip a turtle shell
→The beacon effect particles will no longer be ambient
Commands
- Make a beacon and set it to Haste I
- The particles will be Ambient as is intended
- Run: /effect give @p resistance 100 0 true
- The Resistance particles will be hidden as per normal, but now the Haste particles will be opaque
- Run: /effect clear @p resistance
- The Haste particles will be Ambient again
Ambient property ofhiddenpotion effects is not disregardedAmbient property of potion effects with ShowParticles:0b is not disregarded
is duplicated by
Duplicate of MC-96535
Thank you for your report!
We're actually already tracking this issue in MC-96535, so I resolved and linked this ticket as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature in the future to see if the issue has already been reported.
Quick Links:
📓 Issue Guidelines – 💬 Community Support – 📧 Customer Support – 📖 Game Wiki
That was MC-96535. I think I can confirm what you said, but it's really hard to see.
The bug
Potion effect shadowing is imperfect. The precise problem is rather difficult to describe and I won't attempt to do so at the current time; suffice to say, this mainly manifests as particles appearing when they should not or being opaque when they should be ambient; due to the particle changes in 24w11a, this issue can be thought of as MC-96535 on a per-effect basis.
To reproduce
- Build a level 1 beacon and set it to Speed, but put a solid block over it so you don't get the effect
- Run /effect give @s minecraft:speed infinite 0 true
- Unblock the beacon
→
Notice how you have opaque Speed particles emanating form you.
Thoughts on a fix
Firstly, the show_particles and ambient booleans should be condensed into a single int, particle_opacity_level; this isn't strictly necessarily but will make the rest of what I write here easier to understand. In this implementation, 2 means opaque, 1 means ambient and 0 means no particles at all.
Now, when an effect is applied to a mob which already has an active effect with the same id, the game should check if the amplifier, particle_opacity_level and show_icon fields match. If they do, setting the duration field to the longer of the two values is all that's necessary. However, if even one of these fields is different, a hidden effect instance must be created. The potion effect with the lower amplifier should be selected for storage in the hidden_effect field; if the amplifiers are the same, the one with the shorter duration should become the hidden effect. (If a hidden effect already exists, the new one should be inserted at the appropriate level.)
When it comes time to put this NBT to use by creating particles and rendering the duration in the UI, the game should do the following for each effect ID:
- Get the amplifier of the highest-level instance and use that as the level to show in the UI.
- Get the duration of the highest-level instance and use that as the duration to show in the UI.
- Get the highest particle_opacity_level in the entire hierarchy and use that to render the particles.
- Get the highest show_icon in the entire hierarchy and use that to render the icon.
Thank you for your report!
We're tracking this issue in MC-96535, so this ticket is being resolved and linked as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature to see if the issue has already been mentioned.
Quick Links:
📓 Issue Guidelines – 💬 Community Support – 📧 Mojang Support – ✍️ Feedback and Suggestions – 📖 Game Wiki
– I am a bot. This action was performed automatically! Please report any issues in Discord or Reddit
This is a duplicate of MC-96535.
Thank you for your report!
We're tracking this issue in MC-96535, so this ticket is being resolved and linked as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature to see if the issue has already been mentioned.
Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki
Affects 21w37a.
So basically, the bug is that beacons and conduits seem to override the particle visibility settings of existing hidden effects when attempting to apply an effect of the same type, unless the hidden effect is of a lower amplifier than the new one, in which case it gets stored in the HiddenEffect tag as expected. This exception is also the case with MC-96535, but that bug is more of a rendering bug whereas here data is being modified improperly. (I was unable to reproduce this using ambient splash potions so the problem seems specific to beacons and conduits.)
I'm quite sure that this is a duplicate of MC-96535, which was fixed in 1.18 Pre-release 1.
Cannot reproduce.
Make sure you don't have some extra potion effect not caused by the beacon by running :
Even if in this report, it's unclear if the opaque particle are from the beacon or a potion effect ; on my side, particles from the beacon potion effects, or from potion with an Ambient tag are transparent. Can you provide a screenshot of the opaque particle, and the effects used in the beacon. And in the case you used a command, can you provide the EXACT command you used.
Finally put a finger on exactly what was happening. Reopen please.
Confirmed.
Confirmed for 1.13.1.
Can confirm for 20w10a but the beacon effect particles are very transparent, but with the shell on they are solid.
Still a thing in 1.16.2... it's the only reason i don't wear a turtle shell...