Pavlov VR: Fix docker support (#364)

This commit is contained in:
Greelan 2023-05-15 06:50:58 +10:00 committed by GitHub
parent d322507033
commit 70d9ea04bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 92 additions and 56 deletions

View File

@ -1,26 +1,39 @@
Meta.DisplayName=Pavlov VR Meta.DisplayName=Pavlov VR
Meta.Description=Pavlov VR Dedicated Server Meta.Description=Pavlov VR Dedicated Server
Meta.OS=Linux Meta.OS=Linux
Meta.AarchSupport=Unknown
Meta.Arch=x86_64
Meta.Author=Greelan Meta.Author=Greelan
Meta.URL=https://pavlov-vr.com Meta.URL=https://pavlov-vr.com
Meta.DisplayImageSource=steam:555160 Meta.DisplayImageSource=steam:555160
Meta.EndpointURIFormat= Meta.EndpointURIFormat=steam://connect/{0}
Meta.ConfigManifest=pavlov-vrconfig.json Meta.ConfigManifest=pavlov-vrconfig.json
Meta.MetaConfigManifest=pavlov-vrmetaconfig.json Meta.MetaConfigManifest=pavlov-vrmetaconfig.json
Meta.ConfigRoot=pavlov-vr.kvp Meta.ConfigRoot=pavlov-vr.kvp
Meta.MinAMPVersion=2.3.2.0 Meta.MinAMPVersion=2.4.3.6
Meta.SpecificDockerImage= Meta.SpecificDockerImage=
Meta.ContainerPolicy=NotSupported Meta.DockerRequired=False
Meta.ContainerPolicy=Supported
Meta.ContainerPolicyReason=
Meta.ExtraSetupStepsURI=
Meta.Prerequsites=[] Meta.Prerequsites=[]
Meta.ExtraContainerPackages=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
Meta.ConfigVersion=0.0.0.0
Meta.ReleaseNotes=
Meta.BreakingReleaseNotes=
App.DisplayName=Pavlov VR App.DisplayName=Pavlov VR
App.RootDir=./pavlovserver/ App.RootDir=./pavlovserver/
App.BaseDirectory=./pavlovserver/622970/ App.BaseDirectory=./pavlovserver/622970/
App.ExecutableWin= App.SteamWorkshopDownloadLocation=
App.ExecutableWin=
App.ExecutableLinux=622970/Pavlov/Binaries/Linux/PavlovServer App.ExecutableLinux=622970/Pavlov/Binaries/Linux/PavlovServer
App.WorkingDir=622970 App.WorkingDir=622970
App.LinuxCommandLineArgs= App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs= App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} -PORT={{$ApplicationPort1}} {{$FormattedArgs}} App.CommandLineArgs={{$PlatformArgs}} -PORT={{$ApplicationPort1}} {{$FormattedArgs}} -stdout -forcelogflush
App.UseLinuxIOREDIR=False
App.AppSettings={} App.AppSettings={}
App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"555160"} App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"555160"}
App.CommandLineParameterFormat=-{0}={1} App.CommandLineParameterFormat=-{0}={1}
@ -34,23 +47,35 @@ App.HasReadableConsole=True
App.SupportsLiveSettingsChanges=False App.SupportsLiveSettingsChanges=False
App.LiveSettingChangeCommandFormat=set {0} "{1}" App.LiveSettingChangeCommandFormat=set {0} "{1}"
App.ApplicationIPBinding=0.0.0.0 App.ApplicationIPBinding=0.0.0.0
App.ApplicationPort1=7777 App.Ports=[{"Protocol":"Both","Port":7777,"Ref":"ApplicationPort1","Name":"Main Game Port","Description":"Main port for game traffic"},{"Protocol":"Both","Port":8177,"Offset":0,"Range":1,"Ref":"ApplicationPort2","Name":"Secondary Game Port","Description":"Secondary port for game traffic"},{"Protocol":"TCP","Port":9100,"Ref":"RemoteAdminPort","Name":"RCON Port","Description":"Port for RCON traffic"}]
App.ApplicationPort2=8177 App.AdminPortRef=RemoteAdminPort
App.ApplicationPort3=0 App.PrimaryApplicationPortRef=ApplicationPort1
App.RemoteAdminPort=9100 App.UniversalSleepApplicationUDPPortRef=ApplicationPort1
App.UniversalSleepSteamQueryPortRef=ApplicationPort2
App.MaxUsers=10 App.MaxUsers=10
App.UseRandomAdminPassword=True App.UseRandomAdminPassword=True
App.PersistRandomPassword=True
App.RemoteAdminPassword= App.RemoteAdminPassword=
App.AdminMethod=TelnetRCON App.AdminMethod=TelnetRCON
App.AdminLoginTransform=MD5_Lower App.AdminLoginTransform=MD5_Lower
App.LoginTransformPrefix=
App.RCONConnectDelaySeconds=0 App.RCONConnectDelaySeconds=0
App.RCONConnectRetrySeconds=5 App.RCONConnectRetrySeconds=5
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0} App.TelnetLoginFormat={0}
App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"Linux","UpdateSource":"SteamCMD","UpdateSourceData":"622970","UpdateSourceArgs":"555160","UpdateSourceVersion":"{{ServerVersion}}"},{"UpdateStageName":"Config File Download","UpdateSourcePlatform":"Linux","UpdateSource":"FetchURL","UpdateSourceData":"https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/pavlov-vrconfigfile.ini","UpdateSourceTarget":"../","OverwriteExistingFiles":true},{"UpdateStageName":"Create Logs Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./pavlovserver/622970/Pavlov/Saved/Logs","OverwriteExistingFiles":false},{"UpdateStageName":"Create Config Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./pavlovserver/622970/Pavlov/Saved/Config/LinuxServer","OverwriteExistingFiles":false},{"UpdateStageName":"Create Maps Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./pavlovserver/622970/Pavlov/Saved/maps","OverwriteExistingFiles":false},{"UpdateStageName":"Copy Config File","UpdateSourcePlatform":"Linux","UpdateSource":"CopyFilePath","UpdateSourceData":"./pavlovserver/622970/Pavlov/Saved/Config/LinuxServer/Game.ini","UpdateSourceArgs":"./pavlov-vrconfigfile.ini","OverwriteExistingFiles":false}] App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"Linux","UpdateSource":"SteamCMD","UpdateSourceData":"622970","UpdateSourceArgs":"555160","UpdateSourceVersion":"{{ServerVersion}}"},{"UpdateStageName":"Create Logs Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"{{$FullBaseDir}}Pavlov/Saved/Logs","OverwriteExistingFiles":false},{"UpdateStageName":"Create Config Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"{{$FullBaseDir}}Pavlov/Saved/Config/LinuxServer","OverwriteExistingFiles":false},{"UpdateStageName":"Create Maps Directory","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"{{$FullBaseDir}}Pavlov/Saved/maps","OverwriteExistingFiles":false},{"UpdateStageName":"Config File Download","UpdateSourcePlatform":"Linux","UpdateSource":"FetchURL","UpdateSourceData":"https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/pavlov-vrconfigfile.ini","UpdateSourceArgs":"Game.ini","UpdateSourceTarget":"{{$FullBaseDir}}Pavlov/Saved/Config/LinuxServer","OverwriteExistingFiles":false}]
App.Compatibility=LinuxBufferedConsole App.PreStartStages=[]
App.Compatibility=None
App.SteamUpdateAnonymousLogin=True App.SteamUpdateAnonymousLogin=True
App.SteamForceLoginPrompt=False App.SteamForceLoginPrompt=False
App.RapidStartup=False App.RapidStartup=False
App.MonitorChildProcess=False
App.DumpFullChildProcessTree=False
App.MonitorChildProcessWaitMs=100
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}} App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=(\[0m|\[33m) Console.FilterMatchRegex=(\[0m|\[33m)
@ -60,7 +85,14 @@ Console.AppReadyRegex=^\[[\d.]+-[\d.]+:\d+\]\[[\d ]+\]LogGameState: Match State
Console.UserJoinRegex=^\[[\d.]+-[\d.]+:\d+\]\[[\d ]+\]PavlovLog: Player (?<userid>.+?) Joined, current bot Num = \d+$ Console.UserJoinRegex=^\[[\d.]+-[\d.]+:\d+\]\[[\d ]+\]PavlovLog: Player (?<userid>.+?) Joined, current bot Num = \d+$
Console.UserLeaveRegex=^\[[\d.]+-[\d.]+:\d+\]\[[\d ]+\]LogNet: UChannel::Close: Sending CloseBunch\. (?:.*?) UniqueId: NULL:(?<userid>.+?)$ Console.UserLeaveRegex=^\[[\d.]+-[\d.]+:\d+\]\[[\d ]+\]LogNet: UChannel::Close: Sending CloseBunch\. (?:.*?) UniqueId: NULL:(?<userid>.+?)$
Console.UserChatRegex=^$ Console.UserChatRegex=^$
Console.UpdateAvailableRegex= Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$
Console.MetricsRegex=
Console.SuppressLogAtStart=False Console.SuppressLogAtStart=False
Console.ActivateLogRegex= Console.ActivateLogRegex=
Console.UserActions={} Console.UserActions={}
Limits.SleepMode=False
Limits.SleepOnStart=False
Limits.SleepDelayMinutes=5
Limits.DozeDelay=2
Limits.AutoRetryCount=5
Limits.SleepStartThresholdSeconds=25

View File

@ -1,27 +1,9 @@
[ [
{
"DisplayName": "Server Version",
"Category": "Server Settings",
"Description": "Server version to install. NOTE: Update the server after changing this setting!",
"Keywords": "server,version,pc,shack,beta,rc",
"FieldName": "ServerVersion",
"InputType": "enum",
"IsFlagArgument": false,
"ParamFieldName": "",
"IncludeInCommandLine": false,
"DefaultValue": "public",
"EnumValues": {
"public": "PC Server (Non-Beta)",
"beta_server": "PC Beta",
"shack": "Shack Live (Quest)",
"shack_beta": "Shack RC (Quest)"
}
},
{ {
"DisplayName": "Server Name", "DisplayName": "Server Name",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Server name visible in the server list. Maximum 35 characters (approx)", "Description": "Sets the server name visible in the server list. Maximum 35 characters (approx)",
"Keywords": "server,name", "Keywords": "server,name,servername",
"FieldName": "ServerName", "FieldName": "ServerName",
"InputType": "text", "InputType": "text",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -31,7 +13,7 @@
"EnumValues": {} "EnumValues": {}
}, },
{ {
"DisplayName": "Include in Server List", "DisplayName": "Include In Server List",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "", "Description": "",
"Keywords": "", "Keywords": "",
@ -47,8 +29,8 @@
{ {
"DisplayName": "API Key", "DisplayName": "API Key",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Unique API key to allow the server to appear in the server list. [Get your API key](https://pavlov-ms.vankrupt.com/servers/v1/key)", "Description": "Sets a unique API key to allow the server to appear in the server list. [Get your API key](https://pavlov-ms.vankrupt.com/servers/v1/key)",
"Keywords": "api,key", "Keywords": "api,key,apikey",
"FieldName": "ApiKey", "FieldName": "ApiKey",
"InputType": "password", "InputType": "password",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -60,14 +42,14 @@
{ {
"DisplayName": "Server Password", "DisplayName": "Server Password",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Four digit PIN to connect to the server. NOTE: Change this after installing the server", "Description": "Sets a four digit PIN to connect to the server. NOTE: Change this after installing the server",
"Keywords": "password,PIN", "Keywords": "password,pin",
"FieldName": "Password", "FieldName": "Password",
"InputType": "password", "InputType": "password",
"IsFlagArgument": false, "IsFlagArgument": false,
"ParamFieldName": "/Script/Pavlov.DedicatedServer.Password", "ParamFieldName": "/Script/Pavlov.DedicatedServer.Password",
"IncludeInCommandLine": false, "IncludeInCommandLine": false,
"DefaultValue": "0000", "DefaultValue": "{{randomdigits(4)}}",
"EnumValues": {} "EnumValues": {}
}, },
{ {
@ -86,7 +68,7 @@
"DisplayName": "Enable Valve Anti-Cheat (Steam VAC)", "DisplayName": "Enable Valve Anti-Cheat (Steam VAC)",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "", "Description": "",
"Keywords": "anti-cheat,VAC,cheat", "Keywords": "anti-cheat,vac,cheat,bsecured",
"FieldName": "bSecured", "FieldName": "bSecured",
"InputType": "checkbox", "InputType": "checkbox",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -102,7 +84,7 @@
"DisplayName": "Enable Custom Server", "DisplayName": "Enable Custom Server",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "If enabled, activates new modding tools. Required for blacklist functionality", "Description": "If enabled, activates new modding tools. Required for blacklist functionality",
"Keywords": "custom", "Keywords": "custom,bcustomserver",
"FieldName": "bCustomServer", "FieldName": "bCustomServer",
"InputType": "checkbox", "InputType": "checkbox",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -118,7 +100,7 @@
"DisplayName": "Enable Competitive Mode", "DisplayName": "Enable Competitive Mode",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "If enabled, sets the server to competitive mode for SND", "Description": "If enabled, sets the server to competitive mode for SND",
"Keywords": "competitive", "Keywords": "competitive,bcompetitive",
"FieldName": "bCompetitive", "FieldName": "bCompetitive",
"InputType": "checkbox", "InputType": "checkbox",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -133,23 +115,24 @@
{ {
"DisplayName": "Player Limit", "DisplayName": "Player Limit",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Maximum number of players that may connect to the server. No more than 20 to 24 recommended for large maps", "Description": "Sets the maximum number of players that may connect to the server. No more than 20 to 24 recommended for large maps",
"Keywords": "players,limit", "Keywords": "players,limit,maxplayers",
"FieldName": "$MaxUsers", "FieldName": "$MaxUsers",
"InputType": "number", "InputType": "number",
"MinValue":"1",
"IsFlagArgument": false, "IsFlagArgument": false,
"ParamFieldName": "/Script/Pavlov.DedicatedServer.MaxPlayers", "ParamFieldName": "/Script/Pavlov.DedicatedServer.MaxPlayers",
"IncludeInCommandLine": false, "IncludeInCommandLine": false,
"DefaultValue": "10", "DefaultValue": "10",
"Placeholder": "10",
"Suffix": "players", "Suffix": "players",
"EnumValues": {}, "EnumValues": {}
"MinValue":"1"
}, },
{ {
"DisplayName": "Enable Whitelist", "DisplayName": "Enable Whitelist",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "If enabled, only whitelisted players can join", "Description": "If enabled, only whitelisted players can join",
"Keywords": "whitelist", "Keywords": "whitelist,bwhitelist",
"FieldName": "bWhitelist", "FieldName": "bWhitelist",
"InputType": "checkbox", "InputType": "checkbox",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -164,7 +147,7 @@
{ {
"DisplayName": "Whitelisted Players", "DisplayName": "Whitelisted Players",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "List of Steam64 IDs for whitelisted players. [Find Steam64 IDs](https://steamidfinder.com/)", "Description": "List of [Steam64 IDs](https://steamidfinder.com/) for whitelisted players",
"Keywords": "whitelist", "Keywords": "whitelist",
"FieldName": "whitelist", "FieldName": "whitelist",
"InputType": "list", "InputType": "list",
@ -178,7 +161,7 @@
{ {
"DisplayName": "Blacklisted Players", "DisplayName": "Blacklisted Players",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "List of Steam64 IDs for blacklisted players. [Find Steam64 IDs](https://steamidfinder.com/)", "Description": "List of [Steam64 IDs](https://steamidfinder.com/) for blacklisted players",
"Keywords": "blacklist,banned", "Keywords": "blacklist,banned",
"FieldName": "blacklist", "FieldName": "blacklist",
"InputType": "list", "InputType": "list",
@ -192,8 +175,8 @@
{ {
"DisplayName": "Server Moderators", "DisplayName": "Server Moderators",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "List of Steam64 IDs for server moderators/admins (functionality may currently be limited). [Find Steam64 IDs](https://steamidfinder.com/)", "Description": "List of [Steam64 IDs](https://steamidfinder.com/) for server moderators/admins (functionality may currently be limited)",
"Keywords": "moderators,admins", "Keywords": "moderators,admins,mods",
"FieldName": "mods", "FieldName": "mods",
"InputType": "list", "InputType": "list",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -207,7 +190,7 @@
"DisplayName": "Refresh Interval", "DisplayName": "Refresh Interval",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Sets how often the server checks for updates in whitelist/blacklist/modlist", "Description": "Sets how often the server checks for updates in whitelist/blacklist/modlist",
"Keywords": "refresh,list", "Keywords": "refresh,list,refreshlisttime",
"FieldName": "RefreshListTime", "FieldName": "RefreshListTime",
"InputType": "number", "InputType": "number",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -221,33 +204,36 @@
"DisplayName": "Server Tick Rate", "DisplayName": "Server Tick Rate",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Sets the server tickrate. Between 50 and 120 is most stable", "Description": "Sets the server tickrate. Between 50 and 120 is most stable",
"Keywords": "tick,rate", "Keywords": "tick,rate,tickrate",
"FieldName": "TickRate", "FieldName": "TickRate",
"InputType": "number", "InputType": "number",
"MinValue":"1",
"IsFlagArgument": false, "IsFlagArgument": false,
"ParamFieldName": "/Script/Pavlov.DedicatedServer.TickRate", "ParamFieldName": "/Script/Pavlov.DedicatedServer.TickRate",
"IncludeInCommandLine": false, "IncludeInCommandLine": false,
"DefaultValue": "90", "DefaultValue": "90",
"Placeholder": "90",
"EnumValues": {} "EnumValues": {}
}, },
{ {
"DisplayName": "Map Time Limit", "DisplayName": "Map Time Limit",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Sets the time limit for each map", "Description": "Sets the time limit for each map",
"Keywords": "map,time,limit", "Keywords": "map,time,limit,timelimit",
"FieldName": "TimeLimit", "FieldName": "TimeLimit",
"InputType": "number", "InputType": "number",
"IsFlagArgument": false, "IsFlagArgument": false,
"ParamFieldName": "/Script/Pavlov.DedicatedServer.TimeLimit", "ParamFieldName": "/Script/Pavlov.DedicatedServer.TimeLimit",
"IncludeInCommandLine": false, "IncludeInCommandLine": false,
"DefaultValue": "60", "DefaultValue": "60",
"Placeholder": "60",
"EnumValues": {} "EnumValues": {}
}, },
{ {
"DisplayName": "Balance Table URL", "DisplayName": "Balance Table URL",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "Reference for custom balance table on GitHub. [Follow the instructions](https://github.com/vankruptgames/BalancingTable) to create your own", "Description": "Reference for custom balance table on GitHub. [Follow the instructions](https://github.com/vankruptgames/BalancingTable) to create your own",
"Keywords": "balance,table,URL", "Keywords": "balance,table,URL,balancetableurl",
"FieldName": "BalanceTableURL", "FieldName": "BalanceTableURL",
"InputType": "text", "InputType": "text",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -261,7 +247,7 @@
"DisplayName": "Limited Ammo Mode", "DisplayName": "Limited Ammo Mode",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "", "Description": "",
"Keywords": "limited,ammo", "Keywords": "limited,ammo,limitedammotype",
"FieldName": "LimitedAmmoType", "FieldName": "LimitedAmmoType",
"InputType": "enum", "InputType": "enum",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -281,7 +267,7 @@
"DisplayName": "Enable Verbose Logging", "DisplayName": "Enable Verbose Logging",
"Category": "Server Settings", "Category": "Server Settings",
"Description": "If enabled, logging will be significantly increased, mostly with detailed statistics", "Description": "If enabled, logging will be significantly increased, mostly with detailed statistics",
"Keywords": "verbose,logging,statistics", "Keywords": "verbose,logging,statistics,bverboselogging",
"FieldName": "bVerboseLogging", "FieldName": "bVerboseLogging",
"InputType": "checkbox", "InputType": "checkbox",
"IsFlagArgument": false, "IsFlagArgument": false,
@ -292,5 +278,23 @@
"False": "false", "False": "false",
"True": "true" "True": "true"
} }
},
{
"DisplayName": "Server Release Version",
"Category": "SteamCMD and Updates",
"Description": "Sets the server release version to install. NOTE: Update the server after changing this setting!",
"Keywords": "server,version,pc,shack,beta,rc",
"FieldName": "ServerVersion",
"InputType": "enum",
"IsFlagArgument": false,
"ParamFieldName": "",
"IncludeInCommandLine": false,
"DefaultValue": "public",
"EnumValues": {
"public": "PC Server (Non-Beta)",
"beta_server": "PC Beta",
"shack": "Shack Live (Quest)",
"shack_beta": "Shack RC (Quest)"
}
} }
] ]