The bug
The client tries to teleport endermen as well. This can cause particles and teleportation sounds to appear at the wrong position or the enderman might be away for a short moment before its position is re-synchronized.
How to reproduce
Summon an enderman
Punch it in Creative mode
→ It will disappear for a short moment
Code analysis
Partwise by @unknown
Based on 1.12 decompiled using MCP 9.40 PRE 1
The method net.minecraft.entity.monster.EntityEnderman.teleportRandomly()
is called client-side as well which can result in different results since the random number generators are not synchronized. Additionally this method is called when the hurt animation is displayed client-side by dealing 0 unblockable damage to the enderman.
This could be solved by either adding an "is server" check in the method EntityEnderman.teleportRandomly()
or maybe even better in the method net.minecraft.entity.monster.EntityEnderman.attackEntityFrom(DamageSource, float)
.
Linked issues
is duplicated by 2
Attachments
Comments 8
So the client teleports the enderman too and not only the server.
This cause problems if the server cancel the teleport.
This is clearly an issue, and a fix is already provided.
Is this still an issue in the latest snapshot 16w44a? If so please update the affected versions.
This is an automated comment on any open or reopened issue with out-of-date affected versions.
Isn't this like a feature or request for addition?