Редактирование файлов локализации - Моды и моддинг - Strategium.ru Перейти к содержимому
Информация о выборах партий 5 января 2025 г. ×

Редактирование файлов локализации

Рекомендованные сообщения

Alorian

Вступление.

 

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

 

Начальные шаги.

 

Для начала определимся с инструментами, что потребуется для упрощения поисков нужного участка локализации и способах его исправления:

  • TotalCommander любой версии, где есть поиск файлов.
  • Notepad ++
  • любом функциональный аналог вышеперечисленных программ.

Это всё. Программы можно заменить, главное, чтобы функционал был удобен лично вам для использования. В данном случае мне подходит способ быстрого и удобного редактирования Notepad ++ и поиск по файлам, а главное поиск по ТЕКСТУ в файлах программы TotalCommander 9.2 версии.

 

Базовое понимание.

 

Перед самим редактированием и исправлением, хочу пояснить основную идею - ВСЕ файлы и значения русской и иной локализации находятся в папке игры по адресу \Crusader Kings III\game\localization\ поэтому именно там мы будем искать наши строки для исправления. Далее, мы полностью копируем файл в наш мод-исправление и уже в нём редактируем.

 

Настоятельно советую все исправления игры, будь то локализация или правка скриптов, записывать в отдельно созданный мод, НЕ МЕНЯЯ файлов самой игры. Да, возможно исправить в самой папке игры кажется проще, но так же легко сломать игру полностью, после чего спасёт только переустановка с чистого листа. Незачем на ровном месте создавать себе геморрой, лучше сразу сделать правильно.

По Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. тема по созданию мод-пака, где выполнив пункты 1-7 у нас появится своя папка-мод, куда можно будет записывать наши исправления. В случае чего, её всегда можно отключить/удалить и вернуть игру в ванильное состояние. 

 

Приступая к поиску и исправлению поломанной локализации.

 

Итак, с введением вроде всё, пожалуй можно начинаться с конкретикой.

 

Для примера возьму локализацию в новом обновление 1.5.1 в редакторе СоА, что вылезает за экран и не позволяет пользоваться ползунками редактирования. Это не столько проблема "сломанной" локализации, сколько неверное решение интерфейса и дОлжно решаться самим интерфейсом. Но нам в данном случае не важно, ибо всё равно не работает для русского и ещё двух языков, поэтому данный случай подходит.

Тем более исправить локализацию проще, чем пытаться вкурить решение для интерфейса, копаясь в gui исходника.

Спойлер

hDBp5ri.jpg

