Skip to content

Arma 3 Mods on a Dedicated Server: Workshop IDs, -mod, -serverMod and Keys

Install Arma 3 mods on a dedicated server: Launcher modlist or Workshop IDs, -mod vs -serverMod, optional mods, bikeys, verifySignatures, lowercase.

Updated September 28, 2026
Arma 3

Arma 3 mods are Steam Workshop items that load as @folders, and a modded dedicated server has to agree with its players on three things: which folders are on the -mod line, which signing keys sit in keys/, and what the server lets clients join with (verifySignatures). This guide shows how the GameServerKings (GSK) Arma 3 panel handles all three: Workshop IDs in the Startup tab, a modlist exported from the Arma 3 Launcher, server-only mods, optional mods and the Linux lowercase problem.

It's written for server owners. If you only want to play with mods, subscribe on the Workshop and enable them in the Launcher.

Workshop downloads need a Steam account that owns Arma 3

Our Arma 3 server installs and updates through a Steam login rather than anonymously, and Workshop mod downloads only work when the Steam account set on the server owns Arma 3. Those login fields are hidden in your panel. Before you rely on the automatic download routes below, contact support so we can confirm your server has a working account, and contact us too if the console shows Cannot download mod - Download failed. Until then you can upload mod folders yourself (see Uploading a Mod Manually below).

The Three Kinds of Mod on an Arma 3 Server

Bohemia's startup parameters give the server two mod lines, and the GSK egg adds a third category:

Kind Loaded with Players need it? Panel variable
Client-side (most mods: ACE, CBA_A3, RHS, maps, game modes) -mod= Yes, the same mods Additional Mods or Modlist File
Server-side only (admin tools, persistence back ends) -serverMod= No [Advanced] Server-Side Only Mods
Optional client mods (sound, UI, cosmetic) Not loaded; only the key is installed Their choice [Advanced] Optional Client-Side Mods

-serverMod content isn't broadcast to clients, so players don't see it on the server's mod list. Anything that adds units, weapons, vehicles or terrain has to be on -mod. The server runs it, and every client must run it too.

Route 1: Upload a Launcher Modlist (the Easy Way)

The Arma 3 Launcher can export any preset as an HTML file. The GSK image reads that file and turns every Workshop item in it into an @<id> mod.

  1. In the Arma 3 Launcher, load the mods you play with and use the preset Export option to save them as an HTML file.
  2. In the panel, open Files and upload it to the server root as modlist.html (the default name in Modlist File (Exported from A3 Launcher); change the variable if you prefer another filename).
  3. Make sure Automatic Updates is 1 and restart.

With a working Steam account on the server, the console prints on boot Checking all Steam Workshop mods for updates..., then a Downloading new Mod: line for each item. The image only accepts files that contain the Launcher's Created by Arma 3 Launcher marker, so a hand-written list won't parse. It logs Arma 3 Modlist file "modlist.html" could not be found, or is invalid! and falls back to Additional Mods.

Route 2: Type Workshop IDs in Additional Mods

The Workshop ID is the number at the end of the item's URL, steamcommunity.com/sharedfiles/filedetails/?id=450814997 for CBA_A3. Put an @ in front and end every entry with a semicolon:

@450814997;@463939057;

That line loads CBA_A3 and ACE. The egg's rules for this field are strict: no capital letters, no spaces, and no folder names that start with a number. The @ prefix is what keeps Workshop IDs legal. Only entries in the @<digits> form are downloaded and kept updated. Anything else, such as @mymod; or a Creator DLC folder like vn;, is loaded as-is from the server root, so you upload it yourself.

Additional Mods and the modlist file stack: the server loads both and removes duplicates.

What Happens to a Workshop Mod on Boot

With Automatic Updates on and a Steam account that owns Arma 3 set on the server, for every @<id> in any of the three mod variables, the image:

  1. Compares the item's latest Workshop changelog date with the date of its folder, and downloads it through SteamCMD only if it's missing or newer.
  2. Moves it to @<id> in the server root.
  3. Renames every file and folder in it to lowercase.
  4. Copies every .bikey it contains into keys/.

