Update Project Settings

Added in version 2026.4.0.

Updates a single property of the project settings document (project name, copyright, languages, and other project-level configuration) in game data.

Command

# bump the game data version (windows)
dnx dotnet-charon -- DATA UPDATEPROJECTSETTINGS \
  --dataBase "c:\my app\gamedata.json" \
  --property Version \
  --value "1.2.0.0"

# the same property addressed by JSON Pointer
dnx dotnet-charon -- DATA UPDATEPROJECTSETTINGS \
  --dataBase "c:\my app\gamedata.json" \
  --property /Version \
  --value "1.2.0.0"

# rename the project
dnx dotnet-charon -- DATA UPDATEPROJECTSETTINGS \
  --dataBase "c:\my app\gamedata.json" \
  --property Name \
  --value "My Project"

# remote game data
dnx dotnet-charon -- DATA UPDATEPROJECTSETTINGS \
  --dataBase "https://charon.live/view/data/My_Game/develop/" \
  --property Copyright \
  --value "My Company (c) 2025" \
  --credentials "<API-Key>"

There is always exactly one project settings document per game data source, so unlike DATA UPDATE this command takes no --schema/--id parameters - its identity is fixed internally.

Available Properties

One property is updated per command run. All project settings properties hold text values.

Property

Description

Id

Unique identifier of the project settings document (BSON ObjectId). Read-only - the command refuses to change it.

Name

Name of the project.

PrimaryLanguage

Primary language for localizable text (language ID in BCP-47 format, e.g. en-US).

Languages

Alternative languages for localizable text (semicolon-delimited list of BCP-47 language IDs, e.g. en-GB;fr-FR). Prefer DATA I18N ADD LANGUAGE when adding a language, because it keeps the primary language out of the list and preserves existing entries.

Copyright

Copyright information for the project.

Version

Version of the current file as four dot-separated numbers (Major.Minor.Build.Revision).

Extensions

Installed extension packages as a semicolon-delimited list of name=version pairs.

See the Project Settings section for the full field reference. Any other property present in the document can be addressed the same way, by name or by JSON Pointer.

Parameters

--dataBase

Absolute or relative path to game data. Use quotation marks if your path contains spaces.

# local file
--dataBase "c:\my app\gamedata.json"

# remote server
--dataBase "https://charon.live/view/data/My_Game/develop/"
--property

Project settings property to update. Use a property name for top level values, or a JSON Pointer starting with / to address nested values.

# top level property by name
--property PrimaryLanguage

# the same property as a JSON Pointer
--property /PrimaryLanguage

# nested value
--property /Extensions/0
--value

New value of the property. It is stored as text unless –valueIsJson is specified.

--value "en-GB;fr-FR"
--valueIsJson

Treats –value as a JSON document and parses it, which allows storing numbers, booleans, arrays, and objects instead of text.

--property Version --valueIsJson --value "\"1.2.0.0\""

--property Extensions --valueIsJson --value "null"
--credentials

The API key used to access remote server in case of –dataBase being URL.

--output

Path to the file receiving the updated document. If the file exists, it will be overwritten. The directory must already exist. Alternatively, you can output to Standard Error, Standard Output, /dev/null, or a URL.

# standard output (default)
--output out
--output con

# standard error
--output err

# null device
--output null

# absolute path (windows)
--output "c:\my app\settings.json"

# absolute path (unix)
--output /user/data/settings.json

# relative path (universal)
--output "./settings.json"

# remote location (HTTP)
--output "http://example.com/settings.json"

# remote location with authentication (FTP)
--output "ftp://user:password@example.com/settings.json"
--outputFormat

Specifies the format of the output data.

# JSON (default)
--outputFormat json

# BSON
--outputFormat bson

# Message Pack
--outputFormat msgpack
--outputFormattingOptions

Additional options for formatting the output.

This command supports universal parameters.

Output

Outputs the updated project settings document.

{
  "Id": "55a4f32faca22e191098f3d9",
  "Name": "My Project",
  "PrimaryLanguage": "en-US",
  "Languages": "en-GB;fr-FR",
  "Copyright": "My Company (c) 2025",
  "Version": "1.2.0.0"
}

See also