Devidian / docker-spaceengineers

A Docker for Space Engineers Dedicated Server
87 stars 21 forks source link

Steam port is not included in default image #31

Closed CorneliusCornbread closed 3 months ago

CorneliusCornbread commented 1 year ago

So for docker setups that use a custom network or bridge networking for the server to be able to download mods and interface with Steam's server system the port 8766 over TCP needs to be forwarded as per the port in the Space-Engineers.cfg file. Forwarding this port allows Steam's services to properly run.

Devidian commented 1 year ago

Hi, thanks for this notice. This seems to be a rare edge case as nobody else did mention that before. Could you please add information how you did setup your server and a screenshot of the error message you got before opening the port, to confirm that this is an issue for that case?

Then i might be able to confirm it too and add a proper description to that change.

CorneliusCornbread commented 1 year ago

In your server config make sure the network type is set to Steam and install some mods into your world. Upon updating the mods it'll give you an error in Docker with the following:

2022-11-22 18:10:30.628: Networking service: Steam
2022-11-22 18:10:30.628: Server successfully started
2022-11-22 18:10:30.628: Product name: Space Engineers
2022-11-22 18:10:30.628: Desc: Space Engineers
2022-11-22 18:10:30.628: Public IP: 24.209.154.251
2022-11-22 18:10:30.628: User ID: [009...517]
2022-11-22 18:10:30.628: Server connected to Steam
2022-11-22 18:10:31.074: Server Name: Official eTards Space Engineers Server
2022-11-22 18:10:31.074: World Name: etards server
2022-11-22 18:10:35.558: Loading Sandbox world configuration file Z:\appdata\space-engineers\instances\name\Saves\world\Sandbox_config.sbc
2022-11-22 18:10:35.560: Sandbox world configuration file found, overriding checkpoint settings.
2022-11-22 18:10:35.560: Downloading world mods - START
2022-11-22 18:10:35.560: Server PolicyResponse (1)
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:806331071
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:1918681825
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:1521905890
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899: Reference issue detected (circular reference or wrong order) for mod Steam:1918681825
2022-11-22 18:10:35.903: Server disconnected (NoConnection)
2022-11-22 18:10:35.910: Downloading world mods - END
2022-11-22 18:10:35.914: Unable to download mods
2022-11-22 18:10:35.914: Exiting..
2022-11-22 18:10:38.222: Logging off Steam...
2022-11-22 18:10:38.223: Shutting down server...
CWorkThreadPool::~CWorkThreadPool: work complete queue not empty, 3 items discarded.
CWorkThreadPool::~CWorkThreadPool: work processing queue not empty: 1 items discarded.
2022-11-22 18:10:39.258: Done
Setting breakpad minidump AppID = 244850

The log for the server will also show that it cannot connect to Steam for updating the mods

