Skip to main content

How to create a Dedicated Server

Windows Installation

Ensure you meet the requirements

Minimum Specs: 3 GB RAM, 2 Core CPU, 4 GB Storage. Please note that the minimum specs assume that the server is full at a 25-player cap, with no plugins/modifications.

Operating system: Windows 8.1 or 10. Windows 11 is not officially supported, but should work without issue. Please note that ARM CPUs are not supported, and cannot be used to host SCP:SL servers.

Installing Prerequisites

You'll need these files listed below in order to install the server and run it without issues.

    SteamCMD - Download

    Mono64-bit - Download

    Visual C++ Redistributable 2015 - Download

    Installing the SCP:SL Dedicated Server with SteamCMD

    The SCP:SL server is installed using SteamCMD. SteamCMD is used for updating, as well as installing betas and separate branches. After installing SteamCMD via the link above, start SteamCMD.

    Setting Install Directory

    To begin, we must set the install directory using the command below. All server files, including LocalAdmin (a program used to manage the server), will be present in this location. To specify the desired server installation/directory location, run the following command.

    force_install_dir "C:\Users\{USER}\Documents\SCPSL-Server"

    Logging in

    You must log in to Steam in order to download the server. However, you are able to log in anonymously, so the creation or usage of a Steam account is not strictly necessary. You can also use your Steam account to sign in, should you so wish.

    login anonymous

    Installing

    The app ID 996560 is used to install the dedicated server. This will install a vanilla (unmodified) server that comes with the ‘Northwood Plugin API’ plugin framework baked in. You can install Beta branches (when applicable) by specifying the name of the Beta branch as a beta to install.

    To install the public release of SCP:SL, run the following command:

    app_update 996560 validate

    To install a Public Beta, run the following command:

    app_update 996560 -beta <beta-name> validate

    For password-protected Betas, run the following command:

    app_update 996560 -beta <beta-name> -betapassword <password> validate

    Server hosts are notified of available beta branches via the SCP:SL Official Discord server’s announcement channels. A link to the official Discord can be found here. Please note that the Server Host channels are restricted to Verified Server hosts exclusively. For a guide on how to verify your server, please see here.

    (Optional) Creating an Update Script

    To have the server automatically update when necessary, a batch file can be made. Enter the following code in a Notepad file, click "Save As”, ensure that "All Files" is selected as the save as type, and then give the file any name you like, such as serverupdate (be sure to add the .bat at the end, such as "serverupdate.bat").

    Then you should transfer this file to your SteamCMD file location, not your server location, as this batch file is required to launch SteamCMD in order to execute these commands.

    steamcmd +force_install_dir "C:\Users\{USER}\Documents\SCPSL-Server" +login anonymous +app_update 996560 validate +quit

    Linux Installation (Ubuntu & Debian)

    Ensure You Meet the Requirements

    Minimum Specs: 3 GB RAM, 2 Core CPU, 4 GB Storage. Please note that the minimum specs assume that the server is full at a 25-player cap, with no plugins/modifications.

    Ubuntu: Running at least Ubuntu 22.04 LTS (“Jammy Jellyfish”)

    Debian: Running at least Debian 10 (“Buster”)

    Please note that ARM CPUs are not supported, and cannot be used to host SCP:SL servers.

    Installing Prerequisites

    With any user that has sudo access, run the following commands to install and update the necessary packages:

    sudo add-apt-repository multiverse
    sudo apt install software-properties-common
    sudo dpkg --add-architecture i386
    sudo apt update
    sudo apt install lib32gcc-s1 steamcmd tmux

    Creating a User to Run SCP:SL

    Again, with a sudo-permitted user, run the following commands to make a new user named Steam:

    sudo useradd -m steam
    sudo passwd steam

    IMPORTANT! Ensure that you memorize the password you set for the Steam User, as you’ll need it to log in whenever you start your servers.

    Then, log into the Steam user we just created. Run the following commands to do so:

    sudo -u steam -s
    cd ~

    Prepare Path and Create Directories

    Now, with the logged-in Steam user, set the required path parameters for SteamCMD and make the directories for our server to be installed to.

    nano ~/.bashrc

    Use your arrow keys to scroll to the end of this file. On a new line, add the following:

    export PATH="/usr/games:$PATH"
    

    Then save & exit nano with Ctrl + X → Y → Enter

    source ~/.bashrc
    mkdir ~/steamcmd
    mkdir ~/steamcmd/scpsl

    Installing the SCP:SL Dedicated Server Tool

    Next, install the SCP:SL Dedicated Server tool. First, initialize SteamCMD by running the following command:

    steamcmd

    You will need to wait for SteamCMD to run its initial install steps. After this is finished, log in and download the dedicated server tool with the following commands.

    force_install_dir /home/steam/steamcmd/scpsl
    login anonymous
    app_update 996560 validate

    You have now installed SCP:SL. Now, you can quit SteamCMD by running the following command:

    quit

    Run Your SCP:SL Server

    Finally, you can now run your SCP:SL server. To ensure your server stays open after closing your SSH session, use a tool like TMUX. Click HERE to view the TMUX cheat sheet for helpful commands and keybinds. TMUX should already be installed, provided you installed all of the packages earlier in the tutorial.

    Open a new window with the command:

    tmux new -s scpsl

    In the new TMUX session you created, start your server with the commands:

    cd ~/steamcmd/scpsl
    ./LocalAdmin