Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Storyteller rebalance and modularization. (And two more storytellers) #549

Merged
merged 13 commits into from
Nov 24, 2023
2 changes: 2 additions & 0 deletions code/__DEFINES/~monkestation/storytellers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@
#define TAG_SPACE "space"
/// When the event requires the station to be on planetary.
#define TAG_PLANETARY "planetary"
/// When the event is an external threat(meteors, nukies).
#define TAG_EXTERNAL "external"

#define EVENT_TRACK_MUNDANE "Mundane"
#define EVENT_TRACK_MODERATE "Moderate"
Expand Down
2 changes: 1 addition & 1 deletion code/modules/events/anomaly/_anomaly.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
impact_area = get_area(spawn_location)
else
impact_area = placer.findValidArea()
setup = TRUE
setup = TRUE //MONKESTATION ADDITION

/datum/round_event/anomaly/announce(fake)
priority_announce("Energetic flux wave detected on [ANOMALY_ANNOUNCE_DANGEROUS_TEXT] [impact_area.name].", "Anomaly Alert")
Expand Down
2 changes: 1 addition & 1 deletion code/modules/events/anomaly/anomaly_vortex.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

min_players = 20
max_occurrences = 2
weight = 10
weight = 4 //monkestation edit: 10 ==> 4
description = "This anomaly sucks in and detonates items."
min_wizard_trigger_potency = 3
max_wizard_trigger_potency = 7
Expand Down
4 changes: 1 addition & 3 deletions code/modules/events/aurora_caelus.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,8 @@
earliest_start = 5 MINUTES
category = EVENT_CATEGORY_FRIENDLY
description = "A colourful display can be seen through select windows. And the kitchen."
track = EVENT_TRACK_MUNDANE
tags = list(TAG_COMMUNAL, TAG_POSITIVE, TAG_SPACE)