Как можно увидеть, в расширении 1920х1080, на весь экран (как впрочем и других более широких), опции "Повернуть по оси X" и "Повернуть по оси Y" слишком далеко "выбивают" следующую опцию и мы не может из-за этого редактировать всё меню. На лицо неправильный интерфейс, но нам от этого не легче и ждать обновление неизвестно когда :(  Поэтому берём всё в свои руки. Проще всего попробовать изменить длинные надписи на более короткие и проверить, что получится.

Запоминаем надпись, закрываем/сворачиваем игру и открываем TotalCommander, в нём идем по адресу папки нашей игры  \Crusader Kings III\game\localization\russian и далее в верхнем меню ТС ищем ---> Инструменты ---> Поиск файлов (ALT+F7 комбинация клавиш у меня). Открываем.

Спойлер

6XNvyBk.jpg

Спойлер

Hcco5xQ.jpg

В плагине поиска нам нужно прожать "С текстом" - именно по ТЕЛУ файла мы будем искать нужную нам запись локализации и далее исправлять её. Галочки-опции поиска оставляем как указано в скрине, текст не обязательно записывать весь, можно ограничиться только частью фразы. После того, как поиск нашёл нужный нам файл (хотя их может быть несколько, тогда нужно будет искать в каждом отдельно), выбираем его и жмём F4 Правка.

Спойлер

PBsNH6i.jpg

Спойлер

FTygnJM.jpg

В открытом файле прожимаем комбинацию Ctrl+F, открывается опция поиска, снова вводим нужный нам текст и жмём "Найти далее". Как видим на скрине выше, нам показывает строку-локализацию, а также ниже вторую со строкой-локализацией. Значит мы правильно отыскали файл, в котором записан перевод. Эти значения ответственны за текст в игре для выбранной языковой опции.

 

Способ исправления.

 

Меняем текст локализации на более короткий. В данном случае. Скажем на "По оси Х" и ниже в строке "По оси Y". Главное, чтобы смысл текста оказался нам понятен и при этом в игре исправление должно помочь решить проблему вылезающего интерфейса за экран меню-редактирования.

Нажимаем в Меню Notepad'a ---> Файл ---> Сохранить как ---> Дальше идём по адресу нашего мода в \Documents\Paradox Interactive\Crusader Kings III\mod\ у меня это My mods и именно там воссоздаём последовательность папок, как было в оригинале игры, где мы отыскали наш файл, то есть получаем путь вида:

\My mods\localization\russian\gui\coa_designer_l_russian.yml

Спойлер

gtYi8q1.jpg

 

Всё. Как только сохранили файл, проверяем, чтобы наш мод был включён в Launcher'е и запускаем игру. Если сделано всё правильно, то мы увидим результат исправлений.

Спойлер

2AJ4WzJ.jpg

 

Как можно увидеть, меню редактирования перестало вылезать за пределы экрана, значит исправление удачное, задачу свою выполняет. Теперь можно играть и ожидать исправления от разработчиков. 

 

Недостаток такого исправления выявляется в процессе обновления игры, либо при использовании некоторых модов (редко, но бывает). Так как мы используем ВАНИЛЬНЫЙ файл игры и все ключи-локализации в нём остаются, то игра их и использует, но если в новом обновление перевод изменился, либо добавились новые ключи локализации, наш старый файл в моде будет мешать отображению. Нужно проверять после обновлений, в случае если оригинальный файл обзавёлся добавлениями/исправлениями. 

 

Важное примечание: Чтобы каждый раз не перезапускать игру, проверяя каким образом повлияли наши исправления в игре, нужно запускать CK3 через debug_mod. Сделать это можно очень легко. Заходите в папку игры Crusader Kings III, далее binares, файл ck3.exe ---> клацаем ПКМ на нём и ищем вкладку, чтобы создать ярлык на рабочем столе.

Спойлер

TnRCGlo.jpg

После отправляемся на рабочий стол, где отыскиваем наш Ярлык ck3.exe, опять ПКМ ---> Свойства и в открывшемся меню дописываем в строчке "Объект" надпись через тире: -debug_mode 

Спойлер

TEt5P14.jpg

Далее закрываем свойства и запускаем игру в дебаг-моде, в котором все изменения нашего файла-локализации можно будет делать НА ЛЕТУ, когда изменяя/дописывая текст, сохранив документ, мы увидим все изменения сразу в игре.

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

 

Другой пример для закрепления.

 

По описанному выше методу можно заниматься исправлением ЛЮБОЙ русской локализации, будь то отсутствующий Missing Key или #TODO или английские строки в тексте. Возьмём ещё пару примеров:

Спойлер

E6XZwPd.jpg

Спойлер

hUx88Lm.jpg

Спойлер

QTNptO2.jpg

Спойлер

Z3vDOTD.jpg

 

Иной случай посложнее - Missing key в описании второго перка династии:

Спойлер

VynBS6Q.jpg

Тут сложность в том, что найти строку "Шанс успеха Missing key" не выйдет, ибо описание перка состоит из разнообразных строк-значений и именно в том виде, что мы видим на экране, такой записи не существует. Но в данном случае, как впрочем и в подобных ситуациях, есть вариант найти сопутствующую локализацию, по которой можно отыскать нужное. Если оно записано в одном окне-справке, значит рядом окажется то, что нам требуется.

Спойлер

rOhmMWw.jpg

Спойлер

oq84dcW.jpg

Спойлер

tIIxijB.jpg

Итак, нашли наш проблемный участок, код [schemes|E] [Concept( 'seduce', 'соблазнения' )|E] - Как я убедился за год игры, некоторые участки кода могут изначально работать, а потом внезапно - нет. Хз, что там разработчики крутят в игре. Или курят...

В данном случае, тут код, что позволит показать в игре ссылку на Схему соблазнения, но также стоит склонение, как принято в русском языке, то есть "СоблазнениЯ". Такое много где сделано, но тут не работает. Я как-то покопался, сути ошибки не понял, видимо в коде зашито. Фиг с ним, нам нужно исправление и самый простой способ - это скопировать вариант из английской локализации. Ищем также через TC поиск по ключ-значению строки LEGACY_SEDUCE_BONUSES 

Спойлер

XQujR7b.jpg

Спойлер

iperxD5.jpg

Хм, [GetScheme('seduce').GetTypeName] [schemes|E] - выглядит неплохо. Им и воспользуемся, заменив в нашем файле эти значения.

Спойлер

dWA1nO6.jpg

Спойлер

Ge0gvW8.jpg

Спойлер

Lu7jPrU.jpg

Хм. Получше, но что-то не то. Может убрать [schemes|E] после [GetScheme('seduce').GetTypeName]? И заодно сменим "успешные" на "успешное" ну и выше в описании также заменим код.

Спойлер

WAwHbM3.jpg

 

 

Подведём итог.

 

Подобным образом, как показано, меняем всё, что так или иначе мозолит глаза. Ошибок в локализации довольно много и не то, чтобы они убивают весь геймплей, но как игрок, который может играть в CK3 по 10 часов подряд, могу сказать, что такие вещи сильно раздражают периодическим попаданием в фокус внимания. Именно поэтому, пересилив лень я сейчас часто берусь исправлять подобные огрехи, запихнув в свой мод-исправление уже с десяток файлов локализации.

Разработчики всё правят и правят, но с каждым новым обновлением и исправлением, выскакивают всё новые ошибки. Надежда, как говорится умирает последней, но тут хоть в наших собственных руках сделать свою игру чуть более комфортнее визуально, тем более, на самом деле исправление не занимает много времени и с первым мод-фиксом приходит опыт и уже на такие вещи тратится по 10 минут, максимум 20 - это когда сложно сразу понять из какого файла локализация и подобрать замену из английской локализации. В частности это относится ко всем missing key, что более цепляют глаз...

 

В любом случае, дерзайте :) 

 

 

