Avorion: overhaul of template

This commit is contained in:
Greelan 2022-07-05 19:58:44 +10:00
parent c857418c15
commit 5cb6f92e84
3 changed files with 291 additions and 61 deletions

View File

@ -1,35 +1,86 @@
App.AdminMethod=STDIO Meta.DisplayName=Avorion
App.ApplicationPort1=27000 Meta.Description=Avorion Dedicated Server
App.ApplicationPort2=27003 Meta.OS=Windows, Linux
App.ApplicationReadyMode=RegexMatch Meta.Arch=x86_64
App.BaseDirectory=./avorion/565060/ Meta.Author=Greelan, EvilPLa, Shinynecrid
App.CommandLineArgs=--galaxy-name {{GALAXYNAME}} --admin {{ADMIN}} --datapath {{GALAXY_PATH}} --max-players {{$MaxUsers}} Meta.URL=https://www.avorion.net/
App.CommandLineParameterDelimiter= Meta.DisplayImageSource=steam:445220
App.CommandLineParameterFormat=-{0} "{1}" Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.Ports.$SteamQueryPort}
Meta.ConfigManifest=avorionconfig.json
Meta.MetaConfigManifest=avorionmetaconfig.json
Meta.ConfigRoot=avorion.kvp
Meta.MinAMPVersion=2.3.4.0
Meta.SpecificDockerImage=
Meta.DockerRequired=False
Meta.ContainerPolicy=Supported
Meta.Prerequsites=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
App.DisplayName=Avorion App.DisplayName=Avorion
App.EnvironmentVariables={"LD_LIBRARY_PATH": "./linux64:%LD_LIBRARY_PATH%", "SteamAppId": "565060"}
App.ExecutableLinux=565060//bin/AvorionServer
App.ExecutableWin=565060\bin\AvorionServer.exe
App.ExitMethod=String
App.ExitString=/stop
App.HasReadableConsole=true
App.HasWritableConsole=true
App.RapidStartup=false
App.RootDir=./avorion/ App.RootDir=./avorion/
App.UpdateSource=Multi App.BaseDirectory=./avorion/565060/
App.UpdateSources=[{"UpdateStageName": "SteamCMD Download","UpdateSourcePlatform": "All", "UpdateSource": "SteamCMD", "UpdateSourceData": "565060"}] App.ExecutableWin=565060\bin\AvorionServer.exe
App.ExecutableLinux=565060/bin/AvorionServer
App.WorkingDir=565060 App.WorkingDir=565060
Console.AppReadyRegex=^Server startup complete.$ App.LinuxCommandLineArgs=
Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$ App.WindowsCommandLineArgs=
Console.UserChatRegex=^<(?<username>(?!Server).+?)> (?<message>.+?)$ App.CommandLineArgs={{$PlatformArgs}} --port {{$GamePort}} --query-port {{$QueryPort}} --steam-query-port {{$SteamQueryPort}} --steam-master-port {{$SteamPort}} --rcon-port {{$RCONPort}} --rcon-password "{{$RemoteAdminPassword}}" --datapath "{{$FullBaseDir}}galaxies" {{$FormattedArgs}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"445220"}
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":"Both","Port":27000,"Ref":"GamePort","Name":"Game Port","Description":"Port for game traffic"},{"Protocol":"UDP","Port":27003,"Ref":"QueryPort","Name":"Query Port","Description":"Port for query traffic"},{"Protocol":"UDP","Port":27020,"Ref":"SteamQueryPort","Name":"Steam Query Port","Description":"Port for Steam query traffic"},{"Protocol":"UDP","Port":27021,"Ref":"SteamPort","Name":"Steam Port","Description":"Port for Steam traffic"},{"Protocol":"TCP","Port":27015,"Ref":"RCONPort","Name":"RCON Port","Description":"Port for RCON traffic"}]
App.AdminPortRef=RCONPort
App.PrimaryApplicationPortRef=GamePort
App.UniversalSleepApplicationUDPPortRef=GamePort
App.UniversalSleepSteamQueryPortRef=SteamQueryPort
App.MaxUsers=10
App.UseRandomAdminPassword=True
App.RemoteAdminPassword=Password123
App.AdminMethod=SourceRCON
App.AdminLoginTransform=None
App.RCONConnectDelaySeconds=5
App.RCONConnectRetrySeconds=5
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=
App.TelnetLoginFormat={0}
App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"All","UpdateSource": "SteamCMD","UpdateSourceData":"565060"}]
App.Compatibility=None
App.SteamUpdateAnonymousLogin=True
App.SteamForceLoginPrompt=False
App.RapidStartup=False
App.MonitorChildProcess=False
App.MonitorChildProcessWaitMs=100
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=RegexMatch
App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=
Console.AppReadyRegex=^Server startup complete\.$
Console.UserJoinRegex=^<Server> Player (?<username>.+?) joined the galaxy$ Console.UserJoinRegex=^<Server> Player (?<username>.+?) joined the galaxy$
Console.UserLeaveRegex=^<Server> Player (?<username>.+?) left the galaxy$ Console.UserLeaveRegex=^<Server> Player (?<username>.+?) left the galaxy$
Meta.Author=Shinynecrid Console.UserChatRegex=^<(?<username>(?!Server).+?)> (?<message>.+?)$
Meta.ConfigManifest=avorionconfig.json Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$
Meta.ConfigRoot=avorion.kvp Console.MetricsRegex=
Meta.Description=Avorion Dedicated Server Console.SuppressLogAtStart=False
Meta.DisplayImageSource=steam:445220 Console.ActivateLogRegex=
Meta.DisplayName=Avorion Console.UserActions={}
Meta.EndpointURIFormat= Limits.SleepMode=False
Meta.OS=2 Limits.SleepOnStart=False
Meta.URL=https://steamdb.info/app/565060/ Limits.SleepDelayMinutes=5
Limits.DozeDelay=2
Limits.AutoRetryCount=5
Limits.SleepStartThresholdSeconds=25

