How to Setup Palworld Dedicated Server using Ubuntu VPS

Palworld is a multiplayer game where you catch monsters and create things while playing with others online.

One cool feature of the game is that you can run your dedicated server. This means you can keep your game world open 24/7 without using your computer.

You don’t even need to own the game or have a Steam account to run the server. The game developers give you a separate program to install the server without needing to sign in.

We’ll show you how to set up this server on your Ubuntu VPS. Plus, we’ll help you make sure it keeps running, even if your computer restarts.

Don’t worry if you’re not familiar with Ubuntu console commands, we’ll guide you through each step.

You can also watch this video on YouTube that we made using the Same Console Command: Palworld Dedicated Server Setup

Getting Our Server

We are currently using RackNerd VPS for hosting our game servers, as you can see in our video content. Their servers are not only reliable but also very affordable. That’s why I consistently choose RackNerd for hosting my open-world game servers, like previously for Valheim and now for Palworld, and Run on Ubuntu 20.04

Getting Your Ubuntu Server Ready for Palworld

1. Before we can install the Palworld server on our Ubuntu VPS, there are a few preliminary tasks that need to be completed.


Before installing the Palworld server on our Ubuntu VPS, there are several preparatory steps we need to take. Firstly, we need to ensure that our operating system is up-to-date. To achieve this, we can update the package list cache and upgrade any outdated packages by executing the following command.

sudo apt update
sudo apt upgrade -y

2. Afterward, it’s essential to verify that the “software-properties-common” package is installed on your system.

This package simplifies the process of making changes to repositories.

sudo apt install software-properties-common

3. Installing SteamCMD

To acquire and set up the Palworld server on our Linux system, we must employ SteamCMD.

SteamCMD is a command-line interface utilized for downloading games and servers directly from Steam.

Before installing this utility, we need to integrate the “i386” (32-bit) architecture into our system’s package manager. This step is necessary because SteamCMD is exclusively available as a 32-bit application.

sudo dpkg --add-architecture i386

4. After incorporating the 32-bit architecture, our subsequent action involves adding the multiverse repository on Ubuntu.

To accomplish this, simply execute the following command in the terminal.

sudo add-apt-repository multiverse

5. Now that we’ve modified the available repositories on our Ubuntu system, we must update the package list once more.

You can refresh the package list cache using the following command.

sudo apt update

6. At last, we can install the SteamCMD tool onto our system with the following command.

sudo apt install steamcmd

7. Let’s Now Create a New User for Ubuntu to Run the Palworld Server

Now that SteamCMD is installed, it’s essential to create a dedicated user to operate the Steam CLI. Using the root user to run this software is not recommended.

We’ll proceed by creating a user named “steam” with the following command.

sudo useradd -m steam

8. Following the user creation, it’s necessary to adjust the path environment variable by modifying its “.bashrc” file.


Currently, the user won’t be able to locate the SteamCMD tool we recently installed since the “/usr/games” path is absent.

To initiate modifications to this file, use the command provided below.

sudo nano /home/steam/.bashrc

9. Add the following line to the end of this file.

This simple line adds the “/usr/games/” directory to the start of the “PATH” environment variable.

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

10. After making the above changes, save and quit by pressing CTRL + XY, and then ENTER.

11. To initiate the installation of the Palworld dedicated server on our Ubuntu device, we need to switch to the “Steam” user created earlier.

You can swap to this user by running the following command.

sudo -u steam -s

12. Now change to the home directory of this user by using the cd command below.

cd ~

13. Installing the Palworld Server to your Ubuntu System

Before installing and utilizing the Palworld dedicated server, we need to perform some initial setups.

Executing the following command will download the Steamworks SDK redistributable. A specific file from this download is required to operate the server.

steamcmd +force_install_dir '/home/steam/Steam/steamapps/common/steamworks' +login anonymous +app_update 1007 +quit

14. Following that, we need to create a directory where the Palworld server will search for the “steamclient.so” file.

Create this directory by using the mkdir command.

mkdir -p /home/steam/.steam/sdk64

15. With the directory created, we can copy over the “steamclient.so” library the server requires to run.

cp '/home/steam/Steam/steamapps/common/steamworks/linux64/steamclient.so' /home/steam/.steam/sdk64/

