Auto Tournament

Highlights

Highlight clips and reels from every CS2 match, recorded from the demos by recorders you run, and matches imported from their demos.

Not released yet

Highlights arrive in 3.0, which is in development (the 3.0 betas have them).

After every CS2 map, Auto Tournament reads the demo, picks each player's best moments (multi-kills, clutches, the odd funny one) and has them recorded from the player's own eyes: a clip per moment, a reel per player, a reel per match and team, and one for the tournament. Players find theirs on their profile; everyone can watch them on the match page.

The recording happens on recorders: Linux PCs with a GPU, CS2 and Steam that ask the platform for work. Add as many as you like; they share it.

How it works

  1. A map ends and its demo arrives (Ready Up uploads it).
  2. The demo worker (the auto-tournament-worker container next to the platform) reads it: stats, the 2D replay, and the moments.
  3. A recorder takes the moments of a map, plays the demo in CS2 and records each one, then uploads the clips and the player's reel.
  4. When a match is all recorded, the match and team reels are joined from the clips.

Settings

Manage → Highlights → CS2 → Settings:

SettingWhat it does
Resolution and frame rateWhat the recorders make, up to 4K and 240 fps. Smaller and fewer frames record faster: 720p at 30 fps takes about half as long as 1440p at 120 fps.
Clips per player per map1 to 6. Each takes a recorder a few minutes.
Auto Tournament logoA faint logo in the corner.
Music under reelsEvery track, only the ones you pick, or none. You add the tracks (Auto Tournament ships none).
Keep clean copiesKeeps each clip without its overlay too, so overlays can be redrawn and reels made from clean clips.

Add a recorder

Open Manage → Highlights → CS2 → Recorders and click Add a recorder. Pick what the machine is; the dialog makes a recorder key and puts it in a command to copy. The key is shown once: open the dialog again for the next machine. Old keys can be revoked under Recorder keys.

Gaming PC

A Linux PC with Docker, Steam (signed in) and CS2 installed, and an NVIDIA or AMD GPU. Paste the command in a terminal in its desktop session. It starts the recorder container, which uses the PC's GPU and finds CS2 in its Steam libraries. It starts again whenever Docker does.

Switch Steam to offline mode: demo playback needs no online session, so every recorder can use the same Steam account.

Server (headless)

An Ubuntu 24.04 server with an NVIDIA GPU, no desktop needed. The command has two lines:

  1. Once, with sudo: installs the NVIDIA driver and Docker and turns sleep off. Reboot if it says so.
  2. Starts Steam and CS2 in a container, with the recorder in it. Run it again later to update.

Then, once: open the web UI it prints (https, port 8483), sign in with the first-run login it prints and set your own. Sign Steam in (the first sign-in can say "waiting for network" for a minute), set it to offline mode and install CS2. The recorder starts taking work when CS2 is there.

Check it on the Recorders page

The recorder shows up under its own name the first time it asks for work; rename it in the list. On its first job it runs a short benchmark (one moment at 240 and 120 Hz, timed and checked for smoothness) and keeps the fastest smooth setting. The list shows its GPU, the benchmark, seconds per clip and every run with its log. Update all updates every recorder to the platform's version.

Windows isn't supported yet: the recorder captures CS2 through gamescope, which is Linux only.

Playing on a recorder

Don't play or run other GPU work on a recorder while it records: the GPU is shared and the clips stutter. Every clip is checked for repeated frames (a stutter): at 4% or more the platform turns it down and has it recorded again, preferably on another recorder. A recorder with three turned-down clips in a row gets no work for 15 minutes and shows as Paused; Resume gives it work again sooner.

Matches played somewhere else

All matches → Import a match adds a match played elsewhere (another platform, a LAN without Auto Tournament) from its demos, one per map in the order they were played. The teams, the players and the score are read from the demos; teams and players that are new are created. Then the match gets stats, the 2D replay and highlights like any other.

Troubleshooting

What you seeWhat to check
Failed to connect to wayland socket in a run logThe container needs the PC's display: WAYLAND_DISPLAY and the /run/user/<uid> mount.
A recorder is PausedIts clips stuttered: something else was using the GPU, or the refresh rate is too high. Close the game or run the benchmark again.
No recorder picks anything upIts key (revoked?), whether its group is enabled, and its last run's log on the Recorders page.
Clips take longThe resolution and frame rate in Settings, and the recorder's GPU (its seconds per clip on the Recorders page).

On this page