if the summoner attacks a pig zombie, then all pig zombies within a 16 by 16 block radius will also receive damage from the evoker fangs.
To reproduce the bug, you need to: 1. Spawn a small number of pig-man zombies, 2. Spawn the caller, 3. He must hook one of the pig-man zombies with his jaws.
Linked issues
is duplicated by 2
Attachments
Comments 3
Symbol source: public PDB 1.21.3, decompiled. This may differ from current builds.EvokerFangs::normalTick obtains entities via fetchEntities2 and iterates the result with a do/while. When it damages a ZombifiedPiglin, ZombifiedPiglin::hurt triggers anger propagation, which calls fetchEntities over a larger area. That nested query appears to reuse/mutate the same entity query buffer, so the fangs continue iterating into newly added entities. This matches the observed AOE range being the same as the piglin anger range.
With a test plugin, calling fetchEntities inside another mob's hurt handler can make that mob also trigger similar fang AOE behavior. This is not an official-API repro, but it supports the reentrancy hypothesis.
Suggested fix: snapshot the target list before damage, use separate/reentrant-safe query buffers for nested queries.
In the latest version, this [bug] still exists, and all mobs within a 16×16 area take damage—not just zombified piglins. Evoker Fangs spawned by command blocks still work as well.
OS Version win 11
Affected Version 26.45