Space Engineers Config Updates (#160)

* Space Engineers Config Updates (draft)

Revamped the config to match the Dedicated Server Launcher more closely and added missing config file rows. Added release stream option.

* Update space-engineers-genericconfig.json

* Rearrange EVERYTHING

* So.... Much.... Cleanup......

* Comma and formatted config.json file

* )

* P

* Final touches

* Add Space Engineers Linux/Docker Support

* Multiple SE updates

* Update Port to avoid ADS conflict bug

* Update based on feedback

* Fixed a couple bugs
This commit is contained in:
IceOfWraith 2022-11-14 20:57:47 -06:00 committed by GitHub
parent 142567fed4
commit 0856176282
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 2694 additions and 2131 deletions

View File

@ -1,58 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0"?>
<MyConfigDedicated xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SessionSettings>
<GameMode>Survival</GameMode>
<InventorySizeMultiplier>1</InventorySizeMultiplier>
<AssemblerSpeedMultiplier>1</AssemblerSpeedMultiplier>
<AssemblerEfficiencyMultiplier>1</AssemblerEfficiencyMultiplier>
<RefinerySpeedMultiplier>1</RefinerySpeedMultiplier>
<OnlineMode>PUBLIC</OnlineMode>
<MaxPlayers>12</MaxPlayers>
<MaxFloatingObjects>100</MaxFloatingObjects>
<EnvironmentHostility>SAFE</EnvironmentHostility>
<AutoHealing>true</AutoHealing>
<EnableCopyPaste>false</EnableCopyPaste>
<WeaponsEnabled>true</WeaponsEnabled>
<WeatherSystem>true</WeatherSystem>
<ShowPlayerNamesOnHud>true</ShowPlayerNamesOnHud>
<SimplifiedSimulation>false</SimplifiedSimulation>
<ThrusterDamage>true</ThrusterDamage>
<CargoShipsEnabled>true</CargoShipsEnabled>
<EnableSpectator>false</EnableSpectator>
<WorldSizeKm>0</WorldSizeKm>
<RespawnShipDelete>true</RespawnShipDelete>
<ResetOwnership>false</ResetOwnership>
<WelderSpeedMultiplier>1</WelderSpeedMultiplier>
<GrinderSpeedMultiplier>1</GrinderSpeedMultiplier>
<RealisticSound>false</RealisticSound>
<HackSpeedMultiplier>0.33</HackSpeedMultiplier>
<PermanentDeath>false</PermanentDeath>
<AutoSaveInMinutes>5</AutoSaveInMinutes>
<SpawnShipTimeMultiplier>1</SpawnShipTimeMultiplier>
<DestructibleBlocks>true</DestructibleBlocks>
<EnableIngameScripts>true</EnableIngameScripts>
<ViewDistance>20000</ViewDistance>
<EnableToolShake>true</EnableToolShake>
<VoxelGeneratorVersion>2</VoxelGeneratorVersion>
<EnableOxygen>true</EnableOxygen>
<InventorySizeMultiplier>3</InventorySizeMultiplier>
<BlocksInventorySizeMultiplier>1</BlocksInventorySizeMultiplier>
<MaxBackupSaves>250</MaxBackupSaves>
<AssemblerSpeedMultiplier>3</AssemblerSpeedMultiplier>
<AssemblerEfficiencyMultiplier>3</AssemblerEfficiencyMultiplier>
<RefinerySpeedMultiplier>3</RefinerySpeedMultiplier>
<OnlineMode>PUBLIC</OnlineMode>
<MaxPlayers>4</MaxPlayers>
<MaxFloatingObjects>56</MaxFloatingObjects>
<TotalBotLimit>32</TotalBotLimit>
<MaxBackupSaves>5</MaxBackupSaves>
<MaxGridSize>0</MaxGridSize>
<MaxBlocksPerPlayer>0</MaxBlocksPerPlayer>
<TotalPCU>100000</TotalPCU>
<PiratePCU>50000</PiratePCU>
<MaxFactionsCount>0</MaxFactionsCount>
<BlockLimitsEnabled>NONE</BlockLimitsEnabled>
<BlockLimitsEnabled>GLOBALLY</BlockLimitsEnabled>
<EnableRemoteBlockRemoval>true</EnableRemoteBlockRemoval>
<EnableSaving>false</EnableSaving>
<EnvironmentHostility>SAFE</EnvironmentHostility>
<AutoHealing>true</AutoHealing>
<EnableCopyPaste>false</EnableCopyPaste>
<WeaponsEnabled>true</WeaponsEnabled>
<ShowPlayerNamesOnHud>true</ShowPlayerNamesOnHud>
<ThrusterDamage>true</ThrusterDamage>
<CargoShipsEnabled>true</CargoShipsEnabled>
<EnableSpectator>false</EnableSpectator>
<WorldSizeKm>0</WorldSizeKm>
<RespawnShipDelete>false</RespawnShipDelete>
<ResetOwnership>false</ResetOwnership>
<WelderSpeedMultiplier>2</WelderSpeedMultiplier>
<GrinderSpeedMultiplier>2</GrinderSpeedMultiplier>
<RealisticSound>false</RealisticSound>
<HackSpeedMultiplier>0.33</HackSpeedMultiplier>
<PermanentDeath>false</PermanentDeath>
<AutoSaveInMinutes>5</AutoSaveInMinutes>
<EnableSaving>true</EnableSaving>
<InfiniteAmmo>false</InfiniteAmmo>
<EnableContainerDrops>false</EnableContainerDrops>
<ProceduralDensity>0.4</ProceduralDensity>
<SpawnShipTimeMultiplier>0</SpawnShipTimeMultiplier>
<ProceduralDensity>0.35</ProceduralDensity>
<ProceduralSeed>0</ProceduralSeed>
<DestructibleBlocks>true</DestructibleBlocks>
<EnableIngameScripts>false</EnableIngameScripts>
<ViewDistance>15000</ViewDistance>
<EnableToolShake>true</EnableToolShake>
<VoxelGeneratorVersion>4</VoxelGeneratorVersion>
<EnableOxygen>true</EnableOxygen>
<EnableOxygenPressurization>true</EnableOxygenPressurization>
<EnablePcuTrading>true</EnablePcuTrading>
<Enable3rdPersonView>true</Enable3rdPersonView>
<EnableEncounters>false</EnableEncounters>
<EnableEncounters>true</EnableEncounters>
<EnableConvertToStation>true</EnableConvertToStation>
<StationVoxelSupport>false</StationVoxelSupport>
<EnableSunRotation>true</EnableSunRotation>
@ -60,63 +58,70 @@
<ScenarioEditMode>false</ScenarioEditMode>
<Scenario>false</Scenario>
<CanJoinRunning>false</CanJoinRunning>
<PhysicsIterations>6</PhysicsIterations>
<SunRotationIntervalMinutes>120</SunRotationIntervalMinutes>
<PhysicsIterations>8</PhysicsIterations>
<SunRotationIntervalMinutes>119.999992</SunRotationIntervalMinutes>
<EnableJetpack>true</EnableJetpack>
<SpawnWithTools>true</SpawnWithTools>
<StartInRespawnScreen>false</StartInRespawnScreen>
<EnableVoxelDestruction>true</EnableVoxelDestruction>
<MaxDrones>5</MaxDrones>
<EnableDrones>false</EnableDrones>
<EnableDrones>true</EnableDrones>
<EnableWolfs>false</EnableWolfs>
<EnableSpiders>false</EnableSpiders>
<FloraDensityMultiplier>1</FloraDensityMultiplier>
<EnableStructuralSimulation>false</EnableStructuralSimulation>
<MaxActiveFracturePieces>50</MaxActiveFracturePieces>
<BlockTypeLimits>
<dictionary />
</BlockTypeLimits>
<EnableScripterRole>false</EnableScripterRole>
<EnableSelectivePhysicsUpdates>false</EnableSelectivePhysicsUpdates>
<MinDropContainerRespawnTime>15</MinDropContainerRespawnTime>
<MinDropContainerRespawnTime>5</MinDropContainerRespawnTime>
<MaxDropContainerRespawnTime>20</MaxDropContainerRespawnTime>
<EnableTurretsFriendlyFire>false</EnableTurretsFriendlyFire>
<EnableSubgridDamage>false</EnableSubgridDamage>
<SyncDistance>3000</SyncDistance>
<ExperimentalMode>false</ExperimentalMode>
<FamilySharing>false</FamilySharing>
<AdaptiveSimulationQuality>true</AdaptiveSimulationQuality>
<EnableVoxelHand>true</EnableVoxelHand>
<RemoveOldIdentitiesH>0</RemoveOldIdentitiesH>
<TrashRemovalEnabled>true</TrashRemovalEnabled>
<StopGridsPeriodMin>30</StopGridsPeriodMin>
<TrashFlagsValue>7706</TrashFlagsValue>
<StopGridsPeriodMin>15</StopGridsPeriodMin>
<TrashFlagsValue>1562</TrashFlagsValue>
<AFKTimeountMin>0</AFKTimeountMin>
<BlockCountThreshold>5</BlockCountThreshold>
<PlayerDistanceThreshold>1000</PlayerDistanceThreshold>
<BlockCountThreshold>20</BlockCountThreshold>
<PlayerDistanceThreshold>500</PlayerDistanceThreshold>
<OptimalGridCount>0</OptimalGridCount>
<PlayerInactivityThreshold>0</PlayerInactivityThreshold>
<PlayerCharacterRemovalThreshold>15</PlayerCharacterRemovalThreshold>
<VoxelTrashRemovalEnabled>true</VoxelTrashRemovalEnabled>
<VoxelTrashRemovalEnabled>false</VoxelTrashRemovalEnabled>
<VoxelPlayerDistanceThreshold>5000</VoxelPlayerDistanceThreshold>
<VoxelGridDistanceThreshold>5000</VoxelGridDistanceThreshold>
<VoxelAgeThreshold>600</VoxelAgeThreshold>
<EnableResearch>false</EnableResearch>
<EnableGoodBotHints>false</EnableGoodBotHints>
<VoxelAgeThreshold>24</VoxelAgeThreshold>
<EnableResearch>true</EnableResearch>
<EnableGoodBotHints>true</EnableGoodBotHints>
<OptimalSpawnDistance>16000</OptimalSpawnDistance>
<EnableAutorespawn>false</EnableAutorespawn>
<EnableBountyContracts>false</EnableBountyContracts>
<EnableAutorespawn>true</EnableAutorespawn>
<EnableBountyContracts>true</EnableBountyContracts>
<EnableSupergridding>false</EnableSupergridding>
<EnableEconomy>false</EnableEconomy>
<DepositsCountCoefficient>1.125</DepositsCountCoefficient>
<DepositSizeDenominator>75</DepositSizeDenominator>
<HarvestRatioMultiplier>0.85</HarvestRatioMultiplier>
<TradeFactionsCount>12</TradeFactionsCount>
<DepositsCountCoefficient>2</DepositsCountCoefficient>
<DepositSizeDenominator>30</DepositSizeDenominator>
<WeatherSystem>true</WeatherSystem>
<HarvestRatioMultiplier>1</HarvestRatioMultiplier>
<TradeFactionsCount>15</TradeFactionsCount>
<StationsDistanceInnerRadius>10000000</StationsDistanceInnerRadius>
<StationsDistanceOuterRadiusStart>10000000</StationsDistanceOuterRadiusStart>
<StationsDistanceOuterRadiusEnd>30000000</StationsDistanceOuterRadiusEnd>
<EconomyTickInSeconds>1200</EconomyTickInSeconds>
<PredefinedAsteroids>true</PredefinedAsteroids>
<UseConsolePCU>false</UseConsolePCU>
<MaxPlanets>99</MaxPlanets>
<OffensiveWordsFiltering>false</OffensiveWordsFiltering>
<SimplifiedSimulation>false</SimplifiedSimulation>
<SuppressedWarnings />
<EnablePcuTrading>true</EnablePcuTrading>
<FamilySharing>true</FamilySharing>
<EnableSelectivePhysicsUpdates>false</EnableSelectivePhysicsUpdates>
<PredefinedAsteroids>false</PredefinedAsteroids>
<UseConsolePCU>true</UseConsolePCU>
<MaxPlanets>3</MaxPlanets>
<OffensiveWordsFiltering>true</OffensiveWordsFiltering>
<AdjustableMaxVehicleSpeed>true</AdjustableMaxVehicleSpeed>
<EnableMatchComponent>false</EnableMatchComponent>
<PreMatchDuration>0</PreMatchDuration>
@ -130,24 +135,50 @@
<EnableGamepadAimAssist>false</EnableGamepadAimAssist>
<BackpackDespawnTimer>5</BackpackDespawnTimer>
<EnableFactionPlayerNames>false</EnableFactionPlayerNames>
<EnableTeamScoreCounters>true</EnableTeamScoreCounters>
</SessionSettings>
<IP>0.0.0.0</IP>
<ServerPort>27027</ServerPort>
<RemoteApiPort>27028</RemoteApiPort>
<RemoteApiEnabled>true</RemoteApiEnabled>
<RemoteSecurityKey />
<SteamPort>27029</SteamPort>
<AsteroidAmount>4</AsteroidAmount>
<SteamPort>8766</SteamPort>
<ServerPort>27016</ServerPort>
<AsteroidAmount>0</AsteroidAmount>
<Administrators />
<Banned />
<GroupID>0</GroupID>
<ServerName>AMP Powered Server</ServerName>
<ServerDescription>My AMP Powered Space Engineers Server</ServerDescription>
<WorldName>World</WorldName>
<VerboseNetworkLogging>false</VerboseNetworkLogging>
<PauseGameWhenEmpty>false</PauseGameWhenEmpty>
<MessageOfTheDay>Welcome to my Space Engineers Server, powered by AMP!</MessageOfTheDay>
<MessageOfTheDayUrl>https://cubecoders.com/AMP</MessageOfTheDayUrl>
<SaveChatToLog>true</SaveChatToLog>
<WorldName>World</WorldName>
<AutoRestartEnabled>true</AutoRestartEnabled>
<AutoRestatTimeInMin>0</AutoRestatTimeInMin>
<AutoRestartSave>true</AutoRestartSave>
<AutoUpdateEnabled>false</AutoUpdateEnabled>
<AutoUpdateCheckIntervalInMin>10</AutoUpdateCheckIntervalInMin>
<AutoUpdateRestartDelayInMin>15</AutoUpdateRestartDelayInMin>
<AutoUpdateSteamBranch>public</AutoUpdateSteamBranch>
<AutoUpdateBranchPassword />
<IgnoreLastSession>false</IgnoreLastSession>
<PremadeCheckpointPath>./Content/CustomWorlds/Star System</PremadeCheckpointPath>
<PauseGameWhenEmpty>false</PauseGameWhenEmpty>
<IgnoreLastSession>true</IgnoreLastSession>
</MyConfigDedicated>
<ServerDescription />
<ServerPasswordHash></ServerPasswordHash>
<ServerPasswordSalt></ServerPasswordSalt>
<Reserved />
<RemoteApiEnabled>false</RemoteApiEnabled>
<RemoteSecurityKey></RemoteSecurityKey>
<RemoteApiPort>8080</RemoteApiPort>
<Plugins />
<WatcherInterval>30</WatcherInterval>
<WatcherSimulationSpeedMinimum>0.05</WatcherSimulationSpeedMinimum>
<ManualActionDelay>5</ManualActionDelay>
<ManualActionChatMessage>Server will be shut down in {0} min(s).</ManualActionChatMessage>
<AutodetectDependencies>true</AutodetectDependencies>
<SaveChatToLog>false</SaveChatToLog>
<NetworkType>steam</NetworkType>
<ConsoleCompatibility>false</ConsoleCompatibility>
<NetworkParameters />
<ChatAntiSpamEnabled>true</ChatAntiSpamEnabled>
<SameMessageTimeout>30</SameMessageTimeout>
<SpamMessagesTime>0.5</SpamMessagesTime>
<SpamMessagesTimeout>60</SpamMessagesTimeout>
</MyConfigDedicated>

