Merge pull request #1962 from gOOvER/torch

add TorchAPI for SpaceEngineers
This commit is contained in:
Quinten 2022-11-19 12:44:54 +01:00 committed by GitHub
commit b8f6283590
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 253 additions and 41 deletions

View File

@ -253,6 +253,8 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [multiadmin](game_eggs/steamcmd_servers/scpsl/multiadmin) * [multiadmin](game_eggs/steamcmd_servers/scpsl/multiadmin)
* [Soldat](game_eggs/steamcmd_servers/soldat) * [Soldat](game_eggs/steamcmd_servers/soldat)
* [Space Engineers](game_eggs/steamcmd_servers/space_engineers) * [Space Engineers](game_eggs/steamcmd_servers/space_engineers)
* [default](game_eggs/steamcmd_servers/space_engineers/default)
* [torch](game_eggs/steamcmd_servers/space_engineers/torch)
* [Squad](game_eggs/steamcmd_servers/squad) * [Squad](game_eggs/steamcmd_servers/squad)
* [Starbound](game_eggs/steamcmd_servers/starbound) * [Starbound](game_eggs/steamcmd_servers/starbound)
* [Stationeers](game_eggs/steamcmd_servers/stationeers) * [Stationeers](game_eggs/steamcmd_servers/stationeers)

View File

@ -154,6 +154,8 @@
* [Multiadmin](steamcmd_servers/scpsl/multiadmin) * [Multiadmin](steamcmd_servers/scpsl/multiadmin)
* [Soldat](steamcmd_servers/soldat) * [Soldat](steamcmd_servers/soldat)
* [Space Engineers](steamcmd_servers/space_engineers) * [Space Engineers](steamcmd_servers/space_engineers)
* [default](steamcmd_servers/space_engineers/default)
* [torch](steamcmd_servers/space_engineers/torch)
* [Squad](steamcmd_servers/squad) * [Squad](steamcmd_servers/squad)
* [Starbound](steamcmd_servers/starbound) * [Starbound](steamcmd_servers/starbound)
* [Stationeers](steamcmd_servers/stationeers) * [Stationeers](steamcmd_servers/stationeers)

View File

@ -164,6 +164,8 @@ This is a collection of servers that use SteamCMD to install.
## Space Engineers ## Space Engineers
[Space Engineers](space_engineers) [Space Engineers](space_engineers)
* [default](space_engineers/default)
* [torch](space_engineers/torch)
## Squad ## Squad
@ -199,7 +201,7 @@ This is a collection of servers that use SteamCMD to install.
## The Isle ## The Isle
* [The Isle](the_isle) [The Isle](the_isle)
* [Evrima](the_isle/evrima/) * [Evrima](the_isle/evrima/)
## Tower Unite ## Tower Unite
@ -216,6 +218,6 @@ This is a collection of servers that use SteamCMD to install.
## Valheim ## Valheim
* [Valheim](valheim) [Valheim](valheim)
* [Valheim Vanilla](valheim/valheim_vanilla) * [Valheim Vanilla](valheim/valheim_vanilla)
* [Valheim Plus Mod](valheim/valheim_plus) * [Valheim Plus Mod](valheim/valheim_plus)

View File

