# Adding New Settings

{% hint style="success" %}
verified: 2025-11-20 version: v39
{% endhint %}

You can also define new live config settings for your project.

To add a Live Config setting entry, you need to do the following:

1. Navigate to your `project` schema under:\
   \
   `{project-root}/Config/LiveConfig/Schemas/project.schema.json`.\\
2. Add your new property at the appropriate with the following fields:
   * `type` - data type of the config value
     * either `string`, `boolean`, `number`, `integer` , `object` or `array` (of `string`, `boolean`, `number`, or `integer` types - more details can be found in [Using Arrays](/platform-documentation/creation/unreal-development/features-and-tutorials/live-config/using-arrays-in-live-config.md))
   * `description` - brief explanation of the config setting
     * displayed alongside your setting in the online editor\\
3. Then, depending on the value of `type` you ***must*** add the following field to your config entry:
   * If `type` is `object`
     * `properties`: A JSON object containing a group of Live Config schema entires.
   * If `type` is NOT `object`
     * `default`: The initial value for the setting for a newly started world. (Note: This default value can be overridden on a per-map basis. See [this section](/platform-documentation/creation/unreal-development/features-and-tutorials/live-config/overriding-default-live-config-settings.md) for details.)\\
4. \[Optional] You can also add value restrictions on to your values depending on your live config setting `type`. These restrictions will be checked only when you update live config values in a running cloud deployment
   * If `type` is `number` or `integer`
     * `minimum`/`exclusiveMinimum`: The minimum allowed value for the config (`exclusive` only accepts values strictly greater than the given number).
     * `maximum`/`exclusiveMaximum`: The maximum allowed value for the config (`exclusive` only accepts values strictly less than the given number).
     * `multipleOf`: Valid for `integer` type only. Restricts live config setting to allow only integers which is a multiple of the value given.
   * if `type` is `string`:
     * `minLength`: An integer denoting the minimum length of the string.
     * `maxLength`: An integer denoting the maximum length of the string.
     * `pattern`: A string of regex pattern that the config string must match.

An example of a correctly defined `string` type live config setting is the following:

```json
"MyStringConfig":
{
    "type": "string",
    "description": "This is a new live config string!",
    "default": "my live config string"
}
```

This live config setting can be queried with the `project` config type and `"MyStringConfig"` attribute name.

An example of a correctly defined group of `boolean` and `integer` type live config setting is the following:

```json
"MyConfigGroup":
{
    "type": "object",
    "description": "This is a new group of live config settings!",
    "properties":
    {
        "MyIntegerConfig":
        {
            "type": "integer",
            "description": "This is a nested live config integer!",
            "default": 25,
            "exclusiveMinimum": 0,
            "maximum": 100
        },
        "MyBooleanConfig":
        {
            "type": "boolean",
            "description": "This is a new live config boolean!",
            "default": false
        }
    }
},
```

These live config settings can be queried with the `project` config type and `"MyConfigGroup.MyIntegerConfig"` or `"MyConfigGroup.MyBooleanConfig"` attribute names.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.otherside.xyz/platform-documentation/creation/unreal-development/features-and-tutorials/live-config/adding-new-live-config-settings.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
