The knockback example was attached before I knew that bug report was the root cause. That’s what I thought was related to this report. This is a separate issue, maybe more so a feature request, because if you actually try forcing impulses to true at all times, you will notice a difference. Try it out for yourself.
Discovered a fix:
In ChunkMap, removeEntity calls broadcastRemoved. Simply remove the call to broadcastRemoved for ServerPlayer in the isDeadOrDying state. This fixes the issue without causing respawn issues.
This is caused because of how LivingEntity handles death events. When an entity is killed and finishes their death animation, RemovalReason “KILLED” is called which removes said entity from chunk tracking. While this works for regular entities, players can still see the world on the death screen, and being “removed” as a player causes a ghost world state where all ticks are frozen, entities stop updating, and block updates are ignored.
Figured it out, ServerPlayer returns isClientLoaded(false) when “die” is called. This causes the client to stop sending movement updates on the death screen to every other player on the server
Theres no non-directional tilt handling in GameRenderer, the client side class that handles damage tilt. It’s as simple as making it so any DamageTypes that are non-directional redirect to a default left/right tilt.
Can confirm, with the local difficulty at the highest I see a lot of copper and leather armored mobs, but gold and iron armored mobs were much less frequent and a pretty rare sight.
This visual inconsistency causes issues with targeted commands/ effects, where it prioritizes the server players death location over the client players “fake” death location after taking knockback
On the client players death screen, it still shows them taking knockback from the source. However, on the server side, other players will just see you stationary.
Sorry about that, got it fixed up
3060ti, framerates average around 400 on a fresh world AFTER chunk loading with 12 render and simulation distance. During chunk loading it can see dips down to 200 with consistent spikes. Having a busy world with a sizeable amount of entities can see dips down to 200-90.
Still in 1.21.5 and 1.21.6 snapshots.
Can confirm in 1.21.5 and 1.21.6 snapshots. Explosions look incredibly unappealing without these
Can confirm, lag spikes are much more severe and noticeable
I do admit my analyzation was a little rough because I’m only checking modern code rather than old code. But it does seem that it’s simply just outdated networking code that wouldn’t hurt to be updated. Making it configurable even, allowing server/clients to control the update/interpolation rates depending on what their system can handle.