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

job

Vars

allow_bureaucratic_errorShould this job be allowed to be picked for the bureaucratic error event?
alternate_titlesAlternate titles to register as pointing to this job.
auto_deadmin_role_flagsBitflags for the job
bounty_typesWhat types of bounty tasks can this job receive past the default?
config_tagString key to track any variables we want to tie to this job in config, so we can avoid using the job title. We CAPITALIZE it in order to ensure it's unique and resistant to trivial formatting changes. You'll probably break someone's config if you change this, so it's best to not to.
current_positionsHow many players have this job
department_for_prefsIf specified, this department will be used for the preferences menu.
department_headDetermines who can demote this position
departments_bitflagsBitfield of departments this job belongs to. These get setup when adding the job into the department, on job datum creation.
departments_listLazy list with the departments this job belongs to. Required to be set for playable jobs. The first department will be used in the preferences menu, unless department_for_prefs is set.
descriptionThe description of the job, used for preferences menu. Keep it short and useful. Avoid in-jokes, these are for new players.
exclusive_mail_goodiesIf this job's mail goodies compete with generic goodies.
exp_granted_typeExperience type granted by playing in this job.
exp_required_typeExperience required to play this job, if the config is enabled, and exp_required_type_department is not enabled with the proper config.
exp_required_type_departmentDepartment experience required to play this job, if the config is enabled.
exp_requirementsMinutes of experience-time required to play in this job. The type is determined by [exp_required_type] and [exp_required_type_department] depending on configs.
factionPlayers will be allowed to spawn in as jobs that are set to "Station"
family_heirloomsList of family heirlooms this job can get with the family heirloom quirk. List of types.
head_announceTells the given channels that the given mob is the new department head. See communications.dm for valid channels.
job_flagsAll values = (JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_ASSIGN_QUIRKS | JOB_CAN_BE_INTERN | JOB_CANNOT_OPEN_SLOTS | JOB_HEAD_OF_STAFF)
job_tonecustom ringtone for this job
liver_traitsLazylist of traits added to the liver of the mob assigned this job (used for the classic "cops heal from donuts" reaction, among others)
mail_goodiesGoodies that can be received via the mail system. Keep the _job definition for this empty and use /obj/item/mail to define general gifts.
mind_traitsTraits added to the mind of the mob assigned this job
minimal_player_ageIf you have the use_age_restriction_for_jobs config option enabled and the database set up, this option will add a requirement for players to be at least minimal_player_age days old. (meaning they first signed in at least that many days before.)
minimal_skillsInnate skill levels unlocked at roundstart. Based on config.jobs_have_minimal_access config setting, for example with a full crew. Format is list(/datum/skill/foo = SKILL_EXP_NOVICE) with exp as an integer or as per code/_DEFINES/skills.dm
paycheckHow much money does this crew member make in a single paycheck? Note that passive paychecks are capped to PAYCHECK_CREW in regular gameplay after roundstart.
paycheck_departmentWhich department does this paycheck pay from?
plasmaman_outfitThe job's outfit that will be assigned for plasmamen.
policy_indexString. If set to a non-empty one, it will be the key for the policy text value to show this role on spawn.
policy_overrideIf set, look for a policy with this instead of the job title
random_spawns_possibleIs this job affected by weird spawns like the ones from station traits
req_admin_notifyIf this is set to 1, a text is printed to the player when jobs are assigned, telling him that he should let admins know that he has to disconnect.
required_character_ageMinimal character age for this job
rpg_titleRPG job names, for the memes
skillsInnate skill levels unlocked at roundstart. Based on config.jobs_have_minimal_access config setting, for example with a skeleton crew. Format is list(/datum/skill/foo = SKILL_EXP_NOVICE) with exp as an integer or as per code/_DEFINES/skills.dm
spawn_positionsHow many players can spawn in as this job
spawn_typeWhat kind of mob type joining players with this job as their assigned role are spawned as.
supervisorsSupervisors, who this person answers to directly
titleThe name of the job , used for preferences, bans and more. Make sure you know what you're doing before changing this.
total_positionsHow many players can be this job
voice_of_god_powerMultiplier for general usage of the voice of god.
voice_of_god_silence_powerMultiplier for the silence command of the voice of god.

Procs

after_latejoin_spawnCalled after a successful latejoin spawn. Client is in the mob. This happens after after_spawn()
after_roundstart_spawnCalled after a successful roundstart spawn. Client is not yet in the mob. This happens after after_spawn()
after_spawnExecutes after the mob has been spawned in the map. Client might not be yet in the mob, and is thus a separate variable.
announce_jobAnnounce that this job as joined the round to all crew members. Note the joining mob has no client at this point.
get_default_roundstart_spawn_pointHandles finding and picking a valid roundstart effect landmark spawn point, in case no uncommon different spawning events occur.
get_latejoin_spawn_pointFinds a valid latejoin spawn point, checking for events and special conditions.
get_mail_goodiesAn overridable getter for more dynamic goodies.
get_outfitReturn the outfit to use
get_radio_informationReturns information pertaining to this job's radio.
get_roundstart_spawn_pointReturns an atom where the mob should spawn in.
get_spawn_messageGets the message that shows up when spawning as this job
get_spawn_message_informationReturns a list of strings that correspond to chat messages sent to this mob when they join the round.
get_spawn_mobSpawns the mob to be played as, taking into account preferences and the desired spawn point.
map_check

Var Details

allow_bureaucratic_error

