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

omen

omen.dm: For when you want someone to have a really bad day

When you attach an omen component to someone, they start running the risk of all sorts of bad environmental injuries, like nearby vending machines randomly falling on you, or hitting your head really hard when you slip and fall, or you get shocked by the tram rails at an unfortunate moment.

Omens are removed once the victim is either maimed by one of the possible injuries, or if they receive a blessing (read: bashing with a bible) from the chaplain.

Vars

damage_modBase damage from negative events. Cursed take 25% of this damage.
incidents_leftHow many incidents are left. If 0 exactly, it will get deleted.
luck_modBase probability of negative events. Cursed are half as unlucky.
vesselWhatever's causing the omen, if there is one. Destroying the vessel won't stop the omen, but we destroy the vessel (if one exists) upon the omen ending

Procs

InheritComponentThis is a omen eat omen world! The stronger omen survives.
check_accidentcheck_accident() is called each step we take
check_blessBonk! Hijack the mood system to see if we get the blessing mood event to cancel the omen
check_deathSevere deaths. Normally lifts the curse.
check_slipIf we get knocked down, see if we have a really bad slip and bash our head hard
death_explodeCreates a localized explosion that shakes the camera
vessel_qdeletingVessel got deleted, set it to null

Var Details

damage_mod

Base damage from negative events. Cursed take 25% of this damage.

incidents_left

How many incidents are left. If 0 exactly, it will get deleted.

luck_mod

Base probability of negative events. Cursed are half as unlucky.

vessel

Whatever's causing the omen, if there is one. Destroying the vessel won't stop the omen, but we destroy the vessel (if one exists) upon the omen ending

Proc Details

InheritComponent

This is a omen eat omen world! The stronger omen survives.

check_accident

check_accident() is called each step we take

While we're walking around, roll to see if there's any environmental hazards on one of the adjacent tiles we can trigger. We do the prob() at the beginning to A. add some tension for /when/ it will strike, and B. (more importantly) ameliorate the fact that we're checking up to 5 turfs's contents each time

check_bless

Bonk! Hijack the mood system to see if we get the blessing mood event to cancel the omen

check_death

Severe deaths. Normally lifts the curse.

check_slip

If we get knocked down, see if we have a really bad slip and bash our head hard

death_explode

Creates a localized explosion that shakes the camera

vessel_qdeleting

Vessel got deleted, set it to null