-
Notifications
You must be signed in to change notification settings - Fork 30
Config JSON
🚨 The Config System has undergone significant changes in version 6.0.0, and as a result, the current documentation is outdated. 🚨
Please refer to the Class Reference while we work on updating the documentation.
- Example of the new
config_schema
inmanifest.json
: Manifest Example - Example Mod Config Editor UI: Example Mod Repo
v5.0.1 Docs ⤵
ModLoader supports config files in the JSON format.
Custom configs can be added by users, to a folder named configs (res://configs
, ie. a folder named configs
in the game's root directory, where the EXE is).
They are named by the mod ID (eg. AuthorName-ModName.json
).
See get_mod_config in API Methods for usage in the code.
Mod developers can include default settings in a mod's manifest.json file, via extra.godot.config_defaults
.
If a mod uses get_mod_config
when no custom JSON file exists, that mod's default settings will be used instead (returned as data
). This works whether you're using key
or not.
{
"extra": {
"godot": {
"config_defaults": {
"foo": "bar"
}
}
}
}
A user's custom config file can use these special settings, in addition to a mod's own settings.
If specified, their config is loaded from the specified file, instead of the file named after the mod ID.
The load_from
JSON file should be in the same directory, and include the file extension, eg:
{
"load_from": "my-special-config.json"
}
This allows users to multiple config files for a single mod and switch between them quickly. This settings is ignord if the filename matches the mod ID, or is empty.
Home ~ Setup ~ Mod Structure ~ Mod Files ~ API Methods ~ Logging