---
name: "missionConfigFile"
type: command
status: ok
groups: ["Config"]
arma3_since: "0.50"
locality: {"argument": null, "effect": null, "server_exec": false}
source: https://community.bistudio.com/wiki/missionConfigFile
revid: 342131
updated: 2023-07-09T12:26:44Z
---

# missionConfigFile

*Command · Config · Arma 3 v0.50 · introduced in Armed Assault v1.00*

## Description

Return root of mission [Description.ext](../topics/Description.ext.md) entries hierarchy.

> [!IMPORTANT]
> Since the introduction of the Eden Editor, scenario attributes can be configured in the editor itself, not only in the external Description.ext file.
> To access desired value independently on where it is stored, use the following commands:
> - [getMissionConfigValue](../commands/getMissionConfigValue.md)
> - [getMissionConfig](../commands/getMissionConfig.md)

## Syntax

```sqf
missionConfigFile
```

**Returns:** [Config](../topics/Config.md)

## Examples

### Example 1

```sqf
for "_i" from 0 to (count paramsArray - 1) do
{
    missionNamespace setVariable [configName ((missionConfigFile/"Params") select _i), paramsArray select _i];
};
```

### Example 2

To define custom values in [description.ext](../topics/Description.ext.md):

```cpp
class myMissionConfig
{
    class mySetup
    {
        myNumber = 3;
        myArray[] = { 1, 2, 3 };
        myText = "LOL";
    };
};
```

To read defined custom values from a script:

```sqf
_myNumber = getNumber (missionConfigFile >> "myMissionConfig" >> "mySetup" >> "myNumber");
_myArray = getArray (missionConfigFile >> "myMissionConfig" >> "mySetup" >> "myArray");
_myText = getText (missionConfigFile >> "myMissionConfig" >> "mySetup" >> "myText");
```

## See also

[configFile](../commands/configFile.md) · [campaignConfigFile](../commands/campaignConfigFile.md) · [getMissionConfigValue](../commands/getMissionConfigValue.md) · [getMissionConfig](../commands/getMissionConfig.md) · [getMissionPath](../commands/getMissionPath.md)

## Community notes

**Killzone_Kid** — 2015-02-17

[missionConfigFile](../commands/missionConfigFile.md) can be used to parse *mission.sqm* file data as well if it is included into [description.ext](../topics/Description.ext.md):

```cpp
class MissionSQM
{
    #include "mission.sqm"
};
```

Then *mission.sqm* data can be accessed like this:

```sqf
getNumber (missionConfigFile >> "MissionSQM" >> "version"); // 12 - version param in mission.sqm
```

(courtesy of Master85)

---

**Dedmen** — 2018-04-27

If your [Description.ext](../topics/Description.ext.md) file is empty, [str](../commands/str.md) [missionConfigFile](../commands/missionConfigFile.md) may report an empty string instead of the path to the file. You have to put at least one entry into your config.

To get file path with [description.ext](../topics/Description.ext.md) to play sound via [playSound3D](../commands/playSound3D.md) (before [getMissionPath](../commands/getMissionPath.md)):

```sqf
private _missionRootPath = str missionConfigFile select [0, count str missionConfigFile - 15];
```

<sub>Source: [BI Community Wiki — missionConfigFile](https://community.bistudio.com/wiki/missionConfigFile) (revision 342131).</sub>