16. We can now use the following command to download the Palworld dedicated server to our Ubuntu VPS.

The server is fairly large, so this process may take a few minutes to complete.

steamcmd +force_install_dir '/home/steam/Steam/steamapps/common/PalServer' +login anonymous +app_update 2394010 validate +quit

17. Launching Your Palworld Dedicated Server on Ubuntu


We have reached the stage where we can initiate the Palworld server on Ubuntu.

To commence this procedure, navigate to the directory containing the start script by entering the following command.

cd /home/steam/Steam/steamapps/common/PalServer

18. Let’s Start and Test The Server

You will see a couple of errors as it first starts up, but you can ignore these issues unless they continue to appear after the initial startup.

./PalServer.sh

Once you see the following text, your server should be up and running.

You can now access your Palworld server by connecting using your IP address.

19. You can now access your Palworld server by connecting using your IP address.

If you are hosting this from your home, you must port forward port 8211 to allow outside access.
Connect the server from the Multiplayer option using your Server IP address and then Type the Port, Example: 141.173.39.60:8211

To stop the server, you simply need to press CTRL + C.

20. Configuring your Palworld Dedicated Server

Once your Palworld dedicated server is up and running, you’ll probably want to fine-tune the default settings.

To provide you with a solid foundation, let’s create a duplicate of the default settings using the command below.

cp /home/steam/Steam/steamapps/common/PalServer/DefaultPalWorldSettings.ini /home/steam/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

21. You can now begin modifying the configuration file by using the nano text editor.

nano ~/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

22. Inside this file, you’ll discover a variety of values that you can customize.

We won’t be diving into all of these, but you can check out the official documentation to learn more.


An option you’ll probably want to modify is the server password. Setting a password prevents unauthorized access to your Palworld server.

To configure the password, locate the following setting within the file.
Find :

ServerPassword=""

If you can’t find this line, you can also simply copy-paste it too

ServerPassword="yourpassword"

23. Once you have made changes to the configuration file, save and quit by pressing CTRL XY, and ENTER.

24. Getting your Palworld Server to Start at Boot

 If you are still using the Steam user from earlier, you will want to return to your normal user using the following command.

exit

25. We can initiate the creation of a service file for our Palworld server by entering the following command.

This service file will tell Ubuntu how it should start the server.

sudo nano /etc/systemd/system/palworld.service

26. Within this file, type in the following lines.

These lines will automatically initiate your Palworld server upon your Ubuntu device booting up. Furthermore, before starting, the service will employ SteamCMD to check for updates.

[Unit]
Description=Palworld Server
Wants=network-online.target
After=network-online.target

[Service]
User=steam
Group=steam
WorkingDirectory=/home/steam/
ExecStartPre=/usr/games/steamcmd +force_install_dir '/home/steam/Steam/steamapps/common/PalServer' +login anonymous +app_update 2394010 +quit
ExecStart=/home/steam/Steam/steamapps/common/PalServer/PalServer.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS > /dev/null
Restart=always

[Install]
WantedBy=multi-user.target

27. Once you have finished writing the service, save and quit by pressing CTRL X, followed by Y, and then ENTER.

28. With the service now written, we must enable it using the command below.

Enabling the service allows the system manager to start your Palworld server automatically when your operating system starts.

sudo systemctl enable palworld

29. If you wish for the server to commence immediately, simply execute the command below. This command instructs the system manager to promptly start our Palworld server.

sudo systemctl start palworld

30. Connecting to your Palworld Dedicated Server

Once your Palworld dedicated server is operational, you’ll likely be eager to learn how to connect to it.

Connecting to your server is generally a straightforward process. All you’ll need is the IP address of your VPS and add port 8211 after the IP address, check the password box, and click connect

31. To stop the Palworld server from running, you must run the command below.

sudo systemctl stop palworld

32. You can deactivate the server from launching at startup by disabling the Palworld service we established.

sudo systemctl disable palworld

33. Conclusion


Now, you should have a Palworld Dedicated server set up on your VPS.

Running the dedicated server means you can keep a server running all the time without needing to own the game or use your gaming computer. It also lets Palworld support many more players.

Leave a Comment

Your email address will not be published. Required fields are marked *