Add OpenRA (#471)

This commit is contained in:
Greelan 2023-10-11 17:56:36 +11:00 committed by GitHub
parent de26edb366
commit 687e1ea08d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 812 additions and 0 deletions

101
openra-dune-2000.kvp Normal file
View File

@ -0,0 +1,101 @@
Meta.DisplayName=OpenRA - Dune 2000
Meta.Description=OpenRA Dedicated Server for Dune 2000
Meta.OS=Windows, Linux
Meta.AarchSupport=Unknown
Meta.Arch=x86_64
Meta.Author=Greelan
Meta.URL=https://www.openra.net/
Meta.DisplayImageSource=url:https://github.com/OpenRA/OpenRA/blob/bleed/mods/d2k/icon-3x.png?raw=true
Meta.EndpointURIFormat=
Meta.ConfigManifest=openraconfig.json
Meta.MetaConfigManifest=openrametaconfig.json
Meta.ConfigRoot=openra-dune-2000.kvp
Meta.MinAMPVersion=2.4.6.4
Meta.SpecificDockerImage=
Meta.DockerRequired=False
Meta.DockerBaseReadOnly=False
Meta.ContainerPolicy=Supported
Meta.ContainerPolicyReason=
Meta.ExtraSetupStepsURI=
Meta.Prerequsites=[]
Meta.ExtraContainerPackages=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
Meta.ConfigVersion=0.0.0.0
Meta.ReleaseNotes=
Meta.BreakingReleaseNotes=
App.DisplayName=OpenRA - Dune 2000
App.RootDir=./openra/
App.BaseDirectory=./openra/
App.SteamWorkshopDownloadLocation=
App.ExecutableWin=server\OpenRA.Server.exe
App.ExecutableLinux=server/OpenRA.Server
App.WorkingDir=server
App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} Engine.EngineDir="." Engine.SupportDir="{{$FullBaseDir}}Support" Server.ListenPort="{{$ServerPort}}" Game.Mod="d2k" {{$FormattedArgs}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={}
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":"TCP","Port":1234,"Ref":"ServerPort","Name":"Server Port","Description":"Port for game traffic"}]
App.AdminPortRef=0
App.PrimaryApplicationPortRef=ServerPort
App.UniversalSleepApplicationUDPPortRef=0
App.UniversalSleepSteamQueryPortRef=0
App.MaxUsers=12
App.UseRandomAdminPassword=False
App.PersistRandomPassword=True
App.RemoteAdminPassword=
App.AdminMethod=STDIO
App.AdminLoginTransform=None
App.LoginTransformPrefix=
App.RCONConnectDelaySeconds=30
App.RCONConnectRetrySeconds=15
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0}
App.UpdateSources=@IncludeJson[openra-dune-2000updates.json]
App.PreStartStages=[]
App.ForceUpdate=False
App.ForceUpdateReason=
App.Compatibility=None
App.SteamUpdateAnonymousLogin=False
App.SteamForceLoginPrompt=True
App.RapidStartup=False
App.MonitorChildProcess=False
App.DumpFullChildProcessTree=False
App.MonitorChildProcessWaitMs=1000
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=(WARNING|ERROR): Shader.+
Console.AppReadyRegex=^\[.*\] Master server communication established\.$
Console.UserJoinRegex=^\[.*\] (?<username>.+?) has joined the game\.$
Console.UserLeaveRegex=\[.*\] (?<username>.+?) has (disconnected|left)\.$
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

View File

@ -0,0 +1,54 @@
[
{
"UpdateStageName":"Server Directory Creation",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}server"
},
{
"UpdateStageName":"AppImage Directory Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}appimage"
},
{
"UpdateStageName":"Support Directory Creation",
"UpdateSourcePlatform":"All",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}Support"
},
{
"UpdateStageName":"OpenRA Download",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"FetchURLFromJQ",
"UpdateSourceData":"https://api.github.com/repos/OpenRA/OpenRA/releases/latest",
"UpdateSourceArgs":"$.assets.[5].browser_download_url",
"UpdateSourceTarget":"{{$FullBaseDir}}server",
"UnzipUpdateSource":true,
"OverwriteExistingFiles":true,
"DeleteAfterExtract":true
},
{
"UpdateStageName":"OpenRA Dune 2000 Download",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"GithubRelease",
"UpdateSourceArgs":"OpenRA/OpenRA",
"UpdateSourceData":"OpenRA-Dune-2000-x86_64.AppImage",
"UpdateSourceTarget":"{{$FullBaseDir}}appimage",
"OverwriteExistingFiles":true
},
{
"UpdateStageName":"OpenRA Dune 2000 Extract",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra/appimage && chmod +x OpenRA-Dune-2000-x86_64.AppImage && ./OpenRA-Dune-2000-x86_64.AppImage --appimage-extract && rm -f OpenRA-Dune-2000-x86_64.AppImage'"
},
{
"UpdateStageName":"AppImage Directory Symlink Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra && rm -f server ; ln -s appimage/squashfs-root/usr/lib/openra server'"
}
]

