mojira.dev
MC-305658

BadOmen & RaidOmen are discarding hiddenEffects on activation

Every effect in the game supports the feature of “hiddenEffects” where if you receive an effect of a lower level but a longer duration of what you already have, the lower effect will be stored in an “hiddenEffect” field to be restored once the bigger effect runs out.

RaidOmen and BadOmen are broken in this regard, since they will discard their pile of hiddenEffect when triggering their effect which seems to be an unforseen side effect of the following chain of events :

  • BadOmenStatusEffect/RaidOmenStatusEffect’s applyEffectTick function returns false to signify that its one-time-effect has been activated

  • MobEffectInstance’s tickServer function forwards this result

  • LivingEntity’s tickEffects function react to this return value by simply calling iterator.remove() to remove the effect from the player. <--- this disregards the presence of any hiddenEffect on the effect being removed !

We can see here that the hidden effect, despite having 42 ticks more than the main one, got removed from my Player at the same time that the main one triggered :

image-20260112-070935.png

I would expect the logic of MobEffectInstance.downgradeToHiddenEffect (or similar) to be applied when the main effect is removed.

Attachments

Comments 1

Thank you for your report!
After consideration, the issue is being closed as Working as Intended.

Please note, that mechanics of the game may change between updates.
Things such as graphics, sounds, world creation, biomes, redstone, villagers, and animals may not work the same in current versions.

Full Version HistorySnapshot Version HistoryThe official Minecraft feedback site

Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki

Azyrod_

(Unassigned)

Confirmed

(Unassigned)

1.21.11, 26.1 Snapshot 2

Retrieved