Skip to the content.

DayZ Command Line Launcher

dayz-ctl β€” this is an experimental launcher (server explorer and launcher) DayZ on Steam Proton for Linux.

This document is available in languages: eng πŸ‡¬πŸ‡§, rus πŸ‡·πŸ‡Ί, ua πŸ‡ΊπŸ‡¦

logo

At the time of this project, Bohemia Interactive was still unable to make a working launcher for the game that could correctly install modifications and connect to game servers. That is why this project was born.

Key Features:

Special thanks to dayz-linux-cli-launcher for the idea and dayzsalauncher for the API.

Preview

Launcher Demo Launcher Demo

More screenshots πŸ‘ˆ

Main menu

Server browser

Server filters

Filter by map

Applied selected filters

Favorites browser

History browser

Fuzzy search

Offline mode

Mods for offline

Server mods

Mods info

Config menu

Launch options

About menu

DayZ News

Features of using SteamCMD

There are two modes of operation of the launcher with and without using SteamCMD to manage mods in manual mode.

You can combine both approaches, for example, subscribe to those modifications that you will definitely need in the future by clicking on the link, and check for updates or force update mods using the launcher. Also, you can not subscribe to the β€œdoubtful 50 mods” of the next server and easily remove them with one action from the launcher, while maintaining all the mods for which you have a subscription.

Using SteamCMD

Not using SteamCMD

Installation

With installer

For ease of installation, there is a small script that will do everything for you (at least try to do it)

Execute this:

curl -sSfLA dayz-ctl bit.ly/3Vf2zz3 | bash

Manual installation

For the launcher to work, you need to make sure that you have all the dependencies installed:

Then you can clone the repository:

git clone [email protected]:WoozyMasta/dayz-ctl.git
# or
git clone https://github.com/WoozyMasta/dayz-ctl.git
# and run
cd dayz-ctl
./dayz-ctl

Or download the script file itself:

curl -sSfL -o ~/.local/bin/dayz-ctl \
  https://raw.githubusercontent.com/WoozyMasta/dayz-ctl/master/dayz-ctl
chmod +x ~/.local/bin/dayz-ctl
# and run
dayz-ctl

Emoji

Emojis can be used to properly display elements, you may need to install them, for example, you can use the Noto font from Google.

Below is a list with the package name for different distributions:

Or if you don’t like emoji or can’t use them for some reason, you can apply a patch to replace them with strings:

sed -e 's/▫️/β€’/g' -e 's/🟩/βœ•/g' -e 's/⬛/ /g' -e 's/πŸ•’/time/g' -e 's/❔/?/g' \
  -e 's/🟒/ok/g' -e 's/πŸ”΄/no/g' -e 's/πŸŒ™/night/g' -e 's/β˜€οΈ/day/g' \
  -e 's/πŸ”’/yes/g' -e 's/πŸ”“/no/g' -e 's/βœ…/ok/g' -e 's/❌/no/g' \
  -i "$(which dayz-ctl)"

Tested distros

Other

Steam

It is better to remove all DayZ launch options in Steam and manage them from the launcher or vice versa. Since the keys can be duplicated and this can cause confusion, or in the worst case, cut off some of the keys, because the argument string has a length limit, and on servers with a large number of mods, a very long launch parameter is also used.

Those. leave the launch options empty, or specify only the set of auxiliary utilities and variables you need, for example:

MANGOHUD=1 ENABLE_VKBASALT=1 gamemoderun %command%

Search syntax

You can enter multiple search terms separated by spaces. e.g. ^namalsk DE !PVE !RP

token match type description
sbtrkt fuzzy match Items that match sbtrkt
wild exact-match (quoted) Items that include wild
^music prefix-exact-match Items that start with music
.mp3$ suffix-exact-match Items that end with .mp3
!fire inverse-exact-match Items that do not include fire
!^music inverse-prefix-exact-match Items that do not start with music
!.mp3$ inverse-suffix-exact-match Items that do not end with .mp3

A term with a single bar character acts as an OR operator

PVE | RP

Environment variables

You can fine-tune how the launcher works with the help of environment variables that you can pass to the environment as usual or write to the configuration file $HOME/.local/share/dayz-ctl/dayz-ctl.conf (by default)

List of available variables:

Useful

Steam launch options with MangoHud, vkBasalt and gamemode enabled:

MANGOHUD=1 ENABLE_VKBASALT=1 gamemoderun %command%

Also, without resorting to third-party utilities, you can display an overlay with information about resources and limit FPS using standard DXVK tools, for example:

DXVK_HUD=fps DXVK_FRAME_RATE=60 gamemoderun %command%

Meaning of DXVK_HUD=fps … DXVK_HUD=full:

Frame rate limit DXVK_FRAME_RATE=0