From 8d41fe1e4e2c2a4e2e7366a16ae3507eeaa647dd Mon Sep 17 00:00:00 2001 From: Greelan <53196309+Greelan@users.noreply.github.com> Date: Mon, 24 Jan 2022 19:03:36 +1100 Subject: [PATCH] Initial commit --- unturned.kvp | 72 ++++++++++++++++++ unturnedconfig.json | 164 ++++++++++++++++++++++++++++++++++++++++ unturnedconfigfile.dat | 11 +++ unturnedmetaconfig.json | 8 ++ 4 files changed, 255 insertions(+) create mode 100644 unturned.kvp create mode 100644 unturnedconfig.json create mode 100644 unturnedconfigfile.dat create mode 100644 unturnedmetaconfig.json diff --git a/unturned.kvp b/unturned.kvp new file mode 100644 index 0000000..de9ddfe --- /dev/null +++ b/unturned.kvp @@ -0,0 +1,72 @@ +Meta.DisplayName=Unturned +Meta.Description=Unturned 3 Dedicated Server +Meta.OS=Windows, Linux +Meta.Author=Greelan +Meta.URL=https://smartlydressedgames.com/#unturned +Meta.DisplayImageSource=url:https://cdn.cloudflare.steamstatic.com/steam/apps/304930/library_hero.jpg?t=1613683705 +Meta.EndpointURIFormat=steam://connect/{ip}/{GenericModule.App.ApplicationPort1} +Meta.ConfigManifest=unturnedconfig.json +Meta.MetaConfigManifest=unturnedmetaconfig.json +Meta.ConfigRoot=unturned.kvp +Meta.MinAMPVersion=2.3.2.0 +Meta.SpecificDockerImage= +Meta.Prerequsites=[] +App.DisplayName=Unturned +App.RootDir=./U3DS/ +App.BaseDirectory=./U3DS/1110390/ +App.ExecutableWin=1110390\Unturned.exe +App.ExecutableLinux=1110390/Unturned_Headless.x86_64 +App.WorkingDir=1110390 +App.LinuxCommandLineArgs= +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} -batchmode -nographics +{{ServerType}}/UnturnedServer {{$FormattedArgs}} +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"./linux64:%LD_LIBRARY_PATH%:./Unturned_Headless_Data/Plugins/x86_64/","SteamAppId":"304930"} +App.CommandLineParameterFormat=-{0}/{1} +App.CommandLineParameterDelimiter= +App.ExitMethod=String +App.ExitTimeout=30 +App.ExitString=/shutdown +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.ApplicationPort1=27015 +App.ApplicationPort2=27016 +App.ApplicationPort3=0 +App.RemoteAdminPort=27017 +App.MaxUsers=10 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=TelnetRCON +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"1110390"},{"UpdateStageName":"Config File Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://raw.githubusercontent.com/Greelan/AMPTemplates/unturned/unturnedconfigfile.dat","UpdateSourceTarget":"../","OverwriteExistingFiles":true},{"UpdateStageName":"Config File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Servers/UnturnedServer/Server/Commands.dat","UpdateSourceArgs":"./unturnedconfigfile.dat","OverwriteExistingFiles":false},{"UpdateStageName":"Rocket Directory Creation","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./U3DS/1110390/Modules/Rocket.Unturned"},{"UpdateStageName":"First Rocket File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Modules/Rocket.Unturned/English.dat","UpdateSourceArgs":"./U3DS/1110390/Extras/Rocket.Unturned/English.dat","OverwriteExistingFiles":true},{"UpdateStageName":"Second Rocket File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Modules/Rocket.Unturned/Rocket.API.dll","UpdateSourceArgs":"./U3DS/1110390/Extras/Rocket.Unturned/Rocket.API.dll","OverwriteExistingFiles":true},{"UpdateStageName":"Third Rocket File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Modules/Rocket.Unturned/Rocket.Core.dll","UpdateSourceArgs":"./U3DS/1110390/Extras/Rocket.Unturned/Rocket.Core.dll","OverwriteExistingFiles":true},{"UpdateStageName":"Fourth Rocket File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Modules/Rocket.Unturned/Rocket.Unturned.dll","UpdateSourceArgs":"./U3DS/1110390/Extras/Rocket.Unturned/Rocket.Unturned.dll","OverwriteExistingFiles":true},{"UpdateStageName":"Fifth Rocket File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Modules/Rocket.Unturned/Rocket.Unturned.module","UpdateSourceArgs":"./U3DS/1110390/Extras/Rocket.Unturned/Rocket.Unturned.module","OverwriteExistingFiles":true},{"UpdateStageName":"Steam Directory Creation","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./U3DS/1110390/Unturned_Headless_Data/Plugins/x86_64"},{"UpdateStageName":"Steamclient Copy","UpdateSourcePlatform":"Linux","UpdateSource":"CopyFilePath","UpdateSourceData":"./U3DS/1110390/Unturned_Headless_Data/Plugins/x86_64/steamclient.so","UpdateSourceArgs":"./U3DS/1110390/linux64/steamclient.so","OverwriteExistingFiles":true}] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.SupportsUniversalSleep=False +App.UniversalSleepApplicationUDPPort=27015 +App.UniversalSleepSteamQueryPort=27016 +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex=^(WARNING|ERROR): Shader.+$ +Console.AppReadyRegex=^Loading level: 100%$ +Console.UserJoinRegex=^Connecting: PlayerID: (?.+?) Name: (?.+?) Character: (?.+?)$ +Console.UserLeaveRegex=^Disconnecting: PlayerID: (?.+?) Name: (?.+?) Character: (?.+?)$ +Console.UserChatRegex=^\[(?:World|Area|Group)\] (?.+?) \[(?.+?)\]: "(?.+)"$ +Console.UpdateAvailableRegex=^\[\d\d:\d\d:\d\d\] \[INFO\] A new server update is available! v[\d\.]+.$ +Console.SuppressLogAtStart=False +Console.ActivateLogRegex= +Console.UserActions={} +Limits.SleepMode=True +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=5 \ No newline at end of file diff --git a/unturnedconfig.json b/unturnedconfig.json new file mode 100644 index 0000000..07f4632 --- /dev/null +++ b/unturnedconfig.json @@ -0,0 +1,164 @@ +[ + { + "DisplayName": "Server Port (REQUIRED)", + "Category": "Server Settings", + "Description": "Must match Application Port 1 from ADS Edit Port menu", + "Keywords": "server port", + "FieldName": "Port", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Port", + "IncludeInCommandLine": false, + "DefaultValue": "0" + }, + { + "DisplayName": "Server Type", + "Category": "Server Settings", + "Description": "", + "Keywords": "server,type,internet,lan", + "FieldName": "ServerType", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "", + "IncludeInCommandLine": false, + "DefaultValue": "InternetServer", + "EnumValues": { + "InternetServer": "Internet Server", + "LanServer": "LAN Server" + } + }, + { + "DisplayName": "Server Password", + "Category": "Server Settings", + "Description": "Password to connect to the server. Change this after installing the server", + "Keywords": "password", + "FieldName": "Password", + "InputType": "password", + "IsFlagArgument": false, + "ParamFieldName": "Password", + "IncludeInCommandLine": false, + "DefaultValue": "Password123" + }, + { + "DisplayName": "Owner", + "Category": "Server Settings", + "Description": "[Steam64 ID](https://steamidfinder.com/) of the server's owner, which gives them administrator commands and fully sets up the server", + "Keywords": "owner", + "FieldName": "Owner", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Owner", + "IncludeInCommandLine": false, + "DefaultValue": "" + }, + { + "DisplayName": "Welcome Message", + "Category": "Server Settings", + "Description": "Player welcome message", + "Keywords": "welcome,message", + "FieldName": "Welcome", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Welcome", + "IncludeInCommandLine": false, + "DefaultValue": "Welcome to Unturned. Hosted using AMP by CubeCoders" + }, + { + "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": "Maxplayers", + "IncludeInCommandLine": false, + "DefaultValue": "10" + }, + { + "DisplayName": "Map", + "Category": "Server Settings", + "Description": "Sets the map", + "Keywords": "map", + "FieldName": "Map", + "InputType": "text", + "IsFlagArgument": false, + "ParamFieldName": "Map", + "IncludeInCommandLine": false, + "DefaultValue": "PEI" + }, + { + "DisplayName": "Difficulty Mode", + "Category": "Server Settings", + "Description": "Sets the difficulty mode", + "Keywords": "difficulty,mode", + "FieldName": "Mode", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "Mode", + "IncludeInCommandLine": false, + "DefaultValue": "Normal", + "EnumValues": { + "Easy": "Easy", + "Normal": "Normal", + "Hard": "Hard" + } + }, + { + "DisplayName": "Perspective View", + "Category": "Server Settings", + "Description": "Sets the perspective view", + "Keywords": "perspective,view", + "FieldName": "Perspective", + "InputType": "enum", + "IsFlagArgument": false, + "ParamFieldName": "Perspective", + "IncludeInCommandLine": false, + "DefaultValue": "Both", + "EnumValues": { + "First": "First person only", + "Third": "Third person only", + "Vehicle": "Third person in vehicle only", + "Both": "First and third person allowed" + } + }, + { + "DisplayName": "Day/Night Cycle Period", + "Category": "Server Settings", + "Description": "Sets the day/night cycle period", + "Keywords": "day,night,cycle", + "FieldName": "Cycle", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Cycle", + "IncludeInCommandLine": false, + "DefaultValue": "43200", + "suffix": "seconds" + }, + { + "DisplayName": "Chat Rate", + "Category": "Server Settings", + "Description": "Sets the minimum time between chat messages in order to prevent spam", + "Keywords": "chatrate", + "FieldName": "Chatrate", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Chatrate", + "IncludeInCommandLine": false, + "DefaultValue": "0", + "suffix": "seconds" + }, + { + "DisplayName": "Timeout", + "Category": "Server Settings", + "Description": "Sets the maximum ping for players before they time out (400 - 600 ms recommended)", + "Keywords": "timeout", + "FieldName": "Timeout", + "InputType": "number", + "IsFlagArgument": false, + "ParamFieldName": "Timeout", + "IncludeInCommandLine": false, + "DefaultValue": "500", + "suffix": "milliseconds" + } +] \ No newline at end of file diff --git a/unturnedconfigfile.dat b/unturnedconfigfile.dat new file mode 100644 index 0000000..4adc002 --- /dev/null +++ b/unturnedconfigfile.dat @@ -0,0 +1,11 @@ +Port 0 +Password Password123 +Owner +Welcome Welcome to Unturned. Hosted using AMP by CubeCoders +Maxplayers 15 +Map PEI +Mode Easy +Perspective Both +Cycle 43200 +Chatrate 0 +Timeout 500 \ No newline at end of file diff --git a/unturnedmetaconfig.json b/unturnedmetaconfig.json new file mode 100644 index 0000000..fd139a5 --- /dev/null +++ b/unturnedmetaconfig.json @@ -0,0 +1,8 @@ +[ + { + "ConfigFile": "Servers/UnturnedServer/Server/Commands.dat", + "AutoMap": true, + "ConfigType": "kvp", + "ConfigFormat": "{0} {1}" + } +] \ No newline at end of file