From 9ebd0de65193757046d3241fb053a8514210465d Mon Sep 17 00:00:00 2001 From: Greelan <53196309+Greelan@users.noreply.github.com> Date: Sun, 30 Apr 2023 11:10:15 +1000 Subject: [PATCH] Add No One Survived (#331) --- no-one-survived.kvp | 92 ++++++++ no-one-survivedconfig.json | 394 +++++++++++++++++++++++++++++++++ no-one-survivedmetaconfig.json | 12 + 3 files changed, 498 insertions(+) create mode 100644 no-one-survived.kvp create mode 100644 no-one-survivedconfig.json create mode 100644 no-one-survivedmetaconfig.json diff --git a/no-one-survived.kvp b/no-one-survived.kvp new file mode 100644 index 0000000..b5c8052 --- /dev/null +++ b/no-one-survived.kvp @@ -0,0 +1,92 @@ +Meta.DisplayName=No One Survived +Meta.Description=No One Survived Dedicated Server +Meta.OS=Windows, Linux +Meta.AarchSupport=NotSupported +Meta.Arch=x86_64 +Meta.Author=Greelan +Meta.URL=https://store.steampowered.com/app/1963370/No_One_Survived/ +Meta.DisplayImageSource=steam:1963370 +Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.Ports.$QueryPort} +Meta.ConfigManifest=no-one-survivedconfig.json +Meta.MetaConfigManifest=no-one-survivedmetaconfig.json +Meta.ConfigRoot=no-one-survived.kvp +Meta.MinAMPVersion=2.4.3.0 +Meta.SpecificDockerImage=cubecoders/ampbase:wine8 +Meta.DockerRequired=False +Meta.ContainerPolicy=SupportedOnWindows, RecommendedOnLinux +Meta.ContainerPolicyReason=The server requires Wine 7 (or later) to run on Linux. Using a container avoids the need to install this dependency on the host. +Meta.ExtraSetupStepsURI= +Meta.Prerequsites=[] +Meta.ConfigReleaseState=NotSpecified +App.DisplayName=No One Survived +App.RootDir=./no-one-survived/ +App.BaseDirectory=./no-one-survived/2329680/ +App.SteamWorkshopDownloadLocation= +App.ExecutableWin=2329680\WRSH\Binaries\Win64\WRSHServer.exe +App.ExecutableLinux=/usr/bin/wine +App.WorkingDir=2329680 +App.LinuxCommandLineArgs="./WRSH/Binaries/Win64/WRSHServer.exe" +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} WRSH -server -stdout -FullStdOutLogOutput -Port={{$GamePort}} -QueryPort={{$QueryPort}} -MultiHome={{$ApplicationIPBinding}} {{$FormattedArgs}} +App.UseLinuxIOREDIR=False +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"1963370","WINEPREFIX":"{{$FullRootDir}}.wine","WINEARCH":"win64","WINEDEBUG":"-all"} +App.CommandLineParameterFormat=-{0}={1} +App.CommandLineParameterDelimiter= +App.ExitMethod=OS_CLOSE +App.ExitTimeout=30 +App.ExitString=stop +App.ExitFile=app_exit.lck +App.HasWriteableConsole=True +App.HasReadableConsole=True +App.SupportsLiveSettingsChanges=False +App.LiveSettingChangeCommandFormat=set {0} "{1}" +App.ApplicationIPBinding=0.0.0.0 +App.Ports=[{"Protocol":"UDP","Port":7777,"Ref":"GamePort","Name":"Game Port","Description":"Port for game traffic"},{"Protocol":"UDP","Port":27015,"Ref":"QueryPort","Name":"Query Port","Description":"Port for Steam query traffic"}] +App.AdminPortRef=0 +App.PrimaryApplicationPortRef=GamePort +App.UniversalSleepApplicationUDPPortRef=GamePort +App.UniversalSleepSteamQueryPortRef=QueryPort +App.MaxUsers=50 +App.UseRandomAdminPassword=False +App.PersistRandomPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.LoginTransformPrefix= +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":"2329680","UpdateSourceArgs":"1963370","ForceDownloadPlatform":"Windows"},{"UpdateStageName":"Initialise Wine","UpdateSourcePlatform":"Linux","UpdateSource":"Executable","UpdateSourceData":"/bin/bash","UpdateSourceArgs":"-c 'WINEPREFIX=\"{{$FullRootDir}}.wine\" WINEARCH=win64 /usr/bin/wineboot --init --update'"}] +App.PreStartStages=[] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.MonitorChildProcess=True +App.MonitorChildProcessWaitMs=1000 +App.MonitorChildProcessName=WRSHServer.exe +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$ +Console.AppReadyRegex=^\[[\d\.]+-[\d\.:]+\]\[[\d ]+\]LogBlueprintUserMessages: \[HDCKGameInstance_C_\d+\] ServerCreate$ +Console.UserJoinRegex=^\[[\d\.]+-[\d\.:]+\]\[[\d ]+\]LogNet: Login request: \?Name=(?.+?) userId: STEAM:UNKNOWN \[(?.+?)\] platform: STEAM$ +Console.UserLeaveRegex=^\[[\d\.]+-[\d\.:]+\]\[[\d ]+\]LogNet: UChannel::Close: Sending CloseBunch\.(?:.+?) UniqueId: STEAM:UNKNOWN \[(?.+?)\]$ +Console.UserChatRegex=^$ +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={} +Limits.SleepMode=True +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=5 +Limits.SleepStartThresholdSeconds=25 diff --git a/no-one-survivedconfig.json b/no-one-survivedconfig.json new file mode 100644 index 0000000..8845f06 --- /dev/null +++ b/no-one-survivedconfig.json @@ -0,0 +1,394 @@ +[ + { + "DisplayName":"Game Port", + "Category":"NOS Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$GamePort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"URL.Port", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Steam Query Port", + "Category":"NOS Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$QueryPort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"OnlineSubsystemSteam.GameServerQueryPort", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Server Name", + "Category":"NOS Server Settings", + "Description":"Sets the name shown in the server browser", + "Keywords":"server,name", + "FieldName":"ServerName", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.ServerName", + "IncludeInCommandLine":false, + "DefaultValue":"AMP Powered No One Survived Server", + "EnumValues":{} + }, + { + "DisplayName":"Save Name", + "Category":"NOS Server Settings", + "Description":"Sets the name of the server save file, which will also be the save loaded by default", + "Keywords":"save,name", + "FieldName":"SaveName", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.SaveName", + "IncludeInCommandLine":false, + "DefaultValue":"MySave", + "Placeholder":"MySave", + "EnumValues":{} + }, + { + "DisplayName":"Require Server Password", + "Category":"NOS Server Settings", + "Description":"If enabled, the password set under \"Server Password\" will be required to connect to the server", + "Keywords":"need,server,password,needpassword", + "FieldName":"NeedPassword", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.NeedPassword", + "IncludeInCommandLine":false, + "DefaultValue":"False", + "EnumValues":{ + "False":"False", + "True":"True" + } + }, + { + "DisplayName":"Server Password", + "Category":"NOS Server Settings", + "Description":"Sets the password for the server. Default is no password. Only applies if \"Require Server Password\" is enabled", + "Keywords":"server,password", + "FieldName":"Password", + "InputType":"password", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.Password", + "IncludeInCommandLine":false, + "DefaultValue":"", + "EnumValues":{} + }, + { + "DisplayName":"Admin Password", + "Category":"NOS Server Settings", + "Description":"Sets the server administrator password. Default is a strong random password", + "Keywords":"admin,password,adminpassword", + "FieldName":"AdminPassword", + "InputType":"password", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.AdminPassword", + "IncludeInCommandLine":false, + "DefaultValue":"{{newguid()}}", + "EnumValues":{} + }, + { + "DisplayName":"Player Limit", + "Category":"NOS Server Settings", + "Description":"Sets the maximum number of players that can connect to the server at any given time", + "Keywords":"maximum,players,limit,maxplayers", + "FieldName":"$MaxUsers", + "InputType":"number", + "MinValue":"2", + "MaxValue":"50", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.MaxPlayers", + "IncludeInCommandLine":false, + "DefaultValue":"50", + "Placeholder":"50", + "Suffix":"players", + "EnumValues":{} + }, + { + "DisplayName":"Server Region", + "Category":"NOS Server Settings", + "Description":"Sets the server region", + "Keywords":"region", + "FieldName":"Region", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.Region", + "IncludeInCommandLine":false, + "DefaultValue":"All", + "EnumValues":{ + "All":"All / Non-registered region", + "AF":"Africa", + "AS":"Asia", + "EU":"Europe", + "NA":"North America", + "OC":"Oceania", + "SA":"South America" + } + }, + { + "DisplayName":"Server IP Binding", + "Category":"NOS Server Settings", + "Description":"If required, you can change the binding of the server by editing App.ApplicationIPBinding in GenericModule.kvp for the instance. Stop the instance (not just the server) first", + "Keywords":"ip,binding,multihome", + "FieldName":"MultiHome", + "InputType":"hidden", + "IsFlagArgument":false, + "ParamFieldName":"MultiHome", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Enable PvP / Disable PvE", + "Category":"NOS Gameplay Settings", + "Description":"If set, PvP mode will be enabled, and PvE mode disabled", + "Keywords":"pve,pvp", + "FieldName":"PVP", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.PVP", + "IncludeInCommandLine":false, + "DefaultValue":"False", + "EnumValues":{ + "False":"False", + "True":"True" + } + }, + { + "DisplayName":"Enable Zombie Attack Wave", + "Category":"NOS Gameplay Settings", + "Description":"If set, the zombie attack wave will be enabled", + "Keywords":"zombie,corpse,attack,tide,wave,zombieattack", + "FieldName":"ZombieAttack", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.ZombieAttack", + "IncludeInCommandLine":false, + "DefaultValue":"True", + "EnumValues":{ + "False":"False", + "True":"True" + } + }, + { + "DisplayName":"Zombie Spawn Amount", + "Category":"NOS Gameplay Settings", + "Description":"Sets the number of zombies spawned per player in the attack wave", + "Keywords":"zombie,corpse,spawn,number,amount,numofzombiespawn", + "FieldName":"NumOfZombieSpawn", + "InputType":"number", + "MinValue":"25", + "MaxValue":"100", + "IsFlagArgument":false, + "ParamFieldName":"ServerSetting.NumOfZombieSpawn", + "IncludeInCommandLine":false, + "DefaultValue":"50", + "Placeholder":"50", + "Suffix":"zombies", + "EnumValues":{} + }, + { + "DisplayName":"Zombie Attack Cycle", + "Category":"NOS Gameplay Settings", + "Description":"Sets the number of days between zombie attack waves", + "Keywords":"zombie,corpse,attack,cycle,zombieattackday", + "FieldName":"ZombieAttackDay", + "InputType":"number", + "MinValue":"1", + "MaxValue":"30", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.ZombieAttackDay", + "IncludeInCommandLine":false, + "DefaultValue":"7", + "Placeholder":"7", + "Suffix":"days", + "EnumValues":{} + }, + { + "DisplayName":"Zombie Attack Multiplier", + "Category":"NOS Gameplay Settings", + "Description":"Sets the multiplier for the zombie attack wave", + "Keywords":"zombie,corpse,attack,scale,multiplier,attackzombienum", + "FieldName":"AttackZombieNum", + "InputType":"number", + "MinValue":"1", + "MaxValue":"5", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.AttackZombieNum", + "IncludeInCommandLine":false, + "DefaultValue":"2", + "Placeholder":"2", + "EnumValues":{} + }, + { + "DisplayName":"Zombie Respawn Multiplier", + "Category":"NOS Gameplay Settings", + "Description":"Sets the multiplier for the respawn of zombies (higher = more difficult)", + "Keywords":"zombie,corpse,respawn,multiplier,zombienum", + "FieldName":"ZombieNum", + "InputType":"number", + "MinValue":"1", + "MaxValue":"3", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.ZombieNum", + "IncludeInCommandLine":false, + "DefaultValue":"2", + "Placeholder":"2", + "EnumValues":{} + }, + { + "DisplayName":"Sprinter Zombies Proportion", + "Category":"NOS Gameplay Settings", + "Description":"Sets the proportion of sprinter zombies", + "Keywords":"zombie,corpse,running,sprinter,percentage,runzombiepercent", + "FieldName":"RunZombiePercent", + "InputType":"number", + "MinValue":"0", + "MaxValue":"1", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.RunZombiePercent", + "IncludeInCommandLine":false, + "DefaultValue":"0.5", + "Placeholder":"0.5", + "EnumValues":{} + }, + { + "DisplayName":"Zombie Strength", + "Category":"NOS Gameplay Settings", + "Description":"Sets the strength of zombies", + "Keywords":"zombie,strength,zombiestreng", + "FieldName":"ZombieStreng", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.ZombieStreng", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "EnumValues":{ + "0":"Weak", + "1":"Average (default)", + "2":"Strong", + "3":"Very strong" + } + }, + { + "DisplayName":"Year Duration", + "Category":"NOS Gameplay Settings", + "Description":"Sets the number of days in one in-game year", + "Keywords":"year,duration,day,yearday", + "FieldName":"YearDay", + "InputType":"number", + "MinValue":"1", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.YearDay", + "IncludeInCommandLine":false, + "DefaultValue":"40", + "Placeholder":"40", + "Suffix":"days", + "EnumValues":{} + }, + { + "DisplayName":"Enable Permanent Death", + "Category":"NOS Gameplay Settings", + "Description":"If set, permanent death will be enabled", + "Keywords":"death,permanent,permanentdead", + "FieldName":"PermanentDead", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.PermanentDead", + "IncludeInCommandLine":false, + "DefaultValue":"True", + "EnumValues":{ + "False":"False", + "True":"True" + } + }, + { + "DisplayName":"Loot Distribution", + "Category":"NOS Gameplay Settings", + "Description":"Sets how abundant loot is", + "Keywords":"loot,material,item,quantity,distribution,materialnum", + "FieldName":"MaterialNum", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.MaterialNum", + "IncludeInCommandLine":false, + "DefaultValue":"1", + "Placeholder":"1", + "EnumValues":{ + "0":"Rare", + "1":"Normal (default)", + "2":"Abundant", + "3":"Very abundant" + } + }, + { + "DisplayName":"Loot Respawn Time", + "Category":"NOS Gameplay Settings", + "Description":"Sets the number of days before loot is respawned", + "Keywords":"loot,spawn,refresh,date,itemspawn", + "FieldName":"ItemSpawn", + "InputType":"number", + "MinValue":"1", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.ItemSpawn", + "IncludeInCommandLine":false, + "DefaultValue":"15", + "Placeholder":"15", + "Suffix":"days", + "EnumValues":{} + }, + { + "DisplayName":"Merchant Restock Time", + "Category":"NOS Gameplay Settings", + "Description":"Sets the number of days before merchant items are restocked", + "Keywords":"merchant,item,spawn,refresh,restock,date,npcitemspawn", + "FieldName":"NPCItemSpawn", + "InputType":"number", + "MinValue":"1", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.NPCItemSpawn", + "IncludeInCommandLine":false, + "DefaultValue":"5", + "Placeholder":"5", + "Suffix":"days", + "EnumValues":{} + }, + { + "DisplayName":"Virus Fatality Rate", + "Category":"NOS Gameplay Settings", + "Description":"Sets the virus fatality rate", + "Keywords":"virus,fatality,rate,virusfatalityrate", + "FieldName":"VirusFatalityRate", + "InputType":"number", + "MinValue":"0", + "MaxValue":"1", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.VirusFatalityRate", + "IncludeInCommandLine":false, + "DefaultValue":"0.5", + "Placeholder":"0.5", + "EnumValues":{} + }, + { + "DisplayName":"Starter Kits", + "Category":"NOS Gameplay Settings", + "Description":"If set, starter kits will be enabled for novices", + "Keywords":"starter,kit,gift,bag,novice,giftbagfornovices", + "FieldName":"GiftBagForNovices", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"GameSettings.GiftBagForNovices", + "IncludeInCommandLine":false, + "DefaultValue":"False", + "EnumValues":{ + "False":"False", + "True":"True" + } + } +] \ No newline at end of file diff --git a/no-one-survivedmetaconfig.json b/no-one-survivedmetaconfig.json new file mode 100644 index 0000000..78fa2b0 --- /dev/null +++ b/no-one-survivedmetaconfig.json @@ -0,0 +1,12 @@ +[ + { + "ConfigFile":"WRSH/Saved/Config/WindowsServer/Game.ini", + "AutoMap":true, + "ConfigType":"ini" + }, + { + "ConfigFile":"WRSH/Saved/Config/WindowsServer/Engine.ini", + "AutoMap":true, + "ConfigType":"ini" + } +] \ No newline at end of file