Step 3 matters because the server runs on Linux. Bohemia's dedicated server notes warn that "some mods such as CUP Terrains and @ALiVE will not function if there are capital letters in any of their file names". Workshop downloads are handled for you. For a mod you uploaded yourself from a Windows PC, set [Repair] Make Mod Files Lowercase to 1 for one boot, then set it back to 0.

Keys and verifySignatures

The GSK default server.cfg ships with verifySignatures = 2;. Bohemia's server config reference: it "verifies .pbos against .bisign files", and 2 means only v2 signatures are accepted. In practice:

  • A player can only join with mods whose .bikey is in the server's keys/ folder. Workshop mods get their keys copied automatically.
  • For a mod you uploaded yourself, copy its key from @modname/keys/ (sometimes key/) into the top-level keys/ folder.
  • Keep verifySignatures at 2. Setting it to 0 turns signature checking off entirely, so the server stops checking what players load.

Optional Client-Side Mods use this: the image downloads the mod, keeps only its key (renamed optional_<id>_<name>.bikey), and deletes the rest. Players who run the mod can join, and so can players who don't. Remove the ID from the variable and the key is removed on the next boot.

Uploading a Mod Manually

For a mod that isn't on the Workshop, or when a download keeps timing out (huge packs like RHS or CUP):

  1. On your PC, copy the mod folder from !Workshop in your Arma 3 install, or from wherever the author distributes it.
  2. Rename it to lowercase with no spaces, for example @mymod.
  3. Upload it to the server root over SFTP. Large packs upload far more reliably over SFTP than through the browser.
  4. Copy its .bikey into keys/.
  5. Add @mymod; to Additional Mods (or Server-Side Only Mods), run one boot with Make Mod Files Lowercase on, and restart.

Manually uploaded mods aren't updated for you. When the author releases a new version, upload it again so the server matches what your players have.

Creator DLC

Set Download Creator DLCs to 1 and restart once so the server fetches the CDLC data (it switches the update to the creatordlc branch). Then add the DLC's folder to Additional Mods. The egg's own example is vn; for S.O.G. Prairie Fire.

Dependencies

Every framework a mod needs must be on the list too. The Workshop page's Required items box lists them. For example, ALiVE requires CBA_A3 (@450814997), and so do many other large mods. The image sorts the combined mod list and removes duplicates before it builds -mod, so there's no point hand-ordering it. The job is to make the list complete. Exporting the exact preset your group already plays with (Route 1) is the least error-prone way to do that.

For a full game mode built this way, see Arma 3 Antistasi Server Setup (Plus the Arma Reforger Alternatives). For ALiVE's server-side mod and persistence, see ALiVE on an Arma 3 Dedicated Server: Mods, Persistence and Saves. On Arma Reforger, mods go in config.json instead: see Arma Reforger mods.

Troubleshooting

Console / symptom Fix
Timeout downloading Steam Workshop mod Expected for very large mods. Restart to try again, or upload the mod manually.
Cannot download mod - Download failed The server's Steam account can't download the mod (usually it doesn't own Arma 3). Contact support, and upload the mod manually meanwhile.
Unable to complete download - Not enough storage Your disk quota is full. RHSUSAF and RHSAFRF alone are about 7.5 GB each.
Players kicked with a signature message Missing .bikey in keys/, or a player running a mod version the server doesn't have
A mod "loads" but does nothing Folder name or files not lowercase. Run one boot with Make Mod Files Lowercase.
Everyone can see the server but can't join See players can't connect

Take a backup before a big mod change, especially on a persistent mission.


Made with 💜 by GameServerKings

Need an Arma 3 server?

Deploy an instantly-provisioned Arma 3 server on high-clock hardware — DDoS protected, no contracts, cancel anytime.

From $7.80 /month