Description:
When launching the game, the language selection menu either is not populated with any languages other than "English (US)", or is populated with all languages but choosing any of them results in an error screen.
Steps to Reproduce:
Launch Minecraft using version 26.3-snapshot-7 from the Minecraft Launcher.
Wait for the game to fully load.
Open the language settings (or observe the language selection screen).
-> ❌ You might only see “English (US)” at this step.If there are other languages other than “English (US)”, try changing to one of them.
-> ❌ An error screen appears. Exiting it shows the game still in “English (US)”.
Observed Result:
Only "English (US)" appears as an available language, or changing the language has no effect.
Expected Result:
The full list of available languages should load correctly and allow selection of any supported language.
Linked issues
is duplicated by 27
Attachments
Comments 13
Very brief Code Analysis: (no time to do a proper one)
net.minecraft.client.resources.language.ClientLanguage::loadFrom loops for each namespace and try to load languages there, which may or may not exist since there may be (and are) multiple namespaces. Previously the packs are sent to appendFrom which deals with empty sets properly (skipping them), but now loadFrom checks if the lookup is empty for every individual namespace, and throws otherwise, essentially requiring that every namespace has the appropriate language file, which is presumably unintended and not the case, thus the errors.
I can’t find the other than "English (US)" language file.
This Update Deleted Minecraft 1.1 (Minecraft 1.1 is the first of Multi-language version), right?
Starting from the 13w16a snapshot, Minecraft stopped bundling all its resource files directly into the client.jar file. Instead, less critical or particularly large resources are now stored on Mojang's asset server. The game downloads these files on-demand when it starts up.
Because the files are stored according to their hash values, they're commonly called "hashed assets".
However, the game still needs to find these files using their original resource paths (like minecraft:sounds/block/stone/place.ogg). To bridge this gap, each game version has a special resource index file. This file acts like a map, letting the game look up the correct hash value for any given resource path. ---散列资源文件 - 中文 Minecraft Wiki
This is probably where the problem is. @JYN2018X