How to Set Up a Nuclear Option Server Mission Rotation (PvP, Co-op, Workshop)
Set up the mission rotation on a Nuclear Option dedicated server. Every built in mission name, co-op vs AI missions, Steam Workshop and custom missions.
Updated Oct 1, 2026 · 6 min read
On this page
A Nuclear Option dedicated server plays a list of missions in a loop: the mission rotation. It decides whether your server is a PvP war, a co-op night against the AI, or a showcase of community missions from the Steam Workshop. This guide covers every built in mission name the server accepts, how to build PvP and co-op rotations, and how to add Workshop and custom missions.
How the rotation works
The rotation lives in DedicatedServerConfig.json, in three keys:
"RotationType": 0,
"MissionDirectory": "/home/steam/NuclearOption-Missions",
"MissionRotation": [
{ "Key": { "Group": "BuiltIn", "Name": "Escalation" }, "MaxTime": 7200.0 },
{ "Key": { "Group": "BuiltIn", "Name": "Terminal Control" }, "MaxTime": 7200.0 }
]
- Each entry names a mission by group and name, with a
MaxTimein seconds. - A mission ends when one side wins or its time runs out. After
PostMissionDelay(30 seconds by default) the next one loads. - With nobody online, the server unloads the mission and waits. The next mission in the rotation loads when the first player joins.
RotationType sets the order:
| Value | Order | Notes |
|---|---|---|
0 |
Sequence | Plays the list top to bottom, then starts again |
1 |
Pure random | Any mission each time, repeats possible |
2 |
Random queue | Shuffles the list and plays each mission once before shuffling again |
Every built in mission name
Built in missions use the group BuiltIn. These are the names the server accepts, exactly as written, checked against the current server build.
PvP operations
| Name | Map | What it is |
|---|---|---|
Escalation |
Heartland | The flagship war of attrition. Stronger aircraft unlock with score, and eventually nuclear weapons |
Terminal Control |
Ignus Archipelago | Island hopping, capturing and holding airbases |
Confrontation |
Heartland | Combined arms on a smaller scale, limited to smaller aircraft |
Domination |
Heartland | Air superiority with top tier aircraft from the start |
Altercation |
Heartland | Low intensity fighting with no medium or long range air to air missiles |
Carrier Duel |
Ignus Archipelago | Two carrier groups, every carrier aircraft available at once. Sink the other carrier to win |
Co-op against the AI
Each large operation also has two co-op versions, where every player flies for one side and the AI fights for the other. BDF is the Boscali Defense Force and PALA is the Primeva Armed Liberation Alliance.
| Fly for BDF | Fly for PALA |
|---|---|
Escalation Co-op as BDF |
Escalation Co-op as PALA |
Terminal Control Co-op as BDF |
Terminal Control Co-op as PALA |
Confrontation Co-op as BDF |
Confrontation Co-op as PALA |
Domination Co-op as BDF |
Domination Co-op as PALA |
Altercation Co-op as BDF |
Altercation Co-op as PALA |
Breakout is a co-op mission too: PALA provokes the BDF navy and has to defend Vigil Cay airbase on Heartland from a naval attack. It is a challenging one for an experienced squadron.
A misspelled name does not stop the server from starting. It fails when the server reaches it in the rotation, with Could not find mission with name in the log, so copy names exactly, including capitals and spaces.
Example rotations
Classic PvP, the game's default:
"MissionRotation": [
{ "Key": { "Group": "BuiltIn", "Name": "Escalation" }, "MaxTime": 7200.0 },
{ "Key": { "Group": "BuiltIn", "Name": "Terminal Control" }, "MaxTime": 7200.0 }
]
Short PvP evenings: Domination, Altercation and Confrontation with a MaxTime of 3600.0 each and RotationType 2, so every night feels different.
Co-op campaign as PALA: the five Co-op as PALA operations followed by Breakout, with RotationType 0 so the squadron works through them in order.
Steam Workshop missions
The server downloads Workshop missions by itself. Use the group Workshop and the item id as the name:
{ "Key": { "Group": "Workshop", "Name": "1234567890" }, "MaxTime": 5400.0 }
The item id is the number at the end of the mission's Workshop page address, after ?id=. When the server starts or reloads its config, it downloads every Workshop mission in the rotation to steamapps/workshop/content/2168680/ inside the server folder, and checks for updates in the background. Public and unlisted items work. If a download fails, the log says Failed to download workshop item and the server skips it.
Players do not need to subscribe to the mission first. The server sends it to them when they join.
Your own missions
Missions you build in the game's mission editor can run on a server through the User group:
- Set
MissionDirectoryto a full path, like/home/steam/NuclearOption-Missions. - Copy the mission into its own folder there, so the file sits at
<MissionDirectory>/<name>/<name>.json. - Add
{ "Key": { "Group": "User", "Name": "<name>" }, "MaxTime": 7200.0 }to the rotation.
The folder name and the .json file name must be exactly the same. NuclearOption-Missions/test1/test1.json loads as test1. NuclearOption-Missions/test1/Test 1.json does not.
Private Workshop missions that the server cannot download can still be used this way: download the item with SteamCMD (+workshop_download_item 2168680 <id>), move the folder into MissionDirectory, rename it to match the .json file inside, and add it as a User mission.
Changing the next mission on the fly
You do not have to restart to change what plays next. The set-next-mission remote command queues a mission after the current one, and clear-next-mission goes back to the rotation. set-time-remaining shortens or lengthens the current mission. All the commands are in Nuclear Option server commands.
On GamezServers
You never have to touch the JSON for a rotation. In Settings > Game settings (or at checkout), the Missions setting has ready made rotations:
| Missions setting | Rotation |
|---|---|
| PvP: Escalation and Terminal Control | The default PvP pair |
| PvP: every large operation | Escalation, Terminal Control, Confrontation, Domination, Altercation, Carrier Duel |
| Co-op vs AI, flying for BDF | The five co-op operations as BDF |
| Co-op vs AI, flying for PALA | The five co-op operations as PALA, plus Breakout |
| My own list | Whatever you write in Mission list |
| Keep the rotation in DedicatedServerConfig.json | The panel leaves MissionRotation alone so you can edit it in Files |
For My own list, write missions separated by commas. Built in missions by name, Workshop missions as Workshop: and the id (or just the number), and uploaded missions as User: and the folder name:
Escalation, Domination Co-op as BDF, Workshop:1234567890, User:test1
Upload your own missions into the NuclearOption-Missions folder in the Files tab, one folder per mission. Mission minutes sets the MaxTime of every mission (120 by default), and Rotation order sets RotationType. Changes apply the next time the server starts. To change what plays next right now, press Set next mission in the control panel and type a name like Terminal Control Co-op as PALA.
Need a server for it? See Nuclear Option server hosting, or the quick start guide.
Skip the setup. Your own Nuclear Option server.
Then $7.99/mo. Just trying it? $2.00 for 3 days