[
    {
        "DisplayName": "Server Port",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "",
        "Keywords": "",
        "FieldName": "$ServerPort",
        "InputType": "number",
        "Hidden": true,
        "ParamFieldName": "net_port",
        "EnumValues": {}
    },
    {
        "DisplayName": "Server Port",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "",
        "Keywords": "",
        "FieldName": "$ServerPort",
        "InputType": "number",
        "Hidden": true,
        "ParamFieldName": "net_port6",
        "EnumValues": {}
    },
    {
        "DisplayName": "Enable Synced Console Logging",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "",
        "Keywords": "",
        "FieldName": "logfile",
        "InputType": "number",
        "Hidden": true,
        "ParamFieldName": "logfile",
        "IncludeInCommandLine": true,
        "DefaultValue": "2",
        "EnumValues": {}
    },
    {
        "DisplayName": "Log File Name",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "",
        "Keywords": "",
        "FieldName": "g_log",
        "InputType": "text",
        "Hidden": true,
        "ParamFieldName": "g_log",
        "DefaultValue": "etserver.log",
        "EnumValues": {}
    },
    {
        "DisplayName": "DDoS Protection Log",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "",
        "Keywords": "",
        "FieldName": "sv_protectLog",
        "InputType": "text",
        "Hidden": true,
        "ParamFieldName": "sv_protectLog",
        "DefaultValue": "sv_protect.log",
        "EnumValues": {}
    },
    {
        "DisplayName": "Server Name",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the name of the server that appears in the server list. Maximum 26 characters without colour codes",
        "Keywords": "server,name,sv_hostname",
        "FieldName": "sv_hostname",
        "InputType": "text",
        "ParamFieldName": "sv_hostname",
        "DefaultValue": "AMP Powered ET: Legacy",
        "EnumValues": {}
    },
    {
        "DisplayName": "Message Of The Day",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the first line of the message of the day (MOTD) displayed when players join. Additional lines can be specified in 'etmain/etl_server.cfg'",
        "Keywords": "message,motd,server_motd0",
        "FieldName": "server_motd0",
        "InputType": "text",
        "ParamFieldName": "server_motd0",
        "DefaultValue": "^NWelcome to ET: Legacy!",
        "EnumValues": {}
    },
    {
        "DisplayName": "Server Mod Name",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the name of the mod directory to load, allowing the use of different ET mods. Don't change this from the default 'legacy' unless you know what you are doing!",
        "Keywords": "server,mod,directory,game,fs_game",
        "FieldName": "mod",
        "InputType": "text",
        "ParamFieldName": "mod",
        "DefaultValue": "legacy",
        "Placeholder": "legacy",
        "EnumValues": {}
    },
    {
        "DisplayName": "Make Server Public",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If enabled, the server will be visible publicly. Otherwise it will only be accessible from the LAN",
        "Keywords": "public,visible,dedicated",
        "FieldName": "dedicated",
        "InputType": "checkbox",
        "ParamFieldName": "dedicated",
        "IncludeInCommandLine": true,
        "DefaultValue": "2",
        "EnumValues": {
            "False": "1",
            "True": "2"
        }
    },
    {
        "DisplayName": "Advertise To Master Server",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If enabled, the server will send heartbeats to the master server. This is important to enable",
        "Keywords": "heartbeat,advertise,sv_advert",
        "FieldName": "sv_advert",
        "InputType": "checkbox",
        "ParamFieldName": "sv_advert",
        "IncludeInCommandLine": false,
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Server Password",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the password required to connect to the server. Default is no password",
        "Keywords": "server,password,g_password",
        "FieldName": "g_password",
        "InputType": "Password",
        "ParamFieldName": "g_password",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "RCON Password",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "See the Security and Privacy menu for configurable options for the server's RCON",
        "Keywords": "rcon,password,rconpassword",
        "FieldName": "$RemoteAdminPassword",
        "InputType": "hidden",
        "ParamFieldName": "rconpassword",
        "EnumValues": {}
    },
    {
        "DisplayName": "Private Client Password",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the password for private clients, if any, to connect to the server. Specify the required number of private clients under Private Client Number",
        "Keywords": "private,client,password,sv_privatepassword",
        "FieldName": "sv_privatepassword",
        "InputType": "Password",
        "ParamFieldName": "sv_privatepassword",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Shoutcast Password",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the shoutcast password. Default is no password",
        "Keywords": "shoutcast,password,shoutcastPassword",
        "FieldName": "shoutcastPassword",
        "InputType": "Password",
        "ParamFieldName": "shoutcastPassword",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Referee Status Password",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the referee status password. Default is no password",
        "Keywords": "referee,password,refereePassword",
        "FieldName": "refereePassword",
        "InputType": "Password",
        "ParamFieldName": "refereePassword",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Enable Pure Server",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, only unmodified pak files that are also installed on the server can be used by clients, as a hacking and cheat protection",
        "Keywords": "pure,server,cheat,hack,integrity,sv_pure",
        "FieldName": "sv_pure",
        "InputType": "checkbox",
        "ParamFieldName": "sv_pure",
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Map Rotation Mode",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Specify the map rotation mode in 'etmain/etl_server.cfg', and configure the relevant script for that rotation mode accordingly",
        "Keywords": "map,rotation,mode",
        "FieldName": "MapRotation",
        "InputType": "hidden",
        "ParamFieldName": "MapRotation",
        "EnumValues": {}
    },
    {
        "DisplayName": "Player Limit",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the maximum number of players allowed on the server at one time, including private clients",
        "Keywords": "max,maximum,players,spectators,clients,limit,sv_maxclients",
        "FieldName": "$MaxUsers",
        "InputType": "number",
        "MinValue": "1",
        "ParamFieldName": "sv_maxclients",
        "DefaultValue": "24",
        "Placeholder": "24",
        "Suffix": "players",
        "EnumValues": {}
    },
    {
        "DisplayName": "Private Client Number",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the number of slots (out of the Player Limit) reserved for private players on a public server. 0 = disabled. Private Client Password must also be set",
        "Keywords": "sv_privateclients",
        "FieldName": "sv_privateclients",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_privateclients",
        "DefaultValue": "4",
        "Placeholder": "4",
        "Suffix": "private players",
        "EnumValues": {}
    },
    {
        "DisplayName": "Timeout For Connected Clients",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the time without any message from connected clients before a timeout occurs",
        "Keywords": "timeout,connected,clients,sv_timeout",
        "FieldName": "sv_timeout",
        "InputType": "number",
        "MinValue": "1",
        "ParamFieldName": "sv_timeout",
        "DefaultValue": "40",
        "Placeholder": "40",
        "Suffix": "seconds",
        "EnumValues": {}
    },
    {
        "DisplayName": "Enable Omni-Bot",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, Omni-Bot will be enabled on the server. Ensure the Omni-Bot libraries are installed in the Server Mod Name path ('legacy' has them installed by default)",
        "Keywords": "omni,bot,omni-bot,omnibot,omnibot_enable",
        "FieldName": "omnibot_enable",
        "InputType": "checkbox",
        "ParamFieldName": "omnibot_enable",
        "IncludeInCommandLine": true,
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "IPv4 Server Binding",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If required, you can change the IPv4 binding of the server by changing the Application IP Binding for this instance",
        "Keywords": "ipv4,binding,ip,address,net_ip",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "hidden",
        "ParamFieldName": "net_ip",
        "EnumValues": {}
    },
    {
        "DisplayName": "IPv6 Server Binding",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the IPv6 binding of the server. Empty = all IPs (default). Change to a specific IPv6 address on the host if really needed",
        "Keywords": "ipv6,binding,ip,address,net_ip6",
        "FieldName": "net_ip6",
        "InputType": "text",
        "ParamFieldName": "net_ip6",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Allow Download From Server And Web",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, clients will be allowed to download content (maps, models, etc) from either the server or the web",
        "Keywords": "allow,download,content,map,model,sv_allowdownload",
        "FieldName": "sv_allowDownload",
        "InputType": "checkbox",
        "ParamFieldName": "sv_allowDownload",
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Maximum Download Rate",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the maximum download rate from the server. Increase or decrease depending on available bandwidth",
        "Keywords": "download,rate,bandwidth,sv_dlRate",
        "FieldName": "sv_dlRate",
        "InputType": "number",
        "MinValue": "1",
        "ParamFieldName": "sv_dlRate",
        "DefaultValue": "100",
        "Placeholder": "100",
        "EnumValues": {}
    },
    {
        "DisplayName": "Allow Download From Web",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, clients will be allowed to download content (maps, models, etc) from the web",
        "Keywords": "allow,download,content,map,model,sv_wwwDownload",
        "FieldName": "sv_wwwDownload",
        "InputType": "checkbox",
        "ParamFieldName": "sv_wwwDownload",
        "DefaultValue": "0",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Base Download URL",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the base URL for download redirection",
        "Keywords": "base,url,download,redirection,sv_wwwBaseURL",
        "FieldName": "sv_wwwBaseURL",
        "InputType": "text",
        "ParamFieldName": "sv_wwwBaseURL",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Fallback Download URL",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the URL to send to if an http/ftp fails or is refused client side",
        "Keywords": "fallback,url,download,redirection,sv_wwwFallbackURL",
        "FieldName": "sv_wwwFallbackURL",
        "InputType": "text",
        "ParamFieldName": "sv_wwwFallbackURL",
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Timeout For Downloading Clients",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the time without any message from downloading or preparing clients before a timeout occurs",
        "Keywords": "timeout,downloading,clients,sv_dl_timeout",
        "FieldName": "sv_dl_timeout",
        "InputType": "number",
        "MinValue": "1",
        "ParamFieldName": "sv_dl_timeout",
        "DefaultValue": "240",
        "Placeholder": "240",
        "Suffix": "seconds",
        "EnumValues": {}
    },
    {
        "DisplayName": "Force Client Download While Disconnected",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, clients will perform their downloads while disconnected from the server",
        "Keywords": "www,web,download,disconnected,sv_wwwDlDisconnected",
        "FieldName": "sv_wwwDlDisconnected",
        "InputType": "checkbox",
        "ParamFieldName": "sv_wwwDlDisconnected",
        "DefaultValue": "0",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Server Memory Allocation",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the amount of memory allocated for players and items",
        "Keywords": "ram,memory,com_hunkmegs",
        "FieldName": "com_hunkMegs",
        "InputType": "number",
        "ParamFieldName": "com_hunkMegs",
        "IncludeInCommandLine": true,
        "DefaultValue": "72",
        "Placeholder": "72",
        "Suffix": "MB",
        "EnumValues": {}
    },
    {
        "DisplayName": "Minimum Client Rate",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the minimum allowable rate a client may have set when connected to the server. 0 = no minimum (default)",
        "Keywords": "minimum,bandwidth,rate,sv_minrate",
        "FieldName": "sv_minRate",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_minRate",
        "DefaultValue": "0",
        "Placeholder": "0",
        "Suffix": "bytes/second",
        "EnumValues": {}
    },
    {
        "DisplayName": "Maximum Client Rate",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the maximum allowable rate a client may have set when connected to the server. 0 = no limit (default). Otherwise recommended to be 25000 if slower clients are having issues",
        "Keywords": "maximum,bandwidth,rate,sv_maxrate",
        "FieldName": "sv_maxRate",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_maxRate",
        "DefaultValue": "25000",
        "Placeholder": "25000",
        "Suffix": "bytes/second",
        "EnumValues": {}
    },
    {
        "DisplayName": "Minimum Client Ping",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the minimum ping clients must have on connecting to the server. 0 = disabled",
        "Keywords": "minimum,ping,sv_minping",
        "FieldName": "sv_minping",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_minping",
        "DefaultValue": "0",
        "Placeholder": "0",
        "Suffix": "milliseconds",
        "EnumValues": {}
    },
    {
        "DisplayName": "Maximum Client Ping",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the maximum ping clients can have on connecting to the server. 0 = disabled",
        "Keywords": "maximum,ping,sv_maxping",
        "FieldName": "sv_maxping",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_maxping",
        "DefaultValue": "0",
        "Placeholder": "0",
        "Suffix": "milliseconds",
        "EnumValues": {}
    },
    {
        "DisplayName": "DDoS Protection Mode",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the level of DDoS protection",
        "Keywords": "ddos,protection,security,sv_protect",
        "FieldName": "sv_protect",
        "InputType": "enum",
        "ParamFieldName": "sv_protect",
        "DefaultValue": "1",
        "EnumValues": {
            "1": "Use ioquake3 getstatus, getchallenge protection (default)",
            "2": "Use OpenWolf getstatus, getinfo, getchallenge protection"
        }
    },
    {
        "DisplayName": "Max Clients Per IP",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Sets the limit on the number of client connections per IP. 0 = no limit",
        "Keywords": "max,maximum,clients,ip,limit,sv_ipMaxClients",
        "FieldName": "sv_ipMaxClients",
        "InputType": "number",
        "MinValue": "0",
        "ParamFieldName": "sv_ipMaxClients",
        "DefaultValue": "0",
        "Placeholder": "0",
        "Suffix": "clients",
        "EnumValues": {}
    },
    {
        "DisplayName": "Enable Flood Protection",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, the server will be protected from being flooded by players via chat",
        "Keywords": "flood,protect,protection,sv_floodprotect",
        "FieldName": "sv_floodProtect",
        "InputType": "checkbox",
        "ParamFieldName": "sv_floodProtect",
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Enable User Info Flood Protection",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "If set, the server will be protected against userinfo flooding",
        "Keywords": "flood,protect,protection,userinfo,security,sv_userInfofloodProtect",
        "FieldName": "sv_userInfofloodProtect",
        "InputType": "checkbox",
        "ParamFieldName": "sv_userInfofloodProtect",
        "DefaultValue": "1",
        "EnumValues": {
            "False": "0",
            "True": "1"
        }
    },
    {
        "DisplayName": "Additional Console Variables",
        "Category": "ET Legacy:stadia_controller",
        "Subcategory": "Server:dns:1",
        "Description": "Additional console variables that are not otherwise set by AMP can be specified in 'etmain/etl_server.cfg'",
        "Keywords": "custom,server,variables,cvars,convars,parameters",
        "FieldName": "CustomConVars",
        "InputType": "hidden",
        "ParamFieldName": "CustomConVars",
        "IncludeInCommandLine": false,
        "EnumValues": {}
    },
    {
        "DisplayName": "Server Version",
        "Category": "Updates",
        "Subcategory": "Server Updates:build:-1",
        "Description": "Sets whether to install the 64-bit or 32-bit version of the server. Update the server after changing this setting",
        "Keywords": "server,version,32bit,64bit,32-bit,64-bit",
        "FieldName": "ServerVersion",
        "InputType": "enum",
        "ParamFieldName": "ServerVersion",
        "DefaultValue": "x86_64",
        "EnumValues": {
            "x86_64": "64-bit (default)",
            "i386": "32-bit"
        }
    },
    {
        "DisplayName": "Disable Client Files Download",
        "Category": "Updates",
        "Subcategory": "Server Updates:build:-1",
        "Description": "If set, AMP will not download the Wolfenstein: Enemy Territory client files when the server is updated. The pak0.pk3, pak1.pk3 and pak2.pk3 files will need to be installed manually in the 'etmain' directory in the instance's base directory in order to be used",
        "Keywords": "wet,client,files,download",
        "FieldName": "DisableWETDownload",
        "InputType": "checkbox",
        "ParamFieldName": "DisableWETDownload",
        "DefaultValue": "false",
        "EnumValues": {
            "False": "false",
            "True": "true"
        }
    }
]