jammsen / docker-sons-of-the-forest-dedicated-server

Docker container to easily provision and manage Sons of the Forest Dedicated Server with Wine
https://hub.docker.com/r/jammsen/sons-of-the-forest-dedicated-server
134 stars 19 forks source link

cannot run on synology #24

Closed sahara101 closed 11 months ago

sahara101 commented 11 months ago

Hello I have a synology and I am trying to add the container, but to no avail. The synology runs an AMD CPU.

I opened the ports on mt FW...

UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
Endnight.Utilities.Dedicated.HeadlessLoggingManager:Hook()
Setting up stack trace logging...
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
Endnight.Utilities.Dedicated.HeadlessLoggingManager:Hook()
#DSL [EnvironmentArgs] ...
-userdatapath=/sonsoftheforest/userdata
#DSL User data path is overriden to: Z:\sonsoftheforest\userdata
0110:fixme:nls:GetFileMUIPath stub: 0x10, L"C:\\windows\\system32\\tzres.dll", (null), 000000000010E648, 00000000514213A0, 000000000010E640, 000000000010E5E0
0110:fixme:nls:GetFileMUIPath stub: 0x10, L"C:\\windows\\system32\\tzres.dll", (null), 000000000010E648, 00000000514213A0, 000000000010E640, 000000000010E5E0
0110:fixme:nls:GetFileMUIPath stub: 0x10, L"C:\\windows\\system32\\tzres.dll", (null), 000000000010E648, 00000000514213A0, 000000000010E640, 000000000010E5E0
ERROR: Shader Sprites/Mask shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
UnloadTime: 0.883400 ms
ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM default
ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM default
01b0:fixme:ver:GetCurrentPackageId (000000005335FE10 0000000000000000): stub
0110:fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "llvmpipe (LLVM 11.0.1, 256 bits)").
0110:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0000000055DB0810, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0, mode_count 000000000010EA60, modes 0000000000000000 partial stub!
0110:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0000000055DB0810, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0, mode_count 000000000010EA60, modes 00007F3FF0000010 partial stub!
0110:fixme:system:QueryDisplayConfig (00000002 000000000010EA60 00007F3FF0000010 000000000010EA68 00007F3FF0000070 0000000000000000): semi-stub
#DSL [Self-Tests] Running self tests...
#DSL [Self-Tests] [AppId] App ID is correct.
#DSL [Self-Tests] [Settings] Validating game settings file format...
#DSL [Self-Tests] [Settings] Game settings file is valid.
#DSL [Self-Tests] [Config] Validating server config file and command line arguments...
#DSL Server configuration is valid. More... 
{
  "IpAddress": "0.0.0.0",
  "GamePort": 8766,
  "QueryPort": 27016,
  "BlobSyncPort": 9700,
  "ServerName": "jammsen-docker-generated-3933",
  "MaxPlayers": 8,
  "Password": "",
  "LanOnly": false,
  "SaveSlot": 1,
  "SaveMode": "Continue",
  "GameMode": "Normal",
  "SaveInterval": 600,
  "IdleDayCycleSpeed": 0.0,
  "IdleTargetFramerate": 5,
  "ActiveTargetFramerate": 60,
  "LogFilesEnabled": false,
  "TimestampLogFilenames": true,
  "TimestampLogEntries": true,
  "SkipNetworkAccessibilityTest": false,
  "GameSettings": {},
  "CustomGameModeSettings": {}
}
#DSL [Self-Tests] [Config] Dedicated Server configuration file is valid.
#DSL [Self-Tests] [Networking] Testing public accessibility...
0058:fixme:nsi:ipv6_forward_enumerate_all not implemented
0058:fixme:nsi:ipv6_forward_enumerate_all not implemented
01d8:fixme:iphlpapi:NotifyAddrChange (Handle 0000000059230018, overlapped 0000000059230020): stub
01f4:fixme:wbemprox:wbem_locator_ConnectServer unsupported flags
01f4:fixme:wbemprox:client_security_SetBlanket 000000005AC20E80, 000000000266BE60, 10, 0, (null), 3, 3, 0000000000000000, 0
01f4:fixme:wbemprox:client_security_Release 000000005AC20E80
01d8:fixme:win:RegisterSuspendResumeNotification 0000000058B3FA00, 0x2: stub.
0058:fixme:mountmgr:harddisk_ioctl The DISK_PARTITION_INFO and DISK_DETECTION_INFO structures will not be filled
0058:fixme:mountmgr:harddisk_ioctl The DISK_PARTITION_INFO and DISK_DETECTION_INFO structures will not be filled
01f4:fixme:wbemprox:enum_class_object_Next timeout not supported
0058:fixme:mountmgr:query_property Faking StorageDeviceProperty data
0058:fixme:mountmgr:harddisk_ioctl The DISK_PARTITION_INFO and DISK_DETECTION_INFO structures will not be filled
0058:fixme:mountmgr:query_property Faking StorageDeviceProperty data
0058:fixme:mountmgr:harddisk_ioctl The DISK_PARTITION_INFO and DISK_DETECTION_INFO structures will not be filled
Setting breakpad minidump AppID = 1326470
0200:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 0000000059A2FE10
01f8:fixme:cryptnet:check_ocsp_response_info check responder id
01f8:fixme:cryptnet:check_ocsp_response_info check responder id
src\clientdll\steamengine.cpp (3003) : Assertion Failed: Attempt to call interface with invalid hSteamUser /+/ 1, appid=1326470, hpipe=131073, inprocess, thread=472
src\clientdll\steamengine.cpp (3003) : Assertion Failed: Attempt to call interface with invalid hSteamUser /+/ 1, appid=1326470, hpipe=131073, inprocess, thread=472
src\common\interfacemap.cpp (890) : Assertion Failed: IPC call to IClientHTTP::ReleaseHTTPRequest returned failure code 12
0110:fixme:iphlpapi:CancelIPChangeNotify (overlapped 0000000059230020): stub
0110:fixme:win:UnregisterSuspendResumeNotification 00000000DEADBEEF: stub.
src\common\interfacemap.cpp (890) : Assertion Failed: IPC call to IClientHTTP::ReleaseHTTPRequest returned failure code 12
#DSL [Self-Tests] [Networking] Testing server ports against public ip xxx...
#DSE [Self-Tests] [Networking] UDP GamePort [8766] is closed. Please fix and restart.
#DSE [Self-Tests] [Networking] UDP QueryPort [27016] is closed. Please fix and restart.
#DSE [Self-Tests] [Networking] UDP BlobSyncPort [9700] is closed. Please fix and restart.
#DSE [Self-Tests] [Networking] Some ports are closed or already in use and the game server will not be accessible. You may need to setup port forwarding and open them in your firewall, or change port numbers if they are used by some other software. Alternatively, consider using the LanOnly configuration if you didn't intend to make your server public. Please fix and restart.
#DSE [Self-Tests] Please restart the server.

