packetevents
packetevents copied to clipboard
PacketType.Play.Server.PARTICLE - Server kick
Describe the bug
The bug has something to do with PacketType.Play.Server.PARTICLE. The simple act to listening to this packet and invoking new WrapperPlayServerParticle(event) causes all clients whom this packet is being sent to, to be disconnected from the server when the sent packet is the block particle packet.
Perhaps this has something to do with that data field?
Software brand Paper Spigot 1.12.2
Plugins N/A - Private/Custom plugins, so giving this won't help.
How To Reproduce
- Register a packet listener with the following code.
@Override //todo: bug, player can see vanish player on login public void onPacketSend(PacketSendEvent event) { if (event.getPacketType() == PacketType.Play.Server.PARTICLE) { WrapperPlayServerSoundEffect particle= new WrapperPlayServerParticle(event); } }
- Get an alt on, and jump from really high up. When this happens, the alt should receive these particles
- But... if the new WrapperPlayServerSoundEffect(event) line was executed from step 1, the alt will be kicked from the server. Attempting to print particle.getParticle() will show a null particle.
Expected behavior The expected behavior is to not crash and to not have a null particle.
Screenshots If applicable, add screenshots to help explain your problem.
Additional context Add any other context about the problem here.
The particle id with the bug is 38 and its called blockdust.
https://wiki.vg/index.php?title=Protocol&oldid=13488#Particle_2
I'm not willing to maintain Particle mappings for all these server versions. Maybe someone else is willing to do this.
I can't reproduce this with a 1.12.2 server, has apparently been fixed