mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
735 lines
22 KiB
Plaintext
735 lines
22 KiB
Plaintext
/// server name (the name of the game window)
|
|
/datum/config_entry/string/servername
|
|
|
|
/// generate numeric suffix based on server port
|
|
/datum/config_entry/flag/server_suffix
|
|
|
|
/// log messages sent in OOC
|
|
/datum/config_entry/flag/log_ooc
|
|
|
|
/// log login/logout
|
|
/datum/config_entry/flag/log_access
|
|
|
|
/// log client say
|
|
/datum/config_entry/flag/log_say
|
|
|
|
/// log admin actions
|
|
/datum/config_entry/flag/log_admin
|
|
protection = CONFIG_ENTRY_LOCKED
|
|
|
|
/// log debug output
|
|
/datum/config_entry/flag/log_debug
|
|
default = TRUE
|
|
|
|
/// log game events
|
|
/datum/config_entry/flag/log_game
|
|
|
|
/// log voting
|
|
/datum/config_entry/flag/log_vote
|
|
|
|
/// log client whisper
|
|
/datum/config_entry/flag/log_whisper
|
|
|
|
/// log emotes
|
|
/datum/config_entry/flag/log_emote
|
|
|
|
/// log attack messages
|
|
/datum/config_entry/flag/log_attack
|
|
|
|
/// log admin chat messages
|
|
/datum/config_entry/flag/log_adminchat
|
|
|
|
/// log warnings admins get about bomb construction and such
|
|
/datum/config_entry/flag/log_adminwarn
|
|
|
|
/// log pda messages
|
|
/datum/config_entry/flag/log_pda
|
|
|
|
/// logs all links clicked in-game. Could be used for debugging and tracking down exploits
|
|
/datum/config_entry/flag/log_hrefs
|
|
|
|
/// logs world.log to a file
|
|
/datum/config_entry/flag/log_runtime
|
|
|
|
/// logs sql stuff
|
|
/datum/config_entry/flag/log_sql
|
|
|
|
/// log to_world_log(messages)
|
|
/datum/config_entry/flag/log_world_output
|
|
|
|
/// logs graffiti
|
|
/datum/config_entry/flag/log_graffiti
|
|
|
|
/// logs all timers in buckets on automatic bucket reset (Useful for timer debugging)
|
|
/datum/config_entry/flag/log_timers_on_bucket_reset
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/string/nudge_script_path // where the nudge.py script is located
|
|
// default = "nudge.py"
|
|
|
|
/// allows admins with relevant permissions to have their own ooc colour
|
|
/datum/config_entry/flag/allow_admin_ooccolor
|
|
|
|
/// allow votes to restart
|
|
/datum/config_entry/flag/allow_vote_restart
|
|
|
|
/datum/config_entry/flag/ert_admin_call_only
|
|
|
|
// allow votes to change mode
|
|
/datum/config_entry/flag/allow_vote_mode
|
|
|
|
/// allows admin jumping
|
|
/datum/config_entry/flag/allow_admin_jump
|
|
default = TRUE
|
|
|
|
/// allows admin item spawning
|
|
/datum/config_entry/flag/allow_admin_spawning
|
|
default = TRUE
|
|
|
|
/// allows admin revives
|
|
/datum/config_entry/flag/allow_admin_rev
|
|
default = TRUE
|
|
|
|
/// pregame time in seconds
|
|
/datum/config_entry/number/pregame_time
|
|
default = 180
|
|
|
|
/// minimum time between voting sessions (deciseconds, 10 minute default)
|
|
/datum/config_entry/number/vote_delay
|
|
default = 6000
|
|
integer = FALSE
|
|
min_val = 0
|
|
|
|
/// length of voting period (deciseconds, default 1 minute)
|
|
/datum/config_entry/number/vote_period
|
|
default = 600
|
|
integer = FALSE
|
|
min_val = 0
|
|
|
|
/// Length of time before the first autotransfer vote is called
|
|
/datum/config_entry/number/vote_autotransfer_initial
|
|
default = 108000
|
|
min_val = 0
|
|
|
|
/// length of time before next sequential autotransfer vote
|
|
/datum/config_entry/number/vote_autotransfer_interval
|
|
default = 36000
|
|
min_val = 0
|
|
|
|
///Length of time before round start when autogamemode vote is called (in seconds, default 100).
|
|
/datum/config_entry/number/vote_autogamemode_timeleft
|
|
default = 100
|
|
min_val = 0
|
|
|
|
///How many autotransfers to have
|
|
/datum/config_entry/number/vote_autotransfer_amount
|
|
default = 3
|
|
min_val = 0
|
|
|
|
/// vote does not default to nochange/norestart
|
|
/datum/config_entry/flag/vote_no_default
|
|
|
|
/// dead people can't vote
|
|
/datum/config_entry/flag/vote_no_dead
|
|
|
|
// FIXME: Unused
|
|
/// del's new players if they log before they spawn in
|
|
///datum/config_entry/flag/del_new_on_log
|
|
// default = TRUE
|
|
|
|
// FIXME: Unused
|
|
/// spawns a spellbook which gives object-type spells instead of verb-type spells for the wizard
|
|
///datum/config_entry/flag/feature_object_spell_system
|
|
|
|
/// if amount of traitors scales based on amount of players
|
|
/datum/config_entry/flag/traitor_scaling
|
|
|
|
/// if objectives are disabled or not
|
|
/datum/config_entry/flag/objectives_disabled
|
|
|
|
// If security and such can be traitor/cult/other
|
|
/datum/config_entry/flag/protect_roles_from_antagonist
|
|
|
|
/// Gamemodes which end instantly will instead keep on going until the round ends by escape shuttle or nuke.
|
|
/datum/config_entry/flag/continuous_rounds
|
|
|
|
/// Metadata is supported.
|
|
/datum/config_entry/flag/allow_metadata
|
|
|
|
/// adminPMs to non-admins show in a pop-up 'reply' window when set to 1.
|
|
/datum/config_entry/flag/popup_admin_pm
|
|
|
|
/datum/config_entry/flag/allow_holidays
|
|
|
|
/datum/config_entry/flag/allow_holidays/ValidateAndSet()
|
|
. = ..()
|
|
if(.)
|
|
Holiday = config_entry_value
|
|
|
|
/datum/config_entry/number/minute_topic_limit
|
|
config_entry_value = 250
|
|
min_val = 0
|
|
|
|
/datum/config_entry/number/second_topic_limit
|
|
config_entry_value = 15
|
|
min_val = 0
|
|
|
|
/datum/config_entry/number/minute_click_limit
|
|
config_entry_value = 400
|
|
min_val = 0
|
|
|
|
/datum/config_entry/number/second_click_limit
|
|
config_entry_value = 15
|
|
min_val = 0
|
|
|
|
/datum/config_entry/number/fps
|
|
default = 20
|
|
integer = FALSE
|
|
min_val = 1
|
|
max_val = 100 //byond will start crapping out at 50, so this is just ridic
|
|
var/sync_validate = FALSE
|
|
|
|
/datum/config_entry/number/fps/ValidateAndSet(str_val)
|
|
. = ..()
|
|
if(.)
|
|
sync_validate = TRUE
|
|
var/datum/config_entry/number/ticklag/TL = config.entries_by_type[/datum/config_entry/number/ticklag]
|
|
if(!TL.sync_validate)
|
|
TL.ValidateAndSet("[10 / config_entry_value]")
|
|
sync_validate = FALSE
|
|
|
|
/datum/config_entry/number/ticklag
|
|
integer = FALSE
|
|
var/sync_validate = FALSE
|
|
|
|
/datum/config_entry/number/ticklag/New() //ticklag weirdly just mirrors fps
|
|
var/datum/config_entry/CE = /datum/config_entry/number/fps
|
|
default = 10 / initial(CE.default)
|
|
..()
|
|
|
|
/datum/config_entry/number/ticklag/ValidateAndSet(str_val)
|
|
. = text2num(str_val) > 0 && ..()
|
|
if(.)
|
|
sync_validate = TRUE
|
|
var/datum/config_entry/number/fps/FPS = config.entries_by_type[/datum/config_entry/number/fps]
|
|
if(!FPS.sync_validate)
|
|
FPS.ValidateAndSet("[10 / config_entry_value]")
|
|
sync_validate = FALSE
|
|
|
|
/// SSinitialization throttling
|
|
/datum/config_entry/number/tick_limit_mc_init
|
|
default = TICK_LIMIT_MC_INIT_DEFAULT
|
|
|
|
// var/static/Tickcomp = 0 // FIXME: Unused
|
|
|
|
/// use socket_talk to communicate with other processes
|
|
/datum/config_entry/flag/socket_talk
|
|
|
|
// var/static/list/resource_urls = null // FIXME: Unused
|
|
|
|
/// Ghosts can turn on Antagovision to see a HUD of who is the bad guys this round.
|
|
/datum/config_entry/flag/antag_hud_allowed
|
|
|
|
/// Ghosts that turn on Antagovision cannot rejoin the round.
|
|
/datum/config_entry/flag/antag_hud_restricted
|
|
|
|
/// relative probability of each mode
|
|
/datum/config_entry/keyed_list/probabilities
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
|
|
/// Overrides for how many players readied up a gamemode needs to start.
|
|
/datum/config_entry/keyed_list/player_requirements
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
|
|
/// Same as above, but for the secret gamemode.
|
|
/datum/config_entry/keyed_list/player_requirements_secret
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
|
|
/datum/config_entry/flag/humans_need_surnames
|
|
|
|
/datum/config_entry/flag/allow_random_events // enables random events mid-round when set to 1
|
|
|
|
/datum/config_entry/flag/enable_game_master // enables the 'smart' event system.
|
|
|
|
/datum/config_entry/flag/allow_ai // allow ai job
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/allow_ai_shells // allow AIs to enter and leave special borg shells at will, and for those shells to be buildable.
|
|
|
|
/datum/config_entry/flag/give_free_ai_shell // allows a specific spawner object to instantiate a premade AI Shell
|
|
|
|
/datum/config_entry/string/hostedby
|
|
default = null
|
|
|
|
/datum/config_entry/flag/respawn
|
|
default = TRUE
|
|
|
|
/// time before a dead player is allowed to respawn (in ds, though the config file asks for minutes, and it's converted below)
|
|
/datum/config_entry/number/respawn_time
|
|
default = 3000
|
|
|
|
/datum/config_entry/number/respawn_time/ValidateAndSet(num_val)
|
|
return num_val MINUTES
|
|
|
|
/datum/config_entry/string/respawn_message
|
|
default = span_boldnotice("Make sure to play a different character, and please roleplay correctly!")
|
|
|
|
/datum/config_entry/string/respawn_message/ValidateAndSet(str_val)
|
|
return span_boldnotice("[str_val]")
|
|
|
|
/datum/config_entry/flag/guest_jobban
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/usewhitelist
|
|
|
|
/// force disconnect for inactive players in an amount of minutes
|
|
/datum/config_entry/number/kick_inactive
|
|
default = 0
|
|
|
|
/datum/config_entry/flag/show_mods
|
|
|
|
/datum/config_entry/flag/show_devs
|
|
|
|
/datum/config_entry/flag/show_mentors
|
|
|
|
/datum/config_entry/flag/show_event_managers
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/flag/mods_can_tempban
|
|
|
|
/datum/config_entry/flag/mods_can_job_tempban
|
|
|
|
/datum/config_entry/number/mod_tempban_max
|
|
default = 1440
|
|
|
|
/datum/config_entry/number/mod_job_tempban_max
|
|
default = 1440
|
|
|
|
/datum/config_entry/flag/load_jobs_from_txt
|
|
|
|
/datum/config_entry/flag/ToRban
|
|
|
|
/// enables automuting/spam prevention
|
|
/datum/config_entry/flag/automute_on
|
|
|
|
/// determines whether jobs use minimal access or expanded access.
|
|
/datum/config_entry/flag/jobs_have_minimal_access
|
|
|
|
/// Allows ghosts to write in blood in cult rounds...
|
|
/datum/config_entry/flag/cult_ghostwriter
|
|
default = TRUE
|
|
|
|
/// ...so long as this many cultists are active.
|
|
/datum/config_entry/number/cult_ghostwriter_req_cultists
|
|
default = 10
|
|
min_val = 0
|
|
|
|
/// The number of available character slots
|
|
/datum/config_entry/number/character_slots
|
|
default = 10
|
|
min_val = 0
|
|
|
|
/// The number of loadout slots per character
|
|
/datum/config_entry/number/loadout_slots
|
|
default = 3
|
|
min_val = 0
|
|
|
|
/// This many drones can spawn,
|
|
/datum/config_entry/number/max_maint_drones
|
|
default = 5
|
|
min_val = 0
|
|
|
|
/// assuming the admin allow them to.
|
|
/datum/config_entry/flag/allow_drone_spawn
|
|
default = TRUE
|
|
|
|
/// A drone will become available every X ticks since last drone spawn. Default is 2 minutes.
|
|
/datum/config_entry/number/drone_build_time
|
|
default = 1200
|
|
min_val = 0
|
|
|
|
/datum/config_entry/flag/disable_player_mice
|
|
|
|
/// Set to 1 to prevent newly-spawned mice from understanding human speech
|
|
/datum/config_entry/flag/uneducated_mice
|
|
|
|
/datum/config_entry/flag/usealienwhitelist
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/flag/limitalienplayers
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/number/alien_to_human_ratio
|
|
// default = 0.5
|
|
// integer = FALSE
|
|
|
|
/datum/config_entry/flag/allow_extra_antags
|
|
|
|
/datum/config_entry/flag/guests_allowed
|
|
default = FALSE
|
|
|
|
/datum/config_entry/flag/debugparanoid
|
|
|
|
/datum/config_entry/flag/panic_bunker
|
|
|
|
/datum/config_entry/flag/paranoia_logging
|
|
|
|
/datum/config_entry/flag/ip_reputation //Should we query IPs to get scores? Generates HTTP traffic to an API service.
|
|
|
|
/datum/config_entry/string/ipr_email //Left null because you MUST specify one otherwise you're making the internet worse.
|
|
default = null
|
|
|
|
/datum/config_entry/flag/ipr_block_bad_ips //Should we block anyone who meets the minimum score below? Otherwise we just log it (If paranoia logging is on, visibly in chat).
|
|
|
|
/datum/config_entry/number/ipr_bad_score //The API returns a value between 0 and 1 (inclusive), with 1 being 'definitely VPN/Tor/Proxy'. Values equal/above this var are considered bad.
|
|
default = 1
|
|
integer = FALSE
|
|
|
|
/datum/config_entry/flag/ipr_allow_existing //Should we allow known players to use VPNs/Proxies? If the player is already banned then obviously they still can't connect.
|
|
|
|
/datum/config_entry/number/ipr_minimum_age //How many days before a player is considered 'fine' for the purposes of allowing them to use VPNs.
|
|
default = 5
|
|
|
|
/datum/config_entry/string/serverurl
|
|
|
|
/datum/config_entry/string/server
|
|
|
|
/datum/config_entry/string/banappeals
|
|
|
|
/datum/config_entry/string/wikiurl
|
|
|
|
/datum/config_entry/string/wikisearchurl
|
|
|
|
/datum/config_entry/string/forumurl
|
|
|
|
/datum/config_entry/string/rulesurl
|
|
|
|
/datum/config_entry/string/githuburl
|
|
|
|
/datum/config_entry/string/discordurl
|
|
|
|
/datum/config_entry/string/mapurl
|
|
|
|
/datum/config_entry/string/patreonurl
|
|
|
|
/datum/config_entry/flag/forbid_singulo_possession
|
|
|
|
/datum/config_entry/flag/organs_decay
|
|
|
|
/datum/config_entry/number/default_brain_health
|
|
default = 400
|
|
min_val = 1
|
|
|
|
/datum/config_entry/flag/allow_headgibs
|
|
|
|
/// Paincrit knocks someone down once they hit 60 shock_stage, so by default make it so that close to 100 additional damage needs to be dealt,
|
|
/// so that it's similar to HALLOSS. Lowered it a bit since hitting paincrit takes much longer to wear off than a halloss stun.
|
|
/datum/config_entry/number/organ_damage_spillover_multiplier
|
|
default = 0.5
|
|
integer = FALSE
|
|
|
|
/datum/config_entry/flag/welder_vision
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/generate_map
|
|
|
|
/datum/config_entry/flag/no_click_cooldown
|
|
|
|
/datum/config_entry/flag/admin_legacy_system //Defines whether the server uses the legacy admin system with admins.txt or the SQL system
|
|
protection = CONFIG_ENTRY_LOCKED
|
|
|
|
/datum/config_entry/flag/protect_legacy_admins //Stops any admins loaded by the legacy system from having their rank edited by the permissions panel
|
|
protection = CONFIG_ENTRY_LOCKED
|
|
|
|
/datum/config_entry/flag/protect_legacy_ranks //Stops any ranks loaded by the legacy system from having their flags edited by the permissions panel
|
|
protection = CONFIG_ENTRY_LOCKED
|
|
|
|
/datum/config_entry/flag/load_legacy_ranks_only //Loads admin ranks only from legacy admin_ranks.txt, while enabled ranks are mirrored to the database
|
|
protection = CONFIG_ENTRY_LOCKED
|
|
|
|
/// Defines whether the server uses the legacy banning system with the files in /data or the SQL system. Config option in config.txt
|
|
/datum/config_entry/flag/ban_legacy_system
|
|
|
|
/// Do jobs use account age restrictions? --requires database
|
|
/datum/config_entry/flag/use_age_restriction_for_jobs
|
|
|
|
/// Do antags use account age restrictions? --requires database
|
|
/datum/config_entry/flag/use_age_restriction_for_antags
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/number/simultaneous_pm_warning_timeout
|
|
// default = 100
|
|
|
|
/// Defines whether the server uses recursive or circular explosions.
|
|
/datum/config_entry/flag/use_recursive_explosions
|
|
|
|
/// Multiplier for how much weaker explosions are on neighboring z levels.
|
|
/datum/config_entry/number/multi_z_explosion_scalar
|
|
default = 0.5
|
|
integer = FALSE
|
|
|
|
/// Do assistants get maint access?
|
|
/datum/config_entry/flag/assistant_maint
|
|
|
|
/// How long the gateway takes before it activates. Default is half an hour.
|
|
/datum/config_entry/number/gateway_delay
|
|
default = 18000
|
|
|
|
/datum/config_entry/flag/ghost_interaction
|
|
|
|
/datum/config_entry/string/comms_password
|
|
protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN
|
|
|
|
/datum/config_entry/flag/enter_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/use_irc_bot
|
|
|
|
/datum/config_entry/flag/use_node_bot
|
|
|
|
/datum/config_entry/number/irc_bot_port
|
|
default = 0
|
|
min_val = 0
|
|
max_val = 65535
|
|
protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN
|
|
|
|
/datum/config_entry/string/irc_bot_host
|
|
protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN
|
|
|
|
/// whether the IRC bot in use is a Bot32 (or similar) instance; Bot32 uses world.Export() instead of nudge.py/libnudge
|
|
/datum/config_entry/flag/irc_bot_export
|
|
|
|
/datum/config_entry/string/main_irc
|
|
|
|
/datum/config_entry/string/admin_irc
|
|
|
|
/// Path to the python executable.
|
|
/// Defaults to "python" on windows and "/usr/bin/env python2" on unix
|
|
/datum/config_entry/string/python_path
|
|
|
|
/// Use the C library nudge instead of the python nudge.
|
|
/datum/config_entry/flag/use_lib_nudge
|
|
|
|
// FIXME: Unused. Deprecated?
|
|
///datum/config_entry/flag/use_overmap
|
|
|
|
// Engines to choose from. Blank means fully random.
|
|
/datum/config_entry/str_list/engine_map
|
|
default = list("Supermatter Engine", "Edison's Bane")
|
|
|
|
/// Event settings
|
|
/datum/config_entry/number/expected_round_length
|
|
default = 3 * 60 * 60 * 10 // 3 hours
|
|
|
|
/// If the first delay has a custom start time
|
|
/// No custom time, no custom time, between 80 to 100 minutes respectively.
|
|
/datum/config_entry/keyed_list/event_first_run_mundane
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
|
|
/datum/config_entry/keyed_list/event_first_run_moderate
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
|
|
/datum/config_entry/keyed_list/event_first_run_major
|
|
key_mode = KEY_MODE_TEXT
|
|
value_mode = VALUE_MODE_NUM
|
|
default = list("lower" = 80, "upper" = 100)
|
|
|
|
/// The lowest delay until next event
|
|
/// 10, 30, 50 minutes respectively
|
|
/datum/config_entry/number_list/event_delay_lower
|
|
default = list(10, 30, 50)
|
|
|
|
/// The upper delay until next event
|
|
/// 15, 45, 70 minutes respectively
|
|
/datum/config_entry/number_list/event_delay_upper
|
|
default = list(15, 45, 70)
|
|
|
|
/datum/config_entry/flag/aliens_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/ninjas_allowed
|
|
|
|
/datum/config_entry/flag/abandon_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/ooc_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/looc_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/dooc_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/dsay_allowed
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/persistence_disabled
|
|
|
|
/datum/config_entry/flag/persistence_ignore_mapload
|
|
|
|
/datum/config_entry/flag/allow_byond_links
|
|
default = TRUE
|
|
/datum/config_entry/flag/allow_discord_links
|
|
default = TRUE
|
|
|
|
/datum/config_entry/flag/allow_url_links
|
|
default = TRUE // honestly if I were you i'd leave this one off, only use in dire situations
|
|
|
|
/datum/config_entry/flag/starlight // Whether space turfs have ambient light or not
|
|
|
|
// FIXME: Unused
|
|
///datum/config_entry/str_list/ert_species
|
|
// default = list(SPECIES_HUMAN)
|
|
|
|
/datum/config_entry/string/law_zero
|
|
default = "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4'ALL LAWS OVERRIDDEN#*?&110010"
|
|
|
|
/datum/config_entry/flag/aggressive_changelog
|
|
|
|
/// Default language prefixes
|
|
/// Only single character keys are supported. If unset, defaults to , # and -
|
|
/datum/config_entry/str_list/language_prefixes
|
|
default = list(",", "#", "-")
|
|
|
|
// 0:1 subtraction:division for computing effective radiation on a turf
|
|
/// 0 / RAD_RESIST_CALC_DIV = Each turf absorbs some fraction of the working radiation level
|
|
/// 1 / RAD_RESIST_CALC_SUB = Each turf absorbs a fixed amount of radiation
|
|
/datum/config_entry/flag/radiation_resistance_calc_mode
|
|
default = RAD_RESIST_CALC_DIV // CHOMPEdit
|
|
|
|
/datum/config_entry/flag/radiation_resistance_calc_mode/ValidateAndSet(str_val)
|
|
if(!VASProcCallGuard(str_val))
|
|
return FALSE
|
|
var/val_as_num = text2num(str_val)
|
|
if(val_as_num in list(RAD_RESIST_CALC_DIV, RAD_RESIST_CALC_SUB))
|
|
config_entry_value = val_as_num
|
|
return TRUE
|
|
return FALSE
|
|
|
|
///How much radiation is reduced by each tick
|
|
/datum/config_entry/number/radiation_decay_rate
|
|
default = 1
|
|
integer = FALSE
|
|
|
|
/datum/config_entry/number/radiation_resistance_multiplier
|
|
default = 8.5 //VOREstation edit
|
|
integer = FALSE
|
|
|
|
/datum/config_entry/number/radiation_material_resistance_divisor
|
|
default = 1
|
|
min_val = 0.1
|
|
integer = FALSE
|
|
|
|
///If the radiation level for a turf would be below this, ignore it.
|
|
/datum/config_entry/number/radiation_lower_limit
|
|
default = 0.35
|
|
integer = FALSE
|
|
|
|
/// If true, submaps loaded automatically can be rotated.
|
|
/datum/config_entry/flag/random_submap_orientation
|
|
|
|
/// If true, specifically mapped in solar control computers will set themselves up when the round starts.
|
|
/datum/config_entry/flag/autostart_solars
|
|
|
|
/// New shiny SQLite stuff.
|
|
/// The basics.
|
|
/datum/config_entry/flag/sqlite_enabled // If it should even be active. SQLite can be ran alongside other databases but you should not have them do the same functions.
|
|
|
|
/// In-Game Feedback.
|
|
/datum/config_entry/flag/sqlite_feedback // Feedback cannot be submitted if this is false.
|
|
|
|
/// A list of 'topics' that feedback can be catagorized under by the submitter.
|
|
/datum/config_entry/str_list/sqlite_feedback_topics
|
|
default = list("General")
|
|
|
|
/// If true, feedback submitted can have its author name be obfuscated. This is not 100% foolproof (it's md5 ffs) but can stop casual snooping.
|
|
/datum/config_entry/flag/sqlite_feedback_privacy
|
|
|
|
/// How long one must wait, in days, to submit another feedback form. Used to help prevent spam, especially with privacy active. 0 = No limit.
|
|
/datum/config_entry/number/sqlite_feedback_cooldown
|
|
default = 0
|
|
min_val = 0
|
|
|
|
/// Used to block new people from giving feedback. This metric is very bad but it can help slow down spammers.
|
|
/datum/config_entry/number/sqlite_feedback_min_age
|
|
default = 0
|
|
min_val = 0
|
|
|
|
/// How long until someone can't be defibbed anymore, in minutes.
|
|
/datum/config_entry/number/defib_timer
|
|
default = 10
|
|
min_val = 0
|
|
|
|
/// How long until someone will get brain damage when defibbed, in minutes. The closer to the end of the above timer, the more brain damage they get.
|
|
/datum/config_entry/number/defib_braindamage_timer
|
|
default = 2
|
|
min_val = 0
|
|
|
|
/// disables the annoying "You have already logged in this round, disconnect or be banned" popup for multikeying, because it annoys the shit out of me when testing.
|
|
/datum/config_entry/flag/disable_cid_warn_popup
|
|
|
|
/// whether or not to use the nightshift subsystem to perform lighting changes
|
|
/datum/config_entry/flag/enable_night_shifts
|
|
|
|
/// How strictly the loadout enforces object species whitelists
|
|
/// 0 / LOADOUT_WHITELIST_OFF
|
|
/// 1 / LOADOUT_WHITELIST_LAX
|
|
/// 2 / LOADOUT_WHITELIST_STRICT
|
|
/datum/config_entry/flag/loadout_whitelist
|
|
default = LOADOUT_WHITELIST_LAX
|
|
|
|
/datum/config_entry/flag/loadout_whitelist/ValidateAndSet(str_val)
|
|
if(!VASProcCallGuard(str_val))
|
|
return FALSE
|
|
var/val_as_num = text2num(str_val)
|
|
if(val_as_num in list(LOADOUT_WHITELIST_OFF, LOADOUT_WHITELIST_LAX, LOADOUT_WHITELIST_STRICT))
|
|
config_entry_value = val_as_num
|
|
return TRUE
|
|
return FALSE
|
|
|
|
/datum/config_entry/flag/disable_webhook_embeds
|
|
|
|
/// Default is config/jukebox.json
|
|
/// The default is set in the config example.
|
|
/// If it gets set here it will be added twice into the configuration variable!
|
|
/datum/config_entry/str_list/jukebox_track_files
|
|
|
|
/datum/config_entry/number/suggested_byond_version
|
|
default = null
|
|
|
|
/datum/config_entry/number/suggested_byond_build
|
|
default = null
|
|
|
|
/datum/config_entry/string/invoke_youtubedl
|
|
default = null
|
|
|
|
/datum/config_entry/str_list/motd
|
|
|
|
/datum/config_entry/flag/config_errors_runtime
|
|
default = FALSE
|
|
|
|
/// Controls whether robots may recolour their modules once/module reset by giving them the recolour module verb
|
|
/// Admins may manually give them the verb even if disabled
|
|
/datum/config_entry/flag/allow_robot_recolor
|
|
|
|
/// Controls whether simple mobs may recolour themselves once/spawn by giving them the recolour verb
|
|
/// Admins may manually give them the verb even if disabled
|
|
/datum/config_entry/flag/allow_simple_mob_recolor
|
|
|
|
/// Chatlogs are now saved by calling the chatlogging library instead of letting the clients handle it
|
|
/// REQUIRES an database
|
|
/datum/config_entry/flag/chatlog_database_backend
|
|
default = FALSE
|
|
|
|
/// The endpoint for the chat to fetch the chatlogs from (for example, the last 2500 messages on init for the history)
|
|
/// REQUIRES chatlog_database_backend to be enabled
|
|
/datum/config_entry/string/chatlog_database_api_endpoint
|
|
|
|
/datum/config_entry/flag/forbid_admin_profiling
|