Thank you!

jammsen commented 11 months ago

First of a question: Why did you not use my issue template? It contains questions about your setup, what going wrong and helps me to narrow down how to help you ... Also i dont have to manually edit your comment so i can barely read logs to make me able to be able to help you ... Sometimes its not as easy as "here is my error ... go fix it for me".

While i would prefer you use the issue template or make a new issue to give me any hint of usefull information to help you, im gonna try to help you here.

According to your logs you run into the error:

DSL [Self-Tests] [Networking] Testing server ports against public ip xxx...

DSE [Self-Tests] [Networking] UDP GamePort [8766] is closed. Please fix and restart.

DSE [Self-Tests] [Networking] UDP QueryPort [27016] is closed. Please fix and restart.

DSE [Self-Tests] [Networking] UDP BlobSyncPort [9700] is closed. Please fix and restart.

DSE [Self-Tests] [Networking] Some ports are closed or already in use and the game server will not be accessible. You may need to setup port forwarding and open them in your firewall, or change port numbers if they are used by some other software. Alternatively, consider using the LanOnly configuration if you didn't intend to make your server public. Please fix and restart.

DSE [Self-Tests] Please restart the server.

Possible reasons:

Please check the above - Sometimes your ISP can have weird setups that does expose multiple customers on shared-ips, do you know if your ISP is doing something like this?