101
openra-red-alert.kvp Normal file
View File

@ -0,0 +1,101 @@
Meta.DisplayName=OpenRA - Red Alert
Meta.Description=OpenRA Dedicated Server for Command & Conquer: Red Alert
Meta.OS=Windows, Linux
Meta.AarchSupport=Unknown
Meta.Arch=x86_64
Meta.Author=Greelan
Meta.URL=https://www.openra.net/
Meta.DisplayImageSource=url:https://github.com/OpenRA/OpenRA/blob/bleed/mods/ra/icon-3x.png?raw=true
Meta.EndpointURIFormat=
Meta.ConfigManifest=openraconfig.json
Meta.MetaConfigManifest=openrametaconfig.json
Meta.ConfigRoot=openra-red-alert.kvp
Meta.MinAMPVersion=2.4.6.4
Meta.SpecificDockerImage=
Meta.DockerRequired=False
Meta.DockerBaseReadOnly=False
Meta.ContainerPolicy=Supported
Meta.ContainerPolicyReason=
Meta.ExtraSetupStepsURI=
Meta.Prerequsites=[]
Meta.ExtraContainerPackages=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
Meta.ConfigVersion=0.0.0.0
Meta.ReleaseNotes=
Meta.BreakingReleaseNotes=
App.DisplayName=OpenRA - Red Alert
App.RootDir=./openra/
App.BaseDirectory=./openra/
App.SteamWorkshopDownloadLocation=
App.ExecutableWin=server\OpenRA.Server.exe
App.ExecutableLinux=server/OpenRA.Server
App.WorkingDir=server
App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} Engine.EngineDir="." Engine.SupportDir="{{$FullBaseDir}}Support" Server.ListenPort="{{$ServerPort}}" Game.Mod="ra" {{$FormattedArgs}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={}
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":"TCP","Port":1234,"Ref":"ServerPort","Name":"Server Port","Description":"Port for game traffic"}]
App.AdminPortRef=0
App.PrimaryApplicationPortRef=ServerPort
App.UniversalSleepApplicationUDPPortRef=0
App.UniversalSleepSteamQueryPortRef=0
App.MaxUsers=12
App.UseRandomAdminPassword=False
App.PersistRandomPassword=True
App.RemoteAdminPassword=
App.AdminMethod=STDIO
App.AdminLoginTransform=None
App.LoginTransformPrefix=
App.RCONConnectDelaySeconds=30
App.RCONConnectRetrySeconds=15
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0}
App.UpdateSources=@IncludeJson[openra-red-alertupdates.json]
App.PreStartStages=[]
App.ForceUpdate=False
App.ForceUpdateReason=
App.Compatibility=None
App.SteamUpdateAnonymousLogin=False
App.SteamForceLoginPrompt=True
App.RapidStartup=False
App.MonitorChildProcess=False
App.DumpFullChildProcessTree=False
App.MonitorChildProcessWaitMs=1000
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=(WARNING|ERROR): Shader.+
Console.AppReadyRegex=^\[.*\] Master server communication established\.$
Console.UserJoinRegex=^\[.*\] (?<username>.+?) has joined the game\.$
Console.UserLeaveRegex=\[.*\] (?<username>.+?) has (disconnected|left)\.$
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

View File

