sebastienvercammen / valheim-SebNetCompressionPlugin

2 stars 0 forks source link

G-Portal Dedicated server unable to connect #2

Closed angelpcadena closed 3 years ago

angelpcadena commented 3 years ago

Hi, I'm trying to start my dedicated server rented in G-Portal with this plugin installed but I'm getting some console errors when trying to join (not on startup)

Server log files: [Error : Unity Log] FileNotFoundException: Could not load file or assembly 'System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. Stack trace: ZstdNet.Decompressor.Unwrap (System.Byte[] src, System.Int32 maxDecompressedSize) (at <61667199ca9f4f9f945bead7ed7fdfbe>:0) SebNetCompressionPlugin.SebNetCompressionPlugin.Decompress (System.Byte[] data) (at <61667199ca9f4f9f945bead7ed7fdfbe>:0) SebNetCompressionPlugin.SebNetCompressionPlugin.ZSteamSocketRecv (ZPackage& __result) (at <61667199ca9f4f9f945bead7ed7fdfbe>:0) (wrapper dynamic-method) ZSteamSocket.DMD<ZSteamSocket::Recv>(ZSteamSocket) ZRpc.Update (System.Single dt) (at <bf9bd142b7c04f32b4e15d64d8018201>:0) ZNet.UpdatePeers (System.Single dt) (at <bf9bd142b7c04f32b4e15d64d8018201>:0) ZNet.Update () (at <bf9bd142b7c04f32b4e15d64d8018201>:0)

Both client and server have the plugin Both client and server have Bepinex Full Autoupdater

I've checked doorstop config on my server and it points at the right address for the core_libs

angelpcadena commented 3 years ago

Found another entry in the server.log on startup

[Debug : BepInEx] Skipping loading /home/sid_405947/valheim/BepInEx/plugins/SebNetCompressionPlugin/libzstd.dll because it's not a valid .NET assembly. Full error: Format of the executable (.exe) or library (.dll) is invalid.

sebastienvercammen commented 3 years ago

Hey @angelpcadena,

This part is not an error, this is OK and intentional:

Skipping loading /home/sid_405947/valheim/BepInEx/plugins/SebNetCompressionPlugin/libzstd.dll because it's not a valid .NET assembly.

This part, however:

FileNotFoundException: Could not load file or assembly 'System.Memory

means you're missing critical DLLs that are part of the BepInEx Valheim Full pack which you can find here.

If your server is running the Updater, please open doorstop_config.ini and make sure that it says dllSearchPathOverride=BepInEx\core_lib on the very last line. Anything else will not work.

The new version of the Updater, being released in 1 or 2 days, will include a feature to automatically patch configuration files to avoid this kind of problem.

Let me know if that helped fix it.

And don't hesitate to reach out to G-Portal support. They're the most qualified to tell you how their environment works.

angelpcadena commented 3 years ago

Hi, thanks for your reply!

I reinstalled the plugin, reinstalled BepInEx Valheim Full, double checked doorstop_config.ini for the correct path, but still I'm unable to connect :(

On my client, there's a little window saying "Connecting..." and on the server I still get the FileNotFoundException: Could not load file or assembly System.Memory error on the log file.

sebastienvercammen commented 3 years ago

On my client, there's a little window saying "Connecting..." and on the server I still get the FileNotFoundException:

Your client is probably running the plugin but the server isn't, which causes this issue in communication.

If your server is running Linux, it doesn't use the doorstop_config.ini and you'll have to edit your server launch script (the .sh file you start your server with). It will have an entry called DOORSTOP_CORLIB_OVERRIDE_PATH which needs to point at BepInEx/core_lib (forward slash for Linux).

If you're not sure about where to find the launch script, you may need to get in touch with G-Portal.

angelpcadena commented 3 years ago

image

:(

sebastienvercammen commented 3 years ago

:(

One recurring feeling about game server providers: "ugh..."

You pay them for a service, and when you need your service to work they're nowhere to be found.

I'll take a look at adjusting the releases so they're compatible with the most common launch scripts of game server providers, which would fix this issue for you.

angelpcadena commented 3 years ago

Thank you so much for your answers and effort 👌

sebastienvercammen commented 3 years ago

Hey @angelpcadena, this is now fixed in the last release of the Full pack (v1.0.5), which uses unstripped_corlib instead of the custom subdirectory (same as the old pack and Valheim+): https://valheim.thunderstore.io/package/1F31A/BepInEx_Valheim_Full/

angelpcadena commented 3 years ago

Just tested it, I had to update Valheim Full manually even though I have Valheim Full Updater.

Worked like a charm! thank you