diff --git a/code/controllers/configuration/sections/general_configuration.dm b/code/controllers/configuration/sections/general_configuration.dm index 40b1729b7603..30e306860f24 100644 --- a/code/controllers/configuration/sections/general_configuration.dm +++ b/code/controllers/configuration/sections/general_configuration.dm @@ -84,6 +84,9 @@ var/revival_brain_life = 10 MINUTES /// Enable random AI lawsets from the default=TRUE pool var/random_ai_lawset = TRUE + /// Enable weather events initialized by SSweather. New weather events can still + /// be added during the round if this is disabled. + var/enable_default_weather_events = TRUE /datum/configuration_section/general_configuration/load_data(list/data) // Use the load wrappers here. That way the default isnt made 'null' if you comment out the config line @@ -117,6 +120,7 @@ CONFIG_LOAD_BOOL(enable_night_shifts, data["enable_night_shifts"]) CONFIG_LOAD_BOOL(reactionary_explosions, data["reactionary_explosions"]) CONFIG_LOAD_BOOL(random_ai_lawset, data["random_ai_lawset"]) + CONFIG_LOAD_BOOL(enable_default_weather_events, data["enable_default_weather_events"]) // Numbers CONFIG_LOAD_NUM(lobby_time, data["lobby_time"]) diff --git a/code/controllers/subsystem/SSweather.dm b/code/controllers/subsystem/SSweather.dm index ace62c0474a8..86e069840699 100644 --- a/code/controllers/subsystem/SSweather.dm +++ b/code/controllers/subsystem/SSweather.dm @@ -40,6 +40,10 @@ SUBSYSTEM_DEF(weather) next_hit_by_zlevel["[z]"] = world.time + randTime + initial(W.telegraph_duration) /datum/controller/subsystem/weather/Initialize() + if(!GLOB.configuration.general.enable_default_weather_events) + log_debug("disabling default weather events due to configuration") + return + for(var/V in subtypesof(/datum/weather)) var/datum/weather/W = V var/probability = initial(W.probability) diff --git a/config/example/config.toml b/config/example/config.toml index bb2939ba5a33..2efda1301d28 100644 --- a/config/example/config.toml +++ b/config/example/config.toml @@ -380,6 +380,8 @@ bomb_cap = 20 revival_brain_life = 6000 # 10 minutes # Enable random silicon lawset (If said lawset has default = TRUE in the code). Disable for always crewsimov random_ai_lawset = true +# Enable weather events initialized by SSweather. New weather events can still be added during the round if this is disabled. +enable_default_weather_events = true ################################################################