Tinkers Construct

Tinkers Construct

160M Downloads

English format is used to display toolnames

koh-gh opened this issue ยท 4 comments

commented

Minecraft Version

1.18.2

Forge Version

40.0.2.0

Mantle Version

1.9.43

Tinkers' Construct Version

3.6.3.111

Describe your issue

In English, there is "material.tconstruct.wood.format" in the "en_us.json" to display wooden tools as "Wooden". However, in Japanese, there is no problem with the material name and tool name formatted with "item.tconstruct.tool.format" as with other materials, so in the latest version, I deleted "material.tconstruct. wood.format" from the "ja_jp.json".

However, when I checked with the latest version, the format of the "en_us.json" was used as the name of the wooden tool in Japanese. (Tool names made from specific wooden materials are displayed correctly)
The screenshot below is with other mods, but the same thing happened with TiC alone.

2023-02-15_10 48 22
Incorrect name(Using English format)

2023-02-15_10 48 11
Correct name(Using Japanese format)

If any implementations are using preferentially "material.tconstruct.xxx.format" to get the format to construct the toolname, please correct it. If it's technically difficult, I'm going to bring back "material.tconstruct.wood.format".

Crash Report

No response

Other mods

None

Tried reproducing with just Tinkers?

Yes

Performance Enchancers

None of the above

Searched for known issues?

Checked pinned issues, Searched open issues, Searched closed issues, Checked the FAQ

commented

Its not that the english format is used. Its that if a format is provided in English, you need to provide it for other languages else it defaults to english (it does not default to unset). Optional translation keys do not really work in Minecraft so the behavior of them is rather awkward.

commented

Are you saying that this is a Minecraft specification and that translations present in "en_us.json" must be created even if they are not needed in other languages? If so, I'd like to revive the translation.

commented

Sorta. Minecraft does not support translations being optional. When loading languages, it first loads english, then loads the selected lanaguage, ensuring that any keys that are undefined in the translation (e.g. its outdated) still get a name.

The optional translations (used for things like material name formats) simply work by checking if that key is defined. If it is, its used. I have not come up with a better way of handling it so its simply a limitation that translations must deal with.

Feel free to make a new pull request if needed to correct it, I would probably recommend just correcting it as part of the translations for the features in the next update.

commented

Got it. It's just a one-line addition, so I'll make a PR soon.