Skip to content

Roles and permissions in SCP: Secret Laboratory

Make a player an admin, create your own role with a badge and set what each role can do in Remote Admin.

Roles in SCP: Secret Laboratory decide who can use the Remote Admin panel and what they can do in it, such as kicking, banning or giving items. A player with a role also shows its badge, such as ADMIN. You set everything up in one file.

The client panel is available in Polish only, so this article gives its labels in Polish with a translation the first time they appear.

Where roles are

In the Pliki (Files) tab, open the folder .config/SCP Secret Laboratory/config/<port>, where <port> is the server port from the Przegląd (Overview) tab, and click config_remoteadmin.txt. The file has three parts, which this article covers:

  • Members: who has which role,
  • role settings and the Roles list: names, badges and kick power,
  • Permissions: what each role can do.

After every change, click Zapisz plik (Save file) and restart the server, because the file is read at startup.

Giving a player a role

You add a player by their account ID. For a Steam account, that's the SteamID64: a 17-digit number starting with 7656119.

Where to get the SteamID64

The name in the game isn't enough, because many players can share it. Ask the player for their Steam profile link: in Steam, click the account name at the top, choose Profile, right-click an empty part of the page and choose Copy Page URL.

  • If the link looks like https://steamcommunity.com/profiles/76561198000000000, the SteamID64 is the number at the end.
  • If it looks like https://steamcommunity.com/id/steve, the player has set a custom profile name. Paste the link below and the SteamID64 is found for you.

The name shown in the game isn't enough, because many players can share it. Paste the profile link or its end.

The finder also accepts older formats, such as STEAM_0:1:12345 or [U:1:24691], and gives you a ready entry for the Members section.

The entry in the file

In the Members section, replace the sample entries with real ones. Each player is a separate line in the format ID@steam: role:

config_remoteadmin.txt
Members:
 - SomeSteamId64@steam: owner
 - 76561198000000000@steam: owner
 - SomeOtherSteamId64@steam: admin
 - 76561198000000001@steam: admin

For a Discord account, enter ID@discord. To copy the ID, turn on Developer Mode in Discord under Settings → Advanced, then right-click the player and choose Copy User ID. Keep only entries with real IDs and delete the sample ones.

In the game, open the Remote Admin panel with M.

Default roles

The server comes with three roles:

RoleBadgeWhat it can do
ownerSERVER OWNEReverything, including giving roles and changing the server configuration
adminADMINalmost everything except managing roles, such as long bans and giving items
moderatorMODERATORkicks and bans of up to one day, round management, Overwatch

Your own role

The easiest way is the builder: set the name, badge and permissions, and you get the lines to paste into config_remoteadmin.txt. The Like moderator and Like admin buttons tick those roles' permissions and kick power, so you can start from one and untick what you don't want.

Lowercase letters, digits and underscores, such as helper.

An empty field turns the badge off.

kick_power

required_kick_power

Permissions

One per line or comma-separated. Optional.

1. Role settings: add before the #And add them to the roles list line

config_remoteadmin.txt
helper_badge: HELPERhelper_color: silverhelper_cover: truehelper_hidden: falsehelper_kick_power: 0helper_required_kick_power: 1

2. Add at the end of the Roles list

config_remoteadmin.txt
 - helper

3. Replace these lines in the Permissions section

config_remoteadmin.txt
 - KickingAndShortTermBanning: [owner, admin, moderator, helper] - AdminChat: [owner, admin, moderator, helper]

Below is the same thing step by step, using a helper role with the HELPER badge as the example.

Role settings

Below the existing roles, before the #And add them to the roles list line, add the new role's settings. Each line starts with the role name.

config_remoteadmin.txt
helper_badge: HELPER
helper_color: silver
helper_cover: true
helper_hidden: false
helper_kick_power: 0
helper_required_kick_power: 1
  • badge: the badge text. For a role with no badge, set color to none.
  • color: the badge colour, such as red or silver.
  • cover: true makes the server badge cover the player's global badge.
  • hidden: true hides the badge until the player shows it.
  • kick_power: the power for kicking and banning, from 0 to 255.
  • required_kick_power: the power someone needs to kick or ban a player with this role.

A player can kick another only if their kick_power is at least the required_kick_power of the other player's role. This way a moderator can't ban an admin.

Roles list

Add the role name to the Roles list:

config_remoteadmin.txt
Roles:
 - owner
 - admin
 - moderator
 - helper

Role permissions

In the Permissions section, add the role to every permission it should have. Without this, the role has a badge but can't do anything in Remote Admin.

config_remoteadmin.txt
Permissions:
 - KickingAndShortTermBanning: [owner, admin, moderator] 
 - KickingAndShortTermBanning: [owner, admin, moderator, helper] 
 - AdminChat: [owner, admin, moderator] 
 - AdminChat: [owner, admin, moderator, helper] 

Finally, add players with the new role in the Members section, such as 76561198000000002@steam: helper, save the file and restart the server.

Key permissions

The SCP: Secret Laboratory wiki (opens in a new tab) has the full list with descriptions. The ones changed most often are:

PermissionWhat it allows
KickingAndShortTermBanningkicks and short bans
BanningUpToDaybans of up to one day
LongTermBanninglonger bans
ForceclassWithoutRestrictionschanging any player's class
GivingItemsgiving items
RoundEventsstarting and restarting the round
Broadcastingmessages on every player's screen
AdminChatthe staff chat
Noclipflying through walls
SetGroupgiving roles in the game
PermissionsManagementmanaging permissions
ServerConfigschanging the server configuration in game

EXILED plugin permissions

On a server with EXILED, plugins have separate permissions, in the .config/EXILED/Configs/permissions.yml file. Its groups have the same names as the roles in config_remoteadmin.txt, so a player with the admin role gets the admin group's permissions.

permissions.yml
admin:
  inheritance:
    - moderator
  permissions:
    - testplugin.admin
  • permissions: plugin permissions. Their names are in the plugin's description, and .* gives all of them.
  • inheritance: groups whose permissions the role inherits. Here, admin also has everything moderator has.
  • default: true: the group every player without a role gets. In the default file, that's user.

Add your own role, such as helper, as a new group with the same name.

Common problems

A player doesn't have the role after the file change

Restart the server, because the file is read at startup. Also check that the ID has 17 digits and ends with @steam, and that the line starts with a space and a dash like the others.

A role has a badge but can't do anything in Remote Admin

The role isn't added to any permission in the Permissions section. Add it to the permissions it should have.

A moderator can't ban a player

Their kick_power is lower than the required_kick_power of that player's role. Raise the moderator role's kick_power or lower the player role's required_kick_power.