diff --git a/theisle-legacy.kvp b/theisle-legacy.kvp new file mode 100644 index 0000000..11af369 --- /dev/null +++ b/theisle-legacy.kvp @@ -0,0 +1,76 @@ +Meta.DisplayName=The Isle (Legacy) +Meta.Description=The Isle (Legacy) Dedicated Server +Meta.OS=Windows +Meta.Arch=x86_64 +Meta.Author=Greelan +Meta.URL=https://survivetheisle.com/ +Meta.DisplayImageSource=steam:376210 +Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.ApplicationPort2} +Meta.ConfigManifest=theisle-legacyconfig.json +Meta.MetaConfigManifest=theisle-legacymetaconfig.json +Meta.ConfigRoot=theisle-legacy.kvp +Meta.MinAMPVersion=2.3.2.8 +Meta.SpecificDockerImage= +Meta.ContainerPolicy=Supported +Meta.Prerequsites=[] +Meta.ConfigReleaseState=NotSpecified +App.DisplayName=The Isle (Legacy) +App.RootDir=./theisle/ +App.BaseDirectory=./theisle/412680/ +App.ExecutableWin=412680/TheIsle/Binaries/Win64/TheIsleServer-Win64-Shipping.exe +App.ExecutableLinux=1580130/proton +App.WorkingDir=412680/TheIsle/Binaries/Win64 +App.LinuxCommandLineArgs=run {{$FullBaseDir}}TheIsle/Binaries/Win64/TheIsleServer-Win64-Shipping.exe +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} {{Map}}?game={{GameMode}} -Port={{$ApplicationPort1}} -QueryPort={{$ApplicationPort2}} {{$FormattedArgs}} -log +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}linux64:%LD_LIBRARY_PATH%","SteamAppId":"376210","STEAM_COMPAT_DATA_PATH":"{{$FullRootDir}}1580130","STEAM_COMPAT_CLIENT_INSTALL_PATH":"{{$FullRootDir}}1580130"} +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.ApplicationPort1=7777 +App.ApplicationPort2=7778 +App.ApplicationPort3=0 +App.RemoteAdminPort=0 +App.MaxUsers=50 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.UpdateSources=[{"UpdateStageName":"SteamCMD Download","UpdateSourcePlatform":"All","UpdateSource":"SteamCMD","UpdateSourceData":"412680","ForceDownloadPlatform":"Windows"},{"UpdateStageName":"Proton Compatibility Layer","UpdateSourcePlatform":"Linux","UpdateSource":"SteamCMD","UpdateSourceData":"1580130"},{"UpdateStageName":"Game Config File Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://raw.githubusercontent.com/Greelan/AMPTemplates/theisle-legacy/theisle-legacygame.ini","UpdateSourceTarget":"../","OverwriteExistingFiles":true},{"UpdateStageName":"Config Directory Creation","UpdateSourcePlatform":"All","UpdateSource":"CreateDirectory","UpdateSourceArgs":"./theisle/412680/TheIsle/Saved/Config/WindowsServer"},{"UpdateStageName":"Game Config File Copy","UpdateSourcePlatform":"All","UpdateSource":"CopyFilePath","UpdateSourceData":"./theisle/412680/TheIsle/Saved/Config/WindowsServer/Game.ini","UpdateSourceArgs":"./theisle-legacygame.ini","OverwriteExistingFiles":false}] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.SupportsUniversalSleep=False +App.UniversalSleepApplicationUDPPort=1 +App.UniversalSleepSteamQueryPort=2 +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +App.TemplateMatchRegex={{(\$?[\w]+)}} +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^LogGameMode: Display: Match State Changed from WaitingToStart to InProgress$ +Console.UserJoinRegex= +Console.UserLeaveRegex= +Console.UserChatRegex=^LogIChat: \[[\d:]+\] \(.*\) (?.+?): (?.+)$ +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-legacyconfig.json b/theisle-legacyconfig.json new file mode 100644 index 0000000..916ef22 --- /dev/null +++ b/theisle-legacyconfig.json @@ -0,0 +1,522 @@ +[ + { + "DisplayName":"Server Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$ApplicationPort1", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"url.Port", + "IncludeInCommandLine":false, + "EnumValues":{} + }, + { + "DisplayName":"Query Port", + "Category":"Server Settings", + "Description":"", + "Keywords":"", + "FieldName":"$ApplicationPort2", + "InputType":"number", + "Hidden":true, + "IsFlagArgument":false, + "ParamFieldName":"url.PeerPort", + "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.igamesession.ServerName", + "IncludeInCommandLine":false, + "DefaultValue":"The Isle Server - Powered by AMP", + "EnumValues":{} + }, + { + "DisplayName":"Welcome Message", + "Category":"Server Settings", + "Description":"Welcome message when players join the server", + "Keywords":"welcome,message,motd", + "FieldName":"MOTD", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"MOTD", + "IncludeInCommandLine":false, + "DefaultValue":"Welcome to The Isle Server - powered by AMP!", + "EnumValues":{} + }, + { + "DisplayName":"Server Password", + "Category":"Server Settings", + "Description":"Password required to connect to the server. Default is no password", + "Keywords":"password", + "FieldName":"ServerPassword", + "InputType":"password", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerPassword", + "IncludeInCommandLine":false, + "DefaultValue":"", + "EnumValues":{} + }, + { + "DisplayName":"Server Steam Group (Whitelist)", + "Category":"Server Settings", + "Description":"Sets the required SteamGroup64ID membership for players to join (whitelist server). Default is none", + "Keywords":"whitelist,steam,group", + "FieldName":"ServerSteamGroup", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerSteamGroup", + "IncludeInCommandLine":false, + "DefaultValue":"", + "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":"Enable Family Sharing", + "Category":"Server Settings", + "Description":"If enabled, Steam family account players can join the server", + "Keywords":"family,sharing", + "FieldName":"bFamilySharing", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bFamilySharing", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Server Type", + "Category":"Server Settings", + "Description":"Server type as it appears in the Steam browser", + "Keywords":"server,game,type", + "FieldName":"ServerTag", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerTag", + "IncludeInCommandLine":false, + "DefaultValue":"0", + "EnumValues":{ + "0":"Standard", + "1":"Realism", + "2":"Roleplay", + "3":"Experimental" + } + }, + { + "DisplayName":"Map", + "Category":"Server Settings", + "Description":"Sets the map", + "Keywords":"map", + "FieldName":"Map", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"Map", + "IncludeInCommandLine":false, + "DefaultValue":"/Game/TheIsle/Maps/Thenyaw_Island/Thenyaw_Island", + "EnumValues":{ + "/Game/TheIsle/Maps/Thenyaw_Island/Thenyaw_Island":"Thenyaw Island", + "/Game/TheIsle/Maps/Landscape3/Isle_V3":"Isle V3", + "/Game/TheIsle/Maps/Developer/DV_TestLevel":"DV TestLevel" + } + }, + { + "DisplayName":"Game Mode", + "Category":"Server Settings", + "Description":"Sets the game mode. Sandbox mode is usually used with the DV TestLevel map", + "Keywords":"game,mode,survival,sandbox", + "FieldName":"GameMode", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"GameMode", + "IncludeInCommandLine":false, + "DefaultValue":"Survival", + "EnumValues":{ + "Survival":"Survival", + "Sandbox":"Sandbox" + } + }, + { + "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/engine.gamesession.MaxPlayers", + "IncludeInCommandLine":false, + "DefaultValue":"50", + "Suffix":"players", + "EnumValues":{} + }, + { + "DisplayName":"Enable Player Name Tags", + "Category":"Server Settings", + "Description":"If enabled, name tags will be shown above players", + "Keywords":"name,tags", + "FieldName":"bServerNameTags", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerNameTags", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Spectator Limit", + "Category":"Server Settings", + "Description":"Maximum number of spectators", + "Keywords":"spectators,limit", + "FieldName":"MaxSpectators", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/engine.gamesession.MaxSpectators", + "IncludeInCommandLine":false, + "DefaultValue":"0", + "Suffix":"spectators", + "EnumValues":{} + }, + { + "DisplayName":"Enable Chat", + "Category":"Server Settings", + "Description":"If enabled, players will be able to chat", + "Keywords":"chat", + "FieldName":"bServerAllowChat", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerAllowChat", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "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":"bServerGlobalChat", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerGlobalChat", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable AI Dinosaurs", + "Category":"Server Settings", + "Description":"If enabled, AI dinosaurs will be spawned", + "Keywords":"AI,dinosaur", + "FieldName":"bServerAI", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerAI", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"AI Dinosaur Limit", + "Category":"Server Settings", + "Description":"Maximum number of AI dinosaurs that can spawn (if enabled)", + "Keywords":"AI,limit", + "FieldName":"ServerAIMax", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerAIMax", + "IncludeInCommandLine":false, + "DefaultValue":"100", + "Suffix":"dinosaurs", + "EnumValues":{} + }, + { + "DisplayName":"AI Dinosaur Multiplier", + "Category":"Server Settings", + "Description":"Sets AI spawn multiplier around each player (if enabled)", + "Keywords":"AI,multiplier", + "FieldName":"ServerAIRate", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerAIRate", + "IncludeInCommandLine":false, + "DefaultValue":"1.0", + "EnumValues":{} + }, + { + "DisplayName":"Enable AI Player Spawn Points", + "Category":"Server Settings", + "Description":"If enabled, allows the AI to use spawn points defined in the map for players and not only AI spawn points", + "Keywords":"AI,spawn,points", + "FieldName":"bServerAIPlayerSpawns", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerAIPlayerSpawns", + "IncludeInCommandLine":false, + "DefaultValue":"false", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Player Name Tags", + "Category":"Server Settings", + "Description":"If enabled, name tags will be shown above players", + "Keywords":"name,tags", + "FieldName":"bServerNameTags", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerNameTags", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Dinosaur Growth", + "Category":"Server Settings", + "Description":"If enabled, dinosaurs will grow over time", + "Keywords":"dinosaur,growth", + "FieldName":"bServerGrowth", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerGrowth", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Nesting Dinosaurs", + "Category":"Server Settings", + "Description":"If enabled, nesting baby dinosaurs will be allowed", + "Keywords":"nesting,baby,dinosaur", + "FieldName":"bServerNesting", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerNesting", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Scent Tracking", + "Category":"Server Settings", + "Description":"Enables scent tracking", + "Keywords":"scent,tracking", + "FieldName":"bServerScent", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerScent", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Turning In Place", + "Category":"Server Settings", + "Description":"If enabled, dinosaurs can turn in place without moving forward", + "Keywords":"turning,place,dinosaur", + "FieldName":"bServerAllowTurnInPlace", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerAllowTurnInPlace", + "IncludeInCommandLine":false, + "DefaultValue":"false", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Fall Damage", + "Category":"Server Settings", + "Description":"If enabled, falls cause damage", + "Keywords":"fall,damage", + "FieldName":"bServerFallDamage", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerFallDamage", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Corpse Retention Period", + "Category":"Server Settings", + "Description":"Time period for corpses to remain before respawning. Recommended to keep below 1,200 seconds", + "Keywords":"corpse,respawn,period", + "FieldName":"ServerDeadBodyTime", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerDeadBodyTime", + "IncludeInCommandLine":false, + "DefaultValue":"10", + "Suffix":"seconds", + "EnumValues":{} + }, + { + "DisplayName":"Player Respawn Interval", + "Category":"Server Settings", + "Description":"Time interval before players respawn after death", + "Keywords":"player,respawn,interval", + "FieldName":"ServerRespawnTime", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerRespawnTime", + "IncludeInCommandLine":false, + "DefaultValue":"45", + "Suffix":"seconds", + "EnumValues":{} + }, + { + "DisplayName":"Minimum Player Logout Period", + "Category":"Server Settings", + "Description":"Time period before players can safely logout", + "Keywords":"player,logout,period", + "FieldName":"ServerLogoutTime", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerLogoutTime", + "IncludeInCommandLine":false, + "DefaultValue":"60", + "Suffix":"seconds", + "EnumValues":{} + }, + { + "DisplayName":"Footprint Lifetime", + "Category":"Server Settings", + "Description":"Time period before footprints fade", + "Keywords":"footprint,fade,lifetime", + "FieldName":"ServerFootprintLifetime", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerFootprintLifetime", + "IncludeInCommandLine":false, + "DefaultValue":"60", + "Suffix":"seconds", + "EnumValues":{} + }, + { + "DisplayName":"Server Starting Time", + "Category":"Server Settings", + "Description":"Time of day at which the server starts (military time)", + "Keywords":"starting,time", + "FieldName":"ServerStartingTime", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamemode.ServerStartingTime", + "IncludeInCommandLine":false, + "DefaultValue":"1350", + "Placeholder":"0000 - 2400", + "EnumValues":{} + }, + { + "DisplayName":"Day Length", + "Category":"Server Settings", + "Description":"", + "Keywords":"day,length", + "FieldName":"ServerDayLength", + "InputType":"number", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamemode.ServerDayLength", + "IncludeInCommandLine":false, + "DefaultValue":"45", + "Suffix":"minutes", + "EnumValues":{} + }, + { + "DisplayName":"Enable Video Replay Recording", + "Category":"Server Settings", + "Description":"", + "Keywords":"video,replay,recording", + "FieldName":"bServerAllowReplayRecording", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.bServerAllowReplayRecording", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Enable Internal Database", + "Category":"Server Settings", + "Description":"If enabled, the internal database will be used, instead of an external SQL server", + "Keywords":"internal,database", + "FieldName":"ServerDatabase", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerDatabase", + "IncludeInCommandLine":false, + "DefaultValue":"true", + "EnumValues":{ + "False":"false", + "True":"true" + } + }, + { + "DisplayName":"Discord Address", + "Category":"Server Settings", + "Description":"ID for a Discord server (the ID after \"discord.gg/\") to provide a link to", + "Keywords":"discord", + "FieldName":"ServerDiscord", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"/script/theisle.igamesession.ServerDiscord", + "IncludeInCommandLine":false, + "DefaultValue":"", + "Placeholder":"78xKTd", + "EnumValues":{} + } +] \ No newline at end of file diff --git a/theisle-legacygame.ini b/theisle-legacygame.ini new file mode 100644 index 0000000..a329522 --- /dev/null +++ b/theisle-legacygame.ini @@ -0,0 +1,49 @@ +[/script/theisle.igamesession] +ServerName=The Isle Server - Powered by AMP +ServerPassword= +ServerSteamGroup= +bFamilySharing=true +ServerTag=0 +ServerDatabase=true +bServerAllowChat=true +bServerGlobalChat=true +bServerNameTags=true +bServerExperimental=false +bServerAI=true +ServerAIMax=100 +ServerAIRate=1.0 +bServerAIPlayerSpawns=false +bServerGrowth=true +bServerNesting=true +bServerScent=true +bServerAllowTurnInPlace=false +bServerFallDamage=true +bServerAllowReplayRecording=true +ServerDeadBodyTime=10 +ServerRespawnTime=45 +ServerLogoutTime=60 +ServerFootprintLifetime=60 +ServerDiscord= +;ServerAdmins= + +[/script/theisle.igamemode] +; Dinosaur Overrides +;ProgressionOverrides=(Row="Austro",Points=10) +;ProgressionOverrides=(Row="Spino",Points=20) +;DisabledDinosaurs=TrikeAdultS +;DisabledDinosaurs=Velo + +; Time of Day / Weather Settings +ServerStartingTime=1350 +ServerDayLength=45 + +; Supported Database Types: (None, SQLite, MariaDB) +;DatabaseType=SQLite +;DatabaseHost=127.0.0.127 +;DatabasePort=3306 +;DatabaseUser=root +;DatabasePass= + +[/script/engine.gamesession] +MaxPlayers=50 +MaxSpectators=0 diff --git a/theisle-legacymetaconfig.json b/theisle-legacymetaconfig.json new file mode 100644 index 0000000..4bc4bbd --- /dev/null +++ b/theisle-legacymetaconfig.json @@ -0,0 +1,33 @@ +[ + { + "ConfigFile": "TheIsle/Saved/Config/WindowsServer/Game.ini", + "AutoMap": true, + "ConfigType": "ini", + "ConfigFormatRegex": "^(?.+?)=(?.*?)$" + }, + { + "ConfigFile": "TheIsle/Saved/Config/WindowsServer/GameUserSettings.ini", + "AutoMap": true, + "ConfigType": "ini", + "ConfigFormatRegex": "^(?.+?)=(?.*?)$" + }, + { + "ConfigFile": "TheIsle/Saved/Config/WindowsServer/Engine.ini", + "AutoMap": true, + "ConfigType": "ini", + "ConfigFormatRegex": "^(?.+?)=(?.*?)$" + }, + { + "ConfigFile": "TheIsle/Saved/MOTD.txt", + "ConfigType": "kvp", + "ConfigFormat": "{0}{1}", + "Subsections": [ + { + "Heading": "$root", + "SettingMappings": { + "": "MOTD" + } + } + ] + } +]