/datum/round_event_control/aurora_caelus/can_spawn_event(players, allow_magic = FALSE, fake_check = FALSE)
/datum/round_event_control/aurora_caelus/can_spawn_event(players, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
if(!SSmapping.empty_space)
return FALSE
return ..()
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/brain_trauma.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
description = "A crewmember gains a random trauma."
min_wizard_trigger_potency = 2
max_wizard_trigger_potency = 6
track = EVENT_TRACK_MUNDANE
tags = list(TAG_TARGETED)

/datum/round_event/brain_trauma
fakeable = FALSE
Expand Down
4 changes: 1 addition & 3 deletions code/modules/events/brand_intelligence.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@
min_wizard_trigger_potency = 2
max_wizard_trigger_potency = 6
admin_setup = list(/datum/event_admin_setup/listed_options/brand_intelligence)
track = EVENT_TRACK_MODERATE
tags = list(TAG_DESTRUCTIVE, TAG_COMMUNAL)

/datum/round_event/brand_intelligence
announce_when = 21
Expand Down Expand Up @@ -48,7 +46,7 @@
kill()
return
origin_machine = pick_n_take(vending_machines)
setup = TRUE
setup = TRUE //MONKESTATION ADDITION

/datum/round_event/brand_intelligence/announce(fake)
priority_announce("Rampant brand intelligence has been detected aboard [station_name()]. Please inspect any [origin_machine] brand vendors for aggressive marketing tactics, and reboot them if necessary.", "Machine Learning Alert")
Expand Down
8 changes: 3 additions & 5 deletions code/modules/events/bureaucratic_error.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
weight = 5
category = EVENT_CATEGORY_BUREAUCRATIC
description = "Randomly opens and closes job slots, along with changing the overflow role."
track = EVENT_TRACK_MAJOR // if you've ever dealt with 10 mimes you understand why.
tags = list(TAG_COMMUNAL)

/datum/round_event/bureaucratic_error
announce_when = 1
Expand All @@ -24,11 +22,11 @@
var/datum/job/current = job
if(!current.allow_bureaucratic_error)
continue
var/ran = rand(-2,4)
current.total_positions = max(current.total_positions + ran, 1)
var/ran = rand(-2,4) //MONKESTATION CHANGE: REMOVE(current.total_positions = 0) ADD: var/ran = rand(-2,4)
current.total_positions = max(current.total_positions + ran, 1) //MONKESTATION ADDITION
else // Adds/removes a random amount of job slots from all jobs.
for(var/datum/job/current as anything in jobs)
if(!current.allow_bureaucratic_error)
continue
var/ran = rand(-2,4)
current.total_positions = max(current.total_positions + ran, 1)
current.total_positions = max(current.total_positions + ran, 1) //MONKESTATION CHANGE: ran, 0) ==> ran, 1)
2 changes: 0 additions & 2 deletions code/modules/events/camerafailure.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
alert_observers = FALSE
category = EVENT_CATEGORY_ENGINEERING
description = "Turns off a random amount of cameras."
track = EVENT_TRACK_MUNDANE
tags = list(TAG_COMMUNAL, TAG_SPOOKY)

/datum/round_event/camera_failure
fakeable = FALSE
Expand Down
4 changes: 1 addition & 3 deletions code/modules/events/carp_migration.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@
min_wizard_trigger_potency = 0
max_wizard_trigger_potency = 3
admin_setup = list(/datum/event_admin_setup/carp_migration)
track = EVENT_TRACK_MODERATE
tags = list(TAG_COMMUNAL)

/datum/round_event_control/carp_migration/New()
. = ..()
Expand All @@ -37,7 +35,7 @@

/datum/round_event/carp_migration/setup()
start_when = rand(40, 60)
setup = TRUE
setup = TRUE //MONKESTATION ADDITION

/datum/round_event/carp_migration/announce(fake)
priority_announce("[fluff_signal] have been detected near [station_name()], please stand-by.", "Lifesign Alert")
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/communications_blackout.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
description = "Heavily emps all telecommunication machines, blocking all communication for a while."
min_wizard_trigger_potency = 0
max_wizard_trigger_potency = 3
track = EVENT_TRACK_MODERATE
tags = list(TAG_COMMUNAL, TAG_SPOOKY)

/datum/round_event/communications_blackout
announce_when = 1
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/creep_awakening.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
min_players = 20
category = EVENT_CATEGORY_HEALTH
description = "A random crewmember becomes obsessed with another."
track = EVENT_TRACK_MODERATE
tags = list(TAG_CREW_ANTAG, TAG_TARGETED)

/datum/round_event/obsessed
fakeable = FALSE
Expand Down
10 changes: 4 additions & 6 deletions code/modules/events/disease_outbreak.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,8 @@
admin_setup = list(/datum/event_admin_setup/minimum_candidate_requirement/disease_outbreak, /datum/event_admin_setup/listed_options/disease_outbreak)
///Disease recipient candidates
var/list/disease_candidates = list()
track = EVENT_TRACK_MUNDANE
tags = list(TAG_TARGETED)

/datum/round_event_control/disease_outbreak/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE)
/datum/round_event_control/disease_outbreak/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
. = ..()
if(!.)
return .
Expand Down Expand Up @@ -102,7 +100,7 @@

/datum/round_event/disease_outbreak/setup()
announce_when = ADV_ANNOUNCE_DELAY
setup = TRUE
setup = TRUE //MONKESTATION ADDITION

/datum/round_event/disease_outbreak/start()
var/datum/round_event_control/disease_outbreak/disease_event = control
Expand Down Expand Up @@ -144,7 +142,7 @@
name = "Disease Outbreak: Advanced"
typepath = /datum/round_event/disease_outbreak/advanced
category = EVENT_CATEGORY_HEALTH
weight = 15
weight = 7 //monkestation change 15 ==> 7
min_players = 35 // To avoid shafting lowpop
earliest_start = 15 MINUTES // give the chemist a chance
description = "An 'advanced' disease will infect some members of the crew."
Expand Down Expand Up @@ -258,7 +256,7 @@

