elBukkit / MagicPlugin

A Bukkit plugin for spells, wands and other magic
http://mine.elmakers.com
MIT License
247 stars 146 forks source link

Kicks players 1.20.4/1.21.1 when seeing dragon #1370

Open andfont opened 2 months ago

andfont commented 2 months ago

When a client enters 1.20.4 to 1.21.1 they are kicked out of the server when a magic dragon is found. ERROR CLIENT. [14:35:38] [Render thread/WARN]: Shader rendertype_entity_translucent_emissive could not find sampler named Sampler2 in the specified shader program. [14:35:42] [Render thread/ERROR]: Failed to handle packet aez[id=49765, packedItems=[c[id=0, serializer=ajx$$Lambda/0x000001e9576ef678@33e2808e, value=32], c[id=2, serializer=ajx$$Lambda/0x000001e9576ef678@62c63900, value=Optional[empty[siblings=[literal{dragon}]]]], c[id=6, serializer=ajx$$Lambda/0x000001e9576ef678@520dc647, value=STANDING], c[id=4, serializer=ajx$$Lambda/0x000001e9576ef678@4daf3b31, value=true], c[id=15, serializer=ajx$$Lambda/0x000001e9576ef678@33e2808e, value=0], c[id=14, serializer=ajx$$Lambda/0x000001e9576ef678@4273c8be, value=Optional.empty], c[id=12, serializer=ajx$$Lambda/0x000001e9576ef678@17a364, value=0], c[id=13, serializer=ajx$$Lambda/0x000001e9576ef678@17a364, value=0], c[id=8, serializer=ajx$$Lambda/0x000001e9576ef678@33e2808e, value=0], c[id=9, serializer=ajx$$Lambda/0x000001e9576ef678@343a8b18, value=300.0], c[id=11, serializer=ajx$$Lambda/0x000001e9576ef678@4daf3b31, value=false], c[id=10, serializer=ajx$$Lambda/0x000001e9576ef678@7ba8b91c, value=[]], c[id=1, serializer=ajx$$Lambda/0x000001e9576ef678@17a364, value=300], c[id=3, serializer=ajx$$Lambda/0x000001e9576ef678@4daf3b31, value=false], c[id=7, serializer=ajx$$Lambda/0x000001e9576ef678@17a364, value=0], c[id=5, serializer=ajx$$Lambda/0x000001e9576ef678@4daf3b31, value=false], c[id=16, serializer=ajx$$Lambda/0x000001e9576ef678@17a364, value=0]]] java.lang.IllegalStateException: Invalid entity data item type for field 15 on entity gec['§L§D§k§u§2§r'/49765, l='ClientLevel', x=-384.00, y=4.00, z=238.00]: old=0.0(class java.lang.Float), new=0(class java.lang.Byte) at aka.a(SourceFile:126) ~[1.21.1.jar:?] at aka.a(SourceFile:117) ~[1.21.1.jar:?] at fzg.a(SourceFile:553) ~[1.21.1.jar:?] at aez.a(SourceFile:54) ~[1.21.1.jar:?] at aez.a(SourceFile:12) ~[1.21.1.jar:?] at zj.a(SourceFile:27) ~[1.21.1.jar:?] at bph.d(SourceFile:162) [1.21.1.jar:?] at bpl.d(SourceFile:23) [1.21.1.jar:?] at bph.B(SourceFile:136) [1.21.1.jar:?] at bph.bB(SourceFile:121) [1.21.1.jar:?] at fgo.c(SourceFile:1240) [1.21.1.jar:?] at fgo.f(SourceFile:882) [1.21.1.jar:?] at net.minecraft.client.main.Main.main(SourceFile:256) [1.21.1.jar:?] [14:35:42] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\bedrock', ignoring [14:35:42] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\MIRAR', ignoring [14:35:42] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\MONTAR_PACK_RECURSOS_SERVER', ignoring [14:35:42] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\old', ignoring [14:35:43] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\temp', ignoring [14:35:43] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\test', ignoring [14:35:43] [Render thread/INFO]: Found non-pack entry 'C:\Users\Aurix.ABF\AppData\Roaming.minecraft\resourcepacks\webs descarga y otros.txt', ignoring [14:35:43] [Render thread/INFO]: Reloading ResourceManager: vanilla, file/Faithful 32x - 1.20.4.zip [14:35:43] [Worker-Main-5/INFO]: Found unifont_all_no_pua-15.1.05.hex, loading [14:35:43] [Worker-Main-3/INFO]: Found unifont_jppatch-15.1.05.hex, loading **[14:35:43] [Render thread/WARN]: Client disconnected with reason: Error de protocolo de red_**

