/tg/ Station 13 - Modules - TypesVar Details - Proc Details

events

ICES - Intensity Credit Events System

This file is used to denote weight and frequency for events to be spawned by the system.

Event subsystem

Overriden min and max start times to accomodate for much longer rounds

Vars

active_intensity_multiplierCurrent active ICES multiplier
controllist of all datum/round_event_control. Used for selecting events based on weight and occurrences.
currentruncache of currently running events, for lag checking.
frequency_lowerThe lower bound for how soon another random event can be scheduled.
frequency_upperThe upper bound for how soon another random event can be scheduled.
intensity_credit_last_timeLast world time we added an intensity credit
intensity_credit_rateRate at which we add intensity credits
intensity_high_multiplierHIGHPOP multiplier (lower = more events)
intensity_high_playersHIGHPOP player threshold
intensity_low_multiplierLOWPOP multiplier (lower = more events)
intensity_low_playersLOWPOP player threshold
intensity_mid_multiplierMIDPOP multiplier (lower = more events)
intensity_mid_playersMIDPOP player threshold
runninglist of all existing /datum/round_event currently being run.
scheduledThe next world.time that a naturally occurring random event can be selected.
wizardmodeWill wizard events be included in the event pool?

Procs

TriggerEventDoes the last pre-flight checks for the passed event, and runs it if the event is ready.
change_intensity_creditsChanges the round's intensity credit pool. Can be called as part of a timer or on its own. Arguments: credit_action: number, credit_amount: number, check_timer: boolean, reset_timer: boolean, notify_admins: boolean
checkEventCheck if we have an upcoming transfer vote, or we're already evacuating.
debug_event_scheduleRuns a check to determine if events will be suspended due to shuttle related events
resetFrequencySets the event frequency bounds back to their initial value.
spawnEventSelects a random event based on whether it can occur and its 'weight'(probability)
toggleWizardmodeToggles whether or not wizard events will be in the event pool, and sends a notification to the admins.

Var Details

active_intensity_multiplier

Current active ICES multiplier

control

list of all datum/round_event_control. Used for selecting events based on weight and occurrences.

currentrun

cache of currently running events, for lag checking.

frequency_lower

The lower bound for how soon another random event can be scheduled.

frequency_upper

The upper bound for how soon another random event can be scheduled.

intensity_credit_last_time

Last world time we added an intensity credit

intensity_credit_rate

Rate at which we add intensity credits

intensity_high_multiplier

HIGHPOP multiplier (lower = more events)

intensity_high_players

HIGHPOP player threshold

intensity_low_multiplier

LOWPOP multiplier (lower = more events)

intensity_low_players

LOWPOP player threshold

intensity_mid_multiplier

MIDPOP multiplier (lower = more events)

intensity_mid_players

MIDPOP player threshold

running

list of all existing /datum/round_event currently being run.

scheduled

The next world.time that a naturally occurring random event can be selected.

wizardmode

Will wizard events be included in the event pool?

Proc Details

TriggerEvent

Does the last pre-flight checks for the passed event, and runs it if the event is ready.

change_intensity_credits

Changes the round's intensity credit pool. Can be called as part of a timer or on its own. Arguments: credit_action: number, credit_amount: number, check_timer: boolean, reset_timer: boolean, notify_admins: boolean

checkEvent

Check if we have an upcoming transfer vote, or we're already evacuating.

debug_event_schedule

Runs a check to determine if events will be suspended due to shuttle related events

resetFrequency

Sets the event frequency bounds back to their initial value.

spawnEvent

Selects a random event based on whether it can occur and its 'weight'(probability)

Arguments:

toggleWizardmode

Toggles whether or not wizard events will be in the event pool, and sends a notification to the admins.