Headless server software/Setup: Difference between revisions

From Resonite Wiki
Adding in a new section that goes over automating steamcmd, partialy for myself but also so others who get the headless have an easy time automating it themselves
 
Line 42: Line 42:
# Run: <code>app_license_request 2519830</code>.
# Run: <code>app_license_request 2519830</code>.
# Run: <code>app_update 2519830 -beta headless -betapassword <headless beta access code></code>
# Run: <code>app_update 2519830 -beta headless -betapassword <headless beta access code></code>
=== Automating Steam's Command Line Interface ===
When using steamcmd you may want to have it automated to some extent. For a shell (.sh extention) file to run it have the file set to executable and add this line to it:
<code>steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir <path to folder that contains the headless> +login <steam username> +app_update 2519830 -beta headless -betapassword <headless beta access code> validate +exit</code>


== Your first time running a Headless Server ==  
== Your first time running a Headless Server ==  

Latest revision as of 07:05, 2 November 2025

Prerequisites

  • Be a Resonite supporter at the Discoverer level or higher.
  • Have a Windows or Linux server or machine ready to go
  • Have a spare Steam account's credentials ready.
    • This spare account does not need to be a supporter.

Windows Prerequisites

Linux Prerequisites

  • .NET 9.0 Runtime
    • You can find instructions on Microsoft's website
    • Follow instructions for the distribution you are using
  • steamcmd
  • Freetype on arch
    • On arch linux freetype is not included by default, this is a prerequisite to having the headless running, otherwise it will crash mentioning that freetype is not installed. Simple type sudo pacman -S freetype2 into your terminal of choice to install it and enjoy the headless server!

Access to Headless Software builds

To gain access to the Headless Software you will need a headless steam beta code:

  • Send /headlessCode to the Resonite bot in-game.
  • You'll get a headless beta code for steam. With this in hand you need to proceed to getting the files.

Getting the Headless Software files

There are two options for getting the files required to run a headless server:

  1. Using Steam's Graphical Interface
  2. Using Steam's Command Line Interface - Common for within Docker files and Linux servers.

Using Steam's graphical interface

  1. Open Steam
  2. Find Resonite in your Installed Games list
  3. Right Click Resonite and select "Properties"
  4. Click the "Betas" option in the window which appears
  5. Enter your code from Resonite bot into the "beta access code" field.
  6. This will grant you access to the headless build.
  7. Switch to the headless build

Using Steam's Command Line Interface

  1. Run Steam CMD with: steamcmd
  2. Run: login <steam username of spare account>
  3. Run: app_license_request 2519830.
  4. Run: app_update 2519830 -beta headless -betapassword <headless beta access code>

Automating Steam's Command Line Interface

When using steamcmd you may want to have it automated to some extent. For a shell (.sh extention) file to run it have the file set to executable and add this line to it: steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir <path to folder that contains the headless> +login <steam username> +app_update 2519830 -beta headless -betapassword <headless beta access code> validate +exit

Your first time running a Headless Server

First, look for the files you've installed. Look for Resonite.exe:

  • For SteamCMD it will be in the location which you downloaded the files to with SteamCMD
  • For Steam's GUI it will be in the regular Steam installation folder for Resonite inside a folder called "Headless"

Once you've found them you can try running the "Resonite.exe" file in there:

  • For Windows, we still recommend a terminal window.
    • Powershell or CMD works well
    • This allows you to see any errors or problems in a much easier way.
  • For Linux you'll need dotnet: dotnet Resonite.dll

This will run a default Resonite Headless, as we haven't specified any configuration properties it will just open a default world using a non-logged in user.

This isn't that useful but it does verify that everything is installed and setup correctly. After it starts up you should see "World Running" and something along the lines of "<your computers name> World 0>_".

If you see this, you're good to go! You've got a running Headless Server. You'll probably want to create a Configuration File next.