Should this job be allowed to be picked for the bureaucratic error event?

alternate_titles

Alternate titles to register as pointing to this job.

auto_deadmin_role_flags

Bitflags for the job

bounty_types

What types of bounty tasks can this job receive past the default?

config_tag

String key to track any variables we want to tie to this job in config, so we can avoid using the job title. We CAPITALIZE it in order to ensure it's unique and resistant to trivial formatting changes. You'll probably break someone's config if you change this, so it's best to not to.

current_positions

How many players have this job

department_for_prefs

If specified, this department will be used for the preferences menu.

department_head

Determines who can demote this position

departments_bitflags

Bitfield of departments this job belongs to. These get setup when adding the job into the department, on job datum creation.

departments_list

Lazy list with the departments this job belongs to. Required to be set for playable jobs. The first department will be used in the preferences menu, unless department_for_prefs is set.

description

The description of the job, used for preferences menu. Keep it short and useful. Avoid in-jokes, these are for new players.

exclusive_mail_goodies

If this job's mail goodies compete with generic goodies.

exp_granted_type

Experience type granted by playing in this job.

exp_required_type

Experience required to play this job, if the config is enabled, and exp_required_type_department is not enabled with the proper config.

exp_required_type_department

Department experience required to play this job, if the config is enabled.

exp_requirements

Minutes of experience-time required to play in this job. The type is determined by [exp_required_type] and [exp_required_type_department] depending on configs.

faction

Players will be allowed to spawn in as jobs that are set to "Station"

family_heirlooms

List of family heirlooms this job can get with the family heirloom quirk. List of types.

head_announce

Tells the given channels that the given mob is the new department head. See communications.dm for valid channels.

job_flags

All values = (JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_ASSIGN_QUIRKS | JOB_CAN_BE_INTERN | JOB_CANNOT_OPEN_SLOTS | JOB_HEAD_OF_STAFF)

job_tone

custom ringtone for this job

liver_traits

Lazylist of traits added to the liver of the mob assigned this job (used for the classic "cops heal from donuts" reaction, among others)

mail_goodies

Goodies that can be received via the mail system. Keep the _job definition for this empty and use /obj/item/mail to define general gifts.

mind_traits

Traits added to the mind of the mob assigned this job

minimal_player_age

If you have the use_age_restriction_for_jobs config option enabled and the database set up, this option will add a requirement for players to be at least minimal_player_age days old. (meaning they first signed in at least that many days before.)

minimal_skills

Innate skill levels unlocked at roundstart. Based on config.jobs_have_minimal_access config setting, for example with a full crew. Format is list(/datum/skill/foo = SKILL_EXP_NOVICE) with exp as an integer or as per code/_DEFINES/skills.dm

paycheck

How much money does this crew member make in a single paycheck? Note that passive paychecks are capped to PAYCHECK_CREW in regular gameplay after roundstart.

paycheck_department

Which department does this paycheck pay from?

plasmaman_outfit

The job's outfit that will be assigned for plasmamen.

policy_index

String. If set to a non-empty one, it will be the key for the policy text value to show this role on spawn.

policy_override

If set, look for a policy with this instead of the job title

random_spawns_possible

Is this job affected by weird spawns like the ones from station traits

req_admin_notify

If this is set to 1, a text is printed to the player when jobs are assigned, telling him that he should let admins know that he has to disconnect.

required_character_age

Minimal character age for this job

rpg_title

RPG job names, for the memes

skills

Innate skill levels unlocked at roundstart. Based on config.jobs_have_minimal_access config setting, for example with a skeleton crew. Format is list(/datum/skill/foo = SKILL_EXP_NOVICE) with exp as an integer or as per code/_DEFINES/skills.dm

spawn_positions

How many players can spawn in as this job

spawn_type

What kind of mob type joining players with this job as their assigned role are spawned as.

supervisors

Supervisors, who this person answers to directly

title

The name of the job , used for preferences, bans and more. Make sure you know what you're doing before changing this.

total_positions

How many players can be this job

voice_of_god_power

Multiplier for general usage of the voice of god.

voice_of_god_silence_power

Multiplier for the silence command of the voice of god.

Proc Details

after_latejoin_spawn

Called after a successful latejoin spawn. Client is in the mob. This happens after after_spawn()

after_roundstart_spawn

Called after a successful roundstart spawn. Client is not yet in the mob. This happens after after_spawn()

after_spawn

Executes after the mob has been spawned in the map. Client might not be yet in the mob, and is thus a separate variable.

announce_job

Announce that this job as joined the round to all crew members. Note the joining mob has no client at this point.

get_default_roundstart_spawn_point

Handles finding and picking a valid roundstart effect landmark spawn point, in case no uncommon different spawning events occur.

get_latejoin_spawn_point

Finds a valid latejoin spawn point, checking for events and special conditions.

get_mail_goodies

An overridable getter for more dynamic goodies.

get_outfit

Return the outfit to use

get_radio_information

Returns information pertaining to this job's radio.

get_roundstart_spawn_point

Returns an atom where the mob should spawn in.

get_spawn_message

Gets the message that shows up when spawning as this job

get_spawn_message_information

Returns a list of strings that correspond to chat messages sent to this mob when they join the round.

get_spawn_mob

Spawns the mob to be played as, taking into account preferences and the desired spawn point.

map_check

map_check

Checks the map config for job changes If they have 0 spawn and total positions in the config, the job is entirely removed from occupations prefs for the round.