diff --git a/theisle-evrima.kvp b/theisle-evrima.kvp new file mode 100644 index 0000000..07a8e0e --- /dev/null +++ b/theisle-evrima.kvp @@ -0,0 +1,75 @@ +Meta.DisplayName=The Isle (EVRIMA) +Meta.Description=The Isle (EVRIMA) Dedicated Server +Meta.OS=Windows, Linux +Meta.Arch=x86_64 +Meta.Author=Greelan +Meta.URL=https://survivetheisle.com/ +Meta.DisplayImageSource=steam:376210 +Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.Ports.$QueryPort} +Meta.ConfigManifest=theisle-evrimaconfig.json +Meta.MetaConfigManifest=theisle-evrimametaconfig.json +Meta.ConfigRoot=theisle-evrima.kvp +Meta.MinAMPVersion=2.3.3.0 +Meta.SpecificDockerImage= +Meta.ContainerPolicy=Supported +Meta.Prerequsites=[] +Meta.ConfigReleaseState=NotSpecified +App.DisplayName=The Isle (EVRIMA) +App.RootDir=./theisle/ +App.BaseDirectory=./theisle/412680/ +App.ExecutableWin=412680/TheIsle/Binaries/Win64/TheIsleServer-Win64-Shipping.exe +App.ExecutableLinux=412680/TheIsle/Binaries/Linux/TheIsleServer-Linux-Shipping +App.WorkingDir=412680 +App.LinuxCommandLineArgs= +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} -Port={{$GamePort}} -QueryPort={{$QueryPort}} {{$FormattedArgs}} -log +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullRootDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"376210"} +App.CommandLineParameterFormat=-{0}={1} +App.CommandLineParameterDelimiter= +App.ExitMethod=OS_CLOSE +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.Ports=[{"Protocol":"Both","Name":"Game Port","Description":"Port for game traffic","Port":7777,"Ref":"GamePort"},{"Protocol":"Both","Name":"Query Port","Description":"Port for server query traffic","Port":7778,"Ref":"QueryPort"},{"Protocol":"TCP","Name":"RCON Port","Description":"Port for RCON traffic","Port":8888,"Ref":"RCONPort"}] +App.PrimaryApplicationPortRef=GamePort +App.AdminPortRef=RCONPort +App.UniversalSleepApplicationUDPPortRef=GamePort +App.UniversalSleepSteamQueryPortRef=QueryPort +App.MaxUsers=50 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword= +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"412680","UpdateSourceVersion":"evrima"},{"UpdateStageName":"Game Config File Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://raw.githubusercontent.com/CubeCoders/AMPTemplates/main/theisle-evrimagame.ini","UpdateSourceTarget":"../","OverwriteExistingFiles":true},{"UpdateStageName":"Config Directory Creation","UpdateSourcePlatform":"Windows","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./theisle/412680/TheIsle/Saved/Config/WindowsServer"},{"UpdateStageName":"Config Directory Creation","UpdateSourcePlatform":"Linux","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./theisle/412680/TheIsle/Saved/Config/LinuxServer"},{"UpdateStageName":"Game Config File Copy","UpdateSourcePlatform":"Windows","UpdateSource":"CopyFilePath","UpdateSourceData":"./theisle/412680/TheIsle/Saved/Config/WindowsServer/Game.ini","UpdateSourceArgs":"./theisle-evrimagame.ini","OverwriteExistingFiles":false},{"UpdateStageName":"Game Config File Copy","UpdateSourcePlatform":"Linux","UpdateSource":"CopyFilePath","UpdateSourceData":"./theisle/412680/TheIsle/Saved/Config/LinuxServer/Game.ini","UpdateSourceArgs":"./theisle-evrimagame.ini","OverwriteExistingFiles":false}] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^(\[[\d.]*-[\d.]*:\d*\]\[[\d ]*\])?LogInit: Display: Engine is initialized\. Leaving FEngineLoop::Init\(\)$ +Console.UserJoinRegex= +Console.UserLeaveRegex= +Console.UserChatRegex= +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 diff --git a/theisle-evrimaconfig.json b/theisle-evrimaconfig.json new file mode 100644 index 0000000..cd3dbe2 --- /dev/null +++ b/theisle-evrimaconfig.json @@ -0,0 +1,140 @@ +[ + { + "DisplayName":"Server Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$GamePort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"URL.Port", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Query Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$QueryPort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"URL.PeerPort", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"RCON Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$RCONPort", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"/Script/Engine.Game.RconPort", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Server Name", + "Category":"Server Settings", + "Description":"The name of the server as it appears publicly", + "Keywords":"name", + "FieldName":"ServerName", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"/Script/TheIsle.TIGameSession.ServerName", + "IncludeInCommandLine":false, + "DefaultValue":"The Isle Server - Powered by AMP", + "EnumValues":{} + }, + { + "DisplayName":"Set MultiHome IP", + "Category":"Server Settings", + "Description":"If needed, set a private or public IP to bind the server to, or 0.0.0.0 for all IPs", + "Keywords":"multihome,ip", + "FieldName":"MultiHome", + "InputType":"text", + "IsFlagArgument":false, + "SkipIfEmpty":true, + "ParamFieldName":"MultiHome", + "IncludeInCommandLine":true, + "DefaultValue":"", + "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":"/Script/TheIsle.TIGameSession.MaxPlayerCount", + "IncludeInCommandLine":false, + "DefaultValue":"50", + "Suffix":"players", + "EnumValues":{} + }, + { + "DisplayName":"Player Limit", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$MaxUsers", + "InputType":"number", + "IsFlagArgument":false, + "Hidden":true, + "ParamFieldName":"/Script/Engine.GameSession.MaxPlayers", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Enable Global Chat", + "Category":"Server Settings", + "Description":"If enabled, all players will be able to use the global chat channel, not just admins", + "Keywords":"chat,global", + "FieldName":"bEnableGlobalChat", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/Script/TheIsle.TIGameSession.bEnableGlobalChat", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable RCON", + "Category":"Server Settings", + "Description":"Enables the RCON server", + "Keywords":"rcon,enable", + "FieldName":"RconEnabled", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/Script/Engine.Game.RconEnabled", + "IncludeInCommandLine":false, + "DefaultValue":"false", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"RCON Password", + "Category":"Server Settings", + "Description":"Password to connect to RCON. NOTE: You should generate a password after enabling RCON", + "Keywords":"rcon,password", + "FieldName":"RconPassword", + "InputType":"RandomPassword", + "IsFlagArgument":false, + "ParamFieldName":"/Script/Engine.Game.RconPassword", + "IncludeInCommandLine":false, + "DefaultValue":"", + "EnumValues":{} + } +] \ No newline at end of file diff --git a/theisle-evrimagame.ini b/theisle-evrimagame.ini new file mode 100644 index 0000000..392a2f2 --- /dev/null +++ b/theisle-evrimagame.ini @@ -0,0 +1,18 @@ +[/Script/TheIsle.TIGameStateBase] +;AdminsSteamIDs= + +[/Script/TheIsle.TIGameSession] +ServerName=The Isle Server - Powered by AMP +MaxPlayerCount=50 +bEnableGlobalChat=true +bGlobalIsSpeciesOnly=false +bLocalIsSpeciesOnly=true +LocalChatRange=20000.f + +[/Script/Engine.GameSession] +MaxPlayers=50 + +[/Script/Engine.Game] +RconEnabled=false +RconPort=8888 +RconPassword= diff --git a/theisle-evrimametaconfig.json b/theisle-evrimametaconfig.json new file mode 100644 index 0000000..0d66e0c --- /dev/null +++ b/theisle-evrimametaconfig.json @@ -0,0 +1,26 @@ +[ + { + "ConfigFile":"TheIsle/Saved/Config/WindowsServer/Game.ini", + "AutoMap":true, + "ConfigType":"ini", + "ConfigFormatRegex":"^(?.+?)=(?.*?)$" + }, + { + "ConfigFile":"TheIsle/Saved/Config/LinuxServer/Game.ini", + "AutoMap":true, + "ConfigType":"ini", + "ConfigFormatRegex":"^(?.+?)=(?.*?)$" + }, + { + "ConfigFile":"TheIsle/Saved/Config/WindowsServer/Engine.ini", + "AutoMap":true, + "ConfigType":"ini", + "ConfigFormatRegex":"^(?.+?)=(?.*?)$" + }, + { + "ConfigFile":"TheIsle/Saved/Config/LinuxServer/Engine.ini", + "AutoMap":true, + "ConfigType":"ini", + "ConfigFormatRegex":"^(?.+?)=(?.*?)$" + } +] \ No newline at end of file