config/customadvancements-common.toml inside your Minecraft instance directory. Forge generates the file with default values the first time the game launches with the mod installed — you do not need to create it by hand.
All keys live under the section header ["Config for Custom Advancements"]. Edit the file with any plain-text editor.
When you save the config file while the game is running, Forge re-reads it and the mod responds by running a full reload of its advancement data, so most changes apply without a restart. The
/ca reload command does the opposite: it re-reads your JSON files, textures, and language files, but does not re-read this config file. If a config change does not seem to take effect, restart the server to be certain.All configuration options
boolean
default:"true"
Whether the mod sends a chat message to players when a newer version of Custom Advancements is available. Set to
false to silence update notifications.boolean
default:"false"
When
true, every advancement is removed from the game — vanilla, modded, and custom alike. This is the most aggressive removal option and overrides the blacklist entirely. Recipe advancements are removed along with everything else.boolean
default:"false"
When
true, every advancement whose path contains recipes/ is removed from the game. This applies to both vanilla and mod recipe advancements and is processed independently of the blacklist, so you never have to list recipe advancements by hand.boolean
default:"false"
When
true, the advancements that Minecraft and other mods would normally load are discarded, and only the files inside your customadvancements/ folder are registered. Use it when your own files are meant to replace the vanilla set completely rather than coexist with it. Any of your advancements whose parent is missing from the folder is skipped along with its children.list of strings
default:"[]"
A list of advancement resource location IDs (for example
"minecraft:story/root") that the mod should remove. Each entry must be a fully qualified namespace:path string. When blacklistIsWhitelist is false (the default), every listed ID is removed together with all of its children, and everything else is kept. See Blacklist & Whitelist for full details.boolean
default:"false"
Inverts the meaning of
advancementsBlacklist. When true, only the listed advancements — plus the parents they need in order to stay connected — are kept, and all others are removed. An empty list combined with whitelist mode removes every advancement. See Blacklist & Whitelist.boolean
default:"false"
Enables the progression system. When
true, a player cannot earn an advancement until its parent advancement has been completed. See Progression for full details.enum
default:"ALL"
Controls which advancements are subject to the progression system. Accepted values:
ALL— every advancement in every namespace is gated.MODS— gating is decided per namespace usingmodBlacklistandmodBlacklistIsWhitelist.MINECRAFT— only advancements in theminecraft:namespace.CUSTOM_ADVANCEMENTS— only advancements in thecustomadvancements:namespace.
list of strings
default:"[]"
A list of mod IDs to exclude from the progression system. Only relevant when
advancementProgressionMode = MODS. Flip modBlacklistIsWhitelist to treat the list as an allow-list instead. See Progression.boolean
default:"false"
When
true, modBlacklist becomes a whitelist: only advancements from the listed namespaces are subject to progression gating. See Progression.list of strings
Adds virtual parent links between advancements that belong to separate trees. Each entry uses the format
"parent_id -> child_id", with a single space on each side of the arrow. The defaults connect the Nether and End root advancements to the main story line so players must progress through the Overworld before those tabs unlock. Only active when advancementProgression = true, and only applied to advancements that have no real parent. See Progression.boolean
default:"false"
When
true, every completed criterion is revoked for a player when they die, forcing them to start over. The player is notified in chat. See Progression.enum
default:"UNSORTED"
Determines the order of tabs in the advancements screen. Accepted values:
UNSORTED— tabs appear in their natural load order.ALPHABETICALLY— tabs are sorted A–Z by their display title.DEFINED_LIST— tabs are ordered according toadvancementSortingList.
list of strings
default:"[]"
An ordered list of root advancement resource location IDs, used when
advancementTabSortingMode = DEFINED_LIST. Tabs not included in the list fall back to their natural position after the listed tabs. Entries that are not root advancements are rejected as invalid. See Tab Sorting.Complete example file
config/customadvancements-common.toml
Validation
Several options are validated as the file is read, and an invalid entry is rejected so that the option falls back to its default:Further reading
- Blacklist & Whitelist — filter advancements in or out by ID
- Progression — gate advancements behind their parents and configure death resets
- Tab Sorting — control the order of tabs in the advancements screen