If nothing helps we can change a config setting that could be of help.

sahara101 commented 11 months ago

Hi, sorry for the abysmal way of opening the issue.

I will try to add some background:

Synology rs1221+ with 32 GB Ram and AMD CPU v1500 Docker is created using the docker-compose file as a stack in portainer.

Port forward is done correctly on the router side...as I have other ports.

Docker is configured in bridge mode as all my other containers. I also tried macvlan but same issue.

I am now deleting the whole config and trying again.

Thanks!

jammsen commented 11 months ago

I am now deleting the whole config and trying again.

Yeah ofc you can try that.

From what else your describe it should be working ... so lets go the last way route then ...

Background: You have seen this part in your log-output right? Focus on the "Server configuration is valid" part!

DSL [Self-Tests] Running self tests...

DSL [Self-Tests] [AppId] App ID is correct.

DSL [Self-Tests] [Settings] Validating game settings file format...

DSL [Self-Tests] [Settings] Game settings file is valid.

DSL [Self-Tests] [Config] Validating server config file and command line arguments...

DSL Server configuration is valid. More...

{ "IpAddress": "0.0.0.0", "GamePort": 8766, "QueryPort": 27016, "BlobSyncPort": 9700, "ServerName": "jammsen-docker-generated-3933", "MaxPlayers": 8, "Password": "", "LanOnly": false, "SaveSlot": 1, "SaveMode": "Continue", "GameMode": "Normal", "SaveInterval": 600, "IdleDayCycleSpeed": 0.0, "IdleTargetFramerate": 5, "ActiveTargetFramerate": 60, "LogFilesEnabled": false, "TimestampLogFilenames": true, "TimestampLogEntries": true, "SkipNetworkAccessibilityTest": false, "GameSettings": {}, "CustomGameModeSettings": {} }

In there the config file for your server is parsed and validated as you can see. Look at the value "SkipNetworkAccessibilityTest" its set to false. This is willingly be default because your or ANY setup SHOULD be able to use this in an ideal configuration. But sometimes you can only do so much on your end and the ISP is where flaw is to search. Thats why this variable exists, it wasnt on release implemented but many had exactly theese problems. The way out is you can set this to true in your config and the "Network-Tests" will be skipped at server start. Consider this a Warning! This should only be used if anything else doesnt work. So please make sure on your end everything is good before and its still not working, because anything network-related will be skipped, which can lead to another set of problems maybe.

Hope thats helps.

sahara101 commented 11 months ago

well, the issue was stupid. My router did not save the config, I saw on a refresh that no ports were open..

Couldn't create a Convex Mesh from source mesh "SmallRiverRockCA" within the maximum polygons limit (256). The partial hull will be used. Consider simplifying your mesh.
WARNING: Shader Unsupported: 'Sons/Global Wetness/SmallDrops' - All subshaders removed
#DSL Loading progress: 80
#DSL Loading progress: 100
ERROR: Shader Hidden/Crest/Inputs/Animated Waves/Gerstner Batch Global shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
#DSL Server empty, idling...
ERROR: Shader TextMeshPro/Sprite shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
#DSL Set target framerate: 5
#DSL Dedicated server loaded.
#DSL Autosave complete. Time: 2023-08-20 15:31:43 Slot: 1
Couldn't create a Convex Mesh from source mesh "SmallRiverRockCD" within the maximum polygons limit (256). The partial hull will be used. Consider simplifying your mesh.
The referenced script on this Behaviour (Game Object '<null>') is missing!
WARNING: Shader Did you use #pragma only_renderers and omit this platform?
WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
ERROR: Shader Sons/Global Wetness/SmallDrops shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
ERROR: Shader Unlit/Color shader is not supported on this GPU (none of subshaders/fallbacks are suitable)

Not sure about the other errors but I will test this.

Thanks again!

sahara101 commented 11 months ago

Working, thanks!

jammsen commented 11 months ago

Happy to hear that, have fun!