@ -3,7 +3,6 @@
### Author & Contributers ### Author & Contributers
| Name | Github Profile | | Name | Github Profile |
| ------------- |-------------| | ------------- |-------------|
| TuEye | https://github.com/TuEye |
| gOOvER | https://github.com/gOOvER | | gOOvER | https://github.com/gOOvER |
@ -13,12 +12,13 @@ Space Engineers is a voxel-based sandbox game set in space and on planets.
**NOTE** **NOTE**
Because of the winetricks installation, the install process could take some time. Likewise, the first start of the server takes its time. Because of the winetricks installation, the install process could take some time. Likewise, the first start of the server takes its time.
When installed, the Server loads a base World and config from this repo. New world must be generated with the Windows Dedicated Server and then uploaded to the /config/Saves folder. **SPECIAL NOTE**
Everything which is not defined in a variable could be edited directy in the config file /config/SpaceEngineers-Dedicated.cfg and config/Saves/{{WORLD}}/Sandbox.sbc When installed, the Server loads a base World and config from this repo. ONLY THIS WORLD IS SUPPORTED.
Everything which is not defined in a variable could be edited directy in the config file /config/SpaceEngineers-Dedicated.cfg and config/Saves/World/Sandbox.sbc
## Server Ports ## Server Ports
Default server ports are listed below, but the Main, STEAm and API port can be any port. Default server ports are listed below, but the Main, STEAM and API port can be any port.
| Port | default | | Port | default |
|-------|---------| |-------|---------|
@ -37,7 +37,3 @@ Based on the information provided by the developer: [See here](https://www.space
### Disk ### Disk
This server uses about 7GB of diskspace. This server uses about 7GB of diskspace.
## Credits
Many parts of this egg are based on the work of [mmmaxwwwell](https://github.com/mmmaxwwwell/space-engineers-dedicated-docker-linux). A thank you therefore goes to him.

View File

@ -1,3 +1,4 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<MyConfigDedicated xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <MyConfigDedicated xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SessionSettings> <SessionSettings>
@ -71,9 +72,6 @@
<FloraDensityMultiplier>1</FloraDensityMultiplier> <FloraDensityMultiplier>1</FloraDensityMultiplier>
<EnableStructuralSimulation>false</EnableStructuralSimulation> <EnableStructuralSimulation>false</EnableStructuralSimulation>
<MaxActiveFracturePieces>50</MaxActiveFracturePieces> <MaxActiveFracturePieces>50</MaxActiveFracturePieces>
<BlockTypeLimits>
<dictionary />
</BlockTypeLimits>
<EnableScripterRole>false</EnableScripterRole> <EnableScripterRole>false</EnableScripterRole>
<MinDropContainerRespawnTime>5</MinDropContainerRespawnTime> <MinDropContainerRespawnTime>5</MinDropContainerRespawnTime>
<MaxDropContainerRespawnTime>20</MaxDropContainerRespawnTime> <MaxDropContainerRespawnTime>20</MaxDropContainerRespawnTime>
@ -114,7 +112,7 @@
<StationsDistanceOuterRadiusEnd>30000000</StationsDistanceOuterRadiusEnd> <StationsDistanceOuterRadiusEnd>30000000</StationsDistanceOuterRadiusEnd>
<EconomyTickInSeconds>1200</EconomyTickInSeconds> <EconomyTickInSeconds>1200</EconomyTickInSeconds>
<SimplifiedSimulation>false</SimplifiedSimulation> <SimplifiedSimulation>false</SimplifiedSimulation>
<SuppressedWarnings /> <SuppressedWarnings>false</SuppressedWarnings>
<EnablePcuTrading>true</EnablePcuTrading> <EnablePcuTrading>true</EnablePcuTrading>
<FamilySharing>true</FamilySharing> <FamilySharing>true</FamilySharing>
<EnableSelectivePhysicsUpdates>false</EnableSelectivePhysicsUpdates> <EnableSelectivePhysicsUpdates>false</EnableSelectivePhysicsUpdates>
@ -137,38 +135,28 @@
<EnableFactionPlayerNames>false</EnableFactionPlayerNames> <EnableFactionPlayerNames>false</EnableFactionPlayerNames>
<EnableTeamScoreCounters>true</EnableTeamScoreCounters> <EnableTeamScoreCounters>true</EnableTeamScoreCounters>
</SessionSettings> </SessionSettings>
<LoadWorld>C:\Users\USERNAME\AppData\Roaming\SpaceEngineersDedicated\Saves\World\Sandbox.sbc</LoadWorld> <LoadWorld>Z:\home\container\config\Saves\World</LoadWorld>
<IP>0.0.0.0</IP> <IP>0.0.0.0</IP>
<SteamPort>8766</SteamPort> <SteamPort>8766</SteamPort>
<ServerPort>27016</ServerPort> <ServerPort>27016</ServerPort>
<AsteroidAmount>0</AsteroidAmount> <AsteroidAmount>0</AsteroidAmount>
<Administrators />
<Banned />
<GroupID>0</GroupID> <GroupID>0</GroupID>
<ServerName> /> <ServerName>A Pterodactyl hosted Space Engineer Server</ServerName>
<WorldName>World</WorldName> <WorldName>World</WorldName>
<VerboseNetworkLogging>false</VerboseNetworkLogging> <VerboseNetworkLogging>false</VerboseNetworkLogging>
<PauseGameWhenEmpty>false</PauseGameWhenEmpty> <PauseGameWhenEmpty>false</PauseGameWhenEmpty>
<MessageOfTheDay />
<MessageOfTheDayUrl />
<AutoRestartEnabled>true</AutoRestartEnabled> <AutoRestartEnabled>true</AutoRestartEnabled>
<AutoRestatTimeInMin>0</AutoRestatTimeInMin> <AutoRestatTimeInMin>0</AutoRestatTimeInMin>
<AutoRestartSave>true</AutoRestartSave> <AutoRestartSave>true</AutoRestartSave>
<AutoUpdateEnabled>false</AutoUpdateEnabled> <AutoUpdateEnabled>false</AutoUpdateEnabled>
<AutoUpdateCheckIntervalInMin>10</AutoUpdateCheckIntervalInMin> <AutoUpdateCheckIntervalInMin>10</AutoUpdateCheckIntervalInMin>
<AutoUpdateRestartDelayInMin>15</AutoUpdateRestartDelayInMin> <AutoUpdateRestartDelayInMin>15</AutoUpdateRestartDelayInMin>
<AutoUpdateSteamBranch />
<AutoUpdateBranchPassword />
<IgnoreLastSession>false</IgnoreLastSession> <IgnoreLastSession>false</IgnoreLastSession>
<PremadeCheckpointPath /> <ServerDescription>A Pterodactyl hosted Space Engineer Server</ServerDescription>
<ServerDescription />
<ServerPasswordHash />
<ServerPasswordSalt>cIflzwuTl3iy1jYulTRNgw==</ServerPasswordSalt> <ServerPasswordSalt>cIflzwuTl3iy1jYulTRNgw==</ServerPasswordSalt>
<Reserved />
<RemoteApiEnabled>false</RemoteApiEnabled> <RemoteApiEnabled>false</RemoteApiEnabled>
<RemoteSecurityKey>jrVRQIvlBI8OSsuzwZNzVw==</RemoteSecurityKey> <RemoteSecurityKey>jrVRQIvlBI8OSsuzwZNzVw==</RemoteSecurityKey>
<RemoteApiPort>8080</RemoteApiPort> <RemoteApiPort>8081</RemoteApiPort>
<Plugins />
<WatcherInterval>30</WatcherInterval> <WatcherInterval>30</WatcherInterval>
<WatcherSimulationSpeedMinimum>0.05</WatcherSimulationSpeedMinimum> <WatcherSimulationSpeedMinimum>0.05</WatcherSimulationSpeedMinimum>
<ManualActionDelay>5</ManualActionDelay> <ManualActionDelay>5</ManualActionDelay>
@ -177,7 +165,6 @@
<SaveChatToLog>false</SaveChatToLog> <SaveChatToLog>false</SaveChatToLog>
<NetworkType>steam</NetworkType> <NetworkType>steam</NetworkType>
<ConsoleCompatibility>false</ConsoleCompatibility> <ConsoleCompatibility>false</ConsoleCompatibility>
<NetworkParameters />
<ChatAntiSpamEnabled>true</ChatAntiSpamEnabled> <ChatAntiSpamEnabled>true</ChatAntiSpamEnabled>
<SameMessageTimeout>30</SameMessageTimeout> <SameMessageTimeout>30</SameMessageTimeout>
<SpamMessagesTime>0.5</SpamMessagesTime> <SpamMessagesTime>0.5</SpamMessagesTime>

View File

@ -4,9 +4,9 @@
"version": "PTDL_v2", "version": "PTDL_v2",
"update_url": null "update_url": null
}, },
"exported_at": "2022-11-05T17:28:33+01:00", "exported_at": "2022-11-15T16:23:46+01:00",
"name": "Space Engineers", "name": "Space Engineers",
"author": "tueye@tuworld.de", "author": "info@goover.de",
"description": "Space Engineers is a voxel-based sandbox game set in space and on planets.", "description": "Space Engineers is a voxel-based sandbox game set in space and on planets.",
"features": [ "features": [
"steam_disk_space" "steam_disk_space"
@ -17,14 +17,14 @@
"file_denylist": [], "file_denylist": [],
"startup": "winetricks sound=disabled; export WINEARCH=\"win64\"; export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/DedicatedServer64\/SpaceEngineersDedicated.exe -path Z:\\\\home\\\\container\\\\config -noconsole -ignorelastsession", "startup": "winetricks sound=disabled; export WINEARCH=\"win64\"; export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/DedicatedServer64\/SpaceEngineersDedicated.exe -path Z:\\\\home\\\\container\\\\config -noconsole -ignorelastsession",
"config": { "config": {
"files": "{\r\n \"config\/SpaceEngineers-Dedicated.cfg\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyConfigDedicated.LoadWorld\": \"Z:\\\\home\\\\container\\\\config\\\\Saves\\\\{{server.build.env.WORLD_NAME}}\\\\Sandbox.sbc\",\r\n \"MyConfigDedicated.ServerPort\": \"{{server.build.default.port}}\",\r\n \"MyConfigDedicated.SteamPort\": \"{{server.build.env.STEAM_PORT}}\",\r\n \"MyConfigDedicated.ServerName\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"MyConfigDedicated.WorldName\": \"{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerDescription\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"MyConfigDedicated.RemoteApiEnabled\": \"{{server.build.env.REMOTEAPI_ENABLE}}\",\r\n \"MyConfigDedicated.RemoteApiPort\": \"{{server.build.env.REMOTEAPI_PORT}}\"\r\n }\r\n }\r\n}", "files": "{\r\n \"config\/SpaceEngineers-Dedicated.cfg\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyConfigDedicated.LoadWorld\": \"Z:\\\\home\\\\container\\\\config\\\\Saves\\\\{{server.build.env.WORLD_NAME}}\\\\Sandbox.sbc\",\r\n \"MyConfigDedicated.ServerPort\": \"{{server.build.default.port}}\",\r\n \"MyConfigDedicated.SteamPort\": \"{{server.build.env.STEAM_PORT}}\",\r\n \"MyConfigDedicated.ServerName\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"MyConfigDedicated.WorldName\": \"{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerDescription\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"MyConfigDedicated.RemoteApiEnabled\": \"{{server.build.env.REMOTEAPI_ENABLE}}\",\r\n \"MyConfigDedicated.RemoteApiPort\": \"{{server.build.env.REMOTEAPI_PORT}}\"\r\n }\r\n\t},\r\n\t\"config\/Saves\/World\/Sandbox.sbc\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Game ready...\"\r\n}", "startup": "{\r\n \"done\": \"Game ready...\"\r\n}",
"logs": "{}", "logs": "{}",
"stop": "^C" "stop": "^C"
}, },
"scripts": { "scripts": {
"installation": { "installation": {
"script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n## Define variables\r\ndlurl=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/space_engineers\"\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n## Create world and config\r\nmkdir -p $HOME\/config\/Saves\r\nif [ ! -d $HOME\/config\/Saves\/World ]\r\nthen\r\n curl $dlurl\/World.zip -o World.zip\r\n unzip World.zip -d $HOME\/config\/Saves\/\r\nfi\r\nif [ ! -f $HOME\/config\/SpaceEngineers-Dedicated.cfg ]; then curl $dlurl\/SpaceEngineers-Dedicated.cfg -o $HOME\/config\/SpaceEngineers-Dedicated.cfg; fi\r\n\r\nrm -fR $HOME\/World.zip\r\n\r\n# copy libs for mod support\r\ncp -v $HOME\/steamclient.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/steamclient64.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/tier0_s.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/tier0_s64.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/vstdlib_s.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/vstdlib_s64.dll ..\/DedicatedServer64\/\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", "script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n## Define variables\r\ndlurl=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/default\/space_engineers\"\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n## Create world and config\r\nmkdir -p $HOME\/config\/Saves\r\nif [ ! -d $HOME\/config\/Saves\/World ]\r\nthen\r\n curl $dlurl\/World.zip -o World.zip\r\n unzip World.zip -d $HOME\/config\/Saves\/\r\nfi\r\nif [ ! -f $HOME\/config\/SpaceEngineers-Dedicated.cfg ]; then curl $dlurl\/SpaceEngineers-Dedicated.cfg -o $HOME\/config\/SpaceEngineers-Dedicated.cfg; fi\r\n\r\nrm -fR $HOME\/World.zip\r\n\r\n# copy libs for mod support\r\ncp -v $HOME\/steamclient.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/steamclient64.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/tier0_s.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/tier0_s64.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/vstdlib_s.dll ..\/DedicatedServer64\/\r\ncp -v $HOME\/vstdlib_s64.dll ..\/DedicatedServer64\/\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian", "container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash" "entrypoint": "bash"
} }
@ -44,7 +44,7 @@
"name": "Server Name", "name": "Server Name",
"description": "Name of the server, appears in Steam browser.", "description": "Name of the server, appears in Steam browser.",
"env_variable": "SERVER_NAME", "env_variable": "SERVER_NAME",
"default_value": "Pterodactyl Space Engineer Server", "default_value": "A Pterodactyl hosted Space Engineer Server",
"user_viewable": true, "user_viewable": true,
"user_editable": true, "user_editable": true,
"rules": "required|string|max:64", "rules": "required|string|max:64",
@ -52,11 +52,11 @@
}, },
{ {
"name": "World Name", "name": "World Name",
"description": "Name of your world (and of your save folder)", "description": "Name of your world (and of your save folder) !!!!! DO NOT EDIT OR SERVER WILL NOT START !!!!!",
"env_variable": "WORLD_NAME", "env_variable": "WORLD_NAME",
"default_value": "World", "default_value": "World",
"user_viewable": true, "user_viewable": true,
"user_editable": true, "user_editable": false,
"rules": "required|string|max:20", "rules": "required|string|max:20",
"field_type": "text" "field_type": "text"
}, },
@ -64,7 +64,7 @@
"name": "Server Description", "name": "Server Description",
"description": "Description of the game", "description": "Description of the game",
"env_variable": "SERVER_DESC", "env_variable": "SERVER_DESC",
"default_value": "Pterodactyl Space Engineer Server", "default_value": "A Pterodactyl hosted Space Engineer Server",
"user_viewable": true, "user_viewable": true,
"user_editable": true, "user_editable": true,
"rules": "required|string|max:200", "rules": "required|string|max:200",
@ -121,8 +121,8 @@
"field_type": "text" "field_type": "text"
}, },
{ {
"name": "Enable Remote Api", "name": "Enable Remote API",
"description": "Enable Remote Api", "description": "Enable Remote API",
"env_variable": "REMOTEAPI_ENABLE", "env_variable": "REMOTEAPI_ENABLE",
"default_value": "false", "default_value": "false",
"user_viewable": true, "user_viewable": true,
@ -131,8 +131,8 @@
"field_type": "text" "field_type": "text"
}, },
{ {
"name": "Remote Api Port", "name": "Remote API Port",
"description": "Remote Api Port", "description": "Remote API Port",
"env_variable": "REMOTEAPI_PORT", "env_variable": "REMOTEAPI_PORT",
"default_value": "8081", "default_value": "8081",
"user_viewable": true, "user_viewable": true,

View File

@ -0,0 +1,39 @@
# Space Engineers Torch Server
### Author & Contributers
| Name | Github Profile |
| ------------- |-------------|
| gOOvER | https://github.com/gOOvER |
## Description
Torch is the successor to SE Server Extender and gives server admins the tools they need to keep their Space Engineers servers running smoothly. It features a user interface with live management tools and a plugin system so you can run your server exactly how you'd like. Torch is still in early development so there may be bugs and incomplete features.
**NOTE**
Because of the winetricks installation, the install process could take some time. Likewise, the first start of the server takes its time.
**SPECIAL NOTE**
When installed, the Server loads a base World and config from this repo. ONLY THIS WORLD IS SUPPORTED.
Everything which is not defined in a variable could be edited directy in the config file /config/SpaceEngineers-Dedicated.cfg and config/Saves/World/Sandbox.sbc
## Server Ports
Default server ports are listed below, but the Main, STEAM and API port can be any port.
| Port | default |
|-------|---------|
| Game | 27016 |
| Steam | 8766 |
| API | 8081 |
## Minumum server settings
### RAM
This server requires about 6GB.
Based on the information provided by the developer: [See here](https://www.spaceengineersgame.com/dedicated-servers/)
### Disk
This server uses about 7GB of diskspace.

View File

@ -0,0 +1,184 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2022-11-15T16:26:37+01:00",
"name": "Space Engineers - Torch Server",
"author": "info@goover.de",
"description": "Torch is the successor to SE Server Extender and gives server admins the tools they need to keep their Space Engineers servers running smoothly. It features a user interface with live management tools and a plugin system so you can run your server exactly how you'd like. Torch is still in early development so there may be bugs and incomplete features.",
"features": [
"steam_disk_space"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:wine_staging": "ghcr.io\/parkervcp\/yolks:wine_staging"
},
"file_denylist": [],
"startup": "winetricks sound=disabled; export WINEARCH=\"win64\"; export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/Torch.Server.exe -noupdate -nogui -console",
"config": {
"files": "{\r\n \"config\/SpaceEngineers-Dedicated.cfg\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyConfigDedicated.LoadWorld\": \"Z:\\\\home\\\\container\\\\config\\\\Saves\\\\{{server.build.env.WORLD_NAME}}\\\\Sandbox.sbc\",\r\n \"MyConfigDedicated.ServerPort\": \"{{server.build.default.port}}\",\r\n \"MyConfigDedicated.SteamPort\": \"{{server.build.env.STEAM_PORT}}\",\r\n \"MyConfigDedicated.ServerName\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"MyConfigDedicated.WorldName\": \"{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerDescription\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"MyConfigDedicated.RemoteApiEnabled\": \"{{server.build.env.REMOTEAPI_ENABLE}}\",\r\n \"MyConfigDedicated.RemoteApiPort\": \"{{server.build.env.REMOTEAPI_PORT}}\"\r\n }\r\n },\r\n \"config\/Saves\/World\/Sandbox.sbc\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Game ready...\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n\r\n## Define variables\r\ndlurl=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/default\/space_engineers\"\r\n\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\napt -y update\r\napt -y install curl lib32gcc-s1 ca-certificates unzip\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n## Download Torch and unpack\r\ncd \/mnt\/server\/\r\ncurl -sSL -o torch-server.zip https:\/\/build.torchapi.com\/job\/Torch\/job\/master\/lastSuccessfulBuild\/artifact\/bin\/torch-server.zip\r\nunzip torch-server.zip -d \/mnt\/server\/\r\n\r\nchown -R root:root \/mnt\r\n\r\n## Create world and Instance\r\nmkdir -p $HOME\/Instance\/Saves\r\nif [ ! -d $HOME\/Instance\/Saves\/World ]\r\nthen\r\n curl $dlurl\/World.zip -o \/tmp\/World.zip\r\n unzip \/tmp\/World.zip -d $HOME\/Instance\/Saves\/\r\nfi\r\n\r\nif [ ! -f $HOME\/Instance\/SpaceEngineers-Dedicated.cfg ]; then \r\n curl $dlurl\/SpaceEngineers-Dedicated.cfg -o $HOME\/Instance\/SpaceEngineers-Dedicated.cfg;\r\nfi\r\n\r\nrm -fR $HOME\/torch-server.zip\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "APP ID",
"description": "The ID corresponding to the game to download.",
"env_variable": "SRCDS_APPID",
"default_value": "298740",
"user_viewable": false,
"user_editable": false,
"rules": "required|numeric|digits_between:1,6",
"field_type": "text"
},
{
"name": "Server Name",
"description": "Name of the server, appears in Steam browser.",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted Space Engineer Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "World Name",
"description": "Name of your world (and of your save folder) !!!!! DO NOT EDIT OR SERVER WILL NOT START !!!!!",
"env_variable": "WORLD_NAME",
"default_value": "World",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "Server Description",
"description": "Description of the game",
"env_variable": "SERVER_DESC",
"default_value": "A Pterodactyl hosted Space Engineer Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:200",
"field_type": "text"
},
{
"name": "Game Mode",
"description": "Game Mode setting: Survival, Creative",
"env_variable": "SERVER_MODE",
"default_value": "Survival",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:Survival,Creative",
"field_type": "text"
},
{
"name": "Maximum Players",
"description": "",
"env_variable": "MAX_PLAYERS",
"default_value": "4",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|digits_between:1,3",
"field_type": "text"
},
{
"name": "Enable Saving",
"description": "",
"env_variable": "SAVE_ENABLED",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "Auto Save Interval",
"description": "Time between auto saves specified in minutes",
"env_variable": "SAVE_INTERVAL",
"default_value": "5",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|digits_between:1,3",
"field_type": "text"
},
{
"name": "Steam Port",
"description": "Steam Port",
"env_variable": "STEAM_PORT",
"default_value": "8766",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|max:65535",
"field_type": "text"
},
{
"name": "Enable Remote API",
"description": "Enable Remote API",
"env_variable": "REMOTEAPI_ENABLE",
"default_value": "false",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "Remote API Port",
"description": "Remote API Port",
"env_variable": "REMOTEAPI_PORT",
"default_value": "8081",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|max:65535",
"field_type": "text"
},
{
"name": "WINEPREFIX",
"description": "WINEPREFIX",
"env_variable": "WINEPREFIX",
"default_value": "\/home\/container\/.wine",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "WINETRICKS_RUN",
"description": "",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2013 vcrun2017 corefonts dotnet48",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
},
{
"name": "WINDOWS_INSTALL",
"description": "",
"env_variable": "WINDOWS_INSTALL",
"default_value": "1",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "WINEDEBUG",
"description": "",
"env_variable": "WINEDEBUG",
"default_value": "-all",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
}
]
}