Having a highly modded server can be a bit annoying. A lot of people will complain about is not vanilla and will leave (good bye). But the others that remain in the server may find it very difficult/easy. I can adjust difficulty if I'm in the server but if I'm not some players will get stuck and leave or find it easy and leave. This plugin allows me to set a very high difficulty on server and decrease it progressively if survivors fail the rounds.
Description:
This plugin only works in coop mode and coop based mutations.
When a new game or a new map starts, the plugin will change the server ConVar settings.
If survivors fail to complete the round the settings can be changed.
Proceeding to the next map will reset the settings.
Each map can have its own dedicated configs per round.
Round settings can be displayed to players via menu.
If plugin is disabled or unloaded a config file will be loaded to reset server ConVars.
Recomendations:
You should have all the ConVars that the plugin will change stored in a .cfg file (by default is set to server.cfg, in that file you should have all the values that the plugin will be modifying to set them to a default value if the plugin is disabled (if the gamemode is not coop plugin will disable itself).
Installation:
Put l4d_roundconfigs.smx in sourcemod/plugins folder.
Put l4d_round_configs.cfg in sourcemod/data folder.
ConVars:
Spoiler
PHP Code:
// Keywords to use as chat trigger to open round info menu.
// Values separated by comma, no space.
// Max 8 chat triggers.
// -
// Default: "rc,roundconfig"
l4d_rc_chattriggers "rc,roundconfig"
// The server config file to be called to restart all settings (.cfg extension is not needed).
// -
// Default: "server"
l4d_rc_configfile "server"
// Display menu to clients with info about the round. 1 = On, 0 = Off
// -
// Default: "1"
// Minimum: "0.000000"
// Maximum: "1.000000"
l4d_rc_infomenu "1"
// Log messages to SourceMod in case of config file errors. 0 = Off, 1 = On.
// -
// Default: "1"
// Minimum: "0.000000"
// Maximum: "1.000000"
l4d_rc_logs "1"
// Max amount of rounds that the plugin will change ConVars.
// 0 = use the max rounds defined in config file.
// -
// Default: "0"
// Minimum: "0.000000"
// Maximum: "128.000000"
l4d_rc_max_rounds "0"
Config File:
Spoiler
Code:
"Configs"
{
// Default will run for all maps and campaings if they don't have a custom config, to run custom configs for each different map put the map name as a new key (Don't include the .bsp extension file!)
"Default"
{
// Text: contains the text that will be displayed to clients via menu
// Configs contains the ConVars and their value that will be changed on each round
// XXX:1 -> Indicates the round where text will be displayed and the config will be setted up
// The limit of rounds is 128, any higher number will be ignored (do you really need so much rounds?)
"Text:1"
{
// You can write here what will be notified to the players via menu
// Number of lines is unlimited
"1" "Director difficulty: Expert"
"2" "Tank Health: 200%"
"3" "Witch Health: 200%"
"4" "Common infected population: 200%"
"5" "Charger Health: 150%"
"6" "Charge speed 200%"
}
"CVars:1"
{
"z_difficulty" "Impossible"
"z_tank_health" "8000" // Tank default health = 4000, in Advanced/Expert any Tank health you put will be doubled by Director
"z_witch_health" "2000"
"z_common_limit" "60"
"z_charger_health" "975"
"z_charge_start_speed" "500"
"z_charge_max_speed" "1300"
}
"Text:2"
{
"1" "Director difficulty: Expert"
"2" "Tank Health: 150%"
"3" "Witch Health: 100%"
"4" "Common infected population: 150%"
"5" "Charger Health: 100%"
"6" "Charge speed 150%"
}
"CVars:2"
{
"z_difficulty" "Impossible"
"z_tank_health" "6000"
"z_witch_health" "1000"
"z_common_limit" "45"
"z_charger_health" "650"
"z_charge_start_speed" "325"
"z_charge_max_speed" "975"
}
// You can jump rounds if you want, but then there will be no notifications, you can put text only if you want or only ConVars
"Text:5"
{
"Director difficulty: Advanced"
"Tank Health: 150%"
"Witch Health: 100%"
"Common infected population: 200%"
"Charger Health: 150%"
"Charge speed 200%"
}
"CVars:5"
{
"z_difficulty" "Hard"
"z_tank_health" "8000"
"z_witch_health" "1000"
"z_common_limit" "60"
"z_charger_health" "1100"
"z_charge_start_speed" "500"
"z_charge_max_speed" "1300"
}
}
}