tomkeuper/BedWars2023

Respawning method incompatibility

Closed this issue · 4 comments

Make sure to check before creating a Bug Report

  • The issue isn't already found on the Issue tracker.
  • My issue is about BedWars2023 and not any addon.
  • The issue isn't already fixed in a Release or Development Build.
  • I have checked all boxes without reading them.

Type of problem

Gameplay Bug

What happened?

After dying and being respawned players on Minecraft 1.8.9 or lower would get glitched, I think this issue is result of how player is respawned, but I'm not sure.

Expected Behaviour

It would be nice if we could find root cause of this issue and possibly a fix.

How to Reproduce

Install BedWars, ViaVersion, ViaBackwards, ViaRewind
Start, server, create map, join map... normal gameplay, ...
Then jump into void with 1.8.9 client, after respawning 1.8 clients would sometimes see respawn button, sometimes it's even not clickable but that's not the main issue...
The main issue is movement for 1.8 clients would be off, it's like they'd get desynced just by a bit, enough to make it unplayable

Furthermore, doing /bw leave would fix the issue and 1.8 clients would no longer glitch in BW Lobby

I tried 1.1.1, latest DEV, and custom build with removed "public static void sendPacket(Player player, Packet<?> packet)" in v1_20_R3 which means none of the NMS packets would be sent... but none if it fixed the issue.

We also have Skygrid server and I could replicate the issue there. I think respawning is the issue tho and I'm not sure why changing world would fix it.

Also all this is behind Velocity proxy. Via plugins are updated to latest version.

Console Log

No response

Errors

No response

Additional Info

No response

Do you have some logs? server info? proof?

A delay has been added to the respawn function. Hopefully this fixes the issue

A delay has been added to the respawn function. Hopefully this fixes the issue

i don't have the issue now , i guess it's fixed

Sorry for late reply, yes adding delay to respawn did indeed fix the issue, just adding this here for future reference if needed:

Bukkit.getScheduler().runTask(BedWars.plugin, () -> victim.spigot().respawn());

20f0e6f