Wolferos / Hearts-of-Iron-IV-The-Great-War

The Great War has been created by Wolferos with the help of the Community.
98 stars 95 forks source link

Collection of almost all research trees in one file (RU) #550

Closed kremastra closed 5 months ago

kremastra commented 5 months ago

I found that in localisation files (RU) many elements of the research trees are not located in the main file (zreplace_research_l_russian.yml), but in others, such as ww1_artillery_l_russian.yml, ww1_equipment_l_russian.yml, etc. These files, as a rule, contain specific names of weapons: artillery, tanks, equipment, etc. The presence of elements of research trees in these files causes some confusion. Therefore, I tried to collect almost all the elements of the research trees in one file, zreplace_research_l_russian.yml.

Changes by files:

ww1_techs_l_russian.yml:

ww1_artillery_l_russian.yml:

ww1_equipment_l_russian.yml, zreplace_equipment_l_russian.yml:

zreplace_equip_air_l_russian.yml:

zreplace_research_l_russian.yml:

Note: during the process of transferring items between files, I repeatedly checked their visibility in the research trees in the game menu, and if the transfer resulted in the localisation disappearing from the game, the items remained in the original file, despite the stated goal of collecting them all together in one file. It may be possible to transfer the remaining elements next time.

dungeon-slave commented 5 months ago

Почему ты думаешь, что собирать все переводы в один файл — хорошая идея?

Я глянул другие языки, и там точно такая же разбивка идёт, тем более, что она вполне логичная.

Мне кажется ты так только усложнишь поддержку локализации, тк при добавлении нового контента на английском языке надо будет в этом огромном файле на 2000 строк искать определённую локаль, которая поменялась, или место, куда добавлять новую.

kremastra commented 5 months ago

Привет. Распишу свое видение. Будет лонгрид, но так уж я свои мысли на бумаге излагаю :)

Мелкие переносы из четырех файлов в один

Если внимательно посмотреть изменения в файлах, то видно, что переносы между файлам, в основном, незначительные.

Смотри сам:

equip_air: было 1535 строк, стало 1511 (-2%), закомментированных строк не было, в основном, убраны пробелы и проведена ёфикация. equipment: 902 -> 931 (+9%, закомментировано около 25 строк, которые добавились в research, плюс там кое-что недостающее добавлено было из новой локализации) replace_equipment: 834 -> 841 (+1%, закомментировано около 20 строк, которые добавились в research) artillery: количество строк не изменилось (54), закомментировано около 10 строк, которые добавились в research

Как видишь, из этих четырех файлов от силы полсотни строк было перенесено в файл research. Склоняюсь к тому, что эти строки были добавлены в них случайно, иначе бы, условно, в файле artillery было бы не 6 элементов из дерева артиллерии, а гораздо больше. Остальная, в разы большая часть, в файле research же, как и должно быть.

Перенос данных из файла techs

Смотрим далее, файл techs. Я его поизучал, там в основном хранятся новые деревья, которых не было в ванильной версии игры: медицина, фортификация, (фото)камера. Там же частично находятся ранние части (до 1936 года) существующих деревьев: строительство, промышленность, электроника. Плюс немного плюшек для раннего ВМФ: броня Круппа, дымогенератор и т.п.

В отличие от предыдущих четырех файлов, определённая логика хранения в файле techs частей деревьев имеется. Заключается она в том, чтобы отделить новые модовские деревья от старых ванильных. Правда, опять же возникает вопрос, почему новые деревья там размещены не полностью. Например, химические исследования aka горчичный газ засунули напрямую в файл research. Ряд элементов из электроники (технический чертёж и т.п.) тоже в research. Выглядит как полумера, если честно.

Я перенёс элементы деревьев оттуда в файл research, но возможно, как альтернатива этому можно вернуть перенесённое обратно и сделать наоборот - перенести из research те куски новых деревьев, которые там оказались. В этом случае наличие этого файла будет иметь смысл. Можно пообсуждать этот вопрос.

Сортировка данных в файле research

Последнее, что осталось, собственно файл research. Объясню, зачем я вообще там что-то стал менять местами. Обычно ведь файлам локализации наплевать, что в каком порядке лежит.

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

Начинаешь слегка охреневать. Ищешь через Total Commander все совпадения старого написания в файлах локализации, и... находишь их три-четыре штуки, разбросанных по разных путям. И только опытным путём выясняешь, какое написание используется в дереве. В основном, это касается артиллерии.

Я серьёзно, попробуй в файлах локализации текущего релиза мода найти с первого раза такой элемент дерева, как "Ракеты" (Исследования/Артиллерия, там где 1940 год). Веселье гарантирую.

Заключение

В завершение, ещё раз упомяну, что каких-то революционных изменений ведь не произошло. Да, переброшено 50 строк в основной файл, плюс почти целиком techs - так ведь в предыдущих пулл реквестах неоднократно практиковалась миграция данных из одного файла локализации в другой, да хоть в формате ww1* -> zreplace* можно вспомнить (countries, state names и т.п.). Проведена сортировка в файле research? Ну это же не файл фокусов или событий, где порядок строк имеет значение. Ради удобства можно и закрыть глаза на вотэбаутизм, когда слепо копируешь всё, что добавлено или изменено в английской версии. Мы же люди понимающие и догадываемся, что если в оригинале что-то сделано неправильно, неудобно или некрасиво, то тянуть это к себе в исходном виде - не всегда лучшее решение. Если не сказать хуже.