adde0109 / Ambassador

This is a Velocity plugin that makes it possible to host a modern forge server behind a Velocity proxy!
GNU Lesser General Public License v2.1
85 stars 18 forks source link

Unable to connect to All The Mods 7 To the Skies using Ambassador and Legacy Auth #39

Closed LurgenAU closed 1 year ago

LurgenAU commented 1 year ago

When connecting via Velocity 3.2.0 snapshot 265 to a Magma 1.18.2 back-end (version b3448c1f) using Legacy Authentication clients reach the "downloading world" stage, then are immediately disconnected. The first time this happens we get this console message:

Server thread/WARN22:48:48
java.util.NoSuchElementException: packet_handler
at MC-BOOTSTRAP/io.netty.all@4.1.68.Final/io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1073)
at MC-BOOTSTRAP/io.netty.all@4.1.68.Final/io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:248)
at MC-BOOTSTRAP/io.netty.all@4.1.68.Final/io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:237)
at eu.decentsoftware.holograms.api.nms.PacketListener.hook(PacketListener.java:49)
at eu.decentsoftware.holograms.api.player.PlayerListener.lambda$onJoin$1(PlayerListener.java:24)
at TRANSFORMER/forge@40.2.10/org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:102)
at TRANSFORMER/forge@40.2.10/org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:417)
at TRANSFORMER/minecraft@1.18.2/net.minecraft.server.MinecraftServer.m_5703_(MinecraftServer.java:1205)
at TRANSFORMER/minecraft@1.18.2/net.minecraft.server.dedicated.DedicatedServer.m_5703_(DedicatedServer.java:424)
at TRANSFORMER/minecraft@1.18.2/net.minecraft.server.MinecraftServer.m_5705_(MinecraftServer.java:1156)
at TRANSFORMER/minecraft@1.18.2/net.minecraft.server.MinecraftServer.m_130011_(MinecraftServer.java:954)
at TRANSFORMER/minecraft@1.18.2/net.minecraft.server.MinecraftServer.m_177918_(MinecraftServer.java:263)
at java.base/java.lang.Thread.run(Thread.java:833)
handleDisconnection() called twice

Subsequent attempts don't see any messages at all. I've tried using proxy-compatible-forge without success, and bungeeforge just tells me I haven't enabled BungeeCord in the config (I have). I'm keen to utilise Legacy authentication in my setup since I have some 1.12.2 boxes lingering around.

Any ideas where I can start? I've removed any optimisation mods, and anything unusual that I can see without success.

LurgenAU commented 1 year ago

I did manage to get BungeeForge working, and that allows me to connect but messes up the player UUID instead of passing it through correctly from the proxy.

unilock commented 1 year ago

You have Ambassador on the (legacy mode) Velocity proxy and BungeeForge and Proxy Compatible Forge on the backend, correct? That's the setup I need to get Forge ≥1.13 working. Although I've never used any "Bukkit on Forge" software, as they tend to break in strange ways.

C0D3-M4513R commented 1 year ago

ATM7 version 1.0.0 via Velocity with modern forwarding has a similar issue on Magma. I'd probably say though it's probably some combination of Magma and Velocity that causes issues here. Not Ambassador itself. This is based upon us using Forced Hosts on Velocity and it still not working.

I'd open a Gitlab/Discord tickets to Magma, especially since plain forge connection worked on ATM7 version 1.0.0 with Magma. Please note that there are no active devs on Magma that do Tickets anymore though. I was a dev there until I decided it felt like too much of a job.

LurgenAU commented 1 year ago

Thank you, I'll consider opening a ticket but as you say not a whole lot is likely to happen there. Time to fire up ArcLight!

BTW, I appreciate your work on Ambassador. It's a desperately needed tool that appears to work extremely well. Thank you.