Add Vintage Story (#152)

This commit is contained in:
Greelan 2022-09-14 20:13:54 +10:00 committed by GitHub
parent 8bf4bef4fa
commit 75b6cc29b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 226 additions and 0 deletions

86
vintage-story.kvp Normal file
View File

@ -0,0 +1,86 @@
Meta.DisplayName=Vintage Story
Meta.Description=Vintage Story Dedicated Server
Meta.OS=Windows, Linux
Meta.Arch=x86_64
Meta.Author=Greelan
Meta.URL=https://vintagestory.at
Meta.DisplayImageSource=url:https://content.invisioncic.com/r268468/monthly_2018_02/gamelogo-vintagestory-square.png.d938fbc6101feaae3bbc38019e392ff0.png
Meta.EndpointURIFormat=
Meta.ConfigManifest=vintage-storyconfig.json
Meta.MetaConfigManifest=vintage-storymetaconfig.json
Meta.ConfigRoot=vintage-story.kvp
Meta.MinAMPVersion=2.4.0.2
Meta.SpecificDockerImage=cubecoders/ampbase:mono
Meta.DockerRequired=False
Meta.ContainerPolicy=RecommendedOnLinux
Meta.Prerequsites=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
App.DisplayName=Vintage Story
App.RootDir=./vintage-story/
App.BaseDirectory=./vintage-story/
App.ExecutableWin=server\VintagestoryServer.exe
App.ExecutableLinux=/usr/bin/mono
App.WorkingDir=server
App.LinuxCommandLineArgs=./VintagestoryServer.exe
App.WindowsCommandLineArgs=
App.CommandLineArgs={{$PlatformArgs}} --port {{$ServerPort}} --dataPath "{{$FullBaseDir}}data" {{$FormattedArgs}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={}
App.CommandLineParameterFormat=--{0} {1}
App.CommandLineParameterDelimiter=
App.ExitMethod=String
App.ExitTimeout=30
App.ExitString=/stop
App.ExitFile=lock
App.HasWriteableConsole=True
App.HasReadableConsole=True
App.SupportsLiveSettingsChanges=False
App.LiveSettingChangeCommandFormat=set {0} "{1}"
App.ApplicationIPBinding=0.0.0.0
App.Ports=[{"Protocol":"TCP","Name":"Server Port","Description":"Port for game traffic","Port":42420,"Ref":"ServerPort"}]
App.AdminPortRef=ServerPort
App.PrimaryApplicationPortRef=ServerPort
App.UniversalSleepApplicationUDPPortRef=ServerPort
App.UniversalSleepSteamQueryPortRef=ServerPort
App.MaxUsers=16
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":"Server Directory Creation","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"{{$FullBaseDir}}server"},{"UpdateStageName":"Server Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://cdn.vintagestory.at/gamefiles/stable/vs_server_{{ServerVersion}}.tar.gz","UpdateSourceTarget":"{{$FullBaseDir}}server","UnzipUpdateSource":true,"OverwriteExistingFiles":true,"DeleteAfterExtract":true},{"UpdateStageName":"Start Server","UpdateSourcePlatform":"All","UpdateSource":"StartApplication"},{"UpdateStageName":"Wait For Server Start","UpdateSourcePlatform":"All","UpdateSource":"WaitForStartupComplete"},{"UpdateStageName":"Stop Server","UpdateSourcePlatform":"All","UpdateSource":"ShutdownApplication"}]
App.Compatibility=None
App.SteamUpdateAnonymousLogin=True
App.SteamForceLoginPrompt=False
App.RapidStartup=False
App.MonitorChildProcess=True
App.MonitorChildProcessWaitMs=100
App.MonitorChildProcessName=VintagestoryServer.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:]+ \[Server Event\] Dedicated Server now running on Port \d+ and (all ips|ip .*)!$
Console.UserJoinRegex=^[\d:]+ \[Server Event\] (?<username>.+?) [\[\]a-f\d:.]+ joins\.$
Console.UserLeaveRegex=^[\d:]+ \[Server Event\] Player (?<username>.+?) (left|got removed\. Reason: Server shutting down - Shutdown via server command).*$
Console.UserChatRegex=^[\d:]+ \[Server Chat\] (?<username>.+?): <strong>(?<username>.+?):</strong> (?<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={}
Limits.SleepMode=True
Limits.SleepOnStart=False
Limits.SleepDelayMinutes=5
Limits.DozeDelay=2
Limits.AutoRetryCount=5
Limits.SleepStartThresholdSeconds=25

133
vintage-storyconfig.json Normal file
View File

@ -0,0 +1,133 @@
[
{
"DisplayName":"Port",
"Category":"Server Settings",
"Description":"",
"Keywords":"",
"FieldName":"$ServerPort",
"InputType":"number",
"Hidden":true,
"IsFlagArgument":false,
"ParamFieldName":"$.Port",
"IncludeInCommandLine":false,
"EnumValues":{}
},
{
"DisplayName":"Server Version",
"Category":"Server Settings",
"Description":"[Server version](https://account.vintagestory.at/downloads) to install (needs a game account to view versions). NOTE: Delete the \"server\" folder and then update the server after changing this setting!",
"Keywords":"server,version",
"FieldName":"ServerVersion",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"ServerVersion",
"IncludeInCommandLine":false,
"DefaultValue":"1.16.5",
"Placeholder":"1.16.5",
"EnumValues":{}
},
{
"DisplayName":"Make Server Public",
"Category":"Server Settings",
"Description":"If enabled, the server will be added to the public server listing",
"Keywords":"public",
"FieldName":"AdvertiseServer",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"$.AdvertiseServer",
"IncludeInCommandLine":false,
"DefaultValue":"true",
"EnumValues":{
"True":"true",
"False":"false"
}
},
{
"DisplayName":"Server Name",
"Category":"Server Settings",
"Description":"Server name visible in the server list",
"Keywords":"server,name",
"FieldName":"ServerName",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"$.ServerName",
"IncludeInCommandLine":false,
"DefaultValue":"Vintage Story Server - Powered by AMP",
"EnumValues":{}
},
{
"DisplayName":"Welcome Message",
"Category":"Server Settings",
"Description":"Welcome message when players join the server. Placeholder {0} will be replaced with the player's nickname",
"Keywords":"welcome,message,motd",
"FieldName":"WelcomeMessage",
"InputType":"text",
"IsFlagArgument":false,
"ParamFieldName":"$.WelcomeMessage",
"IncludeInCommandLine":false,
"DefaultValue":"Welcome, {0}, may you survive well and prosper",
"EnumValues":{}
},
{
"DisplayName":"Player Limit",
"Category":"Server Settings",
"Description":"Maximum number of players that may connect to the server",
"Keywords":"players,limit",
"FieldName":"$MaxUsers",
"InputType":"number",
"IsFlagArgument":false,
"ParamFieldName":"$.MaxClients",
"IncludeInCommandLine":false,
"DefaultValue":"16",
"Suffix":"players",
"EnumValues":{}
},
{
"DisplayName":"Enable Whitelist",
"Category":"Server Settings",
"Description":"If enabled, only whitelisted players can join the server",
"Keywords":"whitelist",
"FieldName":"OnlyWhitelisted",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"$.OnlyWhitelisted",
"IncludeInCommandLine":false,
"DefaultValue":"false",
"EnumValues":{
"True":"true",
"False":"false"
}
},
{
"DisplayName":"Allow PvP",
"Category":"Gameplay Settings",
"Description":"If enabled, players can hit other players",
"Keywords":"pvp",
"FieldName":"AllowPvP",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"$.AllowPvP",
"IncludeInCommandLine":false,
"DefaultValue":"true",
"EnumValues":{
"True":"true",
"False":"false"
}
},
{
"DisplayName":"Enable UPnP",
"Category":"Server Settings",
"Description":"If enabled, the server will attempt to configure automatic port forwarding on a compatible router",
"Keywords":"upnp",
"FieldName":"Upnp",
"InputType":"checkbox",
"IsFlagArgument":false,
"ParamFieldName":"$.Upnp",
"IncludeInCommandLine":false,
"DefaultValue":"false",
"EnumValues":{
"True":"true",
"False":"false"
}
}
]

View File

@ -0,0 +1,7 @@
[
{
"ConfigFile":"data/serverconfig.json",
"AutoMap":true,
"ConfigType":"json"
}
]