[
    {
        "UpdateStageName": "Factorio Download",
        "UpdateSourcePlatform": "Windows",
        "UpdateSource": "SteamCMD",
        "UpdateSourceData": "427520",
        "UpdateSourceArgs": "427520",
        "UpdateSourceTarget": "{{$FullBaseDir}}",
        "UpdateSourceVersion": "public",
        "UpdateSourceConditionSetting": "InstallBeta",
        "UpdateSourceConditionValue": "false",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Factorio Download",
        "UpdateSourcePlatform": "Windows",
        "UpdateSource": "SteamCMD",
        "UpdateSourceData": "427520",
        "UpdateSourceArgs": "427520",
        "UpdateSourceTarget": "{{$FullBaseDir}}",
        "UpdateSourceVersion": "{{BetaBranch}}",
        "UpdateSourceConditionSetting": "InstallBeta",
        "UpdateSourceConditionValue": "true",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Factorio Download",
        "UpdateSourcePlatform": "Linux",
        "UpdateSource": "FetchURL",
        "UpdateSourceData": "https://factorio.com/get-download/stable/headless/linux64",
        "UpdateSourceArgs": "factorio.tar.xz",
        "UpdateSourceTarget": "{{$FullBaseDir}}",
        "OverwriteExistingFiles": true,
        "UpdateSourceConditionSetting": "InstallBeta",
        "UpdateSourceConditionValue": "false",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Factorio Download",
        "UpdateSourcePlatform": "Linux",
        "UpdateSource": "FetchURL",
        "UpdateSourceData": "https://www.factorio.com/get-download/{{BetaBranch}}/headless/linux64",
        "UpdateSourceArgs": "factorio.tar.xz",
        "UpdateSourceTarget": "{{$FullBaseDir}}",
        "OverwriteExistingFiles": true,
        "UpdateSourceConditionSetting": "InstallBeta",
        "UpdateSourceConditionValue": "true",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Factorio Extract",
        "UpdateSourcePlatform": "Linux",
        "UpdateSource": "Executable",
        "UpdateSourceData": "/bin/bash",
        "UpdateSourceArgs": "-c \"cd factorio/server && tar -xJf factorio.tar.xz --strip-components=1 >/dev/null 2>&1 && rm -f factorio.tar.xz\"",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Create Saves Directory",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CreateDirectory",
        "UpdateSourceArgs": "{{$FullBaseDir}}saves",
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Server-Settings File Copy",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CopyFilePath",
        "UpdateSourceData": "{{$FullBaseDir}}data/server-settings.json",
        "UpdateSourceArgs": "{{$FullBaseDir}}data/server-settings.example.json",
        "OverwriteExistingFiles": false,
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Map-Gen-Settings File Copy",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CopyFilePath",
        "UpdateSourceData": "{{$FullBaseDir}}data/map-gen-settings.json",
        "UpdateSourceArgs": "{{$FullBaseDir}}data/map-gen-settings.example.json",
        "OverwriteExistingFiles": false,
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Map-Settings File Copy",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CopyFilePath",
        "UpdateSourceData": "{{$FullBaseDir}}data/map-settings.json",
        "UpdateSourceArgs": "{{$FullBaseDir}}data/map-settings.example.json",
        "OverwriteExistingFiles": false,
        "SkipOnFailure": false
    },
    {
        "UpdateStageName": "Create Server-Adminlist File",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CreateFile",
        "UpdateSourceData": "[]",
        "UpdateSourceArgs": "{{$FullBaseDir}}server-adminlist.json",
        "OverwriteExistingFiles": false
    },
    {
        "UpdateStageName": "Create Server-Whitelist File",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CreateFile",
        "UpdateSourceData": "[]",
        "UpdateSourceArgs": "{{$FullBaseDir}}data/server-whitelist.json",
        "OverwriteExistingFiles": false
    },
    {
        "UpdateStageName": "Create Server-Banlist File",
        "UpdateSourcePlatform": "All",
        "UpdateSource": "CreateFile",
        "UpdateSourceData": "[]",
        "UpdateSourceArgs": "{{$FullBaseDir}}data/server-banlist.json",
        "OverwriteExistingFiles": false
    }
]