NBT Mappings
Since 4.6.0, mapping files are stored in a new, compact format, so editing them has become slightly more difficult. The general editing process is as follows:
- Open the ViaBackwards jar (with a program like 7zip or WinRAR) and navigate to
assets/viabackwards/data
. - Look for the mapping file you need, e.g.
mappings-1.19to1.18.nbt
for 1.19 -> 1.18 mappings and copy it into ViaBackward's plugin folder. - Open the NBT file with an NBT editor program or website, for example https://irath96.github.io/webNBT/ or the Minecraft Dev Plugin for IntelliJ.
- Remove all the tags you do not want to modify so you won't have to update the file every time the original is changed in ViaBackwards. Only the tags present in the NBT file you put into the plugin directory will be taken and merged with the original data.
- Say you want to edit item and entity names: Look for
itemnames
andentitynames
, edit the values you want to change, and save the file. Now ViaBackwards will load the file from its plugin directory if present and merge it with the rest from the original NBT mapping file.
Changing item and entity names
For 1.14+, follow the steps above.
Adding custom model data
As explained above, create a new NBT file in the plugin directory. Add a new itemdata
compound tag. Similar to the itemnames
field, the key is the registry id of the item (same as in the itemnames
tag), the value in this case is another compound tag, which can contain a custom_model_data
number tag. An example of this looks like:
itemdata: {
"123": {
custom_model_data: 1
}
"1234": {
custom_model_data: 2
}
}
Changing block/item/sound id mappings
You cannot easily edit these from the NBT mapping files. The human readable diff mappings are stored in a separate repository and require compiling.
We'd suggest simply creating a pull request to change the json file mappings if you think different mappings would be more suitable, so they can be changed in ViaBackwards proper.
JSON Mappings
Changing 1.13- item and block mappings
Item/Block mappings are located inside different json files, e.g. 1.12 mappings
for 1.11 clients
are located in item-mappings-1.12.json
.
You can move them into the plugin folder and directly edit them. Each json file can contain three different types of mappings:
items
for item mappings (raw id:raw data -> new id/data and custom name)block-items
same as items but will only replace blocksblocks
internal mappings to fix blockstate issues (mainly used in ViaRewind). DO NOT EDIT THESE UNLESS YOU KNOW WHAT YOU ARE DOING.
Changing 1.16+->1.15 biome mappings
Similar to the mappings from above, you can move the biome-mappings.json
file into the plugin folder and directly add mappings for custom biomes to map them to legacy biomes (the static biome names that existed until 1.15.2). Make sure to keep the file up to date with ViaBackwards updates.
Changing backwards translations
Same thing as biome mappings but with the translation json file.