2022-11-22 18:10:31.074 - Thread:   1 ->  Server Name: name
2022-11-22 18:10:31.074 - Thread:   1 ->  World Name: world
2022-11-22 18:10:31.077 - Thread:   1 ->  MySandboxGame.Initialize() - START
2022-11-22 18:10:31.077 - Thread:   1 ->     Installed DLCs: 
2022-11-22 18:10:31.094 - Thread:   1 ->     MyGuiGameControlsHelpers()
2022-11-22 18:10:31.131 - Thread:   1 ->     Havok: Physics.Init
2022-11-22 18:10:31.303 - Thread:   1 ->     Havok: Version: Release(0), 1800, [S}
2022-11-22 18:10:31.326 - Thread:   1 ->     HkGameName: SpaceEngineers
2022-11-22 18:10:31.334 - Thread:   1 ->     MySandboxGame.LoadData() - START
2022-11-22 18:10:31.334 - Thread:   1 ->        MyDefinitionManager.LoadScenarios() - START
2022-11-22 18:10:31.337 - Thread:   1 ->           89345cb23748ab6e8238ce0513342eaa5bbec596
2022-11-22 18:10:31.505 - Thread:   1 ->           Loading scenarios
2022-11-22 18:10:31.523 - Thread:   1 ->        MyDefinitionManager.LoadScenarios() - END
2022-11-22 18:10:31.523 - Thread:   1 ->        MyDefinitionManager.PreloadDefinitions() - START
2022-11-22 18:10:31.677 - Thread:   1 ->           Loading OffensiveWords definitions
2022-11-22 18:10:31.677 - Thread:   1 ->           WARNING: Unexpected behaviour may occur due to redefinition of 'Offensive Words'
2022-11-22 18:10:31.677 - Thread:   1 ->        MyDefinitionManager.PreloadDefinitions() - END
2022-11-22 18:10:31.682 - Thread:   7 ->  MySandboxGame.PerformPreload() - START
2022-11-22 18:10:31.683 - Thread:   1 ->     MySandboxGame.LoadData() - END
2022-11-22 18:10:31.684 - Thread:   7 ->  MyDefinitionManager.GetSessionPreloadDefinitions() - START
2022-11-22 18:10:32.020 - Thread:   7 ->  MyDefinitionManager.GetSessionPreloadDefinitions() - END
2022-11-22 18:10:32.020 - Thread:   7 ->  MySandboxGame.PerformPreload() - PRELOAD VANILLA SOUNDS AND VOXELS
2022-11-22 18:10:32.020 - Thread:   7 ->  ReloadVoxelMaterials
2022-11-22 18:10:32.066 - Thread:   7 ->  MyDefinitionManager.GetSessionPreloadDefinitions() - START
2022-11-22 18:10:35.558 - Thread:   1 ->     Loading Sandbox world configuration file Z:\appdata\space-engineers\instances\etards-server\Saves\etards server\Sandbox_config.sbc
2022-11-22 18:10:35.560 - Thread:   1 ->     Sandbox world configuration file found, overriding checkpoint settings.
2022-11-22 18:10:35.560 - Thread:   8 ->  Downloading world mods - START
2022-11-22 18:10:35.560 - Thread:   1 ->     Server PolicyResponse (1)
2022-11-22 18:10:35.898 - Thread:  13 ->  Mod dependencies query successful
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:806331071
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:1918681825
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:1521905890
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:758597413
2022-11-22 18:10:35.899 - Thread:   8 ->     Reference issue detected (circular reference or wrong order) for mod Steam:1918681825
2022-11-22 18:10:35.903 - Thread:   1 ->     Server disconnected (NoConnection)
2022-11-22 18:10:35.905 - Thread:  13 ->  Error during mod dependencies query: NoConnection
2022-11-22 18:10:35.907 - Thread:   8 ->     MyWorkshop.GetItemsBlocking: getting 69 items
2022-11-22 18:10:35.910 - Thread:  13 ->  Error during mod query: NoConnection
2022-11-22 18:10:35.910 - Thread:   8 ->     Could not obtain all workshop item details, expected 69, got 0
2022-11-22 18:10:35.910 - Thread:   8 ->  Downloading world mods - END
2022-11-22 18:10:35.914 - Thread:   1 ->     Unable to download mods
2022-11-22 18:10:35.914 - Thread:   1 ->  MySandboxGame.Initialize() - END
2022-11-22 18:10:35.914 - Thread:   1 ->  Timer Frequency: 10000000
2022-11-22 18:10:35.914 - Thread:   1 ->  Ticks per frame: 166667
2022-11-22 18:10:35.914 - Thread:   1 ->  Exiting..
2022-11-22 18:10:35.914 - Thread:   1 ->  MySandboxGame.UnloadData() - START
2022-11-22 18:10:35.917 - Thread:   1 ->  MySandboxGame.UnloadData() - END
2022-11-22 18:10:35.917 - Thread:   1 ->  Havok memory statistics:

Here's my setup in Unraid, TL;DR you have to add the port you see in your SpaceEngineers-Dedicated.cfg file in the <SteamPort> entry, I believe by default it is 8766. It was 8766 for me by default and I did not choose that port image

CorneliusCornbread commented 1 year ago

Something of note, this also happens when Steam's services are down for maintenance as they are for today. There's nothing you can do about that other than wait for Steam's services to come back.

Devidian commented 1 year ago

Well thanks for the additions, as soon as i can spare some time i will investigate that, probably starting next year because of xmas/ny, but maybe somewhere between :)