Изменено пользователем Alorian
Ссылка на комментарий

Закреплённые сообщения
Max_Pechenkov

Спасибо, красиво все расписано. Хотел спросить не работаешь ли ты с Гексами?)

Ссылка на комментарий

@Alorian , хочубей - не могу просечь, как эту бодягу с локализацией до ума довести, чтобы ползунки за экран не выходили.

Для начала

В 16.03.2022 в 18:16, Alorian сказал:

Далее, мы полностью копируем файл в наш мод-исправление и уже в нём редактируем.

Файл, где находятся нужные строки, т.е. coa_designer_l_russian.yml?

Скопировал, открыл, нашел нужные строки, изменил, дело дошло до сохранения. И вот тут засада.

У меня Тотал Командер 8.01 и Блокнот. Игра на диске D, пользовательская папка на диске С.

В 16.03.2022 в 18:16, Alorian сказал:

Файл ---> Сохранить как ---> Дальше идём по адресу нашего мода в \Documents\Paradox Interactive\Crusader Kings III\mod\

Собственно, идти никуда не приходится - сразу открывается эта папка и в ней мой созданный мод.

Дальше совсем не понятно

В 16.03.2022 в 18:16, Alorian сказал:

 и именно там воссоздаём последовательность папок, как было в оригинале игры, где мы отыскали наш файл, то есть получаем путь вида:

\My mods\localization\russian\gui\coa_designer_l_russian.yml

воссоздаем вручную или как? Скопировать часть пути оригинального файла coa_designer_l_russian.yml из папки игры и вставить? А куда? Я не понимаю, как получить по другому этот путь.

Или всю папку localization надо было копировать в My mods и потом править файл?

 

