Loading a custom scenario on an Arma Reforger server is one of those tasks that looks intimidating until you understand a single line of text: the scenarioId. Whether you want to switch from Conflict on Everon to a Game Master sandbox, run a Combat Ops co-op mission, or boot a fully modded campaign, every one of those choices comes down to setting the correct scenario string in your JSON server config. This guide explains the exact format, lists the official GUIDs you can paste in today, shows how to print every loadable scenario your server can see, and walks through running modded scenarios alongside the Game Master and Workbench World Editor tools that let you build your own.
Everything here targets the current stable 1.6.x build line (the “Operation Omega” branch). Bohemia ships hotfixes roughly weekly, so rather than pinning an exact build, treat this as accurate for the live 1.6 server and re-check GUIDs after any major content patch, since new scenarios can be added.
What “scenario” actually means in Arma Reforger
In Reforger, a scenario is a packaged mission definition: which world loads (Everon, Arland, or Kolguyev), which game mode runs (Conflict, Game Master, Combat Ops, Capture & Hold, Tutorial), and the rules around it. Each scenario lives inside a resource — either the base game or a specific mod — and is identified by a .conf file. Your server picks exactly one scenario at launch through the scenarioId field inside the game block of the config.
Reforger uses a JSON server config file (commonly named config.json or ServerConfig.json), not a classic Arma .cfg file. Every key is case-sensitive, and IPv6 is not supported. If you want the full breakdown of every field — network ports, RCON, view distance, persistence — see our complete server configuration walkthrough. For this guide we focus on the scenario side of that file.
The scenarioId format, decoded
The scenarioId always follows the same shape:
{16-HEX-GUID}Missions/FileName.conf
Three parts matter here:
- {16-HEX-GUID} — a 16-character hexadecimal GUID wrapped in curly braces. This identifies the owning resource: either the vanilla game or a specific mod that the scenario belongs to. The braces are part of the string and must stay.
- Missions/ — the folder path inside that resource where mission files live.
- FileName.conf — the actual scenario definition file, for example
23_Campaign.conffor Conflict on Everon.
Put together, the default Conflict on Everon scenario reads as {ECC61978EDCC2B5A}Missions/23_Campaign.conf. Copy it exactly — a single wrong character (a missing brace, a lowercase letter, the wrong file name) means the server fails to load the scenario and either falls back or refuses to start.
Where scenarioId goes in the config
The field sits inside the game block. Here is a realistic, minimal config skeleton with the scenario set to Conflict on Everon — this is the exact nested shape Reforger expects:
{
"bindAddress": "",
"bindPort": 2001,
"publicAddress": "",
"publicPort": 2001,
"a2s": {
"address": "0.0.0.0",
"port": 17777
},
"rcon": {
"address": "127.0.0.1",
"port": 19999,
"password": "ChangeMe123",
"permission": "admin",
"maxClients": 16,
"blacklist": [],
"whitelist": []
},
"game": {
"name": "My Reforger Server",
"password": "",
"passwordAdmin": "SuperSecretAdminPass",
"admins": [],
"scenarioId": "{ECC61978EDCC2B5A}Missions/23_Campaign.conf",
"maxPlayers": 64,
"visible": true,
"crossPlatform": false,
"supportedPlatforms": ["PLATFORM_PC"],
"gameProperties": {
"serverMaxViewDistance": 1600,
"serverMinGrassDistance": 0,
"networkViewDistance": 1500,
"fastValidation": true,
"battlEye": true
},
"mods": []
},
"operating": {
"lobbyPlayerSynchronise": true,
"playerSaveTime": 120,
"aiLimit": -1,
"slotReservationTimeout": 60,
"joinQueue": { "maxSize": 0 }
}
}
Note the network defaults you’ll need to open in your firewall regardless of scenario: UDP 2001 for the game socket, UDP 17777 for the Steam/A2S query so the server appears in the browser, and 19999 if you use RCON. maxPlayers defaults to 64 and can range from 1 to 128. Keep fastValidation and battlEye set to true on any public server — BattlEye in particular is mandatory if you want console players to join.
Official built-in scenario IDs
These GUIDs are pulled from the official Bohemia community wiki for the 1.6 build. There are roughly 31 official scenarios in total across the various maps and modes; the table below covers the canonical ones most admins actually run. Map roster as of 1.6 is Everon, Arland, and Kolguyev (the last added in 1.6).
| Scenario | scenarioId |
|---|---|
| Conflict – Everon | {ECC61978EDCC2B5A}Missions/23_Campaign.conf |
| Conflict – Arland | {C41618FD18E9D714}Missions/23_Campaign_Arland.conf |
| Conflict – Northern Everon | {C700DB41F0C546E1}Missions/23_Campaign_NorthCentral.conf |
| Conflict – Southern Everon | {28802845ADA64D52}Missions/23_Campaign_SWCoast.conf |
| Game Master – Everon | {59AD59368755F41A}Missions/21_GM_Eden.conf |
| Game Master – Arland | {2BBBE828037C6F4B}Missions/22_GM_Arland.conf |
| Game Master – Kolguyev | {F45C6C15D31252E6}Missions/27_GM_Cain.conf |
| Combat Ops – Arland | {DAA03C6E6099D50F}Missions/24_CombatOps.conf |
| Combat Ops – Everon | {DFAC5FABD11F2390}Missions/26_CombatOpsEveron.conf |
| Capture & Hold – Briars | {3F2E005F43DBD2F8}Missions/CAH_Briars_Coast.conf |
| Tutorial | {002AF7323E0129AF}Missions/Tutorial.conf |
To switch your server’s scenario, you literally just swap the string. Want a Game Master sandbox on Kolguyev instead of Conflict on Everon? Change one line:
"scenarioId": "{F45C6C15D31252E6}Missions/27_GM_Cain.conf",
Save the config and restart the server. That’s the entire process for any of the official scenarios.
Printing every loadable scenario with -listScenarios
Memorizing GUIDs is impractical, and modded scenarios won’t be in any table — so Reforger ships a launch parameter that prints every scenario the server can actually load, including ones from mods you’ve installed. Add -listScenarios to your startup command:
ArmaReforgerServer.exe -config ".\Configs\ServerConfig.json" -listScenarios
./ArmaReforgerServer -config /path/to/config.json -listScenarios
On startup the server prints all loadable scenario IDs to the console and log. This is the single most reliable way to discover the exact {GUID}Missions/....conf string for a mod you’ve added, because the GUID belongs to the mod’s resource, not the base game. Run it once, copy the ID you want out of the output, paste it into scenarioId, then remove -listScenarios for normal operation.
A few other launch parameters pair well with scenario testing: -maxFPS (cap it around 60–120 so the server doesn’t pin a CPU core running at thousands of FPS), -logStats (periodically logs server FPS and performance), and -profile (sets where logs and crash data are written). If you’d rather not touch a command line at all, our Arma Reforger panel documentation shows how to set the scenario and these flags from a control panel.
Running a modded (custom) scenario
This is where “custom scenario” gets interesting. The mechanism is identical to the official scenarios — you set a scenarioId — but the GUID points at a mod’s resource instead of the base game, and that mod has to be loaded. Reforger mods come from the in-game Reforger Workshop (browsable at the official workshop site), not the Steam Workshop, and the server auto-downloads any mod listed in your config when it starts.
The two-step pattern:
- Add the scenario’s mod to the
modsarray. Each entry is keyed bymodId— a 16-character hexadecimal GUID — with an optional human-readablename, an optionalversion(omit it to always pull the latest), and an optionalrequiredflag. - Set
scenarioIdto that mod’s{GUID}Missions/....confstring. Use-listScenariosto find the exact path the mod exposes.
A worked example, adding a mission/scenario mod and pointing the server at it:
"scenarioId": "{591AF5BDA9F7CE8B}Missions/CaptureAndHold.conf",
"mods": [
{
"modId": "591AF5BDA9F7CE8B",
"name": "Capture & Hold",
"version": "1.0.3",
"required": true
}
]
(The GUID above is illustrative — always pull the real one from -listScenarios or the mod’s Workshop page URL, which contains the 16-char hex GUID. It also appears in the mod’s ServerData.json.)
Dependencies and load order
Modded scenarios usually depend on other mods, and those dependencies have dependencies of their own. All of them must be present in the mods array, and load order matters: frameworks and dependencies load first, content and add-ons after. For example, an ACE core mod must load before ACE extensions, and a base overhaul like Overthrow loads before its faction or map packs. Get the order wrong and the scenario may fail to initialize or behave unpredictably. Many host control panels and community tools auto-resolve the GUID plus its dependency tree for you, which removes most of the manual guesswork.
The console-compatibility trap
If your server is cross-platform, the mods behind your custom scenario directly affect who can join. Since Update 1.4 (May 2025), PS5 players can join modded servers — but only mods that ship data and assets only. Mods containing script code are blocked on PSN by Sony policy, so a heavily scripted scenario or framework will silently exclude PlayStation players even if PLATFORM_PSN is in your supportedPlatforms. Xbox follows similar data-versus-script restrictions in spirit, with console compatibility declared per mod. If reaching console players matters, lean toward data-only scenarios. The full crossplay setup, including the battlEye: true requirement, is covered in our cross-platform server guide.
Game Master and the Workbench World Editor
Setting an existing scenario is one thing; creating your own is where two distinct tools come in, and people often confuse them.
Game Master — live, in-game authoring
Game Master (the “Eden” / Zeus-style mode) is the runtime tool. An admin in Game Master can control the world in real time: spawn AI, place objects and vehicles, trigger events, and run dynamic operations on the fly while players are connected. It’s the fastest way to improvise a custom session without building anything offline — load a Game Master scenario ID (like {59AD59368755F41A}Missions/21_GM_Eden.conf), join as admin, and start composing. Game Master is also how you perform a manual, named save of a hosted session that you can reload later.
Workbench World Editor — offline scenario building
The Workbench World Editor is the offline, developer-grade tool (part of the Enfusion engine tools) used to build custom scenarios from scratch — laying out worlds, placing entities, and defining mission logic. Scenarios authored in Workbench are published to the Reforger Workshop, which assigns them a GUID, and from there any server can reference them through the standard {GUID}Missions/....conf string. So the full custom-content pipeline looks like: build in Workbench → publish to the Workshop → add the resulting mod GUID to your server’s mods array → set scenarioId to its scenario path.
For most server owners, the practical workflow is a blend: use Game Master for live, ad-hoc sessions and quick custom ops, and reserve the World Editor for polished, reusable scenarios you intend to share. If you’re standing up a brand-new machine to host any of this, our step-by-step server setup guide covers SteamCMD install and first boot.
Quick reference: install and launch
Because a custom scenario is useless without a server to run it on, here are the essentials. The dedicated server installs anonymously through SteamCMD — you do not need to own the game on the host machine — and there is a genuine native Linux binary, so no Proton or Wine is required.
| Item | Value |
|---|---|
| Dedicated server app ID (stable) | 1874900 |
| Dedicated server app ID (experimental) | 1890870 |
| Windows binary | ArmaReforgerServer.exe |
| Linux binary | ./ArmaReforgerServer |
| Game port (UDP) | 2001 |
| Steam/A2S query port (UDP) | 17777 |
| RCON port | 19999 |
steamcmd.exe +force_install_dir "C:\ArmaReforger\Server" +login anonymous +app_update 1874900 validate +quit
Then launch with your config and the scenario already set inside it:
ArmaReforgerServer.exe -config ".\Configs\ServerConfig.json" -maxFPS 60 -profile ".\profile"
If you’d rather skip the SteamCMD and firewall work entirely, our managed Arma Reforger hosting ships with one-click scenario switching, automatic mod resolution, and full crossplay support — you just paste the GUID or pick from a list.
Frequently asked questions
What is the scenarioId for Conflict Everon in Arma Reforger?
Conflict on Everon — the flagship large-scale Conflict mode — uses {ECC61978EDCC2B5A}Missions/23_Campaign.conf. Paste it into the scenarioId field inside the game block of your JSON config exactly as shown, including the curly braces. Conflict on Arland is a different GUID, {C41618FD18E9D714}Missions/23_Campaign_Arland.conf, and there are separate Northern and Southern Everon variants too.
How do I find the GUID for a modded scenario?
The most reliable method is to add the mod to your mods array, then start the server with the -listScenarios launch parameter. The server prints every loadable scenario ID — including the mod’s — to the console and log, and you copy the exact {GUID}Missions/....conf string from there. You can also read the 16-character hex GUID directly from the mod’s Reforger Workshop page URL, or from its ServerData.json file.
Can I run a custom scenario with mods on a console-friendly server?
Partly. Since Update 1.4, PS5 players can join modded servers, but only if the mods are data-only — any mod containing script code is blocked on PlayStation by Sony policy and will silently exclude PS5 players even when PLATFORM_PSN is listed. Xbox applies similar data-versus-script restrictions, declared per mod. BattlEye (battlEye: true, the default) must stay enabled for console crossplay at all. If your custom scenario relies on heavily scripted frameworks, expect a PC-and-maybe-Xbox audience rather than full crossplay.
What’s the difference between Game Master and the World Editor?
Game Master is the live, in-game mode where an admin spawns AI, objects, and events in real time during an active session — great for improvised custom ops and the way you perform manual saves. The Workbench World Editor is the offline Enfusion tool for building polished, reusable scenarios from scratch, which you then publish to the Workshop to receive a GUID. Use Game Master for on-the-fly sessions; use the World Editor for shareable custom content.
Why won’t my server load the scenario I set?
Almost always it’s the string. The scenarioId is case-sensitive and must include the curly braces, the exact 16-character GUID, the Missions/ path, and the precise .conf file name. For modded scenarios, the owning mod must also be present in the mods array with its dependencies in the correct load order — frameworks first, content after. Run -listScenarios to confirm the exact ID the server can actually see, and check your profile log for load errors.
Can I play a custom scenario solo or offline?
Yes. You can host a local server with any scenario ID and play in it yourself, including Game Master (load {59AD59368755F41A}Missions/21_GM_Eden.conf) for a personal sandbox, or Combat Ops for randomized solo missions. The 1.6 update also added a proper offline single-player Campaign (Operation Omega on Kolguyev). For a fuller breakdown of playing alone, see our solo mode getting-started guide.
Once you’re comfortable swapping scenario IDs, the natural next step is layering in a focused mod stack. Keep it deliberate — one content pack, one realism framework, a scenario tool, and a couple of QoL mods generally beats a sprawling list, and it keeps console compatibility predictable.
Ready to play?
Run your own Arma Reforger server with XGamingServer
Spin up an always-on Arma Reforger server your friends can join in minutes — no port-forwarding, no tech headaches.




