Ідея повноцінного додавання української мови в ігри на рушії Unreal Engine з'явилась у мене доволі спонтанно. Моя подруга захотіла перекладати гру й звернулась до мене, щоб я забезпечив технічну частину.
«Було б добре, якби українська була окремою мовою, а не просто заміняла англійську», — сказала вона.
Це стало викликом — і вже за годину мені вдалося додати українську мову як окрему опцію через зміну внутрішніх файлів рушія. Я навіть зміг винести її на перше місце в списку мов. Після цього я почав досліджувати інші ігри на Unreal Engine, вивчаючи структуру їхніх файлів та перевіряючи, чи можу додати українську мову офіційно неофіційним шляхом.
Одразу попереджу: не всі ігри дозволяють так просто додати українську як окрему мову. Деколи достатньо створити нову теку uk — і все працює. Інколи ж доводиться копирсатися в глибоких системних файлах рушія. А бувають випадки, коли це здається неможливим (думаю, можливо, просто доведеться редагувати зашифровані скрипти в .exe файлі).
З 19 протестованих ігор у 7 реалізація пройшла успішно, решта потребують складніших змін або взагалі не підтримують таку модифікацію:

У цій статті я поділюся одним із перевірених способів додавання української мови як окремої комірки в мовному меню гри — на прикладі The Thaumaturge.
Розглянемо відео детальніше. Нам потрібно змінити кожен файл .locmeta наступним чином:

NativeCulture — код мови локалізації, який використовується за замовчуванням при першому запуску гри.
CompiledCultures — масив кодів мов локалізацій, яких гра вже містить.
Для модифікації потрібно:
Тека мови за замовчуванням.
Файл .locmeta.
Програма LocRes Builder для конвертації .locmeta в .json.
Змінюємо наступним чином:

Повертаємо "pl", до масиву CompiledCultures (local_languages).
У NativeCulture (main_language) прописуємо наш код uk.
Так як ми замінили мову за замовчуванням, перейменовуємо pl.json на uk.json (в іншому випадку новий .locmeta не згенерується).
Перетягуємо locmeta.json на .bat файл програми і отримуємо у теці out готовий .locmeta, який в свою чергу пакуємо в .pak.
Цей спосіб не є універсальним для всіх ігор, але він дає чітке розуміння, як працює одна з систем локалізації в Unreal Engine і як її можна обійти.
А якщо дорогі розробники це читають — знайте: ми не зламуємо ваші ігри з примхи — ми боремося за місце для своєї мови. Ми копаємося в архівах, редагуємо файли, пишемо програми лише тому, що хочемо бачити українську мову в іграх як рівну серед інших. (звук падіння мікрофона)