Ссылка на комментарий

Alorian

@Kurt-R Всё как всегда. Делаешь свой мод-папку, там создаешь папку localization потом в ней russian потом дальше папку gui создаешь и кидаешь в эту папку свой файл исправление.

Ссылка на комментарий

10 часов назад, Alorian сказал:

Делаешь свой мод-папку, там создаешь папку localization потом в ней russian потом дальше папку gui создаешь и кидаешь в эту папку свой файл исправление.

А, все оказывается так просто - создать самому пустые папки в My mods!

А если в ней лежит ещё другой мод, они мешать друг другу не будут? Конкретно - Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

----------------

Сделал, положил - с ползунками норм, с маршалом вроде тоже.

А вот ты упоминал раньше, что если в свою папку мода закидывать другие, то при этом папки common пихать в common, events в events и т.д. И как - объединять с перезаписью файла или как-то по-другому?

Изменено пользователем Kurt-R
Ссылка на комментарий

Alorian

@Kurt-R Если у тебя что-то потом будет требовать перезаписи - значит нужно менять файлы вручную. По идеи, у тебя не один файл не должен требовать перезаписи, если мы говорим про свою ЛИЧНУЮ мод-папку. 

Перезапись возможна, если только у тебя был мод какой-нибудь мелкий, ты его закинул в папку, потом спустя время смотришь, а уже обновление вышло. Качаешь обновление, закидываешь в папку и перезаписываешь. 

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

 

А вообще, для того же  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.  нужно отдельный мод создать и туда закинуть ТОЛЬКО этот мод. А свою МОД-ПАПКУ закидывать СВОИ исправления. Просто Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.  как бы имеет много файлов-испрвалений и это не тот случай, когда можно данный мод сливать с чем-то.

Ссылка на комментарий

День добрый, кто знает как убрать окончание ая в русской локализации для религии?

 

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Изменено пользователем Racooon
Ссылка на комментарий

bersvenom

уважаемые господа. помогите плиз сделать русскую локализацию титуов.

во второй сделал - а в этой не получается.

 

count_feudal_male_russian: "Боярин"
count_feudal_female_russian: "Боярыня"
county_feudal_russian: "Удел"
duke_feudal_male_russian: "Князь"
duke_feudal_female_russian: "Княгиня"
duchy_feudal_russian: "Княжество"
king_feudal_male_russian: "Великий князь"
king_feudal_female_russian: "Великая княгиня"
kingdom_feudal_russian: "Великое княжество"

 

вот как то так. явно допускаю какую то глупую ошибку. 

Ссылка на комментарий

bersvenom
35 минут назад, bersvenom сказал:

уважаемые господа. помогите плиз сделать русскую локализацию титуов.

во второй сделал - а в этой не получается.

 

count_feudal_male_russian: "Боярин"
count_feudal_female_russian: "Боярыня"
county_feudal_russian: "Удел"
duke_feudal_male_russian: "Князь"
duke_feudal_female_russian: "Княгиня"
duchy_feudal_russian: "Княжество"
king_feudal_male_russian: "Великий князь"
king_feudal_female_russian: "Великая княгиня"
kingdom_feudal_russian: "Великое княжество"

 

вот как то так. явно допускаю какую то глупую ошибку. 

 

спасибо, разобрался сам. 

кому нужно могу помочь сделать. пишите не стесняйтесь

Ссылка на комментарий

Присоединиться к обсуждению

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка автоматически преображена.   Отображать как простую ссылку

×   Предыдущее содержимое было восстановлено..   Очистить текст в редакторе

×   You cannot paste images directly. Upload or insert images from URL.

  • Ответы 8
  • Создано
  • Последний ответ
  • Просмотры 4333

Лучшие авторы в этой теме

  • Alorian

    3

  • bersvenom

    2

  • Kurt-R

    2

  • Racooon

    1

  • Max_Pechenkov

    1

Лучшие авторы в этой теме

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу


Copyright © 2008-2024 Strategium.ru Powered by Invision Community

×
×
  • Создать...