Skip to content

Instantly share code, notes, and snippets.

@quad-damage
Last active May 5, 2025 14:28
Show Gist options
  • Save quad-damage/3f4ad9c524b638510340cc31da86d3ff to your computer and use it in GitHub Desktop.
Save quad-damage/3f4ad9c524b638510340cc31da86d3ff to your computer and use it in GitHub Desktop.
R1Delta Dedicated Server setup through Docker.

R1Delta Dedicated Server (Docker Setup)

This guide provides basic instructions for setting up your R1Delta Dedicated Server using Docker.

0. Basic Docker Concepts

  • Images are downloaded from online repositories (docker pull).
  • Containers are created from these images, providing isolated environments.
  • Ports from containers are exposed to your host machine using -p OutsidePort:InsidePort/protocol.
  • Directories on your host can be mounted within containers using -v /host/directory:/container/directory.
  • Containers can be assigned a convenient name using --name ContainerName.
  • Use common Docker commands to manage containers, such as docker stop, docker rm, and docker restart.
  • To update a Docker container, you must remove and recreate it from the updated image.

If in doubt, interrogate your nearest LLM about basic Docker usage.

1. Pull the Docker Image

The R1Delta development team maintains a dedicated server Docker image. Obtain the latest image with:

docker pull ghcr.io/quad-damage/r1delta_ds:latest

Important

Your Docker container must include the -it flag; otherwise, the Dedicated Server will not function correctly and may crash.

2. Persistent Storage Configuration

The R1Delta Dedicated Server image expects you to mount a persistent storage folder at /opt/r1/persistence.

Upon the first container startup, the server automatically creates these directories inside your mounted volume:

  • /r1/ - Configuration directory
  • /crashes/ - Contains crash logs and stack traces, if any occur.

3. Server Startup Arguments

Server startup arguments must be placed inside /opt/r1/persistence/r1/launchargs.txt. This file allows you to customize server parameters at startup.

Example content for launchargs.txt:

+hostname "Official OpenAI R1Delta Server"
+server_description "Visit chatgpt.com for more info!"
-port 27015
-ip 0.0.0.0
+launchplaylist "at"
-netconport 2121
-netconpass "hunter2"

Pro tip: While a comprehensive list of arguments is available on the Valve Developer Wiki, not all of them apply to the R1Delta Dedicated Server.

4. Customizing Playlists

You can override Titanfall's default playlists by creating a file at /opt/r1/persistence/r1/playlists.txt. The default playlist configuration can be viewed here.

Example custom playlists.txt content:

"playlists"
{
	"version"	"stable"
	"versionNum"	"1938" // Increment this number whenever your playlist changes.
	"box"
	{
		"vars" {
			// Your custom variables here
		}

		"maps" {
			"map0"		"mp_box"
			"gamemode0" "at"
			"map1"		"mp_box"
			"gamemode1" "ctf"
		}
	}
}

Please note: Although the syntax resembles JSON, playlists.txt is not valid JSON.

5. Add-on Management

TODO

6. Quick-Start Example

Assuming your server's persistent folder is located at /home/r1delta/r1ds, use the following command to quickly spin up your container:

docker run -d -it \
    -p 0.0.0.0:27015:27015/udp \
    -v /home/r1delta/r1ds:/opt/r1/persistence \
    --name r1delta \
    ghcr.io/quad-damage/r1delta_ds:latest

Sample launchargs.txt

+hostname "Official OpenAI Server"
+server_description "Administered by o4-mini-high!"
-port 27015
-ip 0.0.0.0
+launchplaylist "at"
-netconport 2121
-netconpass "hunter2"

Community & Support

Join our Discord community to connect with the R1Delta developers, ask questions, or report issues:

🔗 R1Delta Discord Community

294420559-41548f20-0878-4e1e-8538-e9be808fc363

@koutsie
Copy link

koutsie commented Apr 19, 2025

10/10 PC Tutoriale - got my server up and running in less than 5 minutes!!

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment