mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-11 10:22:13 +00:00
Rebalances some event player counts
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
name = "Anomaly: Hyper-Energetic Flux"
|
||||
typepath = /datum/round_event/anomaly/anomaly_flux
|
||||
|
||||
min_players = 10
|
||||
max_occurrences = 5
|
||||
weight = 20
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
name = "Anomaly: Pyroclastic"
|
||||
typepath = /datum/round_event/anomaly/anomaly_pyro
|
||||
|
||||
min_players = 5
|
||||
max_occurrences = 5
|
||||
weight = 20
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/datum/round_event_control/atmos_flux
|
||||
name = "Atmospheric Flux"
|
||||
typepath = /datum/round_event/atmos_flux
|
||||
max_occurrences = 1
|
||||
weight = 5
|
||||
max_occurrences = 5
|
||||
weight = 10
|
||||
endWhen = 600
|
||||
var/original_speed
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
/datum/round_event_control/brain_trauma/canSpawnEvent(var/players_amt, var/gamemode)
|
||||
if(!..()) return FALSE
|
||||
var/list/enemy_roles = list("Medical Doctor","Chief Medical Officer","Paramedic")
|
||||
var/list/enemy_roles = list("Medical Doctor","Chief Medical Officer","Paramedic","AI","Chemist","Virologist","Captain","Head of Personnel","Roboticist")
|
||||
for (var/mob/M in GLOB.alive_mob_list)
|
||||
if(M.stat != DEAD && (M.mind?.assigned_role in enemy_roles))
|
||||
return TRUE
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "Cat Surgeon"
|
||||
typepath = /datum/round_event/cat_surgeon
|
||||
max_occurrences = 1
|
||||
weight = 8
|
||||
weight = 5
|
||||
|
||||
/datum/round_event/cat_surgeon/announce(fake)
|
||||
priority_announce("One of our... ahem... 'special' cases has escaped. As it happens their last known location before their tracker went dead is your station so keep an eye out for them. On an unrelated note, has anyone seen our cats?",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "Disease Outbreak"
|
||||
typepath = /datum/round_event/disease_outbreak
|
||||
max_occurrences = 1
|
||||
min_players = 10
|
||||
min_players = 3
|
||||
weight = 5
|
||||
|
||||
/datum/round_event/disease_outbreak
|
||||
@@ -12,6 +12,13 @@
|
||||
|
||||
var/max_severity = 3
|
||||
|
||||
/datum/round_event_control/disease_outbreak/canSpawnEvent(var/players_amt, var/gamemode)
|
||||
if(!..()) return FALSE
|
||||
var/list/enemy_roles = list("Medical Doctor","Chief Medical Officer","Paramedic","AI","Chemist","Virologist","Captain","Head of Personnel", "Geneticist")
|
||||
for (var/mob/M in GLOB.alive_mob_list)
|
||||
if(M.stat != DEAD && (M.mind?.assigned_role in enemy_roles))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/round_event/disease_outbreak/announce(fake)
|
||||
priority_announce("Confirmed outbreak of level 7 viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", "outbreak7")
|
||||
@@ -22,7 +29,10 @@
|
||||
|
||||
/datum/round_event/disease_outbreak/start()
|
||||
var/advanced_virus = FALSE
|
||||
max_severity = 3 + max(FLOOR((world.time - control.earliest_start)/6000, 1),0) //3 symptoms at 20 minutes, plus 1 per 10 minutes
|
||||
var/player_count = get_active_player_count(alive_check = TRUE, afk_check = TRUE, human_check = TRUE)
|
||||
max_severity = 1 + max(FLOOR((world.time - control.earliest_start)/6000, 1),0) //3 symptoms at 20 minutes, plus 1 per 10 minutes
|
||||
max_severity += player_count > 5
|
||||
max_severity += player_count > 10
|
||||
if(prob(20 + (10 * max_severity)))
|
||||
advanced_virus = TRUE
|
||||
|
||||
|
||||
@@ -17,9 +17,10 @@
|
||||
/datum/round_event_control/sandstorm
|
||||
name = "Sandstorm"
|
||||
typepath = /datum/round_event/sandstorm
|
||||
weight = 0
|
||||
max_occurrences = 0
|
||||
earliest_start = 0 MINUTES
|
||||
weight = 5
|
||||
max_occurrences = 1
|
||||
min_players = 5
|
||||
earliest_start = 20 MINUTES
|
||||
|
||||
/datum/round_event/sandstorm
|
||||
startWhen = 1
|
||||
|
||||
@@ -1,9 +1,17 @@
|
||||
/datum/round_event_control/heart_attack
|
||||
name = "Random Heart Attack"
|
||||
typepath = /datum/round_event/heart_attack
|
||||
weight = 20
|
||||
weight = 10
|
||||
max_occurrences = 2
|
||||
min_players = 40 // To avoid shafting lowpop
|
||||
min_players = 10 // To avoid shafting lowpop
|
||||
|
||||
/datum/round_event_control/heart_attack/canSpawnEvent(var/players_amt, var/gamemode)
|
||||
if(!..()) return FALSE
|
||||
var/list/enemy_roles = list("Medical Doctor","Chief Medical Officer","Paramedic","Chemist")
|
||||
for (var/mob/M in GLOB.alive_mob_list)
|
||||
if(M.stat != DEAD && (M.mind?.assigned_role in enemy_roles))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/round_event/heart_attack/start()
|
||||
var/list/heart_attack_contestants = list()
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "Mass Hallucination"
|
||||
typepath = /datum/round_event/mass_hallucination
|
||||
weight = 10
|
||||
max_occurrences = 2
|
||||
max_occurrences = 5
|
||||
min_players = 1
|
||||
var/forced_hallucination
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "Supermatter Surge"
|
||||
typepath = /datum/round_event/supermatter_surge
|
||||
weight = 20
|
||||
max_occurrences = 4
|
||||
max_occurrences = 5
|
||||
earliest_start = 10 MINUTES
|
||||
|
||||
/datum/round_event_control/supermatter_surge/canSpawnEvent()
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
/datum/round_event/supermatter_surge/start()
|
||||
var/obj/machinery/power/supermatter_crystal/supermatter = GLOB.main_supermatter_engine
|
||||
var/power_proportion = supermatter.powerloss_inhibitor/2 // what % of the power goes into matter power, at most 50%
|
||||
var/power_proportion = supermatter.powerloss_inhibitor * 0.75 // what % of the power goes into matter power, at most 50%
|
||||
// we reduce the proportion that goes into actual matter power based on powerloss inhibitor
|
||||
// primarily so the supermatter doesn't tesla the instant these happen
|
||||
supermatter.matter_power += power * power_proportion
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/datum/round_event_control/supernova
|
||||
name = "Supernova"
|
||||
typepath = /datum/round_event/supernova
|
||||
weight = 10
|
||||
max_occurrences = 2
|
||||
weight = 5
|
||||
max_occurrences = 1
|
||||
min_players = 2
|
||||
|
||||
/datum/round_event/supernova
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
typepath = /datum/round_event/vent_clog
|
||||
weight = 10
|
||||
max_occurrences = 3
|
||||
min_players = 25
|
||||
|
||||
/datum/round_event/vent_clog
|
||||
announceWhen = 1
|
||||
@@ -11,7 +10,7 @@
|
||||
endWhen = 35
|
||||
var/interval = 2
|
||||
var/list/vents = list()
|
||||
var/randomProbability = 1
|
||||
var/randomProbability = 0
|
||||
var/reagentsAmount = 100
|
||||
var/list/saferChems = list(
|
||||
/datum/reagent/water,
|
||||
@@ -92,7 +91,7 @@
|
||||
|
||||
var/datum/reagents/R = new/datum/reagents(1000)
|
||||
R.my_atom = vent
|
||||
if (prob(randomProbability))
|
||||
if (randomProbability && prob(randomProbability))
|
||||
R.add_reagent(get_random_reagent_id(), reagentsAmount)
|
||||
else
|
||||
R.add_reagent(pick(saferChems), reagentsAmount)
|
||||
@@ -106,7 +105,7 @@
|
||||
name = "Clogged Vents: Threatening"
|
||||
typepath = /datum/round_event/vent_clog/threatening
|
||||
weight = 4
|
||||
min_players = 35
|
||||
min_players = 15
|
||||
max_occurrences = 1
|
||||
earliest_start = 35 MINUTES
|
||||
|
||||
@@ -118,7 +117,7 @@
|
||||
name = "Clogged Vents: Catastrophic"
|
||||
typepath = /datum/round_event/vent_clog/catastrophic
|
||||
weight = 2
|
||||
min_players = 45
|
||||
min_players = 25
|
||||
max_occurrences = 1
|
||||
earliest_start = 45 MINUTES
|
||||
|
||||
|
||||
Reference in New Issue
Block a user