@ -0,0 +1,54 @@
[
{
"UpdateStageName":"Server Directory Creation",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}server"
},
{
"UpdateStageName":"AppImage Directory Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}appimage"
},
{
"UpdateStageName":"Support Directory Creation",
"UpdateSourcePlatform":"All",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}Support"
},
{
"UpdateStageName":"OpenRA Download",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"FetchURLFromJQ",
"UpdateSourceData":"https://api.github.com/repos/OpenRA/OpenRA/releases/latest",
"UpdateSourceArgs":"$.assets.[5].browser_download_url",
"UpdateSourceTarget":"{{$FullBaseDir}}server",
"UnzipUpdateSource":true,
"OverwriteExistingFiles":true,
"DeleteAfterExtract":true
},
{
"UpdateStageName":"OpenRA Red Alert Download",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"GithubRelease",
"UpdateSourceArgs":"OpenRA/OpenRA",
"UpdateSourceData":"OpenRA-Red-Alert-x86_64.AppImage",
"UpdateSourceTarget":"{{$FullBaseDir}}appimage",
"OverwriteExistingFiles":true
},
{
"UpdateStageName":"OpenRA Red Alert Extract",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra/appimage && chmod +x OpenRA-Red-Alert-x86_64.AppImage && ./OpenRA-Red-Alert-x86_64.AppImage --appimage-extract && rm -f OpenRA-Red-Alert-x86_64.AppImage'"
},
{
"UpdateStageName":"AppImage Directory Symlink Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra && rm -f server ; ln -s appimage/squashfs-root/usr/lib/openra server'"
}
]

101
openra-tiberian-dawn.kvp Normal file
View File

@ -0,0 +1,101 @@
Meta.DisplayName=OpenRA - Tiberian Dawn
Meta.Description=OpenRA Dedicated Server for Command & Conquer: Tiberian Dawn
Meta.OS=Windows, Linux
Meta.AarchSupport=Unknown
Meta.Arch=x86_64
Meta.Author=Greelan
Meta.URL=https://www.openra.net/
Meta.DisplayImageSource=url:https://github.com/OpenRA/OpenRA/blob/bleed/mods/cnc/icon-3x.png?raw=true
Meta.EndpointURIFormat=
Meta.ConfigManifest=openraconfig.json
Meta.MetaConfigManifest=openrametaconfig.json
Meta.ConfigRoot=openra-tiberian-dawn.kvp
Meta.MinAMPVersion=2.4.6.4
Meta.SpecificDockerImage=
Meta.DockerRequired=False
Meta.DockerBaseReadOnly=False
Meta.ContainerPolicy=Supported
Meta.ContainerPolicyReason=
Meta.ExtraSetupStepsURI=
Meta.Prerequsites=[]
Meta.ExtraContainerPackages=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
Meta.ConfigVersion=0.0.0.0
Meta.ReleaseNotes=
Meta.BreakingReleaseNotes=
App.DisplayName=OpenRA - Tiberian Dawn
App.RootDir=./openra/
App.BaseDirectory=./openra/
App.SteamWorkshopDownloadLocation=
App.ExecutableWin=server\OpenRA.Server.exe
App.ExecutableLinux=server/OpenRA.Server
App.WorkingDir=server
App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} Engine.EngineDir="." Engine.SupportDir="{{$FullBaseDir}}Support" Server.ListenPort="{{$ServerPort}}" Game.Mod="cnc" {{$FormattedArgs}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={}
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":"TCP","Port":1234,"Ref":"ServerPort","Name":"Server Port","Description":"Port for game traffic"}]
App.AdminPortRef=0
App.PrimaryApplicationPortRef=ServerPort
App.UniversalSleepApplicationUDPPortRef=0
App.UniversalSleepSteamQueryPortRef=0
App.MaxUsers=16
App.UseRandomAdminPassword=False
App.PersistRandomPassword=True
App.RemoteAdminPassword=
App.AdminMethod=STDIO
App.AdminLoginTransform=None
App.LoginTransformPrefix=
App.RCONConnectDelaySeconds=30
App.RCONConnectRetrySeconds=15
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0}
App.UpdateSources=@IncludeJson[openra-tiberian-dawnupdates.json]
App.PreStartStages=[]
App.ForceUpdate=False
App.ForceUpdateReason=
App.Compatibility=None
App.SteamUpdateAnonymousLogin=False
App.SteamForceLoginPrompt=True
App.RapidStartup=False
App.MonitorChildProcess=False
App.DumpFullChildProcessTree=False
App.MonitorChildProcessWaitMs=1000
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=(WARNING|ERROR): Shader.+
Console.AppReadyRegex=^\[.*\] Master server communication established\.$
Console.UserJoinRegex=^\[.*\] (?<username>.+?) has joined the game\.$
Console.UserLeaveRegex=\[.*\] (?<username>.+?) has (disconnected|left)\.$
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

View File

