# Custom Data JSON

{% embed url="<https://youtu.be/0hvFs6kGa_g>" %}

The custom data JSON file can be used to add personal items to certain UI lists. The path to the file can be set in the [add-on preferences](https://mrcmodding.gitbook.io/arma-3-object-builder/general/add-on-preferences).

## Data

The add-on expects a specific structure to be found in the JSON. The specific sections must be named as required, and placed in the root object of the JSON file.

{% hint style="warning" %}
Due to the JSON syntax specifications, file paths should use `/`, or the `\` characters must be properly escaped as `\\.`
{% endhint %}

<details>

<summary>Proxies</summary>

Section to define personal items for the [Common Proxies](https://mrcmodding.gitbook.io/arma-3-object-builder/properties/proxy#common-proxies) list. The key value is the name that will be shown in the list, the value is the path to the proxy model.

```json
"proxies": {
	"Personal proxy 1": "path/to/proxy_1.p3d",
	"Presonal proxy 2": "path/to/proxy_2.p3d"
}
```

</details>

<details>

<summary>Named Properties</summary>

Section to define personal items for the [Common Named Properties](https://mrcmodding.gitbook.io/arma-3-object-builder/properties/lod#common-named-properties) list. The key is the name of the named property, the value is the value of the named property. A list of named properties supported by the engine can be found on the [Community Wiki](https://community.bistudio.com/wiki/Arma_3:_Named_Properties).

```json
"namedprops": {
	"property_1": "value_1",
	"property_2": "value_2"
}
```

</details>

<details>

<summary>Materials</summary>

Section to define personal items for the [Common Materials](https://mrcmodding.gitbook.io/arma-3-object-builder/properties/material#common-materials) list. The key value is the name that will be shown in the list, the value is the path to the material file.

```json
"materials": {
	"Material 1": "path/to/material_1.rvmat",
	"Material 2": "path/to/material_2.rvmat"
}
```

</details>

<details>

<summary>Penetration Materials</summary>

Section to define personal items for the [Common Materials](https://mrcmodding.gitbook.io/arma-3-object-builder/properties/material#common-materials) list. The key value is the name that will be shown in the list, the value is the path to the material file.

```json
"materials_penetration": {
	"Penetration Material 1": "path/to/pen_material_1.rvmat",
	"Penetration Material 2": "path/to/pen_material_2.rvmat"
}
```

</details>

<details>

<summary>Procedural Textures</summary>

Section to define personal items for the [Common Procedurals](https://mrcmodding.gitbook.io/arma-3-object-builder/properties/material#common-procedurals) list. The key value is the name that will be shown in the list, the value is the procedural texture string to paste.

```json
"procedurals": {
	"Procedural": "#(argb,512,512,1)r2t(rendertarget0,1.0)"
}
```

</details>

<details>

<summary>RVMAT Templates</summary>

Section to define personal items for the Templates tool of the [Materials](https://mrcmodding.gitbook.io/arma-3-object-builder/tools/materials) tools. The key value is the name that will be shown in the list, the value is the path to a [template file](https://mrcmodding.gitbook.io/arma-3-object-builder/tools/materials/rvmat-templates).

```json
"rvmat_templates": {
	"Template": "path/to/template.rvmat_template"
}
```

</details>

## Example

{% code title="custom\_data.json" fullWidth="false" %}

```json
{
	"proxies": {
		"Personal proxy 1": "path/to/proxy_1.p3d",
		"Presonal proxy 2": "path/to/proxy_2.p3d"
	},
	"namedprops": {
		"property_1": "value_1",
		"property_2": "value_2"
	},
	"materials": {
		"Material 1": "path/to/material_1.rvmat",
		"Material 2": "path/to/material_2.rvmat"
	},
	"materials_penetration": {
		"Penetration Material 1": "path/to/pen_material_1.rvmat",
		"Penetration Material 2": "path/to/pen_material_2.rvmat"
	},
	"procedurals": {
		"Procedural": "#(argb,512,512,1)r2t(rendertarget0,1.0)"
	},
	"rvmat_templates": {
		"Template": "path/to/template.rvmat_template"
	}
}
```

{% endcode %}