View File

@ -9,21 +9,24 @@ Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.ApplicationPort2}
Meta.ConfigManifest=space-engineers-genericconfig.json
Meta.MetaConfigManifest=space-engineers-genericmetaconfig.json
Meta.ConfigRoot=space-engineers-generic.kvp
Meta.MinAMPVersion=2.3.0.9
Meta.MinAMPVersion=2.4.0.10
Meta.SpecificDockerImage=
Meta.DockerRequired=False
Meta.ContainerPolicy=NotSupported
Meta.ContainerPolicyReason=This game requires Winetricks when using Docker which is currently not support in AMP.
Meta.Prerequsites=[]
Meta.ExtraContainerPackages=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
App.DisplayName=Space Engineers
App.RootDir=./space-engineers-generic/
App.BaseDirectory=./space-engineers-generic/298740/
App.ExecutableWin=298740\DedicatedServer64\SpaceEngineersDedicated.exe
App.ExecutableLinux=298740/
App.WorkingDir=298740
App.ExecutableLinux=
App.WorkingDir=298740/DedicatedServer64
App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs=
App.CommandLineArgs=-console -path "{{$FullBaseDir}}servers" {{$FormattedArgs}}
App.CommandLineArgs={{$PlatformArgs}} -console -path "{{$FullBaseDir}}servers" {{$FormattedArgs}}
App.AppSettings={}
App.EnvironmentVariables={"LD_LIBRARY_PATH":"./linux64:%LD_LIBRARY_PATH%","SteamAppId":"244850"}
App.CommandLineParameterFormat=-{0} "{1}"
@ -37,29 +40,33 @@ App.HasReadableConsole=True
App.SupportsLiveSettingsChanges=False
App.LiveSettingChangeCommandFormat=set {0} "{1}"
App.ApplicationIPBinding=0.0.0.0
App.RemoteAdminPort=27016
App.ApplicationPort1=27017
App.ApplicationPort2=8777
App.ApplicationPort3=0
App.MaxUsers=12
App.Ports=[{"Protocol":"UDP","Port":27016,"Offset":0,"Range":1,"Ref":"ApplicationPort1","Name":"Server Port","Description":"Port used for main game traffic","ChildPorts":null},{"Protocol":"UDP","Port":8766,"Offset":0,"Range":1,"Ref":"ApplicationPort2","Name":"Steam Port","Description":"Port used for Steam communications","ChildPorts":null},{"Protocol":"Both","Port":8777,"Offset":0,"Range":1,"Ref":"RemoteAdminPort","Name":"Remote API Port","Description":"Port used to access the API","ChildPorts":null}]
App.AdminPortRef=RemoteAdminPort
App.PrimaryApplicationPortRef=ApplicationPort1
App.UniversalSleepApplicationUDPPortRef=ApplicationPort1
App.UniversalSleepSteamQueryPortRef=ApplicationPort2
App.MaxUsers=4
App.UseRandomAdminPassword=False
App.RemoteAdminPassword=Password123
App.AdminMethod=STDIO
App.AdminLoginTransform=None
App.RCONConnectDelaySeconds=5
App.RCONConnectRetrySeconds=5
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0}
App.UpdateSources=[{"UpdateStageName": "SteamCMD Download","UpdateSourcePlatform": "All", "UpdateSource": "SteamCMD", "UpdateSourceData": "298740"},{"UpdateStageName":"Create Config Directory","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"space-engineers-generic/298740/servers","OverwriteExistingFiles":false},{"UpdateStageName": "Base Config Download","UpdateSourcePlatform": "All", "UpdateSource": "FetchURL", "UpdateSourceData": "https://github.com/CubeCoders/AMPTemplates/raw/main/SpaceEngineers-Dedicated.cfg","UpdateSourceTarget":"298740/servers","OverwriteExistingFiles":false}]
App.UpdateSources=@IncludeJson[space-engineers-genericupdates.json]
App.Compatibility=None
App.SteamUpdateAnonymousLogin=True
App.SteamForceLoginPrompt=False
App.RapidStartup=False
App.SupportsUniversalSleep=True
App.UniversalSleepApplicationUDPPort=1
App.UniversalSleepSteamQueryPort=2
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}}
App.MonitorChildProcess=True
App.MonitorChildProcessWaitMs=3000
App.MonitorChildProcessName=wine64
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$
@ -68,6 +75,7 @@ Console.UserJoinRegex=^\d+\-\d+\-\d+ \d+\:\d+\:\d+.\d+\: World request received:
Console.UserLeaveRegex=^\d+\-\d+\-\d+ \d+\:\d+\:\d+.\d+\: User left (?<username>.+?)$
Console.UserChatRegex=^\[\d\d:\d\d:\d\d\] \[CHAT\] <(?<username>.+?)> (?<message>.+)$
Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$
Console.MetricsRegex=
Console.SuppressLogAtStart=False
Console.ActivateLogRegex=
Console.UserActions={}
@ -75,4 +83,5 @@ Limits.SleepMode=False
Limits.SleepOnStart=False
Limits.SleepDelayMinutes=5
Limits.DozeDelay=2
Limits.AutoRetryCount=5
Limits.AutoRetryCount=5
Limits.SleepStartThresholdSeconds=25

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,49 @@
[
{
"UpdateStageName": "SteamCMD Download",
"UpdateSourcePlatform": "All",
"UpdateSource": "SteamCMD",
"UpdateSourceData": "298740",
"UpdateSourceVersion": "{{Stream}}"
},
{
"UpdateStageName": "Create Config Directory",
"UpdateSourcePlatform": "All",
"UpdateSource": "CreateDirectory",
"UpdateSourceArgs": "{{$FullBaseDir}}servers",
"OverwriteExistingFiles": false
},
{
"UpdateStageName": "Base Config Download",
"UpdateSourcePlatform": "All",
"UpdateSource": "FetchURL",
"UpdateSourceData": "https://github.com/IceOfWraith/AMPTemplates/raw/dev/space-engineers-dedicated.cfg",
"UpdateSourceTarget": "{{$FullBaseDir}}servers",
"UpdateSourceArgs": "SpaceEngineers-Dedicated.cfg",
"OverwriteExistingFiles": false
},
{
"UpdateStageName": "Mods Workaround 1",
"UpdateSourcePlatform": "All",
"UpdateSource": "CopyFilePath",
"UpdateSourceData": "{{$FullBaseDir}}DedicatedServer64/steamclient64.dll",
"UpdateSourceArgs": "{{$FullBaseDir}}steamclient64.dll",
"OverwriteExistingFiles": true
},
{
"UpdateStageName": "Mods Workaround 2",
"UpdateSourcePlatform": "All",
"UpdateSource": "CopyFilePath",
"UpdateSourceData": "{{$FullBaseDir}}DedicatedServer64/tier0_s64.dll",
"UpdateSourceArgs": "{{$FullBaseDir}}tier0_s64.dll",
"OverwriteExistingFiles": true
},
{
"UpdateStageName": "Mods Workaround 3",
"UpdateSourcePlatform": "All",
"UpdateSource": "CopyFilePath",
"UpdateSourceData": "{{$FullBaseDir}}DedicatedServer64/vstdlib_s64.dll",
"UpdateSourceArgs": "{{$FullBaseDir}}vstdlib_s64.dll",
"OverwriteExistingFiles": true
}
]