Server: paper 1.19.2 Magic 10.8.3, 10.9, 10.9.1 etc... But I have tested it with all versions and the same thing happens in all of them. Please help!

NathanWolf commented 2 months ago

Your server version is 1.19.2, so you are using viaversion I'm guessing?

This sounds like probably an issue with either viaversion, libsdisguises or possibly protocollib.

I just tested with latest ProtocolLib and LibsDisguises on Spigot 1.21 and it seems fine.

So my suggestion would be to either update your server, or disable the dragons.

andfont commented 2 months ago

Your server version is 1.19.2, so you are using viaversion I'm guessing?

This sounds like probably an issue with either viaversion, libsdisguises or possibly protocollib.

I just tested with latest ProtocolLib and LibsDisguises on Spigot 1.21 and it seems fine.

So my suggestion would be to either update your server, or disable the dragons.

if I use viaversion, regarding libsdisguises and protocollib and it keeps happening it seems that your plugin is not compatible with viaversion and it is a very important and necessary plugin. Currently I need the dragons to work and I am not able to update the server because it is very special and complete, please fix the problem in your plugin since it only happens in those clients, Please try it on 1.19.2 or 1.19.4 as you prefer and you will see the same thing happens. Thank you very much. thank you.

NathanWolf commented 2 months ago

I'm sorry for any misunderstanding, but it's not something I can fix.

My plugin doesn't send any of those packets. It doesn't send packets at all.

This is something specific in your setup with how LibsDisguises and ViaVersion are working (or not working) together for 1.20.5+ clients.

It's probably something you could reproduce without my plugin using LibsDisguises commands, if you'd like to provide a reproduce case and report the issue to them and/or ViaVersion.

The dragons are an invisible disguised player in the swimming position, holding leather horse armor with custom model data. This can all be done without Magic.

If you can't update your server to 1.21 you will need to turn off the dragons if you want players with up to date clients to be able to connect.

andfont commented 2 months ago

I'm sorry for any misunderstanding, but it's not something I can fix.

My plugin doesn't send any of those packets. It doesn't send packets at all.

This is something specific in your setup with how LibsDisguises and ViaVersion are working (or not working) together for 1.20.5+ clients.

It's probably something you could reproduce without my plugin using LibsDisguises commands, if you'd like to provide a reproduce case and report the issue to them and/or ViaVersion.

The dragons are an invisible disguised player in the swimming position, holding leather horse armor with custom model data. This can all be done without Magic.

If you can't update your server to 1.21 you will need to turn off the dragons if you want players with up to date clients to be able to connect.

We disagree because we use the ModelEngine plugin that does the same thing as the dragons and that plugin works perfectly, so we are sure that it is related in some way because if not that plugin would also fail and that plugin works perfectly. We have tested the other plugins and it does not kick the player out only when we use yours, I will try to investigate more but everything indicates that there is something wrong with your plugin. Greetings.

andfont commented 2 months ago

I have already found the error in the code and I have already fixed it in your plugin and disguise had an incompatibility I have already fixed it for me thanks!

NathanWolf commented 2 months ago

Can you please share what you fixed?

NathanWolf commented 2 months ago

@andfont I checked your github but I don't see a fork of Magic.

Can you please share with us what you fixed? If there is an incompatibility in the plugin with LibsDisguises it'd be nice to fix that for everyone.

NathanWolf commented 2 months ago

92b8mm

NathanWolf commented 2 months ago

Please don't close this until I have a fix on my side, so it's not broken for everyone but you.

Can you share what you fixed, or no?