/datum/round_event/disease_outbreak/advance/setup()
announce_when = ADV_ANNOUNCE_DELAY
setup = TRUE
setup = TRUE //MONKESTATION ADDITION

/**
* Generate advanced virus
Expand Down
4 changes: 1 addition & 3 deletions code/modules/events/dust.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,12 @@
name = "Space Dust: Minor"
typepath = /datum/round_event/space_dust
weight = 200 // why the hell was this so much
max_occurrences = 10
max_occurrences = 10 //MONKESTATION CHANGE: 1000 ==> 10
earliest_start = 0 MINUTES
alert_observers = FALSE
category = EVENT_CATEGORY_SPACE
description = "A single space dust is hurled at the station."
map_flags = EVENT_SPACE_ONLY
track = EVENT_TRACK_MUNDANE
tags = list(TAG_DESTRUCTIVE, TAG_SPACE)

/datum/round_event/space_dust
start_when = 1
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/electrical_storm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@
description = "Destroys all lights in a large area."
min_wizard_trigger_potency = 0
max_wizard_trigger_potency = 4
track = EVENT_TRACK_MUNDANE
tags = list(TAG_SPOOKY)

/datum/round_event/electrical_storm
var/lightsoutAmount = 1
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/fake_virus.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
weight = 20
category = EVENT_CATEGORY_HEALTH
description = "Some crewmembers suffer from temporary hypochondria."
track = EVENT_TRACK_MUNDANE
tags = list(TAG_TARGETED)

/datum/round_event/fake_virus/start()
var/list/fake_virus_victims = list()
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/false_alarm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
category = EVENT_CATEGORY_BUREAUCRATIC
description = "Fakes an event announcement."
admin_setup = list(/datum/event_admin_setup/listed_options/false_alarm)
track = EVENT_TRACK_MUNDANE
tags = list(TAG_COMMUNAL)

/datum/round_event_control/falsealarm/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE)
. = ..()
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/abductor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_INVASION
description = "One or more abductor teams spawns, and they plan to experiment on the crew."
track = EVENT_TRACK_MAJOR
tags = list(TAG_TARGETED, TAG_SPOOKY)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/abductor
minimum_required = 2
Expand Down
9 changes: 3 additions & 6 deletions code/modules/events/ghost_role/alien_infestation.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,12 @@

min_players = 35 //monkie edit: 10 to 35 (tg what the fuck)

earliest_start = 60 MINUTES //monkie edit: 20 to 90
earliest_start = 60 MINUTES //monkie edit: 20 to 60
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_ENTITIES
description = "A xenomorph larva spawns on a random vent."
track = EVENT_TRACK_MAJOR
tags = list(TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event_control/alien_infestation/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE)
/datum/round_event_control/alien_infestation/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
. = ..()
if(!.)
return .
Expand All @@ -37,7 +34,7 @@
announce_when = rand(announce_when, announce_when + 50)
if(prob(50))
spawncount++
setup = TRUE
setup = TRUE //MONKESTATION ADDITION
/datum/round_event/ghost_role/alien_infestation/announce(fake)
var/living_aliens = FALSE
for(var/mob/living/carbon/alien/A in GLOB.player_list)
Expand Down
7 changes: 2 additions & 5 deletions code/modules/events/ghost_role/blob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,12 @@

min_players = 35 //monkie edit: 20 to 35

earliest_start = 60 MINUTES //monkie edit: 20 to 90
earliest_start = 60 MINUTES //monkie edit: 20 to 60
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_ENTITIES
description = "Spawns a new blob overmind."
track = EVENT_TRACK_MAJOR
tags = list(TAG_DESTRUCTIVE, TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event_control/blob/can_spawn_event(players, allow_magic = FALSE, fake_check = FALSE)
/datum/round_event_control/blob/can_spawn_event(players, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
if(EMERGENCY_PAST_POINT_OF_NO_RETURN) // no blobs if the shuttle is past the point of no return
return FALSE

Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/changeling_event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,6 @@
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_ENTITIES
description = "A meteor containing a changeling is summoned and thrown at the exterior of the station."
track = EVENT_TRACK_MAJOR
tags = list(TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/changeling
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/fugitive_event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@
category = EVENT_CATEGORY_INVASION
description = "Fugitives will hide on the station, followed by hunters."
map_flags = EVENT_SPACE_ONLY
track = EVENT_TRACK_MAJOR
tags = list(TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/fugitives
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/morph_event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@
description = "Spawns a hungry shapeshifting blobby creature."
min_wizard_trigger_potency = 4
max_wizard_trigger_potency = 7
track = EVENT_TRACK_ROLESET
tags = list(TAG_COMBAT, TAG_SPOOKY)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/morph
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/nightmare.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@
description = "Spawns a nightmare, aiming to darken the station."
min_wizard_trigger_potency = 6
max_wizard_trigger_potency = 7
track = EVENT_TRACK_ROLESET
tags = list(TAG_COMBAT, TAG_SPOOKY)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/nightmare
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/operative.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,6 @@
max_occurrences = 1
category = EVENT_CATEGORY_INVASION
description = "A single nuclear operative assaults the station."
track = EVENT_TRACK_MAJOR
tags = list(TAG_DESTRUCTIVE, TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/operative
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/revenant_event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@
description = "Spawns an angry, soul sucking ghost."
min_wizard_trigger_potency = 4
max_wizard_trigger_potency = 7
track = EVENT_TRACK_ROLESET
tags = list(TAG_DESTRUCTIVE, TAG_SPOOKY)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/revenant
var/ignore_mobcheck = FALSE
Expand Down
2 changes: 0 additions & 2 deletions code/modules/events/ghost_role/sentience.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ GLOBAL_LIST_INIT(high_priority_sentience, typecacheof(list(
description = "An animal or robot becomes sentient!"
min_wizard_trigger_potency = 0
max_wizard_trigger_potency = 7
track = EVENT_TRACK_MODERATE
tags = list(TAG_COMMUNAL, TAG_SPOOKY)


/datum/round_event/ghost_role/sentience
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/sentient_disease.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@
description = "Spawns a sentient disease, who wants to infect as many people as possible."
min_wizard_trigger_potency = 4
max_wizard_trigger_potency = 7
track = EVENT_TRACK_MAJOR
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/sentient_disease
role_name = "sentient disease"
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/slaughter_event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@
description = "Spawns a slaughter demon, to hunt by travelling through pools of blood."
min_wizard_trigger_potency = 6
max_wizard_trigger_potency = 7
track = EVENT_TRACK_MAJOR
tags = list(TAG_COMBAT, TAG_SPOOKY)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/slaughter
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/space_dragon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@
description = "Spawns a space dragon, which will try to take over the station."
min_wizard_trigger_potency = 6
max_wizard_trigger_potency = 7
track = EVENT_TRACK_ROLESET
tags = list(TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/space_dragon
minimum_required = 1
Expand Down
3 changes: 0 additions & 3 deletions code/modules/events/ghost_role/space_ninja.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_INVASION
description = "A space ninja infiltrates the station."
track = EVENT_TRACK_ROLESET
tags = list(TAG_COMBAT)
checks_antag_cap = TRUE

/datum/round_event/ghost_role/space_ninja
minimum_required = 1
Expand Down
4 changes: 1 addition & 3 deletions code/modules/events/gravity_generator_blackout.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,8 @@
description = "Turns off the gravity generator."
min_wizard_trigger_potency = 0
max_wizard_trigger_potency = 4
track = EVENT_TRACK_MODERATE
tags = list(TAG_COMMUNAL, TAG_SPACE)

/datum/round_event_control/gravity_generator_blackout/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE)
/datum/round_event_control/gravity_generator_blackout/can_spawn_event(players_amt, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
. = ..()
if(!.)
return .
Expand Down
Loading
Loading