Skip to content

Localization

StarskyXIII edited this page Jul 17, 2026 · 4 revisions

Localization

Home › Localization

This page explains how to translate group display names — both for built-in groups that ship with the mod and for custom groups defined in a pack or via the in-game editor.


Built-in group translations

Built-in groups are groups shipped with the mod itself (for example, the Iron's Spellbooks spell scroll groups). Their translation files live in the group_lang folder of the repository:

common/src/main/resources/assets/collapsible_groups/group_lang/

Each file in that folder is a standard Minecraft language file covering built-in group names. If your language is missing or incomplete, you can contribute a new or updated file as a pull request.

Browse existing language files on GitHub

File naming

Follow the standard Minecraft locale convention: <language_code>.json, for example:

  • en_us.json
  • zh_cn.json
  • zh_tw.json

File format

Each file is a flat JSON object mapping translation keys to display strings:

{
  "group.collapsible_groups.irons_spellbooks.blood_needles": "Blood Needles Scrolls",
  "group.collapsible_groups.irons_spellbooks.chain_creeper": "Chain Creeper Scrolls"
}

Translation keys for built-in groups follow the pattern group.collapsible_groups.<group_id_path>.


Custom group translations

Custom groups — groups created through the in-game editor, defined in JSON config, or added via KubeJS — can also have proper translation support. To generate or update a translation file for the groups in your pack, use the in-game command:

/cg group_key dump <language>

For example:

/cg group_key dump en_us
/cg group_key dump zh_tw

This outputs a translation file containing every key needed for your current custom groups in the specified language.

The generated file is written to the mod's config folder:

config/collapsiblegroups/lang/<language>.json

For example, dumping en_us creates or updates:

config/collapsiblegroups/lang/en_us.json

If the file already exists, the command keeps your existing entries and only adds any missing keys.

Removing unused keys

Over time, groups may be renamed or removed, leaving stale translation keys in the file. To produce a clean output that omits any keys with no corresponding group, append clean:

/cg group_key dump <language> clean

For example:

/cg group_key dump en_us clean

The clean flag filters the output down to only keys that are still in use. This is useful before a release or when doing a translation audit.


Translation lookup order

When the mod resolves a group name, it checks translations in this order:

  1. config/collapsiblegroups/lang/<language>.json
  2. Minecraft language assets such as assets/.../lang/<language>.json
  3. The group's fallback plain-text name

This means a translation placed in the config folder takes priority over bundled mod translations and resource-pack-style language entries.


Summary

Goal How
Translate a built-in group Contribute to group_lang/ on GitHub
Generate keys for custom groups /cg group_key dump <language>
Find the generated custom translation file config/collapsiblegroups/lang/<language>.json
Override any existing translation Edit config/collapsiblegroups/lang/<language>.json
Remove stale keys from the output /cg group_key dump <language> clean

Home


Players


Modpack Developers


Mod Developers


Localization

Clone this wiki locally