Overview
this guide is pretty old, it may still be informative, but is not updated anymore since LF:E shut down and is being remadeA guide on how to run a Lambda Fortress: Extended server on Windows and Linux.Use the sidebar to go to the desired section of the guide.If you have any troubles, the best place to ask for help is the #support channel in the Official LF:E Discord Server[discord.gg].
Hosting “In-Game” is hosting a listenserver, meaning you are hosting a server from your own PC, via the “Create Server” button on the main menu.
This is the ideal method for playsessions with friends and people you know.
It’s the fastest and easiest to get running.
1. Port Forwarding
On your router, open (portforward) ports ranging from 27000 to 27050, UDP & TCP.
You also have to open these ports on your system firewall.
If you don’t know how to portforward
Check out .
This website[portforward.com] shows port forwarding instructions for every router!
If you don’t know how to open ports on your Windows Firewall
Check out this guide.[www.tomshardware.com]
2. Running the listen server
Now you need to get your public IP.
The simpliest way to get it is to google “What is my ip”.[www.google.com]
Google will show it on the top of the results. Save it somewhere.
Now, run LF:E and open the “Create Server” menu.
Configure the server from there to your preferences.
Make sure that the “LAN” box is UNCHECKED:
Start the server.
Now you should be fine and your server should be visible in the server browser.
If it’s not, simply tell people to join you via the connect console command followed by your IP and the port of the server, like so:
Hosting “From Steam” is similar to hosting a listenserver. You are still hosting form your PC, but the server is separate from the game, as you are running an external program for the server – the Source Dedicated Server – which is downloadable from Steam.
This is a hosting method for people who don’t want to have their game running all the time to be running the server.
1. Port Forwarding
On your router, forward the ports ranging from 27000 to 27050 for both UDP and TCP.
You also have to open these ports on your system firewall.
If you don’t know how to portforward
Check out .
This website[portforward.com] shows port forwarding instructions for every router!
If you don’t know how to open ports on your Windows Firewall
Check out this guide.[www.tomshardware.com]
2. Download SDK Base 2013 Dedicated Server
To find it, hover over “Library”, then click “Tools” and scroll down until you see it. Install it on the same drive that you installed TF2 on.
If you want to additionally run Ep1 or Ep2 or HL:S maps, you have to have them installed on the same drive that you installed TF2 on.
3. Running the Steam SDK 2013 DS
Before you start the server, you must copy the tf_coop_extended folder to the Source SDK Base 2013 Dedicated Server installation directory
OR
You can make a directory symlink. Run cmd.exe as administrator and use the following command:
Run the Source SDK 2013 Base Dedicated Server.
Pick a map, adjust everything to your preferences, make sure “Network” is set to “Internet”.
You’ll see two games named “Lambda Fortress: Extended”. One won’t let your start the server, you have to try which one works.
If you’re greeted with a nice server control UI, that means the server is up and running.
Before we move on
Before we move on
System requirements for hosting Lambda Fortress: Extended on Linux:
Minimum:
- Decent CPU
- 512MB RAM
- 5GB free disk space (HL2 Campaign only)
Recommended:
- Good CPU
- 1024MB RAM
- Over 13GB free disk space
Software requirements:
- On 64-bit Ubuntu / Debian based distros run:
sudo dpkg –add-architecture i386; sudo apt update; sudo apt install p7zip lib32gcc1 libstdc++6 libstdc++6:i386 libncurses5:i386 libtinfo5:i386 libcurl4-gnutls-dev:i386 On 32-bit run:
sudo apt install p7zip libstdc++6 libncurses5 libtinfo5 libcurl4-gnutls-dev- On 64-bit CentOS / Fedora run:
sudo yum install p7zip p7zip-plugins libgcc.x86_64 libgcc.i686 glibc.i686 libstdc++.x86_64 libstdc++.i686 ncurses-libs.i686 libcurl.i686 * Use dnf instead of yum on Fedora/RHEL.
1. Download SteamCMD for Linux
Create a folder in your user’s home directory and go into it.
Next, download the linux SteamCMD Tar archive and unpack it:
2. Minimal content installation
This step goes over installing only the necessary content to run the server, namely SDK 2013 Dedicated server and TF2 Dedicated Server. This will allow you to only play the base HL2 campaign. If you wish to play more on your server, see the next step.
Run steamcmd.sh and wait for everything to update.
Now for the required downloads. Type in the following commands, one by one in order:
Note, wait for every command to finish before you type the next. When a command finishes, you should see the
show up again.
If after each command you get the message:
“Success! App ‘XXXXXX’ fully installed.”
that means everything installed properly and you can now quit steamcmd by typing:
2b. Extra content installation
This is an extra step and it is not necessary to play the base game.
To play additional campaigns (Episode 1 & 2, Portal and Half-life: Source), you need to install additional content.
If before the installation you had enough free disk space for the “Recommended System Requirements” from step 1, you should be good to go.
Run steamcmd.sh again.
You have to login to your normal account which has the games of which content you want to install purchased (Except for EP1 and EP2, those come free with SDK 2013 Singleplayer).
Now download the games you wish to support on your server with the app_update command followed by an app ID.
App ID’s:
243730 – Source SDK Base 2013 Singleplayer (Contains EP1 & EP2 content and is free)
340 – Half-Life 2: Lost Coast
280 – Half-Life: Source
400 – Portal
After you’ve downloaded the games you want, run this script to move them to the correct directories:
2c. Disk space optimizations
You can save some disk space by removing files not needed for the LF:E server, like TF2 maps, some textures and repeating “hl2” folders.
Run the following script to do so:
3. Place LF:E files
Download or upload to the server the latest LF:E files. The official download link is available in the LF:E Discord Server[discord.gg] in the #downloads channel.
To unpack the archive, use the following command if you’re on Ubuntu / Debian based distros:
And the following on Fedora / CentOS / RHEL based distros:
Then, move the unpacked /tf_coop_extended/ folder to the /sdkbase/ directory:
4. Necessary file links
This step is necessary because Valve, and because maps don’t like mounting.
Go into the /lfeserver/sdkbase/bin/ directory:
and make a soft link for every file with a _srv suffix and name it so that it doesn’t have that suffix with the following script:
Next, we need to create map links for Portal and Half-Life: Source content that you installed, since those map files are not provided with LF:E. Run these commands to make links for the one you installed (run both commands if you have Portal and HL:S installed):
Portal maps:
Half-Life: Source maps:
5. Running the server
To run the server, create a .sh file with the following contents in the /lfeserver/sdkbase/ folder:
And run it to start the server (make it executable first).
Of course, you can use any launch options you want, but make sure to keep the
./srcds_run -console -game tf_coop_extended
launch options!
Windows requirements
System requirements for hosting Lambda Fortress: Extended on Windows:
Minimum:
- A somewhat good CPU
- 1024MB RAM
- 8GB free disk space (For the HL2 Campaign only)
Recommended:
- Beefy CPU
- 2048MB RAM
- Over 13GB free disk space (For more than the base HL2 campaign)
Software requirements:
- 7-Zip
1. Download SteamCMD for Windows
Download steamcmd from here:
[link]
Put it in a folder that you want your server to be installed in. It has to be empty.
For this guide I’ll be placing it in a folder named “steamcmd”.
Unzip it with 7-zip like so:
You should see “steamcmd.exe” in the folder now.
4. Running the server
To run the server, first create a file named “runserver.txt” in your /steamcmd/sdkbase/ folder (the folder where you have srcds.exe), and edit it to have the following contents:
You have to save it as a bat file though:
Click “File” in the top left corner of your editor, then select “Save As…”
Change the name to “runserver.bat”, and under the filenamename field, select “All Files”:
From now on, you just have to double click the runserver.bat file to run your server.
Of course, you can use any launch options you want in the file, but make sure to keep the
start srcds.exe -console -game tf_coop_extended
launch options!
Differences
Wine srcds server setup is very similar to the linux one, but has a few differences. Just do the Linux installation section of the guide while keeping these things in mind:
- You need slightly more RAM, a better CPU, and slightly more disk space than in the requirements.
- Dependencies are different.
- You don’t need the linux library dependencies from the guide.
- But you do still need p7zip.
New requirements are:
- Wine (Version at least 4.0.2, get it here[wiki.winehq.org])
- Xvfb
- screen
- Instead of creating and working in the /lfeserver/ folder, at the beggining run
wine cmd /c mkdir C:\steamcmd
And in all commands in the guide that have something to do with the ~/lfeserver/ path, replace it with the new steamcmd wine path: ~/.wine/drive_c/steamcmd/
- Right after launching steamcmd.sh before running any other commands run once:
@sSteamCmdForcePlatformType windows
- You don’t have to do the “Binary Links” step, since it’s a linux-only issue.
- To prevent the server from hanging without closing on a sudden crash, run this command:
wine reg add “HKLMSOFTWAREPoliciesMicrosoftWindowsWindows Error Reporting” /v “DontShowUI” /t REG_DWORD /d 1 /f
And I strongly advise using the script from the discord server in #community-downloads for autorestarting, since LF:E likes to crash. A lot.
- Starting and stopping the server looks different.
Create a screen session with:screenAnd run these commands in the ~/.wine/steamcmd/sdkbase/ folder to start the server:
Xvfb :1 -screen 0 800x600x8 & export DISPLAY=:1 wine start srcds.exe -console -game tf_coop_extended_beta -ip XX.XX.XX.XX -port 27015 -secured +maxplayers 24 +map d1_trainstation_01Don’t worry if Fedora / CentOS / RHEL based distros throw some errors about keyboard input.
To stop the server either rcon the quit command to the server and kill Xvfb:
pkill xvfbOr kill all the processes with pkill:
pkill srcds.exe pkill wine pkill xvfb