Gaming
VRising dedicated headless server on Debian11 bullseye with WINE
Prerequisites
Add non-free and contrib to /etc/apt/sources.list after main
so this line:
deb http://deb.debian.org/debian bullseye main
looks like this one
deb http://deb.debian.org/debian bullseye main non-free contrib
Add winehq repo for Debian
sudo echo "deb https://dl.winehq.org/wine-builds/debian/ bullseye main" >> /etc/apt/sources.list.d/winehq.list
Download apt key
wget -nc https://dl.winehq.org/wine-builds/winehq.key
Add key
sudo apt-key add winehq.key
Add 32-bit architecture support
sudo dpkg --add-architecture i386
Update apt and install packages
sudo apt update sudo apt install winehq-stable winetricks steamcmd:i386
create user steam
useradd steam -m -s /bin/bash
Make WINE headless
For this server to run, we need to make wine headless
source: https://superuser.com/questions/902175/run-wine-totally-headless
Install Xvfb a fake X11 server
sudo apt install xvfb
Create a systemd script to run it with in /etc/systemd/system/xvfb.service:
[Unit] Description=Xvfb headless fake X server After=network.target [Service] User=root ExecStart=/usr/bin/Xvfb :0 -screen 0 1024x768x16 [Install] WantedBy=multi=user.target Alias=Xvfb.service
To enable and start the script:
sudo systemctl enable xvfb.service sudo systemctl start xvfb.service
Install the allfonts winepackage as user steam with winetricks
login as user steam
su - steam
winetricks allfonts
Install VRising dedicated server
Run steamcmd to install the server software
steamcmd
you will now get a Steam> prompt In the Steam> prompt login as anonymous
login anonymous
First, tell SteamCMD to use windows as the platform, as there's currently a Windows version of VRising Server currently:
@sSteamCmdForcePlatformType windows
Optional: If you want to install the server to a specific directory in the /home/steam folder:
force_install_dir ./<name of folder>
Proceed with the installation app_update and steamID
app_update 1829350
When the server software is finished with the installation, exit steamcmd with pressing ctrl + c
To logout from steam user, press ctrl + d
Run the server with systemd
Make a systemd script to run the server from.
Add this snippet to /etc/systemd/system/vrising.service
[Unit] Description=VRising server service Wants=network-online.target Requires=xvfb.service [Service] Environment=DISPLAY=:0.0 ExecStart=wine VRisingServer.exe -persistentDataPath .\save-data -serverName "Malinux V Rising Server" -saveName "MyWorld -1" -logFile ".\logs\VRisingServer.log" WorkingDirectory=/home/steam/Steam/steamapps/common/VRisingDedicatedServer/ user=steam group=steam [Install] WantedBy=multi-user.target
Set the WorkingDirectory to where your VRisingServer.exe is located if you put it in a custom location
Forward ports
enable and open ports in ufw
ufw allow 9876 comment 'Comment that describes this ufw rule game-traffic and rcon' ufw allow 9877 comment 'Comment that describe this ufw rule query-port'
configure the server
I'll add more later