/ca prefix that let you work with the mod directly from the in-game chat or the server console. Between them they cover reloading your files without a restart, exporting any loaded advancement as an editable JSON template, and dumping every advancement ID to a text file. All arguments are space-separated, and tab-completion works throughout.
None of the
/ca commands require server operator permissions — any player connected to the server can run them, and in single-player they work whether or not cheats are enabled./ca reload
Re-reads everything in your customadvancements/ folder and rebuilds the advancement data for every player online, without restarting the server.
- Sends “Reloading…” to the player who ran it.
- Starts a background thread that clears the mod’s loaded data, recreates any missing folders, and re-reads your advancement JSON files, textures, and language files.
- Reloads the server’s game data so the rebuilt advancement set reaches all connected players.
- Sends “Reload complete!” once the reload has been started, and logs
Reload completed in <n> ms!when the work actually finishes.
When to use it
- After adding a new advancement JSON file.
- After editing or deleting an existing advancement file.
- After adding or replacing a texture in
data/textures/or a language file indata/lang/.
/ca reload does not re-read config/customadvancements-common.toml. Config values are re-read by Forge when you save that file while the game is running, which the mod then follows with a reload of its own. See Config File.Failure conditions
/ca generate advancement all
Exports every currently loaded advancement — vanilla, modded, and your own — as individual JSON files inside your customadvancements/ folder, organized by namespace. After all files are written, the mod triggers a full reload so the exported files take effect immediately.
- Sends “Starting to generate files for game advancements…” to the executing player.
- Starts a background thread so the server stays responsive while files are written.
- Writes each advancement to
<game_dir>/customadvancements/<namespace>/<path>.json, creating the folders as needed. - Reports “Generated <N> files for game advancements successfully!” on completion.
- Triggers an automatic reload so the exported files become active.
Failure conditions
/ca generate advancement <advancement>
Exports a single advancement by its resource location ID as a JSON file, then triggers a reload. Use this instead of all when you only want to tweak one advancement — it is far faster and leaves your folder clean.
Arguments
ResourceLocation
required
The resource location ID of the advancement to export, in
namespace:path format. Press Tab after /ca generate advancement to browse every advancement currently loaded on the server, including all mod advancements. The command fails if the supplied ID belongs to the customadvancements namespace, because that advancement is already one of your own files.- Checks that the advancement’s namespace is not
customadvancements. - Writes the advancement to
<game_dir>/customadvancements/<namespace>/<path>.json— for examplecustomadvancements/minecraft/story/obtain_armor.json. - Sends “Successfully generated file for: <id>”.
- Triggers an automatic reload so the exported file is picked up immediately.
customadvancements/minecraft/story/obtain_armor.json
Failure conditions
To regenerate a file for an advancement you have already exported and edited, delete your existing copy first — the command refuses to overwrite advancements that are already in the
customadvancements namespace./ca generate resource_locations
Writes every currently loaded advancement resource location ID to a plain-text file on disk. Run this first whenever you need exact IDs for advancementsBlacklist, advancementSortingList, or connectedAdvancementsList.
- Sends “Starting to write resource locations to file…” to the executing player.
- Collects the IDs of every loaded advancement, including your own custom advancements.
- Writes them to
<game_dir>/customadvancements/resource_locations.txt, one entry per line. - Sends “Finished!” on success.
Output file format
Failure conditions
[INSERT IMAGE: Chat output after running /ca generate resource_locations, showing the “Starting…” and “Finished!” messages]