diff --git a/manifest.json b/manifest.json index 092da193a..615b88f0d 100644 --- a/manifest.json +++ b/manifest.json @@ -1,9 +1,9 @@ { - "id": "ec280171-c67b-4cf8-923f-dc27fea91ee1", - "authors": ["CubeCoders Limited", "AMP Community"], - "origin": "https://github.com/CubeCoders/AMPTemplates.git", - "url": "https://github.com/CubeCoders/AMPTemplates", - "imagefile": "", - "prefix": "", - "repotype": "AppTemplates" +"id": "36707f14-3910-4048-9f8e-767da55d79d5", +"authors": ["Marijan", "AMP Community"], +"origin": "https://github.com/Baldne55/AMPTemplates.git", +"url": "https://github.com/Baldne55/AMPTemplates", +"imagefile": "", +"prefix": "LMP", +"repotype": "AppTemplates" } diff --git a/sa-mp-dl.kvp b/sa-mp-dl.kvp new file mode 100644 index 000000000..2e316d483 --- /dev/null +++ b/sa-mp-dl.kvp @@ -0,0 +1,102 @@ +Meta.DisplayName=San Andreas Multiplayer 0.3.DL-R1 +Meta.Description=San Andreas Multiplayer 0.3.DL (Download/Artwork) Mod for Grand Theft Auto: San Andreas +Meta.OS=Windows, Linux +Meta.AarchSupport=Unknown +Meta.Arch=x86_64 +Meta.Author=Greelan (0.3.DL adaptation) +Meta.URL=https://sampforum.blast.hk/ +Meta.DisplayImageSource=steam:12120 +Meta.EndpointURIFormat= +Meta.ConfigManifest=sa-mp-dlconfig.json +Meta.MetaConfigManifest=sa-mp-dlmetaconfig.json +Meta.ConfigRoot=sa-mp-dl.kvp +Meta.MinAMPVersion=2.4.6.4 +Meta.SpecificDockerImage=cubecoders/ampbase:debian +Meta.DockerRequired=False +Meta.DockerBaseReadOnly=False +Meta.ContainerPolicy=Supported +Meta.ContainerPolicyReason= +Meta.ExtraSetupStepsURI= +Meta.Prerequisites=[] +Meta.ExtraContainerPackages=[] +Meta.ConfigReleaseState=NotSpecified +Meta.NoCommercialUsage=False +Meta.ConfigVersion=3 +Meta.ReleaseNotes= +Meta.BreakingReleaseNotes= +Meta.AppConfigId=b7da228f-6659-42df-a90e-386de0156b52 +Meta.AppIsMultiIPAware=True +App.DisplayName=San Andreas Multiplayer 0.3.DL-R1 +App.RootDir=./sa-mp/ +App.BaseDirectory=./sa-mp/ +App.SteamWorkshopDownloadLocation= +App.ExecutableWin=samp-server.exe +App.ExecutableLinux=samp03svr +App.WorkingDir= +App.LinuxCommandLineArgs= +App.WindowsCommandLineArgs= +App.CommandLineArgs={{$PlatformArgs}} {{$FormattedArgs}} +App.UseLinuxIOREDIR=False +App.AppSettings={} +App.EnvironmentVariables={"LD_LIBRARY_PATH":"{{$FullBaseDir}}:%LD_LIBRARY_PATH%","SteamAppId":"12120"} +App.CommandLineParameterFormat=+{0} {1} +App.CommandLineParameterDelimiter= +App.ExitMethod=OS_CLOSE +App.ExitTimeout=30 +App.ExitString=quit +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=@IncludeJson[sa-mp-dlports.json] +App.AdminPortRef=0 +App.PrimaryApplicationPortRef=ServerPort +App.UniversalSleepApplicationUDPPortRef=0 +App.UniversalSleepSteamQueryPortRef=0 +App.MaxUsers=50 +App.UseRandomAdminPassword=False +App.PersistRandomPassword=True +App.RemoteAdminPassword= +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.LoginTransformPrefix= +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.RCONHeartbeatMinutes=0 +App.RCONHeartbeatCommand=ping +App.TelnetLoginFormat={0} +App.UpdateSources=@IncludeJson[sa-mp-dlupdates.json] +App.PreStartStages=[] +App.ForceUpdate=False +App.ForceUpdateReason= +App.Compatibility=LinuxBufferedConsole +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=False +App.MonitorChildProcess=False +App.DumpFullChildProcessTree=False +App.MonitorChildProcessWaitMs=100 +App.MonitorChildProcessName= +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=RegexMatch +Console.FilterMatchRegex= +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^Number of vehicle models: \d+$ +Console.UserJoinRegex=^$ +Console.UserLeaveRegex=^$ +Console.UserChatRegex=^$ +Console.UpdateAvailableRegex= +Console.MetricsRegex= +Console.SuppressLogAtStart=False +Console.ActivateLogRegex= +Console.UserActions={} +Limits.SleepMode=True +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=2 +Limits.SleepStartThresholdSeconds=25 diff --git a/sa-mp-dlconfig.json b/sa-mp-dlconfig.json new file mode 100644 index 000000000..9525ba3e4 --- /dev/null +++ b/sa-mp-dlconfig.json @@ -0,0 +1,413 @@ +[ + { + "DisplayName": "Server Port", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "$ServerPort", + "InputType": "number", + "Hidden": true, + "ParamFieldName": "port", + "EnumValues": {} + }, + { + "DisplayName": "Server/RCON IP Binding", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "", + "Keywords": "", + "FieldName": "$ApplicationIPBinding", + "InputType": "text", + "Hidden": true, + "IsFlagArgument": false, + "ParamFieldName": "bind", + "EnumValues": {} + }, + { + "DisplayName": "Server Name", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the name of the server as shown in the server browser and when players connect to the server", + "Keywords": "server,name,hostname", + "FieldName": "hostname", + "InputType": "text", + "ParamFieldName": "hostname", + "DefaultValue": "AMP Powered SA-MP 0.3.DL Server", + "Placeholder": "AMP Powered SA-MP 0.3.DL Server", + "EnumValues": {} + }, + { + "DisplayName": "Map Name", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the map name as shown in the server browser. This can be anything", + "Keywords": "map,name,mapname", + "FieldName": "mapname", + "InputType": "text", + "ParamFieldName": "mapname", + "DefaultValue": "My SA-MP Map", + "EnumValues": {} + }, + { + "DisplayName": "Web URL", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the URL of a website that will be displayed in the server browser and that has more information about the server", + "Keywords": "web,url,weburl", + "FieldName": "weburl", + "InputType": "text", + "ParamFieldName": "weburl", + "DefaultValue": "www.sa-mp.com", + "Placeholder": "www.sa-mp.com", + "EnumValues": {} + }, + { + "DisplayName": "Server Password", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the password required for players to join the server. Default is no password", + "Keywords": "server,password", + "FieldName": "password", + "InputType": "password", + "ParamFieldName": "password", + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Enable RCON", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Enables SA-MP's built-in RCON (remote console) protocol. AMP manages this server over STDIO and does NOT need RCON, so this can be left off. Note: SA-MP RCON is transmitted in plaintext over UDP and is easily brute-forced, so only enable it if you specifically need external RCON tools", + "Keywords": "rcon,remote,console,enable", + "FieldName": "rcon", + "InputType": "checkbox", + "ParamFieldName": "rcon", + "DefaultValue": "0", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "RCON Password", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the password for the server's RCON, used only if RCON is enabled above. Default is a strong, random password", + "Keywords": "rcon,password,rcon_password", + "FieldName": "rcon_password", + "InputType": "password", + "ParamFieldName": "rcon_password", + "DefaultValue": "{{newguid()}}", + "EnumValues": {} + }, + { + "DisplayName": "Initial Gamemode", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the gamemode to start the server with. If \"Custom\" is selected, Custom Initial Gamemode must also be specified. Subsequent gamemodes (gamemode1 to gamemode15) can be set under Additional Server Settings", + "Keywords": "initial,gamemode,gamemode0", + "FieldName": "gamemode0", + "InputType": "enum", + "ParamFieldName": "gamemode0", + "DefaultValue": "grandlarc", + "EnumValues": { + "grandlarc": "Grand Larceny", + "rivershell": "Rivershell", + "lvdm": "LVDM (Ventura's DeathMatch) ~ Moneygrub", + "timertest": "Timer Test", + "barron": "RC Barnstorm", + "bare": "Bare Script", + "{{CustomGamemode}}": "--Custom--" + } + }, + { + "DisplayName": "Custom Initial Gamemode", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets a custom gamemode to use for the Initial Gamemode, if \"Custom\" is selected. The custom gamemode files must be included in the gamemodes directory", + "Keywords": "custom,initial,gamemode,gamemode0", + "FieldName": "CustomGamemode", + "InputType": "text", + "ParamFieldName": "CustomGamemode", + "DefaultValue": "", + "EnumValues": {} + }, + { + "DisplayName": "Initial Gamemode Count", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets how many times the server should run the initial gamemode before switching to the next gamemode", + "Keywords": "initial,gamemode,gamemode0,count", + "FieldName": "gamemode0count", + "InputType": "number", + "ParamFieldName": "gamemode0count", + "DefaultValue": "1", + "Placeholder": "1", + "EnumValues": {} + }, + { + "DisplayName": "Filterscripts", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Space-separated list of filterscripts (scripts that run in the background of the gamemode and add extras to the server without editing the gamemode). Specify the names of scripts (without the .amx extension) in the filterscripts directory or using a path relative to that directory", + "Keywords": "filterscripts,scripts", + "FieldName": "filterscripts", + "InputType": "text", + "ParamFieldName": "filterscripts", + "DefaultValue": "base gl_actions gl_property gl_realtime", + "Placeholder": "base gl_actions gl_property gl_realtime", + "EnumValues": {} + }, + { + "DisplayName": "Plugins", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Space-separated list of plugins (scripts designed to enhance gamemodes and filterscripts). Specify the names of scripts (without the .dll or .so extension) in the plugins directory", + "Keywords": "plugins,scripts", + "FieldName": "plugins", + "InputType": "text", + "ParamFieldName": "plugins", + "DefaultValue": "", + "Placeholder": "crashdetect streamer sscanf mysql Whirlpool pawnregex", + "EnumValues": {} + }, + { + "DisplayName": "Enable LAN Mode", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, the server will run in LAN mode, allowing higher bandwidth", + "Keywords": "lan,mode,lanmode", + "FieldName": "lanmode", + "InputType": "checkbox", + "ParamFieldName": "lanmode", + "DefaultValue": "0", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Announce To Master Server List", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, the server will be announced to the master server list", + "Keywords": "announce,master,server,list", + "FieldName": "announce", + "InputType": "checkbox", + "ParamFieldName": "announce", + "DefaultValue": "0", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Display In Server Browser", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, information on the server will be displayed in the server browser", + "Keywords": "server,browser,information,query", + "FieldName": "query", + "InputType": "checkbox", + "ParamFieldName": "query", + "DefaultValue": "1", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Enable Artwork / Downloads (0.3.DL)", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Enables the 0.3.DL artwork/download system, which lets the server distribute custom models, textures and objects to connecting players. This is the defining feature of 0.3.DL. Leave enabled unless you specifically want to disable custom downloads", + "Keywords": "artwork,download,models,dl,useartwork", + "FieldName": "useartwork", + "InputType": "checkbox", + "ParamFieldName": "useartwork", + "DefaultValue": "1", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Player Limit", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the maximum number of players that may connect to the server at one time", + "Keywords": "maximum,players,clients,limit,maxplayers", + "FieldName": "$MaxUsers", + "InputType": "number", + "MinValue": "1", + "MaxValue": "1000", + "ParamFieldName": "maxplayers", + "DefaultValue": "50", + "Placeholder": "50", + "Suffix": "players", + "EnumValues": {} + }, + { + "DisplayName": "Language", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the language of the server that appears in the server browser", + "Keywords": "language", + "FieldName": "language", + "InputType": "text", + "ParamFieldName": "language", + "DefaultValue": "English", + "Placeholder": "English", + "EnumValues": {} + }, + { + "DisplayName": "Maximum NPCs", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the maximum number of NPCs (bots) that the server can hold, limiting how many player slots can be taken by NPCs", + "Keywords": "maximum,npcs,bots,maxnpc", + "FieldName": "maxnpc", + "InputType": "number", + "MinValue": "0", + "MaxValue": "1000", + "ParamFieldName": "maxnpc", + "DefaultValue": "0", + "Placeholder": "0", + "Suffix": "NPCs", + "EnumValues": {} + }, + { + "DisplayName": "On-Foot Update Rate", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the time that a client should update the server with new data while on foot", + "Keywords": "onfoot,foot,rate,onfoot_rate", + "FieldName": "onfoot_rate", + "InputType": "number", + "MinValue": "1", + "ParamFieldName": "onfoot_rate", + "DefaultValue": "40", + "Placeholder": "40", + "Suffix": "milliseconds", + "EnumValues": {} + }, + { + "DisplayName": "In-Vehicle Update Rate", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the time that a client should update the server with new data while in a vehicle", + "Keywords": "incar,car,vehicle,rate,incar_rate", + "FieldName": "incar_rate", + "InputType": "number", + "MinValue": "1", + "ParamFieldName": "incar_rate", + "DefaultValue": "40", + "Placeholder": "40", + "Suffix": "milliseconds", + "EnumValues": {} + }, + { + "DisplayName": "Weapon Rate", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the time that a client should update the server with new data while firing a weapon", + "Keywords": "weapon,rate,weapon_rate", + "FieldName": "weapon_rate", + "InputType": "number", + "MinValue": "1", + "ParamFieldName": "weapon_rate", + "DefaultValue": "40", + "Placeholder": "40", + "Suffix": "milliseconds", + "EnumValues": {} + }, + { + "DisplayName": "Stream Distance", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the distance on the X,Y plane that players will stream in server entities. Higher values makes players see server entities at a greater distance, but requires more client processing and potentially more bandwidth", + "Keywords": "stream,distance,stream_distance", + "FieldName": "stream_distance", + "InputType": "number", + "MinValue": "50", + "MaxValue": "400", + "ParamFieldName": "stream_distance", + "DefaultValue": "300.0", + "Placeholder": "300.0", + "EnumValues": {} + }, + { + "DisplayName": "Stream Rate", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the time before the streaming in of server entities is retested for each player. Lower values increases server processing as it has to recheck streaming conditions more frequently for each player", + "Keywords": "stream,rate,stream_rate", + "FieldName": "stream_rate", + "InputType": "number", + "MinValue": "500", + "MaxValue": "5000", + "ParamFieldName": "stream_rate", + "DefaultValue": "1000", + "Placeholder": "1000", + "Suffix": "milliseconds", + "EnumValues": {} + }, + { + "DisplayName": "Lag Compensation Mode", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the lag compensation mode for the server", + "Keywords": "lag,compensation,mode,lagcompmode", + "FieldName": "lagcompmode", + "InputType": "enum", + "ParamFieldName": "lagcompmode", + "DefaultValue": "1", + "EnumValues": { + "0": "Disabled", + "1": "Full (default)", + "2": "Position only" + } + }, + { + "DisplayName": "Show Player Chat In Console", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "If set, player chat will be shown in the server console", + "Keywords": "log,logging,chat,chatlogging", + "FieldName": "chatlogging", + "InputType": "checkbox", + "ParamFieldName": "chatlogging", + "DefaultValue": "1", + "EnumValues": { + "False": "0", + "True": "1" + } + }, + { + "DisplayName": "Log Time Format", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Sets the logfile timestamp format that should be used, based on the [strftime format](https://cplusplus.com/reference/ctime/strftime/)", + "Keywords": "log,file,format,timestamp,logtimeformat", + "FieldName": "logtimeformat", + "InputType": "text", + "ParamFieldName": "logtimeformat", + "DefaultValue": "[%H:%M:%S]", + "Placeholder": "[%H:%M:%S]", + "EnumValues": {} + }, + { + "DisplayName": "Additional Server Settings", + "Category": "San Andreas MP:stadia_controller", + "Subcategory": "Server:dns:1", + "Description": "Specifies additional settings to include in \"server.cfg\" that are not otherwise set by AMP. One setting per line", + "Keywords": "additional,settings,custom", + "FieldName": "UserSettings", + "InputType": "Textarea", + "IsFlagArgument": false, + "ParamFieldName": "UserSettings", + "DefaultValue": "", + "EnumValues": {} + } +] diff --git a/sa-mp-dlmetaconfig.json b/sa-mp-dlmetaconfig.json new file mode 100644 index 000000000..3704b1f1e --- /dev/null +++ b/sa-mp-dlmetaconfig.json @@ -0,0 +1,8 @@ +[ + { + "ConfigFile": "server.cfg", + "AutoMap": true, + "ConfigType": "template", + "ConfigFileTemplate": "AMP_server.cfg" + } +] diff --git a/sa-mp-dlports.json b/sa-mp-dlports.json new file mode 100644 index 000000000..15abd2a7e --- /dev/null +++ b/sa-mp-dlports.json @@ -0,0 +1,9 @@ +[ + { + "Protocol": "UDP", + "Port": 7777, + "Ref": "ServerPort", + "Name": "Server Port", + "Description": "Port for game and query traffic (and RCON, if enabled)" + } +] diff --git a/sa-mp-dlserver.cfg b/sa-mp-dlserver.cfg new file mode 100644 index 000000000..fe18d75f8 --- /dev/null +++ b/sa-mp-dlserver.cfg @@ -0,0 +1,29 @@ +echo Executing Server Config... +{{UserSettings}} +lanmode {{lanmode}} +rcon {{rcon}} +rcon_password {{rcon_password}} +password {{password}} +maxplayers {{maxplayers}} +port {{port}} +bind {{bind}} +hostname {{hostname}} +mapname {{mapname}} +gamemode0 {{gamemode0}} {{gamemode0count}} +filterscripts {{filterscripts}} +plugins {{plugins}} +announce {{announce}} +query {{query}} +weburl {{weburl}} +language {{language}} +maxnpc {{maxnpc}} +useartwork {{useartwork}} +onfoot_rate {{onfoot_rate}} +incar_rate {{incar_rate}} +weapon_rate {{weapon_rate}} +stream_distance {{stream_distance}} +stream_rate {{stream_rate}} +output 1 +lagcompmode {{lagcompmode}} +chatlogging {{chatlogging}} +logtimeformat {{logtimeformat}} diff --git a/sa-mp-dlupdates.json b/sa-mp-dlupdates.json new file mode 100644 index 000000000..47034d99d --- /dev/null +++ b/sa-mp-dlupdates.json @@ -0,0 +1,58 @@ +[ + { + "UpdateStageName": "Server Download", + "UpdateSourcePlatform": "Windows", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://sampforum.blast.hk/files/03DL/samp03DL_svr_R1_win32.zip", + "UpdateSourceArgs": "samp.zip", + "UpdateSourceTarget": "{{$FullBaseDir}}", + "UnzipUpdateSource": true, + "OverwriteExistingFiles": true, + "DeleteAfterExtract": true, + "SkipOnFailure": false + }, + { + "UpdateStageName": "Server Download", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://sampforum.blast.hk/files/03DL/samp03DLsvr_R1.tar.gz", + "UpdateSourceArgs": "samp.tar.gz", + "UpdateSourceTarget": "{{$FullBaseDir}}", + "UnzipUpdateSource": true, + "OverwriteExistingFiles": true, + "DeleteAfterExtract": true, + "SkipOnFailure": false + }, + { + "UpdateStageName": "Move Server Files", + "UpdateSourcePlatform": "Linux", + "UpdateSource": "Executable", + "UpdateSourceData": "/bin/bash", + "UpdateSourceArgs": "-c \"\\cp -rf ./sa-mp/samp03/* ./sa-mp/ && rm -rf ./sa-mp/samp03\"", + "SkipOnFailure": false + }, + { + "UpdateStageName": "Create Plugins Directory", + "UpdateSourcePlatform": "All", + "UpdateSource": "CreateDirectory", + "UpdateSourceArgs": "{{$FullBaseDir}}plugins", + "SkipOnFailure": true + }, + { + "UpdateStageName": "Create Models Directory", + "UpdateSourcePlatform": "All", + "UpdateSource": "CreateDirectory", + "UpdateSourceArgs": "{{$FullBaseDir}}models", + "SkipOnFailure": true + }, + { + "UpdateStageName": "Server.cfg Template File Download", + "UpdateSourcePlatform": "All", + "UpdateSource": "FetchURL", + "UpdateSourceData": "https://raw.githubusercontent.com/Baldne55/AMPTemplates/main/sa-mp-dlserver.cfg", + "UpdateSourceArgs": "AMP_server.cfg", + "UpdateSourceTarget": "{{$FullInstanceDir}}", + "OverwriteExistingFiles": true, + "SkipOnFailure": false + } +]