Move settings between machines
Export settings to a file, import them elsewhere, and read what was left out
Move settings between machines
You can export the settings of an app to a file and import that file on another machine, or into another scene. This guide shows both steps, and what an import does with a setting it does not know.
What a settings file holds
A settings file holds the values that are set at one level, and nothing else. A setting that has its default, or that comes from another level, is not in the file. The file is JSON:
{
"level": "app",
"schema": "construct",
"values": {
"bloomThreshold": 0.8,
"workerViewport": false
}
}
schema names the app the file belongs to. An import refuses a file of
another app.
Export settings
- Open the settings window with Ctrl+,.
- In Write to, choose the level to export. An app with one level has no Write to, so skip this step.
- Click Export… in the footer.
- Choose a name and a folder, and click Save.
The window suggests a name from the app, its settings and the level, for
example construct-construct-app.json.
Import settings
- Copy the file to the other machine.
- Open the settings window with Ctrl+,.
- In Write to, choose the level to import into.
- Click Import… in the footer and open the file.
The import writes at the level you chose in Write to, not at the level named in the file. So a file exported from one scene can set the look of another scene.
The import is one step. Undo in the footer takes all of it back. A setting that the file does not name keeps its value.
When an import does not take everything
The import writes every value it can, and lists the rest by name. A message starts with how many settings it imported, followed by Not imported: and one line per setting it left out:
| Line | Cause |
|---|---|
fogDensity: not a setting of this schema |
The file names a setting that this version of the app does not have, for example a file from a newer version |
workerViewport: cannot be held at level scene. It can be held at: app |
The level you chose cannot hold that setting. Choose the level the line names, and import again |
| A reason that names the setting and its value | The value is not valid, for example a number outside a hard limit |
If every value was imported, no message shows.
A file of another app is refused as a whole, with a message such as
The file is for schema "paint", not "construct". Nothing changes.
Which level to move in Construct
Construct keeps settings at three levels. Choose the one that holds what you want to move:
| Write to | The file holds | Use it to |
|---|---|---|
| New scenes | What new scenes and new cameras start with, and the settings of the This machine category | Carry your defaults to a new machine |
| Scene | The look and quality that the open scene sets | Give another scene the same look |
| Camera: ‹name› | The overrides of the camera the viewport looks through | Give another camera the same overrides |
The This machine settings describe the machine you exported from, for example Base folder and Export worker threads (0 = auto). After an import on another machine, open This machine and check that the folder exists there.
Script the move
A plan or a language model can do the same with the OPAL tasks
config.export and config.import. config.export returns the file as
text, and config.import takes it back. See
Config OPAL tasks.