View File

@ -1,41 +1,212 @@
[ [
{ {
"DisplayName": "Galaxy Name", "DisplayName":"Server Name",
"Category": "Server Configuration", "Category":"Server Settings",
"Description": "Set World Name", "Description":"Server name shown in the server list",
"Keywords": "Galaxy", "Keywords":"server,name",
"FieldName": "GALAXYNAME", "FieldName":"ServerName",
"InputType":"text", "InputType":"text",
"IsFlagArgument":false, "IsFlagArgument":false,
"ParamFieldName": "GALAXYNAME", "ParamFieldName":"server-name",
"IncludeInCommandLine":true, "IncludeInCommandLine":true,
"SkipIfEmpty":true,
"DefaultValue":"Avorion Server - Powered by AMP",
"EnumValues":{}
},
{
"DisplayName":"Server Description",
"Category":"Server Settings",
"Description":"Server description shown in the server list. Requires the galaxy to be generated first",
"Keywords":"server,description",
"FieldName":"Description",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"Administration.description",
"IncludeInCommandLine":false,
"DefaultValue":"", "DefaultValue":"",
"EnumValues":{} "EnumValues":{}
}, },
{ {
"DisplayName": "Admin", "DisplayName":"Server Password",
"Category": "Server Configuration", "Category":"Server Settings",
"Description": "Steam64ID for Admin", "Description":"Sets the password to connect to the server. Default is no password. Requires the galaxy to be generated first",
"Keywords": "Admin", "Keywords":"server,password",
"FieldName": "ADMIN", "FieldName":"Password",
"InputType": "text", "InputType":"password",
"IsFlagArgument":false, "IsFlagArgument":false,
"ParamFieldName": "ADMIN", "ParamFieldName":"Administration.password",
"IncludeInCommandLine": true, "IncludeInCommandLine":false,
"DefaultValue": "ADMIN", "DefaultValue":"",
"EnumValues":{} "EnumValues":{}
}, },
{ {
"DisplayName": "Max Players", "DisplayName":"List Server",
"Category": "Server Configuration", "Category":"Server Settings",
"Description": "Set Max Player Count", "Description":"If enabled, the server will be displayed on public server lists. Requires the \"Steam Relay Network\" connection mode",
"Keywords": "Players", "Keywords":"public,visible,listed",
"FieldName":"Listed",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"listed",
"IncludeInCommandLine":true,
"DefaultValue":"true",
"EnumValues":{
"True":"true",
"False":"false"
}
},
{
"DisplayName":"Connection Mode",
"Category":"Server Settings",
"Description":"Sets the connection mode - either through the Steam relay network, or via a direct port connection on the Game Port. Steam relay network is recommended for dedicated servers",
"Keywords":"steam,relay,network,port",
"FieldName":"UseSteamNetworking",
"InputType":"enum",
"IsFlagArgument":false,
"ParamFieldName":"use-steam-networking",
"IncludeInCommandLine":true,
"DefaultValue":"1",
"EnumValues":{
"1":"Steam Relay Network",
"0":"Direct Port Connection"
}
},
{
"DisplayName":"Galaxy Name",
"Category":"Server Settings",
"Description":"Sets the galaxy name for the server, with the world data saved under this name in the \"galaxies\" directory. Start and stop the server after changing this setting to allow galaxy generation",
"Keywords":"galaxy,name",
"FieldName":"GalaxyName",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"galaxy-name",
"IncludeInCommandLine":true,
"SkipIfEmpty":true,
"DefaultValue":"avorion_galaxy",
"EnumValues": {}
},
{
"DisplayName":"Galaxy Seed",
"Category":"Server Settings",
"Description":"Sets the seed to generate the galaxy. Alphanumeric characters only. Default is 0. Changing this after the server has been running and players logged in can lead to broken saves",
"Keywords":"galaxy,seed",
"FieldName":"Seed",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"seed",
"IncludeInCommandLine":true,
"SkipIfEmpty":true,
"DefaultValue":"0",
"EnumValues": {}
},
{
"DisplayName":"Galaxy Scenario",
"Category":"Server Settings",
"Description":"Sets the scenario for the galaxy. Changing this after the server has been running and players logged in can lead to broken saves",
"Keywords":"scenario",
"FieldName":"Scenario",
"InputType":"enum",
"IsFlagArgument":false,
"ParamFieldName":"scenario",
"IncludeInCommandLine":true,
"DefaultValue":"normal",
"EnumValues": {
"creative":"Creative",
"normal":"Normal"
}
},
{
"DisplayName":"Server Difficulty",
"Category":"Server Settings",
"Description":"Sets the difficulty level of the server",
"Keywords":"difficulty",
"FieldName":"Difficulty",
"InputType":"enum",
"IsFlagArgument":false,
"ParamFieldName":"difficulty",
"IncludeInCommandLine":true,
"DefaultValue":"0",
"EnumValues": {
"-3":"Beginner",
"-2":"Easy",
"-1":"Normal",
"0":"Veteran (default)",
"1":"Expert",
"2":"Hardcore",
"3":"Insane"
}
},
{
"DisplayName":"Server Administrators",
"Category":"Server Settings",
"Description":"Comma-separated list of [Steam64 IDs](https://steamidfinder.com/) of the server administrators",
"Keywords":"admin,user",
"FieldName":"Admin",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"admin",
"IncludeInCommandLine":true,
"SkipIfEmpty":true,
"DefaultValue":"",
"Placeholder":"76561198146705130,57683990857481248",
"EnumValues":{}
},
{
"DisplayName":"Player Limit",
"Category":"Server Settings",
"Description":"Maximum number of players that can connect to the server at any given time",
"Keywords":"maximum,players,limit",
"FieldName":"$MaxUsers", "FieldName":"$MaxUsers",
"InputType":"number", "InputType":"number",
"IsFlagArgument":false, "IsFlagArgument":false,
"ParamFieldName": "$MaxUsers", "ParamFieldName":"max-players",
"IncludeInCommandLine":true, "IncludeInCommandLine":true,
"DefaultValue":"10", "DefaultValue":"10",
"Suffix":"players",
"EnumValues":{}
},
{
"DisplayName":"Save Interval",
"Category":"Server Settings",
"Description":"Sets the time interval between auto saves",
"Keywords":"save,interval",
"FieldName":"SaveInterval",
"InputType":"number",
"IsFlagArgument":false,
"ParamFieldName":"save-interval",
"IncludeInCommandLine":true,
"DefaultValue":"300",
"Suffix":"seconds",
"EnumValues":{}
},
{
"DisplayName":"Same Sector Start",
"Category":"Server Settings",
"Description":"If enabled, all players will start in the same sector",
"Keywords":"same,sector,start",
"FieldName":"SameStartSector",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"same-start-sector",
"IncludeInCommandLine":true,
"DefaultValue":"true",
"EnumValues":{
"True":"true",
"False":"false"
}
},
{
"DisplayName":"Collision Damage Level",
"Category":"Server Settings",
"Description":"Sets the level of damage to an object on collison. 0 = no damage, 1 = full damage",
"Keywords":"collision,damage",
"FieldName":"CollisionDamage",
"InputType":"number",
"IsFlagArgument":false,
"ParamFieldName":"collision-damage",
"IncludeInCommandLine":true,
"DefaultValue":"1",
"Placeholder":"0 - 1",
"EnumValues":{} "EnumValues":{}
} }
] ]

8
avorionmetaconfig.json Normal file
View File

@ -0,0 +1,8 @@
[
{
"ConfigFile":"galaxies/{{GalaxyName}}/server.ini",
"AutoMap":true,
"ConfigType":"ini",
"ConfigFormatRegex":"^(?<key>.+?)=(?<value>.*?)$"
}
]