

How to Start and Configure an Abiotic Factor 1.0 Cold Fusion Dedicated Server in Linux Debian, Mint, or Ubuntu
Abiotic Factor is a game best enjoyed with your friends. To best do so, you’ll need to power of a dedicated server. In this guide, I will show you how to set one up in Debian Linux, but this will also work in Ubuntu, or any other derivative of Debian.
There already exists a community guide on GitHub for most of this process here, but it can be a bit difficult to find and I figured people would much enjoy a video to walk them through the proccess, especially if they’re brand new to linux.
1 - Prerequisites
This guide assumes you have a Debian machine you can access, either directly or through SSH. For this tutorial, I am running a fresh install of Debian 12.
2 - Installing the Abiotic Dedicated Server to Debian
We’re going to start by making a new user that will run the server. This is done for security reasons as we do not want to run the server as the root user. See Principle of least privilege.
For this tutorial, we will call this user “abiotic”
sudo useradd -m abiotic
You may want to set a password for this user:
sudo passwd abiotic
2.1 - Prepare the Server with Required Packages
Update repos and upgrade all packages
sudo apt update
sudo apt upgrade -y
Install some required packages
sudo apt install software-properties-common lsb-release wget
2.2 - Install Wine
Abiotic Factor, by default has no native build for linux (a tragedy, really), but there is hope for us: Wine, which allows us to run windows applications of linux!
Lets start by first adding the repositories:
sudo mkdir -pm755 /etc/apt/keyrings
wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo gpg --dearmor -o /etc/apt/keyrings/winehq-archive.key -
For Debian:
Then download WineHQ for your specific distro (For Ubuntu and Mint, head here for your distro-specific command!)
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources
And lastly, install:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install --install-recommends winehq-stable
sudo apt install cabextract winbind screen xvfb
2.3 - Set Up SteamCMD
Here, we will install a command-line version of the Steam client, which is what we will use to download and update all the server files for Abiotic Factor.
sudo apt-add-repository non-free
sudo apt update
sudo apt install steamcmd
2.4 - Install Abiotic Factor Server Files
This is where you must decide where you want your server files to live. The simplest and recommended option is in our users home directory, inthis case, /home/abiotic. Wherever you decide, make a directory there.
sudo mkdir /home/abiotic/abioticserver
And now download the game via SteamCMD, and force it to use the windows files.
sudo /usr/games/steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir /home/abiotic/abioticserver +login anonymous +app_update 2857200 +quit
2.5 - Configure Server Start Script
Since we downloaded the windows files, we are unable to use the existing .bat isntructions to start the server, so we must make our own .sh isntructions
sudo touch /home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/runserver.sh
And edit this file:
sudo nano /home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/runserver.sh
Now add in the startup instructions:
#!/bin/bashxvfb-run wine64 /home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/AbioticFactorServer-Win64-Shipping.exe -log -newconsole -useperfthreads -NoAsyncLoadingThread -MaxServerPlayers=6 -PORT=7777 -QUERYPORT=27015 -tcp -ServerPassword=yourpassword -SteamServerName="yourserver" -WorldSaveName="Cascade"
This is the point where you should change the max playercount of your server, the server password, steam server name, and the world save name. Save it and close (ctrl+x)
2.6 - Port Forwards Ports 7777 and 27015 to Your Server
This part is where your situation will be unique depending on your router, but the idea is much the same for any. I recommend looking up how to port forward on your specific brand of router.
Additionally, I recommend you set up your server on a static IP if you haven’t yet so you don’t need to change what IP your router is forwarding that port to every time you restart the server.
What is important here is that you forward TCP/UDP traffic through both ports 7777 and 27015 to the local IP address of your server.
2.7 - Start the Server
Using our runserver.sh we made in 2.5, we can start the server.
First, give our user permission to run runserver.sh:
sudo chown -R abiotic:abiotic /home/abiotic/abioticserver
sudo chmod +x /home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/runserver.sh
And quickly do a reboot with sudo reboot
Then run it (You may need to do so twice):
/home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/runserver.sh
Once started, turn it off with ctrl+Z
2.8 - Updating Your Server
So, you’ve been playing for a while and you notice that your server is out of date, and your friends are complaining that they can’t connect? There is a simple solution, and all it involves is performing the same command you used when you downloaded the server files in section 2.4.
/usr/games/steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir /home/abiotic/abioticserver +login anonymous +app_update 2857200 +quit
Unfortunately, this proccess can be quite tedious, especially when you are playing after a major update and must update frequently due to hotfixes. Not to mention, the startup command is quite long. There must be a better way! The answer: running our server as a service
3 - Running as a Service
First, create the service file
sudo nano /etc/systemd/system/abiotic.service
Then, fill it with this, which you should edit as necessary for your own setup:
[Unit]Description=Abiotic Factor ServerWants=network-online.targetAfter=network-online.target
[Service]User=abioticGroup=abioticWorkingDirectory=/home/abiotic/abioticserver/ExecStartPre=/usr/games/steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir /home/abiotic/abioticserver +login anonymous +app_update 2857200 +quitExecStart=/home/abiotic/abioticserver/AbioticFactor/Binaries/Win64/runserver.shRestart=always
[Install]WantedBy=multi-user.target
Save it and close
3.1 - Enable and Start the Service
Enable the service:
sudo systemctl enable abiotic
Start the service:
sudo systemctl start abiotic
To disable and stop the service, use the disable and stop commands to do that respectively
That’s that, now your server will automatically update and restart on a power cycle!
4 - Sandbox Settings
So, how do we change the experience of the game for our players? This is done with the sandbox settings.
By default, the server will not generate the needed “SandboxSettings.ini” file, so lets do that.
sudo touch /home/abiotic/abioticserver/AbioticFactor/Saved/SaveGames/Server/Worlds/worldName/SandboxSettings.ini
Replace “worldName” with the world name you set in section 2.5
Next, edit the file:
sudo nano /home/abiotic/abioticserver/AbioticFactor/Saved/SaveGames/Server/Worlds/worldName/SandboxSettings.ini
And add in the defaults:
[SandboxSettings]GameDifficulty=1
LootRespawnEnabled=FalsePowerSocketsOffAtNight=TrueDayNightCycleState=0DayNightCycleSpeedMultiplier=1.0WeatherFrequency=3SinkRefillRate=1.0FoodSpoilSpeedMultiplier=1.0RefrigerationEffectivenessMultiplier=1.0StorageByTag=TrueStructuralSupportLimit=5BridgeSupports=2HomeWorlds=True
EnemySpawnRate=1.0EnemyHealthMultiplier=1.0EnemyPlayerDamageMultiplier=1.0EnemyDeployableDamageMultiplier=1.0DetectionSpeedMultiplier=1.0
DamageToAlliesMultiplier=0.5HungerSpeedMultiplier=1.0ThirstSpeedMultiplier=1.0FatigueSpeedMultiplier=1.0ContinenceSpeedMultiplier=1.0PlayerXPGainMultiplier=1.0ItemStackSizeMultiplier=1.0ItemWeightMultiplier=1.0ItemDurabilityMultiplier=1.0DurabilityLossOnDeathMultiplier=0.1ShowDeathMessages=TrueAllowRecipeSharing=TrueAllowPagers=TrueAllowTransmog=TrueDisableResearchMinigame=FalseDeathPenalties=1FirstTimeStartingWeapon=0HostAccessPlayerCorpses=TrueAllowCharacterReset=True
4.1 Custom Settings
While here, you’ll of course want to set these values to your own preffered ones. But what do they all mean? Check this out for a full breakdown of each value!
5 - Further Reading
If you are interested in additional launch parameters to the ones we used in section 2.5, check this out.
And, if you would like to migrate a player save to your server, check this out.
You may want to set up a firewall if you are opening this server to the internet. If you’re new to this, I recommend choosing something… uncomplicated. Here you can find information about Uncomplicated Firewall (ufw).
Final Comments
Having any trouble? Post a comment to the associated youtube video at the top of this article, and I or someone in the community can help you out!
Have fun, and stay safe out there in 1.0!
← Back to blog