Gameplay Config Setup
The config_gamepaly.txt file (often simply referred to as the Gameplay Config file) is used to set up many of the core functions of an SCP:SL server.
Main server settings
Main server settings are settings that often need to be changed to allow a dedicated server to be connected to, as well as for Server Verification.
When setting up a server with the intent of having it sit on the Verified Server List, please be certain to fill out the “Server_name”, “sderverinfo_pastebin_id”
| Config Field |
Description |
Type |
Default Value |
| server_name |
Server name displayed in the server list. |
string |
My Server Name |
| player_list_title |
Server name displayed only in the player list. |
string |
default (Default makes it use the server_name value for both) |
| player_list_title_rate |
The amount of time (in seconds) between refreshing the title of the player list |
float |
5 |
| serverinfo_pastebin_id |
Set pastebin id used for the info tab on the server browser When creating a new file on pastern, the “ID” is contained in your browser’s web address bar. See this page for more info |
string |
7wV681fT |
| server_ip |
IP Address of the server used for joining from the server browser.Note: When set to "auto" server will try to get its own public IP address. |
string |
auto |
| max_players |
Max amount of players that can be connected to the server at once. |
int |
20 |
| server_tickrate |
How many frames per second |
short |
60 |
| contact_email |
Contact email address for the server owner or administration. |
|
N/ANote: this field must be manually added to the server config. |
| port_queue |
Which ports will be used for connecting through the server. |
|
- 7777- 7778- 7779- 7780- 7781- 7782- 7783- 7784 |
| lobby_waiting_time |
The waiting time before the game starts |
|
20 |
| use_reserved_slots |
Enable the reserved slots or not |
|
true |
| ipv4_bind_ip |
Set the IPV4 of the server |
|
0.0.0.0 |
| ipv6_bind_ip |
Set the IPV6 of the server |
|
:: |
Gameplay settings
Settings which change the gameplay of SCP: SL in some way.
GeneralMisc
Change warhead and intercom timers, friendly fire, etc.
| Config Field |
Description |
Type |
Default Value |
| afk_time |
How many seconds someone can be AFK in their spawn location before being kicked |
int |
90 |
| constantly_check_afk |
|
bool |
False |
| intercom_cooldown |
Intercom cooldown after use in seconds. |
int |
120 |
| intercom_max_speech_time |
Amount of time a player can use the intercom in seconds. |
int |
20 |
| auto_round_restart_time |
Length of time after the round has ended for the round to restart in seconds. |
int |
10
allow_playing_as_tutorial
Allows players to play as the tutorial class.
bool
true
no_holidays
Disable the holidays and other generation event (like Halloween)
bool
false
gban_ban_ip
This will automatically ban IP of players on the server that receives a Global Ban by a Global Moderator (defaults to false)
bool
default
custom_gamemode_server
if your server is a Custom Gamemode Server according to the definition that can be found in the Verified Server Rules
bool
false
server_access_restriction
if you use plugin or modification that restricts access to the server (other than whitelist, eg. password).This is only to mark the server on the public list as using access restriction
bool
false
custom_whitelist
if you use plugin or modification that provides custom whitelist.This is only to mark the server on the public list as using a whitelist
bool
false
Gameplay
allow_disarmed_interaction
Allowed handcuffed player to interact with door or elevator
10false
sinkhole_slow_amount
How much the sinkhole makes the player slower
30
sinkhole_spawn_chance
The spawn chance to spawn a sinkhole (0 to disable)
0
914_mode
Sets how 914 operates on players(Options: DroppedAndPlayerTeleport, Inventory, DroppedAndInventory, Held, DroppedAndHeld, Dropped)
DroppedAndPlayerTeleport
keep_items_after_escaping
Sets when a player escapes if the old items fall on the ground
true
096_destroy_locked_doors
Sets if SCP 096 can destroy locked doors
true
friendly_fire
Enable or disable friendly fire for humans.
false
friendly_fire_multiplier
1
warhead_tminus_start_duration
Countdown timer until the warhead detonates in seconds. (Minimum 70, maximum 120)
90
human_grenade_multiplier
Grenade damage multiplier for humans.
0.7
scp_grenade_multiplier
Grenade damage multiplier for SCPs.
1
lock_gates_on_countdown
Forces the entrance gates to be open when the warhead is counting down.
true
isolate_zones_on_countdown
Locks all checkpoints when the warhead is counting down.
false
open_doors_on_countdown
Forces all normal doors and checkpoints to be open when the warhead is counting down.
true
allow_playing_as_tutorial
Allows players to play as the tutorial class.
true
914_mode
Sets how 914 operates on players(Options: DroppedAndPlayerTeleport, Inventory, DroppedAndInventory, Held, DroppedAndHeld, Dropped)
DroppedAndPlayerTeleport
keep_items_after_escaping
Sets when a player escapes if the old items fall on the ground
true
096_destroy_locked_doors
Sets if SCP 096 can destroy locked doors
true
no_holidays
Disable the holidays and other generation event (like Halloween)
false
allow_disarmed_interaction
Allowed handcuffed player to interact with door or elevator
false
sinkhole_slow_amount
How much the sinkhole makes the player slower
30
sinkhole_spawn_chance
The spawn chance to spawn a sinkhole (0 to disable)
0
Spawning/RNG
Change spawn chances, patterns, etc.
| Config Field |
Description |
Type |
Default Value |
| minimum_MTF_time_to_spawn |
Minimum time it can take from the last wave for a new one to spawn. |
|
280 |
| maximum_MTF_time_to_spawn |
Maximum time it can take from the last wave for a new one to spawn. |
|
350 |
| maximum_MTF_respawn_amount |
The amount of player who can respawn. |
|
15 |
| maximum_CI_respawn_amount |
The amount of player who can respawn. |
|
15 |
| priority_mtf_respawn |
Should MTF be a top priority for a respawn team? |
|
true |
| use_crypto_rng |
Enables better randomness for generation by using cryptograhic random number generator (RNG).Note: Cryptograhic RNG uses more CPU to generate numbers. |
|
false |
| ci_respawn_percent |
Chance for Chaos Insurgents to spawn in a wave. |
|
35 |
| ci_on_start_percent |
Chance for Chaos Insurgents to spawn at round start (Replaces Facility Guards). |
|
10 |
| team_respawn_queue |
Pattern in which the classes spawn at round start. |
|
4014314031441404134044434414 |
| server_forced_class |
Forced class on round start. |
|
-1 (-1 = random) |
| map_seed |
Force single map seed for all rounds. |
|
-1 (-1 = random) |
Spawn Tickets
| Config Field |
Description |
Type |
Default Value |
| respawn_tickets_mtf_initial_count |
The starting count for NTF Respawn Tickets |
|
24 |
| respawn_tickets_ci_initial_count |
The starting count for Chaos respawn Tickets |
|
14 |
| respawn_tickets_mtf_classd_cuffed_escape_count |
The amount of tickets MTF get for letting a Disarmed Class D escape |
|
1 |
| respawn_tickets_mtf_scientist_escape_count |
The amount of tickets MTF get for letting a Scientist Escape |
|
1 |
| respawn_tickets_mtf_scp_hurt_escape_count |
The amount of tickets MTF get for damaging an SCP |
|
1 |
| respawn_tickets_ci_classd_escape_count |
The amount of tickets CI get for letting a Class D Escape |
|
1 |
| respawn_tickets_ci_scientist_cuffed_escape_count |
The amount of tickets CI get for letting a Disarmed Scientist escape |
|
2 |
| respawn_tickets_ci_scientist_died_count |
The amount of tickets CI get for killing a Scientist |
|
1 |
| respawn_tickets_ci_scp_item_count |
The amount of tickets CI get when a Class-D or Chaos uses an SCP item |
|
2 |
| respawn_tickets_mtf_scp_hurt_interva |
The percentage of health an SCP must lose to trigger the 'scp_hurt' tickets. |
|
25 |
Stamina
| Config Field |
Description |
Type |
Default Value |
| stamina_balance_use |
The amount of stamina that is drained from running. |
|
0.05 |
| stamina_balance_immunity |
The time (in seconds) that newly-spawned players can sprint without consuming stamina. |
|
3 |
| stamina_balance_regen_cd |
The seconds that must pass before stamina starts regenerating after the player stops sprinting. |
|
1 |
| stamina_balance_regen_speed |
How fast the stamina regenerates multiplier. |
|
1 |
| stamina_balance_walk_speed |
Multiplier for human walk speed. |
|
1.2 |
| stamina_balance_sprint_speed |
Multiplier for human sprint speed. |
|
1.05 |
Pocket Dimension
Change exit counts, exit rooms, etc.
| Config Field |
Description |
Type |
Default Value |
| pd_exit_count |
Amount of exits in the pocket dimension. |
|
2 |
| pd_random_exit_rids |
Rooms in which a player can appear once they escape. |
|
|
| pd_random_exit_rids_after_decontamination |
Rooms in which a player can appear once they escape after decontamination. |
|
|
| pd_refresh_exit |
Randomize exits in pocket dimension once a player escapes. |
|
false |
Spawn Protection
Change spawn protection time and teams affected.
Config Field
Description
Type
Default Value
spawn_protect_disable
Disable spawn protection.
true
spawn_protect_time
Spawn protection length in seconds.
30
spawn_protect_team
Spawn protection enabled for selected team(s).
1, 2 (MTF, Chaos Insurgents)
spawn_protect_allow_dmg
Allow spawn protected players to deal damage.
true
Grenade Chain Reactions
Change how many grenades can be activated by other grenades.
| Config Field |
Description |
Type |
Default Value |
| grenade_chain_limit |
Maximum amount of greandes that can be activated by single grenade. |
|
10 (-1 = unlimited |
| grenade_chain_length_limit |
How many grenades can be chained in a row. |
|
4 (-1 = unlimited |
Spawn Protection
Config Field
Description
Type
Default Value
spawn_protect_disable
Disable spawn protection.
bool
true
spawn_protect_time
Spawn protection length in seconds.
int
30
spawn_protect_team
Spawn protection enabled for selected team(s).
1, 2 (MTF, Chaos Insurgents)
spawn_protect_allow_dmg
Allow spawn protected players to deal damage.
bool
true
FriendlyAuto FireEvent Broadcast Settiings
Config Field
Description
Type
Default Value
auto_warhead_broadcast_enabled
Enable broadcast for auto warhead
bool
false
auto_warhead_broadcast_message
Message for auto broadcast
string
The Alpha Warhead is being detonated
auto_warhead_broadcast_time
Broadcast time
int
10
auto_warhead_detonate_broadcast
End of detonation broadcast
string
The Alpha Warhead has been detonated now
auto_warhead_detonate_broadcast_time
Broadcast time
int
10
auto_decon_broadcast_enabled
enable broadcast
bool
false
auto_decon_broadcast_message
Decontamination broadcast
string
Light Containment Zone is now decontaminated
auto_decon_broadcast_time
Broadcast time
int
10
Security & Anticheat
ChangesRecommended theto friendlynot firebe settingschanged onfrom thewhat server.
it is by default.
Type
Default Value
online_mode
Enables connection to central servers
bool
true
ip_banning
Enables IP banning.
bool
true
enable_whitelist
Allows only whitelisted users to join.
bool
false
forward_ports
Enables automatic port forwarding.Note: router must have enabled UPnP support to make this work.
bool
true
enable_query
Enables query protocol (TCP port).
bool
false
query_port_shift
Determines shift between game port and query port.
int
0
query_use_IPv6
Enables query over IPv6 protocol.
bool
true
administrator_query_password
Sets administrator password for query procol.
string
none
connections_delay_time
Time to send to clients for how long they should wait on the round restart screen before attempting to connect to the server again
int
5
enable_sync_command_binding
bool
false
ratelimit_kick
Kicks user after exceeding commands rate limits (otherwise just disallows command execution).
bool
true
same_account_joining
Allow the same account to join more than once?
bool
false
anticheat_console_output
output anticheat stuff to console
bool
false
enable_fast_round_restart
restart the round fast (can be buggy)
bool
false
fast_round_restart_delay
double
3.2
preauth_challenge
bool
true
preauth_challenge_mode
Reply - prevents from flooding server with preauth requests from spoofed IP addressesMD5 or SHA1 - prevents from flooding with preauth requests from legitimate IP addresses as well. Requires additional time to join the server.
string
reply
preauth_challenge_base_length
int
10
preauth_challenge_time_window
int
12
preauth_challenge_clean_period
int
4
preauth_challenge_secret_length
Only for MD5 and SHA1 challenges (higher value = longer time required to join the server)
int
2
enforce_same_ip
This enforces the player to be using same IP address to connect to the game and authenticate. Enabling this blocks proxies. Not enforced if player joined from IPv4 and authenticated from IPv6 or viceversa.
bool
true
no_enforcement_for_local_ip_addresses
bool
true
enforce_same_asn
This enforces that the IP address used to connect to the game and authenticate must be assigned to the same Internet Service Provider (ISP).Works only on servers on the public list. This is less restrictive that "enforce_same_ip" and blocks most of the proxies.
bool
true
Connections ratelimiting
Ratelimit time windows define how often user with the same IP/UserID can initialize new connection (once per X seconds).
Config Field
Description
Type
Default Value
enable_ip_ratelimit
bool
true
enable_userid_ratelimit
bool
true
ip_ratelimit_window
Time between connections per ip
int
3
userid_ratelimit_window
Time between connections per userid
int
5
Item & Ammo limits
Item category limits -
Values of 0 are NOT unlimited and will prevent item pickups of that type entirely!
The inventory can hold a max of 8 items, so a limit of 8 is effectively unlimited.
Config Field
Description
Type
Default Value
limit_category_grenade
int
default
limit_category_keycard
int
default
limit_category_medical
int
default
limit_category_scpitem
int
default
limit_category_firearm
int
default
Ammo type limits
Values from 1 to 65k.
Config Field
Description
Type
Default Value
limit_ammo12ga
int
default
limit_ammo556x45
int
default
limit_ammo44cal
int
default
limit_ammo762x39
int
default
limit_ammo9x19
int
default
Friendly Fire
Config Field
Description
Type
Default Value
ff_detector_global_broadcast_seconds
Specifies the broadcast time length in seconds in which the broadcast is visible.
defaultint
5
ff_detector_global_adminchat_seconds
Specifies the broadcast time in seconds in which the broadcast is visible in adminchat.
defaultint
6
ff_detector_classD_can_damage_classD
Enables detecting damage dealt to D-class by other D-class
defaultbool
false
ff_detector_webhook_url
Webhook URL to send to when action is taken
string
none
ff_detector_round_enabled
Detects the klls and damage done in a round.
defaultbool
false
ff_detector_round_kills
Detects number of kills in a round.
defaultint
6
ff_detector_round_damage
Detects number of damage dealt in a round.
defaultint
500
ff_detector_round_action
Enables action taking for friendly fire dealt in a round.
defaultstring
ban
ff_detector_round_ban_time
If action is set to ban, set the ban time.
defaultstring??
24h
ff_detector_round_bankick_reason
If action is set to ban, set the bankick reason.
defaultstring
You have been automatically banned for teamkilling.
ff_detector_round_kill_reason
If action is set to ban, set the kill reason.
defaultstring
You have been automatically killed for teamkilling.
ff_detector_round_adminchat_enable
Enables adminchat broadcast.
defaultbool
false
ff_detector_round_adminchat_message
Shows message on adminchat. %nick gets replaced with teamkiller name.
defaultstring
%nick has been banned for teamkilling (round detector).
ff_detector_round_broadcast_enable
Enables regular broadcast.
defaultbool
true
ff_detector_round_broadcast_message
Shows message on the regualr broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been automatically banned for teamkilling.
ff_detector_round_webhook_report
Should it be reported using the webhook specified in ff_detector_webhook_url.
defaultbool
true
ff_detector_life_enabled
Detects damage dealt since last death of player.
defaultbool
false
ff_detector_life_kills
Detects kills by players since last death.
defaultint
4
ff_detector_life_damage
Detects damage dealt by player since last death.
defaultint
300
ff_detector_life_action
Enables action taking for friendly fire dealt since last death.
defaultstring
ban
ff_detector_life_ban_time
If action is set to ban, set the ban time.
defaultint
24h
ff_detector_life_bankick_reason
If action is set to ban, set the bankick reason.
defaultstring
You have been automatically banned for teamkilling.
ff_detector_life_kill_reason
If action is set to ban, set the kill reason.
defaultstring
You have been automatically killed for teamkilling.
ff_detector_life_adminchat_enable
Enables adminchat broadcast.
defaultbool
false
ff_detector_life_adminchat_message
Shows message on adminchat. %nick gets replaced with teamkiller name.
defaultstring
%nick has been banned for teamkilling (life detector).
ff_detector_life_broadcast_enable
Enables regular broadcast.
defaultbool
true
ff_detector_life_broadcast_message
Shows message on the regualr broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been automatically banned for teamkilling.
ff_detector_life_webhook_report
Should it be reported using the webhook specified in ff_detector_webhook_url.
defaultbool
true
ff_detector_window_enabled
Detects damage dealt by players in a specified time window.
defaultbool
false
ff_detector_window_seconds
Sets the specified time window.
defaultint
180
ff_detector_window_kills
Detects number of kills by player during specified time window.
defaultint
3
ff_detector_window_damage
Detects damage dealt by player during specified time window.
defaultint
250
ff_detector_window_action
Enables action taking for friendly fire dealt during specified time window.
defaultstring
ban
ff_detector_window_ban_time
If action is set to ban, set the ban time.
defaultint
16h
ff_detector_window_bankick_reason
If action is set to ban, set the bankick reason.
defaultstring
You have been automatically banned for teamkilling.
ff_detector_window_kill_reason
If action is set to ban, set the kill reason.
defaultstring
You have been automatically killed for teamkilling.
ff_detector_window_adminchat_enable
Enables adminchat broadcast.
defaultbool
false
ff_detector_window_adminchat_message
Shows message on the adminchat broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been banned for teamkilling (window detector).
ff_detector_window_broadcast_enable
Enables regular broadcast.
defaultbool
true
ff_detector_window_broadcast_message
Shows message on the regualr broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been automatically banned for teamkilling.
ff_detector_window_webhook_report
Should it be reported using the webhook specified in ff_detector_webhook_url.
defaultbool
true
ff_detector_spawn_enabled: defaultff_detector_spawn_enabled
Detects team killing actions since the player's last spawn for a specified amount of time.
defaultbool
true
ff_detector_spawn_window_seconds
Sets the specified amount of time since player's spawn.
defaultint
120
ff_detector_spawn_kills
Detects number of kills by player during specified time window since spawn.
defaultint
2
ff_detector_spawn_damage
Detects damage dealt by player during specified time window since spawn.
defaultint
180
ff_detector_spawn_action
Enables action taking for friendly fire dealt during specified time window since spawn.
defaultstring
ban
ff_detector_spawn_ban_time
If action is set to ban, set the ban time.
defaultstring
48h
ff_detector_spawn_bankick_reason
If action is set to ban, set the bankick reason.
defaultstring
You have been automatically banned for teamkilling.
ff_detector_spawn_kill_reason
If action is set to ban, set the kill time.
defaultstring
You have been automatically killed for teamkilling.
ff_detector_spawn_adminchat_enable
Enables adminchat broadcast.
defaultbool
false
ff_detector_spawn_adminchat_message
Shows message on the adminchat broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been banned for teamkilling (spawn detector).
ff_detector_spawn_broadcast_enable
Enables regular broadcast.
defaultbool
true
ff_detector_spawn_broadcast_message
Shows message on the regular broadcast. %nick gets replaced with teamkiller name.
defaultstring
%nick has been automatically banned for teamkilling.
ff_detector_spawn_webhook_report
Should it be reported using the webhook specified in ff_detector_webhook_url.
defaultbool
true
SecurityPort & Anticheatqueue
Change activated anticheat protections, port querys, etc.
Recommended to not be changed from what it is by default.
| Config Field |
Description |
Type |
Default Value |
online_modeport_queue |
Enablesport_queue connectionis tofor centralNONDEDICATED servers.Note:SERVERS disablingONLY |
this will disable:
- 7777 - 7778 - 7779 - 7780 - 7781 - 7782 - 7783 - 7784
Nickname Filtering with Regex
Config Field
Description
Type
Default Value
nickname_filter
list
default
• UserID based bans, reserved slots, whitelist and RA authenticationnickname_filter_replacement
• Server visiblity on server browser
true
ip_banning
Enables IP banning.Note: disable this if you are using eg. proxy, firewall or Anti DDoS system that changes IP addresses from players to own.
true
enable_whitelist
Allows only whitelisted users to join.
false
hide_from_public_list
Hides server from server browser.
false
forward_ports
Enables automatic port forwarding.Note: router must have enabled UPnP support to make this work.
true
enable_query
Enables query protocol (TCP port).
false
query_port_shift
Determines shift between game port and query port.
0
query_use_IPv6
Enables query over IPv6 protocol.
true
administrator_query_password
Sets administrator password for query procol.
none
enable_sync_command_binding
N/A
false
anti_player_wallhack
N/Alist
default
noclip_protection_output
Enables noclip protection logging.
false
speedhack_protection_output
Enables speedhack protection logging.
false
ratelimit_kick
Kicks user after exceeding commands rate limits (otherwise just disallows command execution).
true
Administration Broadcast
Change broadcasts for kicks and bans, their duration and message.
| Config Field |
Description |
Type |
Default Value |
| broadcast_kicks |
Enable broadcasts for player kicks. |
bool |
false |
| broadcast_kick_text |
Text that is displayed when a player gets kicked. |
string |
%nick% has been kicked from this server. |
| broadcast_kick_duration |
Broadcast message duration in seconds. |
int |
5 |
| broadcast_bans |
Enable broadcasts for player bans. |
bool |
true |
| broadcast_ban_text |
Text that is displayed when a player gets banned. |
string |
%nick% has been banned from this server. |
| broadcast_ban_duration |
Broadcast message duration in seconds. |
int |
5
Idle mode options
Config Field
Description
Type
Default Value
idle_mode_enabled
Enable or disable idle mode
bool
false
idle_mode_time
Time in milliseconds until idle mode enables
int
5000
idle_mode_preauth_time
5int
30000
idle_mode_tickrate
int
1
Player Report
Config Field
Description
Type
Default Value
report_send_using_discord_webhook
Send report using webhooks
bool
false
report_discord_webhook_url
Enter the discord channel webhook URL here
string
PleaseSetWebhookUrlHere
report_username
Webhook username
string
Cheater Report
report_avatar_url
Webhook avatar
string
default
report_color
Webhook embed message color
int
14423100
report_server_name
Webhook embed servername field content
string
My SCP:SL Server
report_header
Webhook embed message header
string
Player Report
report_content
Webhook embed messsage content
string
Player has just been reported.
Restart options
Config Field
Description
Type
Default Value
full_restart_rejoin_time
Amount of time after client should rejoin after a full server restart
int
25
restart_after_rounds
Set autorestart of the server after a specified amount of rounds (0 - disabled
int
0
Geoblocking
Block players from certain regions from playing on your server.
| Config Field |
Description |
Type |
Default Value |
| geoblocking_mode |
Changes the mode for geoblocking. |
string |
none |
| geoblocking_ignore_whitelisted |
list of players who bypass geoblocking. |
bool |
No valuetrue |
| geoblocking_whitelist |
country codes to whitelist. |
|
No values- AA - AB - AC |
| geoblocking_blacklist |
country codes to blacklist. |
|
No values- AA - AB - AC |