@ -0,0 +1,54 @@
[
{
"UpdateStageName":"Server Directory Creation",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}server"
},
{
"UpdateStageName":"AppImage Directory Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}appimage"
},
{
"UpdateStageName":"Support Directory Creation",
"UpdateSourcePlatform":"All",
"UpdateSource":"CreateDirectory",
"UpdateSourceArgs":"{{$FullBaseDir}}Support"
},
{
"UpdateStageName":"OpenRA Download",
"UpdateSourcePlatform":"Windows",
"UpdateSource":"FetchURLFromJQ",
"UpdateSourceData":"https://api.github.com/repos/OpenRA/OpenRA/releases/latest",
"UpdateSourceArgs":"$.assets.[5].browser_download_url",
"UpdateSourceTarget":"{{$FullBaseDir}}server",
"UnzipUpdateSource":true,
"OverwriteExistingFiles":true,
"DeleteAfterExtract":true
},
{
"UpdateStageName":"OpenRA Tiberian Dawn Download",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"GithubRelease",
"UpdateSourceArgs":"OpenRA/OpenRA",
"UpdateSourceData":"OpenRA-Tiberian-Dawn-x86_64.AppImage",
"UpdateSourceTarget":"{{$FullBaseDir}}appimage",
"OverwriteExistingFiles":true
},
{
"UpdateStageName":"OpenRA Tiberian Dawn Extract",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra/appimage && chmod +x OpenRA-Tiberian-Dawn-x86_64.AppImage && ./OpenRA-Tiberian-Dawn-x86_64.AppImage --appimage-extract && rm -f OpenRA-Tiberian-Dawn-x86_64.AppImage'"
},
{
"UpdateStageName":"AppImage Directory Symlink Creation",
"UpdateSourcePlatform":"Linux",
"UpdateSource":"Executable",
"UpdateSourceData":"/bin/bash",
"UpdateSourceArgs":"-c 'cd ./openra && rm -f server ; ln -s appimage/squashfs-root/usr/lib/openra server'"
}
]

332
openraconfig.json Normal file
View File

