gogoout / vrising-server-arm64

V Rising server running on arm64 using FexEmu and Wine
MIT License
6 stars 0 forks source link

Disconnects all clients randomly #2

Open ewoudje opened 4 months ago

ewoudje commented 4 months ago

The server every so often disconnects all players with these errors. This persists until reboot. I found this with googling, but the solutions specified are quite vague and im unsure on how to apply this for the docker container.

src\steamnetworkingsockets\clientlib\steamnetworkingsockets_lowlevel.cpp (797) : Assertion Failed: GetBestRoute2 failed with result 50 for address 'x.x.x.x:0'
src\steamnetworkingsockets\clientlib\steamnetworkingsockets_lowlevel.cpp (797) : Assertion Failed: GetBestRoute2 failed with result 50 for address 'x.x.x.x:0'

The x.x.x.x are proper IPs.

gogoout commented 4 months ago

Ye, this is a known issue I've put in the readme. I don't know how to solve it unfortunately. Helps are welcome. Also I don't think it's caused by multiple nics, when this happens, the auto save would stop as well, that's how the health check script detects if this happens.

joaop221 commented 2 months ago

Hi Guys, I've tested this image locally and in kubernetes and my conclusion is that the disconections is caused by a memory leak with use o FEX emulator in combination with wine.

This kind of problemas used to fixed in latest versions of these softwares.

To prevent this type of issue I achived an implementation of V Rising ARM64 Server with box84 to run steamcmd and box64 + wine64 to run VRisingServer.exe.

To understant the implemantation and to work in fix of this feature you can check this: https://github.com/joaop221/v-rising-docker-arm64

runboyrun14 commented 2 months ago

@joaop221

Hi Guys, I've tested this image locally and in kubernetes and my conclusion is that the disconections is caused by a memory leak with use o FEX emulator in combination with wine.

This kind of problemas used to fixed in latest versions of these softwares.

To prevent this type of issue I achived an implementation of V Rising ARM64 Server with box84 to run steamcmd and box64 + wine64 to run VRisingServer.exe.

To understant the implemantation and to work in fix of this feature you can check this: https://github.com/joaop221/v-rising-docker-arm64

Using this image is resulting in the following errors.

002c:fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.0.0)
004c:fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.0.0)
0054:fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.0.0)
0054:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x80004002
0054:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x80004002
0054:err:ole:apartment_get_local_server_stream Failed: 0x80004002
0054:err:ole:start_rpcss Failed to open RpcSs service
004c:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x80004002
004c:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x80004002
004c:err:ole:apartment_get_local_server_stream Failed: 0x80004002
joaop221 commented 2 months ago

Hi @runboyrun14.

Are you talking about this repository image or the other referenced in my comment?

It's important to consider that the launching of server is very slow (about 10 min) and some errors/warnings were reported by wine runtime, but the game will be started successfully after some time.

gogoout commented 2 months ago

Emm @joaop221 , which version of box64 are you using? I have a branch which uses box64 but still experiencing the same issue. And during my test I found the box64 version is even slower than fex64.

joaop221 commented 2 months ago

Hey @runboyrun14, Im using latest version of box64/box86, but there are two key differences:

I've cheched that the commom problems of memory leak was caused by the combination of tools. A way to check this is checking resources usage inside container (ps, top are good resources to check up).

deepPanic commented 3 days ago

Hey @runboyrun14, Im using latest version of box64/box86, but there are two key differences:

  • To run steamcmd we need to use only box86, something like this: box84 steamcmd ...args;
  • To run V Rising we combine wine64 + box64 (both at latest version).

I've cheched that the commom problems of memory leak was caused by the combination of tools. A way to check this is checking resources usage inside container (ps, top are good resources to check up).

I have tried running your version but experienced the same issue. The server and saves stopped and there were no errors in the container logs.