[
    {
        "DisplayName": "Server Name",
        "Description": "Server name as it appears in the server list",
        "FieldName": "servername",
        "InputType": "text",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "servername",
        "IncludeInCommandLine": true,
        "DefaultValue": "My Kaboom! Server"
    },
    {
        "DisplayName": "Server Region",
        "Description": "Where in the world the server is located",
        "FieldName": "region",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "region",
        "IncludeInCommandLine": true,
        "InputType": "enum",
        "EnumValues": {
            "0": "EU West",
            "10": "EU Central",
            "20": "EU Eastern",
            "30": "US West",
            "40": "US Central",
            "50": "US Eastern",
            "60": "Canada",
            "70": "South America",
            "80": "South East Asia",
            "90": "Australia",
            "210": "China",
            "220": "Russia",
            "999": "Other"
        },
        "DefaultValue": "0"
    },
    {
        "DisplayName": "Bot Fill Mode",
        "Description": "How should bots be used to manage server population",
        "FieldName": "botmode",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "botmode",
        "IncludeInCommandLine": true,
        "InputType": "enum",
        "EnumValues": {
            "NoBots": "No Bots",
            "MaintainMinimum": "Fill to minimum lobby size",
            "FillRemainingSpaces": "Fill all remaining spaces",
            "ReplaceLeaversOnly": "Only replace match leavers"
        },
        "DefaultValue": "NoBots"
    },
    {
        "DisplayName": "Respawn Delay",
        "Description": "How long the server should wait after a player is eliminated before respawning them.",
        "FieldName": "respawndelay",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "respawndelay",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "5"
    },
    {
        "DisplayName": "Invulnerability Time",
        "Description": "How long a player is invulnerable for after respawning.",
        "FieldName": "saferespawntime",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "saferespawntime",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "2"
    },
    {
        "DisplayName": "Auto Lobby",
        "Description": "Automatic lobbies do not have a lobby leader, and will start automatically once the player requirements are met.",
        "FieldName": "autolobby",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "autolobby",
        "IncludeInCommandLine": true,
        "InputType": "checkbox",
        "EnumValues": {
            "True": "True",
            "False": "False"
        },
        "DefaultValue": "False"
    },
    {
        "DisplayName": "Allow joining mid-match",
        "Description": "If enabled, players will be able to join a match that it is in progress. Otherwise they will spectate until the match is over.",
        "FieldName": "joinmidmatch",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "joinmidmatch",
        "IncludeInCommandLine": true,
        "InputType": "checkbox",
        "EnumValues": {
            "True": "True",
            "False": "False"
        },
        "DefaultValue": "False"
    },
    {
        "DisplayName": "Start on first join",
        "Description": "If enabled, the match will start automatically once the first player connects. Recommend that bots are enabled.",
        "FieldName": "startonfirstjoin",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "startonfirstjoin",
        "IncludeInCommandLine": true,
        "InputType": "checkbox",
        "EnumValues": {
            "True": "True",
            "False": "False"
        },
        "DefaultValue": "False"
    },
    {
        "DisplayName": "Minimum lobby players",
        "Description": "How many players must be present in an auto lobby before a match can be started automatically. Minimum of 2.",
        "FieldName": "lobbyminplayers",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "lobbyminplayers",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "4",
        "MinValue": "2"
    },
    {
        "DisplayName": "Lobby hold time",
        "Description": "How long the auto lobby should wait for more players to join once the minimum is reached. This timer restarts whenever a player joins or leaves.",
        "FieldName": "lobbyholdtime",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "lobbyholdtime",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "20"
    },
    {
        "DisplayName": "Lobby full delay",
        "Description": "After an auto lobby fills up, how long should it wait before starting the game?",
        "FieldName": "lobbyfulltime",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "lobbyfulltime",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "20"
    },
    {
        "DisplayName": "Lobby overtime timeout",
        "Description": "The maximum amount of a time an auto lobby that has the minimum number of players can remain in the 'ready' state. If this time is exceeded, players joining/leaving will not reset the lobby timer. This prevents the lobby from remaining in limbo indefinitely due to the countdown timer resetting from players leaving/joining.",
        "FieldName": "lobbyfulltime",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "lobbyovertime",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "120"
    },
    {
        "DisplayName": "Match length (seconds)",
        "Description": "The maximum length of a match in seconds. After this time the match will end regardless of win condition",
        "FieldName": "matchlength",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "matchlength",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "300"
    },
    {
        "DisplayName": "Match time low trigger (seconds)",
        "Description": "When the match has this many seconds left, the 'out of time' trigger will fire and the map will change to speed up the match.",
        "FieldName": "lowmatchtime",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "lowmatchtime",
        "IncludeInCommandLine": true,
        "InputType": "number",
        "DefaultValue": "60"
    },
    {
        "DisplayName": "Allow Special Skins",
        "Description": "If enabled, special players such as developers may be given special skins that make them stand out from other players.",
        "FieldName": "specialskins",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "specialskins",
        "IncludeInCommandLine": true,
        "InputType": "checkbox",
        "EnumValues": {
            "True": "True",
            "False": "False"
        },
        "DefaultValue": "True"
    },
    {
        "DisplayName": "Enable GPU accelerated AI",
        "Description": "If enabled, the server will accelerate AI for bots using any available nVidia GPU (CUDA support required). Will automatically fall back to CPU driven AI when not available.",
        "FieldName": "aigpuacceleration",
        "Category": "Kaboom!:bomb",
        "Subcategory": "Server:dns:1",
        "ParamFieldName": "aigpuacceleration",
        "IncludeInCommandLine": true,
        "InputType": "checkbox",
        "EnumValues": {
            "True": "True",
            "False": "False"
        },
        "DefaultValue": "False"
    }
]