@ -0,0 +1,332 @@
[
{
"DisplayName":"Server Name",
"Category":"Server Settings",
"Description":"Sets the name of the server as shown publicly",
"Keywords":"server,name,Server.Name",
"FieldName":"Server.Name",
"InputType":"text",
"ParamFieldName":"Server.Name",
"IncludeInCommandLine":true,
"DefaultValue":"AMP Powered OpenRA Server",
"Placeholder":"AMP Powered OpenRA Server",
"EnumValues":{}
},
{
"DisplayName":"MOTD",
"Category":"Server Settings",
"Description":"Sets the player welcome message (MOTD)",
"Keywords":"motd,welcome,message,motd",
"FieldName":"motd",
"InputType":"Textarea",
"ParamFieldName":"motd",
"DefaultValue":"Welcome to my server!",
"EnumValues":{}
},
{
"DisplayName":"Default Map",
"Category":"Server Settings",
"Description":"Sets the default map to start the server with. Input as a hash that can be obtained by the utility. Blank = random map",
"Keywords":"server,map,Server.Map",
"FieldName":"Server.Map",
"InputType":"text",
"ParamFieldName":"Server.Map",
"IncludeInCommandLine":true,
"DefaultValue":"",
"EnumValues":{}
},
{
"DisplayName":"Server Password",
"Category":"Server Settings",
"Description":"Sets the password for players to join the server. Default is no password",
"Keywords":"server,password,Server.Password",
"FieldName":"Server.Password",
"InputType":"password",
"ParamFieldName":"Server.Password",
"IncludeInCommandLine":true,
"DefaultValue":"",
"EnumValues":{}
},
{
"DisplayName":"Advertise Online",
"Category":"Server Settings",
"Description":"If enabled, the server will be able to be advertised to the master server list",
"Keywords":"advertise,advertising,public,online,server,list,Server.AdvertiseOnline",
"FieldName":"Server.AdvertiseOnline",
"InputType":"checkbox",
"ParamFieldName":"Server.AdvertiseOnline",
"IncludeInCommandLine":true,
"DefaultValue":"True",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"IP Ban List",
"Category":"Server Settings",
"Description":"Comma-separated list of IP addresses that are not allowed to join the server",
"Keywords":"banlist,ips,Server.Ban",
"FieldName":"Server.Ban",
"InputType":"text",
"ParamFieldName":"Server.Ban",
"IncludeInCommandLine":true,
"DefaultValue":"",
"EnumValues":{}
},
{
"DisplayName":"Require Authentication",
"Category":"Server Settings",
"Description":"If enabled, anonymous clients will not be allowed to join the server",
"Keywords":"require,authentication,Server.RequireAuthentication",
"FieldName":"Server.RequireAuthentication",
"InputType":"checkbox",
"ParamFieldName":"Server.RequireAuthentication",
"IncludeInCommandLine":true,
"DefaultValue":"False",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Profile ID Whitelist",
"Category":"Server Settings",
"Description":"Sets a list of profile IDs for authenticated players who are allowed to join the server. Assumes Require Authentication is enabled",
"Keywords":"profile,id,whitelist,Server.ProfileIDWhitelist",
"FieldName":"Server.ProfileIDWhitelist",
"InputType":"text",
"ParamFieldName":"Server.ProfileIDWhitelist",
"IncludeInCommandLine":true,
"DefaultValue":"",
"EnumValues":{}
},
{
"DisplayName":"Profile ID Blacklist",
"Category":"Server Settings",
"Description":"Sets a list of profile IDs for authenticated players who will be rejected from joining the server. Assumes Require Authentication is enabled",
"Keywords":"profile,id,blacklist,Server.ProfileIDBlacklist",
"FieldName":"Server.ProfileIDBlacklist",
"InputType":"text",
"ParamFieldName":"Server.ProfileIDBlacklist",
"IncludeInCommandLine":true,
"DefaultValue":"",
"EnumValues":{}
},
{
"DisplayName":"Enable Singleplayer Mode",
"Category":"Server Settings",
"Description":"If enabled, a game can be started with just one human player in the lobby",
"Keywords":"single,player,singleplayer,Server.EnableSingleplayer",
"FieldName":"Server.EnableSingleplayer",
"InputType":"checkbox",
"ParamFieldName":"Server.EnableSingleplayer",
"IncludeInCommandLine":true,
"DefaultValue":"False",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Player Limit",
"Category":"Server Settings",
"Description":"Sets the maximum number of players at one time to display in the AMP status tab. This is visual only - the actual maximum is determined by the map being played",
"Keywords":"maximum,players,clients,limit,maxplayers",
"FieldName":"$MaxUsers",
"InputType":"number",
"MinValue":"1",
"ParamFieldName":"MaxPlayers",
"DefaultValue":"12",
"Placeholder":"12",
"Suffix":"players",
"EnumValues":{}
},
{
"DisplayName":"Query Map Repository",
"Category":"Server Settings",
"Description":"If set, the server will query map information from the Resource Center if they are not available locally",
"Keywords":"query,map,repository,resource,center,Server.QueryMapRepository",
"FieldName":"Server.QueryMapRepository",
"InputType":"checkbox",
"ParamFieldName":"Server.QueryMapRepository",
"IncludeInCommandLine":true,
"DefaultValue":"True",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Enable Sync Reports",
"Category":"Server Settings",
"Description":"If set, client-side report generation will be enabled to help debug desync errors",
"Keywords":"sync,reports,Server.EnableSyncReports",
"FieldName":"Server.EnableSyncReports",
"InputType":"checkbox",
"ParamFieldName":"Server.EnableSyncReports",
"IncludeInCommandLine":true,
"DefaultValue":"False",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Timestamp Format",
"Category":"Server Settings",
"Description":"Sets the timestamp format. Default is the [ISO 8601 standard](https://www.iso.org/iso-8601-date-and-time-format.html)",
"Keywords":"timestamp,format,Server.TimestampFormat",
"FieldName":"Server.TimestampFormat",
"InputType":"text",
"ParamFieldName":"Server.TimestampFormat",
"IncludeInCommandLine":true,
"DefaultValue":"yyyy-MM-ddTHH:mm:ss",
"Placeholder":"yyyy-MM-ddTHH:mm:ss",
"EnumValues":{}
},
{
"DisplayName":"Share Anonymised IPs",
"Category":"Server Settings",
"Description":"If set, clients will be allowed to see anonymised IPs for other clients",
"Keywords":"share,anonymised,anonymized,IPs,Server.ShareAnonymizedIPs",
"FieldName":"Server.ShareAnonymizedIPs",
"InputType":"checkbox",
"ParamFieldName":"Server.ShareAnonymizedIPs",
"IncludeInCommandLine":true,
"DefaultValue":"True",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Enable Geo IP",
"Category":"Server Settings",
"Description":"If set, clients will be allowed to see the country of other clients",
"Keywords":"enable,geoip,country,Server.EnableGeoIP",
"FieldName":"Server.EnableGeoIP",
"InputType":"checkbox",
"ParamFieldName":"Server.EnableGeoIP",
"IncludeInCommandLine":true,
"DefaultValue":"True",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Record Replays",
"Category":"Server Settings",
"Description":"If set, the server will save replays for all games played",
"Keywords":"record,replays,Server.RecordReplays",
"FieldName":"Server.RecordReplays",
"InputType":"checkbox",
"ParamFieldName":"Server.RecordReplays",
"IncludeInCommandLine":true,
"DefaultValue":"False",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Enable Lint Checks",
"Category":"Server Settings",
"Description":"If set, the server treat maps that fail the lint checks as invalid",
"Keywords":"lint,checks,Server.EnableLintChecks",
"FieldName":"Server.EnableLintChecks",
"InputType":"checkbox",
"ParamFieldName":"Server.EnableLintChecks",
"IncludeInCommandLine":true,
"DefaultValue":"True",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"Flood Limit Join Cooldown",
"Category":"Server Settings",
"Description":"Sets the delay before newly joined players can send chat messages",
"Keywords":"flood,limit,join,cooldown,chat,messages,Server.FloodLimitJoinCooldown",
"FieldName":"Server.FloodLimitJoinCooldown",
"InputType":"number",
"ParamFieldName":"Server.FloodLimitJoinCooldown",
"IncludeInCommandLine":true,
"DefaultValue":"5000",
"Placeholder":"5000",
"Suffix":"milliseconds",
"EnumValues":{}
},
{
"DisplayName":"Flood Limit Interval",
"Category":"Server Settings",
"Description":"Sets the time period that player chat messages are tracked for",
"Keywords":"flood,limit,interval,chat,messages,Server.FloodLimitInterval",
"FieldName":"Server.FloodLimitInterval",
"InputType":"number",
"ParamFieldName":"Server.FloodLimitInterval",
"IncludeInCommandLine":true,
"DefaultValue":"5000",
"Placeholder":"5000",
"Suffix":"milliseconds",
"EnumValues":{}
},
{
"DisplayName":"Flood Limit Message Count",
"Category":"Server Settings",
"Description":"Sets the number of chat messages per Flood Limit Interval that a player can send before flood is detected",
"Keywords":"flood,limit,chat,message,count,Server.FloodLimitMessageCount",
"FieldName":"Server.FloodLimitMessageCount",
"InputType":"number",
"ParamFieldName":"Server.FloodLimitMessageCount",
"IncludeInCommandLine":true,
"DefaultValue":"5",
"Placeholder":"5",
"EnumValues":{}
},
{
"DisplayName":"Flood Limit Cooldown",
"Category":"Server Settings",
"Description":"Sets the delay before players can send chat messages after flood was detected",
"Keywords":"flood,limit,cooldown,chat,messages.Server.FloodLimitCooldown",
"FieldName":"Server.FloodLimitCooldown",
"InputType":"number",
"ParamFieldName":"Server.FloodLimitCooldown",
"IncludeInCommandLine":true,
"DefaultValue":"15000",
"Placeholder":"15000",
"Suffix":"milliseconds",
"EnumValues":{}
},
{
"DisplayName":"Enable UPnP",
"Category":"Server Settings",
"Description":"If set, UPnP/NAT-PMP enabled devices will be searched for automatic port forwarding",
"Keywords":"discover,upnp,nat-pmp,Server.DiscoverNatDevices",
"FieldName":"Server.DiscoverNatDevices",
"InputType":"checkbox",
"ParamFieldName":"Server.DiscoverNatDevices",
"IncludeInCommandLine":true,
"DefaultValue":"False",
"EnumValues":{
"False":"False",
"True":"True"
}
},
{
"DisplayName":"UPnP Port Mapping Lifetime",
"Category":"Server Settings",
"Description":"Sets the time period for UPnP/NAT-PMP mappings to last",
"Keywords":"nat,port,mapping,lifetime,Server.NatPortMappingLifetime",
"FieldName":"Server.NatPortMappingLifetime",
"InputType":"number",
"ParamFieldName":"Server.NatPortMappingLifetime",
"IncludeInCommandLine":true,
"DefaultValue":"36000",
"Placeholder":"36000",
"Suffix":"seconds",
"EnumValues":{}
}
]

15
openrametaconfig.json Normal file
View File

@ -0,0 +1,15 @@
[
{
"ConfigFile":"Support/motd.txt",
"ConfigType":"kvp",
"ConfigFormat":"{0}{1}",
"Subsections":[
{
"Heading":"$root",
"SettingMappings":{
"":"motd"
}
}
]
}
]