Skip to content

Hosting ​

The server folder ​

The server uses its working directory as its data folder and does not start unless that folder contains resources/. Everything it reads and writes is stored next to resources/:

PathContents
resources/The installed resources, one folder per resource.
server.tomlThe configuration. Optional: every setting has a default.
server_identity.keyThe server's identity key, created on the first start.
bans.tomlThe ban list, updated when a resource adds or removes a ban.
data/Storage for resources that declare [storage].

Back up server_identity.key and data/. Updates replace the server binary and the bundled resources, but never these files.

The identity key ​

The server signs its responses with the key in server_identity.key. A player's launcher remembers the key of each server it has joined and rejects a server at the same address that presents a different key. Keep this file when you move or reinstall the server; with a new key, returning players' launchers will refuse to connect.

Ports ​

PortProtocolDefaultPurpose
GameUDP23277All game traffic.
Client filesTCPSame as the game portFiles for resources with views, downloaded when a player joins.

Open both ports in your firewall. Ports given on the command line override the configuration: darqlinemp-server [game_port [client_files_port]].

Console ​

The server reads commands from standard input:

CommandDescription
helpLists the built-in commands.
status, uptime, versionShows the server version, uptime and current state.
playersLists connected players.
password set <text>, password clearSets or removes the join password until the server restarts; server.toml is not changed.
resource listLists installed resources and shows which are running.
resource start <name>, resource stop <name>, resource reload <name>Starts, stops or restarts a resource.
shutdown [reason]Stops all resources, waits for their pending storage writes and exits.

Ctrl-C and SIGTERM trigger the same shutdown as shutdown. Resources can register their own commands with dlmp.add_console_command.

Docker ​

The Dockerfile builds a Debian image with the server and the bundled resources:

sh
docker build -t darqlinemp-server .
docker run -d -p 23277:23277/udp -p 23277:23277/tcp -v darqlinemp-data:/srv/darqlinemp darqlinemp-server

/srv/darqlinemp is the server folder; mount it as a volume. Its resources entry is a link to the resources inside the image, so updating the image updates the resources while the key, the ban list and the storage persist. Configure the server with a server.toml in the volume or with DARQLINEMP_* environment variables (-e DARQLINEMP_NAME="My server"). If you set a separate client files port, publish it too with -p <port>:<port>/tcp. docker stop shuts the server down cleanly.

Versions and compatibility ​

A client can only join a server that uses the same protocol revision; the version command prints the server's revision. When a launcher update moves players to a new revision, update the server as well. The protocol documents the current revision.

Documentation licensed under CC BY 4.0. DarqlineMP is not affiliated with Rockstar Games or Take-Two Interactive. Grand Theft Auto is a trademark of Take-Two Interactive Software, Inc.