Skip to content

How to Change the Scenario Settings on Your Arma Reforger Server ​

Every scenario comes with its own basic settings, e.g., the starting time, the weather or the XP multiplier. With the missionHeader entry in config.json, you override these values for your server. This lets you adjust gameplay rules without changing the scenario itself.

You choose which scenario runs on your server in the dashboard. You can find out how in the guide Change Scenario.

How the missionHeader Works ​

The missionHeader is located in config.json in the root directory of your server, inside "game" → "gameProperties". All values you enter there replace the corresponding values from the scenario's header. Values you do not enter are still taken from the scenario.

Note

On every server start, the dashboard overwrites the fields from the Settings (e.g., Server Name, Scenario ID or Battle-Eye) as well as some fixed values such as fastValidation. It leaves the missionHeader unchanged, so your entries are kept after a restart. You can find an overview of all entries in config.json in the guide Configure Server.

Warning

An entry only takes effect if the scenario or game mode supports it. The Conflict settings further below, for example, only work in Conflict scenarios.

How to Add the missionHeader ​

  1. Stop the server
    Stop your server via the dashboard.

  2. Connect via SFTP
    Connect to your server via SFTP.

  3. Open config.json
    Open the file config.json in the root directory and find the "gameProperties" section inside "game".

  4. Add the missionHeader
    Add the "missionHeader" entry with the desired settings inside "gameProperties". Put a comma after the previous entry. If there already is a "missionHeader", add the settings there.

    Example

    json
    "gameProperties": {
      "missionHeader": {
        "m_sName": "My Conflict Server",
        "m_sDetails": "No teamkilling, no spawn camping. Have fun!",
        "m_bOverrideScenarioTimeAndWeather": true,
        "m_iStartingHours": 7,
        "m_iStartingMinutes": 30,
        "m_fDayTimeAcceleration": 2,
        "m_fNightTimeAcceleration": 6,
        "m_bRandomStartingWeather": true,
        "m_fXpMultiplier": 2
      }
    }

    Leave the other entries in "gameProperties" unchanged.

    Tip

    Check the file with a JSON formatter like JSONLint after editing – a single missing or extra comma is enough to prevent the server from starting.

  5. Start the server
    Save the file and start your server.

General Settings ​

These entries apply to all scenarios, as long as the scenario supports them:

EntryDescription
m_sNameDisplayed name of the scenario
m_sDetailsDetailed description of the scenario, e.g., your server rules
m_bOverrideScenarioTimeAndWeathertrue = the scenario uses the time of day and weather from the missionHeader, if it allows it
m_iStartingHoursStarting time: hour
m_iStartingMinutesStarting time: minute
m_bRandomStartingDaytimetrue = random starting time (overrides m_iStartingHours and m_iStartingMinutes)
m_fDayTimeAccelerationTime acceleration during the day (1 = 100%, 2 = 200% etc.)
m_fNightTimeAccelerationTime acceleration during the night (1 = 100%, 2 = 200% etc.)
m_bRandomStartingWeathertrue = random weather on start
m_bRandomWeatherChangestrue = the weather can change during gameplay
m_fXpMultiplierXP multiplier for players, if the game mode uses XP (1 = default)
m_bMapMarkerEnableDeleteByAnyonetrue = map markers can be deleted by anyone in the faction, false = only by the player who placed them
m_iMapMarkerLimitPerPlayerHow many map markers a player can have at the same time
m_aFactionLimitsMaximum number of players per faction (from version 1.7, see below)
m_sMagazineRepackingRulesOverrideRules for repacking magazines, e.g., "CAN_WITH_SAME_CALIBER" (from version 1.9)
m_sHydrationRulesOverrideRules for hydration (drinking), e.g., "DISABLED" (from version 1.9)

Note

Time and weather settings only take effect if the scenario allows its time of day and weather to be overridden.

Set Faction Limits ​

With m_aFactionLimits, you set how many players can join a faction at most. Each faction is specified by its faction key, e.g., US, USSR or FIA:

json
"missionHeader": {
  "m_aFactionLimits": [
    {
      "m_sFactionKey": "US",
      "m_iFactionLimit": 20
    },
    {
      "m_sFactionKey": "USSR",
      "m_iFactionLimit": 20
    },
    {
      "m_sFactionKey": "FIA",
      "m_iFactionLimit": 0
    }
  ]
}
Value of m_iFactionLimitMeaning
0Faction is disabled
-1No limit
greater than 0Maximum number of players in this faction

Conflict Settings ​

These entries only work in Conflict scenarios. For the numeric entries, -1 means that the scenario's default value is used.

EntryDescription
m_iControlPointsCapHow many control points are required to win
m_fVictoryTimeoutHow long a faction needs to hold a control point, in seconds
m_iStartingHQSuppliesHow many supplies the main HQ starts with
m_iMinimumBaseSuppliesMinimum starting supplies in small bases
m_iMaximumBaseSuppliesMaximum starting supplies in small bases
m_bIgnoreMinimumVehicleRanktrue = no rank requirement for spawning vehicles
m_fSupplyOffloadAssistanceRewardShare of XP for players who unload supplies they did not load themselves

Example

json
"missionHeader": {
  "m_iStartingHQSupplies": 5000,
  "m_iMinimumBaseSupplies": 500,
  "m_iMaximumBaseSupplies": 2000,
  "m_bIgnoreMinimumVehicleRank": true
}

Note

There is also the entry m_aCampaignCustomBaseList, which lets you adjust individual bases. It requires the names of the bases as they are set in the scenario's World Editor. Most servers do not need this entry.

Saving and Automatic Saves ​

You set how often the server saves the game state automatically with the "persistence" entry. It is also located inside "gameProperties", but outside the missionHeader. Follow the steps under How to Add the missionHeader: stop the server, edit config.json via SFTP, start the server.

json
"gameProperties": {
  "persistence": {
    "autoSaveInterval": 15,
    "saveRetention": 5
  }
}

Leave the other entries in "gameProperties" unchanged.

EntryDescription
autoSaveIntervalInterval between automatic saves in minutes (0 to 60, default 10, 0 = disabled)
saveRetentionHow many save points are kept for the current scenario (1 to 128, default 10)

If you want to disable saving completely, set the m_eSaveTypes entry in the missionHeader to 0:

json
"missionHeader": {
  "m_eSaveTypes": 0
}

Warning

With "m_eSaveTypes": 0, saving is disabled completely – the server does not create new save points and does not continue the progress after a restart. Create a backup before making such changes.