ViaRewind icon indicating copy to clipboard operation
ViaRewind copied to clipboard

1.8.8 ViaRewind keepalive kick on 1.21.*

Open professorparabellum opened this issue 5 months ago • 15 comments

/viaversion dump Output

https://dump.viaversion.com/2afe95b9442e2c1875f251ebec09fe4447d07c81576abc3c58e46a299ea281a9

Console Error

[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.038ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-808]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.037ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-809]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.043ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-810]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.098ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-811]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.047ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-812]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.044ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-813]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.026ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-814]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.037ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-815]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.035ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-816]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.035ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-817]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.035ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-818]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_POSITION_AND_ROTATION (0.264ms) (34 bytes) positionChanged=true rotationChanged=true location=Location {[X: 11.663154256005662, Y: 100.00133597911214, Z: -0.44418565284468886], yaw: -100.346725, pitch: 10.950245} onGround=false horizontalCollision=false Z=ddbf5 b=60925541574403
[01:55:29 INFO]: [LPX] DealWiddit sent CLIENT_TICK_END (0.042ms) (19 bytes) [INSTANCE=ServerboundClientTickEndPacket[], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$3@c4061aa]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_INPUT (0.095ms) (20 bytes) [input=Input[forward=false, backward=false, left=false, right=false, jump=false, shift=false, sprint=true], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$7@2678588f]
[01:55:29 INFO]: [LPX] DealWiddit sent CLIENT_TICK_END (0.040ms) (19 bytes) [INSTANCE=ServerboundClientTickEndPacket[], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$3@c4061aa]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.033ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-819]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.033ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-820]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_POSITION_AND_ROTATION (0.115ms) (34 bytes) positionChanged=true rotationChanged=true location=Location {[X: 11.946962185482908, Y: 100.16610926093821, Z: -0.48623664307470404], yaw: -100.49673, pitch: 10.950245} onGround=false horizontalCollision=false Z=ddbf5 b=60925541574403
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.033ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-821]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_POSITION_AND_ROTATION (0.078ms) (34 bytes) positionChanged=true rotationChanged=true location=Location {[X: 12.23026885062643, Y: 100.24918707874468, Z: -0.5292101234511791], yaw: -100.64672, pitch: 10.950245} onGround=false horizontalCollision=false Z=ddbf5 b=60925541574403
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_INPUT (0.088ms) (20 bytes) [input=Input[forward=true, backward=false, left=false, right=false, jump=false, shift=false, sprint=true], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$7@2678588f]
[01:55:29 INFO]: [LPX] DealWiddit sent CLIENT_TICK_END (0.052ms) (19 bytes) [INSTANCE=ServerboundClientTickEndPacket[], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$3@c4061aa]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.070ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-822]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_POSITION_AND_ROTATION (0.129ms) (34 bytes) positionChanged=true rotationChanged=true location=Location {[X: 12.513081586895298, Y: 100.24918707874468, Z: -0.573219789369483], yaw: -101.096725, pitch: 10.950245} onGround=false horizontalCollision=false Z=ddbf5 b=60925541574403
[01:55:29 INFO]: [LPX] DealWiddit sent CLIENT_TICK_END (0.074ms) (19 bytes) [INSTANCE=ServerboundClientTickEndPacket[], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$3@c4061aa]
[01:55:29 INFO]: [LPX] DealWiddit sent PLAYER_POSITION_AND_ROTATION (0.233ms) (34 bytes) positionChanged=true rotationChanged=true location=Location {[X: 12.795392237675978, Y: 100.1707870772188, Z: -0.618433406136127], yaw: -101.696724, pitch: 10.650245} onGround=false horizontalCollision=false Z=ddbf5 b=60925541574403
[01:55:29 INFO]: [LPX] DealWiddit sent CLIENT_TICK_END (0.088ms) (19 bytes) [INSTANCE=ServerboundClientTickEndPacket[], STREAM_CODEC=net.minecraft.network.codec.StreamCodec$3@c4061aa]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.100ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-823]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.064ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-824]
[01:55:29 INFO]: [LPX] DealWiddit sent PONG (0.054ms) (23 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@26782dff, id=-825]
[01:55:29 INFO]: [LPX] DealWiddit sent KEEP_ALIVE (0.069ms) (16 bytes) [STREAM_CODEC=net.minecraft.network.codec.StreamCodec$2@6ce68eaa, id=1104644172]
[01:55:29 INFO]: Disconnecting DealWiddit for sending keepalive response (1104644172) out-of-order!
[01:55:29 INFO]: DealWiddit lost connection: Timed out.

Bug Description

this recent paper patch is very ruthless with players on legacy clients as any sort of delay or stuttering (e.g. high ping, low fps) will cause them to get kick instantaneously after they send a keepalive packet.

it also has no care for if its actually the player or the netty thread being congested, since its time between player and main thread not player and server. this is more of a paper issue but i made an issue on their repo and they told me to go here instead

Demo: https://youtu.be/Vq8uhkEsET4

Steps to Reproduce

Join a server with ViaVersion, ViaBackwards, ViaRewind on a 1.8.8 client
Turn on 3D Anagylph to make your game stutter/freeze on purpose
Wait 2 or 3 seconds
Get kicked

Expected Behavior

players on 1.8.8 are able to join and play normally, without getting kicked when their game stutters

Additional Server Info

Was not able to reproduce on 1.12.2

Checklist

  • [x] Via plugins are only running on EITHER the backend servers (e.g. Paper) OR the proxy (e.g. Velocity), not on both.
  • [x] I have included a ViaVersion dump.
  • [x] If applicable, I have included a paste (not a screenshot) of the error.
  • [x] I have tried the latest build(s) from https://ci.viaversion.com/ and the issue still persists.
  • [x] I have looked at https://www.spigotmc.org/resources/viarewind-legacy-support.52924/ and it does not offer a fix for my problem

professorparabellum avatar Jul 26 '25 02:07 professorparabellum