руководство Редактирование файлов локализации
Лучшие авторы в этой теме
-
Alorian 3 сообщений
-
bersvenom 2 сообщений
-
Kurt-R 2 сообщений
-
Racooon 1 сообщение
-
Max_Pechenkov 1 сообщение
Популярные дни
Популярные сообщения

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

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

Alorian
@Kurt-R Если у тебя что-то потом будет требовать перезаписи - значит нужно менять файлы вручную. По идеи, у тебя не один файл не должен требовать перезаписи, если мы говорим про свою ЛИЧНУЮ мод-папку.
-
Сейчас на странице 0 пользователей
- Нет пользователей, просматривающих эту страницу
-
Модераторы онлайн
- СУЛАРИУС
- alexis
Рекомендованные сообщения
Вступление.
Из-за довольно большого количества запросов по поводу сломанной локализации от PDX, как в новых версиях, так и неисправленные в старой версии CK3, становится (и видимо будет) актуальным освещение вопроса создания мода-исправления, в котором мы сами, своими руками исправим поломанное, тем более это не займёт большого количества времени и каких-то особых знаний программирования.
Начальные шаги.
Для начала определимся с инструментами, что потребуется для упрощения поисков нужного участка локализации и способах его исправления:
Это всё. Программы можно заменить, главное, чтобы функционал был удобен лично вам для использования. В данном случае мне подходит способ быстрого и удобного редактирования Notepad ++ и поиск по файлам, а главное поиск по ТЕКСТУ в файлах программы TotalCommander 9.2 версии.
Базовое понимание.
Перед самим редактированием и исправлением, хочу пояснить основную идею - ВСЕ файлы и значения русской и иной локализации находятся в папке игры по адресу \Crusader Kings III\game\localization\ поэтому именно там мы будем искать наши строки для исправления. Далее, мы полностью копируем файл в наш мод-исправление и уже в нём редактируем.
Настоятельно советую все исправления игры, будь то локализация или правка скриптов, записывать в отдельно созданный мод, НЕ МЕНЯЯ файлов самой игры. Да, возможно исправить в самой папке игры кажется проще, но так же легко сломать игру полностью, после чего спасёт только переустановка с чистого листа. Незачем на ровном месте создавать себе геморрой, лучше сразу сделать правильно.
По Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. тема по созданию мод-пака, где выполнив пункты 1-7 у нас появится своя папка-мод, куда можно будет записывать наши исправления. В случае чего, её всегда можно отключить/удалить и вернуть игру в ванильное состояние.
Приступая к поиску и исправлению поломанной локализации.
Итак, с введением вроде всё, пожалуй можно начинаться с конкретикой.
Для примера возьму локализацию в новом обновление 1.5.1 в редакторе СоА, что вылезает за экран и не позволяет пользоваться ползунками редактирования. Это не столько проблема "сломанной" локализации, сколько неверное решение интерфейса и дОлжно решаться самим интерфейсом. Но нам в данном случае не важно, ибо всё равно не работает для русского и ещё двух языков, поэтому данный случай подходит.
Тем более исправить локализацию проще, чем пытаться вкурить решение для интерфейса, копаясь в gui исходника.
Как можно увидеть, в расширении 1920х1080, на весь экран (как впрочем и других более широких), опции "Повернуть по оси X" и "Повернуть по оси Y" слишком далеко "выбивают" следующую опцию и мы не может из-за этого редактировать всё меню. На лицо неправильный интерфейс, но нам от этого не легче и ждать обновление неизвестно когда
Поэтому берём всё в свои руки. Проще всего попробовать изменить длинные надписи на более короткие и проверить, что получится.
Запоминаем надпись, закрываем/сворачиваем игру и открываем TotalCommander, в нём идем по адресу папки нашей игры \Crusader Kings III\game\localization\russian и далее в верхнем меню ТС ищем ---> Инструменты ---> Поиск файлов (ALT+F7 комбинация клавиш у меня). Открываем.
В плагине поиска нам нужно прожать "С текстом" - именно по ТЕЛУ файла мы будем искать нужную нам запись локализации и далее исправлять её. Галочки-опции поиска оставляем как указано в скрине, текст не обязательно записывать весь, можно ограничиться только частью фразы. После того, как поиск нашёл нужный нам файл (хотя их может быть несколько, тогда нужно будет искать в каждом отдельно), выбираем его и жмём F4 Правка.
В открытом файле прожимаем комбинацию Ctrl+F, открывается опция поиска, снова вводим нужный нам текст и жмём "Найти далее". Как видим на скрине выше, нам показывает строку-локализацию, а также ниже вторую со строкой-локализацией. Значит мы правильно отыскали файл, в котором записан перевод. Эти значения ответственны за текст в игре для выбранной языковой опции.
Способ исправления.
Меняем текст локализации на более короткий. В данном случае. Скажем на "По оси Х" и ниже в строке "По оси Y". Главное, чтобы смысл текста оказался нам понятен и при этом в игре исправление должно помочь решить проблему вылезающего интерфейса за экран меню-редактирования.
Нажимаем в Меню Notepad'a ---> Файл ---> Сохранить как ---> Дальше идём по адресу нашего мода в \Documents\Paradox Interactive\Crusader Kings III\mod\ у меня это My mods и именно там воссоздаём последовательность папок, как было в оригинале игры, где мы отыскали наш файл, то есть получаем путь вида:
\My mods\localization\russian\gui\coa_designer_l_russian.yml
Всё. Как только сохранили файл, проверяем, чтобы наш мод был включён в Launcher'е и запускаем игру. Если сделано всё правильно, то мы увидим результат исправлений.
Как можно увидеть, меню редактирования перестало вылезать за пределы экрана, значит исправление удачное, задачу свою выполняет. Теперь можно играть и ожидать исправления от разработчиков.
Недостаток такого исправления выявляется в процессе обновления игры, либо при использовании некоторых модов (редко, но бывает). Так как мы используем ВАНИЛЬНЫЙ файл игры и все ключи-локализации в нём остаются, то игра их и использует, но если в новом обновление перевод изменился, либо добавились новые ключи локализации, наш старый файл в моде будет мешать отображению. Нужно проверять после обновлений, в случае если оригинальный файл обзавёлся добавлениями/исправлениями.
Важное примечание: Чтобы каждый раз не перезапускать игру, проверяя каким образом повлияли наши исправления в игре, нужно запускать CK3 через debug_mod. Сделать это можно очень легко. Заходите в папку игры Crusader Kings III, далее binares, файл ck3.exe ---> клацаем ПКМ на нём и ищем вкладку, чтобы создать ярлык на рабочем столе.
После отправляемся на рабочий стол, где отыскиваем наш Ярлык ck3.exe, опять ПКМ ---> Свойства и в открывшемся меню дописываем в строчке "Объект" надпись через тире: -debug_mode
Далее закрываем свойства и запускаем игру в дебаг-моде, в котором все изменения нашего файла-локализации можно будет делать НА ЛЕТУ, когда изменяя/дописывая текст, сохранив документ, мы увидим все изменения сразу в игре.
Есть исключения, когда всё же нужно перезапустить игру, но вы скорее всего с этими исключениями не столкнетесь. А если столкнулись, в первую очередь проверьте, по верному ли пути в папке мода вы сохранили свой файл.
Другой пример для закрепления.
По описанному выше методу можно заниматься исправлением ЛЮБОЙ русской локализации, будь то отсутствующий Missing Key или #TODO или английские строки в тексте. Возьмём ещё пару примеров:
Иной случай посложнее - Missing key в описании второго перка династии:
Тут сложность в том, что найти строку "Шанс успеха Missing key" не выйдет, ибо описание перка состоит из разнообразных строк-значений и именно в том виде, что мы видим на экране, такой записи не существует. Но в данном случае, как впрочем и в подобных ситуациях, есть вариант найти сопутствующую локализацию, по которой можно отыскать нужное. Если оно записано в одном окне-справке, значит рядом окажется то, что нам требуется.
Итак, нашли наш проблемный участок, код [schemes|E] [Concept( 'seduce', 'соблазнения' )|E] - Как я убедился за год игры, некоторые участки кода могут изначально работать, а потом внезапно - нет. Хз, что там разработчики крутят в игре. Или курят...
В данном случае, тут код, что позволит показать в игре ссылку на Схему соблазнения, но также стоит склонение, как принято в русском языке, то есть "СоблазнениЯ". Такое много где сделано, но тут не работает. Я как-то покопался, сути ошибки не понял, видимо в коде зашито. Фиг с ним, нам нужно исправление и самый простой способ - это скопировать вариант из английской локализации. Ищем также через TC поиск по ключ-значению строки LEGACY_SEDUCE_BONUSES
Хм, [GetScheme('seduce').GetTypeName] [schemes|E] - выглядит неплохо. Им и воспользуемся, заменив в нашем файле эти значения.
Хм. Получше, но что-то не то. Может убрать [schemes|E] после [GetScheme('seduce').GetTypeName]? И заодно сменим "успешные" на "успешное" ну и выше в описании также заменим код.
Подведём итог.
Подобным образом, как показано, меняем всё, что так или иначе мозолит глаза. Ошибок в локализации довольно много и не то, чтобы они убивают весь геймплей, но как игрок, который может играть в CK3 по 10 часов подряд, могу сказать, что такие вещи сильно раздражают периодическим попаданием в фокус внимания. Именно поэтому, пересилив лень я сейчас часто берусь исправлять подобные огрехи, запихнув в свой мод-исправление уже с десяток файлов локализации.
Разработчики всё правят и правят, но с каждым новым обновлением и исправлением, выскакивают всё новые ошибки. Надежда, как говорится умирает последней, но тут хоть в наших собственных руках сделать свою игру чуть более комфортнее визуально, тем более, на самом деле исправление не занимает много времени и с первым мод-фиксом приходит опыт и уже на такие вещи тратится по 10 минут, максимум 20 - это когда сложно сразу понять из какого файла локализация и подобрать замену из английской локализации. В частности это относится ко всем missing key, что более цепляют глаз...
В любом случае, дерзайте
Опубликовано Alorian,
Закреплено StrаtegiumПрисоединиться к обсуждению
Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже! Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.