Если вы уже играли в последние снашпоты Minecraft 1.13, то наверняка заметили странности с переводами. Пропали русские названия блоков и предметов, а из меню переводов исчезли все языки.

 

 

Сразу хочу сказать, что это не связанные друг с другом проблемы. И со второй всё просто — это ошибка, которая будет исправлена, и возможность выбора языка скоро вернётся в игру (по крайней мере, так мне пояснил ситуацию Эрик Брос).

А вот первая ситуация гораздо интереснее. В снашпоте 17w47a разработчики проделали очень большую работу по избавлению блоков и предметов от фиксированных идентификаторов по значениям id / data, и теперь блоки и предметы определяются по текстовыми идентификаторам, число которых теоретически неограниченно.

Кроме того, в файле переводов изменились идентификаторы строк, соответствующих блокам и предметам. Они опираются на эти новые текстовые идентификаторы и  выглядят теперь так (список, естественно, сокращён):

 

Для сравнения приведу аналогичный отрывок из старого файла перевода:

Как видите в идентификаторах блоках «tile» заменилось на «block.minecraft», а окончание «name» убралось совсем. У предметов «item» преобразовалось в «item.minecraft». Кроме того, изменился стиль написания идентификаторов блоков: раньше использовалcя «lowerCamelCase», а сейчас «snake_case».

Всё это привело к тому, что старые файлы переводов не соответствуют новым файлам в Minecraft 1.13.

Решено это будет тогда, когда разработчики более или менее определяется с со всеми текстами в игре (в т.ч. с новыми). Они выгрузят обновлённые строки на портал переводов Crowdin, а потом (я очень на это надеюсь), переконвертируют старые файлы переводов и тоже загрузят их — чтобы не пришлось переводить все блоки и предметы заново.

Иначе работы переводчикам будет очень много, а некоторые языки, где активной работы по переводам не ведётся, останутся вообще без перевода названий блоков и предметов.