Перейти к содержимому
Zone of Games Forum
Memoric

Автопереводчик для Unity игр XUnity.AutoTranslator

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

https://github.com/bbepis/XUnity.AutoTranslator

вот типа:baby_tone2:  пример

Скачать видео
Скачать видео

 

Изменено пользователем Memoric

Поделиться сообщением


Ссылка на сообщение

Апну тему скринами из разных игр с использованием autotranslator:

Banner of the Maid (китайский →  русский): https://imgur.com/a/LNHYwsV

Banner of the Maid (китайский → английский): https://imgur.com/a/LDdyhHK

We the Revolution (английский → русский): https://i.imgur.com/D3hJUo1.png

NITE Team 4 (английский → русский):  https://i.imgur.com/K4KPip1.png

Tales of the Neon Sea (английский → русский):  https://imgur.com/a/y7oztQg

 

Поделиться сообщением


Ссылка на сообщение

Creeper World 4 (Патч на русские шрифты для автопереводчика)
BepInEx-Unity.IL2CPP-win-x64-6.0.0-pre.2_AutoTranslator-5.4.4_RU
https://disk.yandex.ru/d/GcbPbnE53mqm5A
Текст в сложных БД.

Вытянутый гогле для перевода.
https://disk.yandex.ru/d/xKGf8BEp2w6aDw

Изменено пользователем DragonZH
  • Лайк (+1) 2

Поделиться сообщением


Ссылка на сообщение

3.Запустить SetupReiPatcherAndAutoTranslator.exe. 
А где? в папке которую скачал этого нет.

Поделиться сообщением


Ссылка на сообщение

можно настроить автопереводчик, чтобы он переводил некоторые части текста только до двоеточия?

 

 

Изменено пользователем Dikij wolk

Поделиться сообщением


Ссылка на сообщение

Raiders! Forsaken Earth 

Raiders! Forsaken Earth - ролевая игра с элементами стратегии. Управляйте лидером рейдеров в условиях пост-апокалипсиса. Набирайте в свои ряды новых людей и занимайтесь мародерством. Помогайте, похищайте, грабьте, уничтожайте и сражайтесь с противоборствующими фракциями. Исследуйте пустоши и собирайте ценные ресурсы, помогающие не только выжить, но и разбогатеть.
Нанимайте союзников, участвуйте в сражениях и прокачивайте уровень юнитов. Будьте готовы в любой момент съесть своих компаньонов, если настанут темные времена. Нападайте на поселки и города, забирая все ценное у немногочисленных выживших. Совершайте рейды на фермы и теплицы.
Распространяйте свое влияние по всей территории. Захватив поселения, управляйте ими и назначайте помощников. Защищайтесь от нападения со стороны враждующих фракций. Особую угрозу в Raiders! Forsaken Earth представляют специально обученные бойцы, которые посланы устранить рейдеров.
Можно принимать участие в дуэлях, сражаясь с лидером противоборствующих группировок. Прокачивайте умственные и физические навыки, помогающие открыть новые возможности. Ваша задача - установить свои собственные правила и законы, господствуя над пустошью и став ее новым правителем. Взрастите обновленное общество, построенное на вашем видении и принципах.

Правленный вручную перевод для XUnity.AutoTranslator https://disk.yandex.ru/d/Nws3shvv5sYieA

Поделиться сообщением


Ссылка на сообщение
7 часов назад, Dikij wolk сказал:

можно настроить автопереводчик, чтобы он переводил некоторые части текста только до двоеточия?

sr:"^(.*?):"=$1
Или так, если в строке куча переносов и с новой строчки каждую взять нужно до двоеточия.
Так только две строчки внутри
sr:"^(.*?):.*?\n+(.*?):"=$1$2
Так три
sr:"^(.*?):.*?\n+(.*?):.*?\n+(.*?):"=$1$2$3
Продолжать до нужного количества или несколько таких добавлять для разных.

Изменено пользователем DragonZH

Поделиться сообщением


Ссылка на сообщение

Но если построчно то лучше сделать захват весей строки.
Числовая подстановка должна включена быть TemplateAllNumberAway=True
И если там есть <color\=#{{B}}> </color> То вообще такое

Скрытый текст

sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)$"=$1$2$3
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</colo
r\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20$21
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20$21$22$23
sr:"^([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>[А-ё\x01-\xFF]*?\n+)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)(\n+|\n*\<color.*?\</color\>\n*)([А-ё\x01-\xFF]*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20$21$22$23$24$25
 

Добавил
Проще без заморочек по переносам делить.
Тут от 5 до 20

Скрытый текст

sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19
sr:"^(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)\n+(.*?)$"=$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20
 

 

Изменено пользователем DragonZH

Поделиться сообщением


Ссылка на сообщение
В 19.03.2023 в 22:50, Dikij wolk сказал:

Raiders! Forsaken Earth 

Raiders! Forsaken Earth - ролевая игра с элементами стратегии. Управляйте лидером рейдеров в условиях пост-апокалипсиса. Набирайте в свои ряды новых людей и занимайтесь мародерством. Помогайте, похищайте, грабьте, уничтожайте и сражайтесь с противоборствующими фракциями. Исследуйте пустоши и собирайте ценные ресурсы, помогающие не только выжить, но и разбогатеть.
Нанимайте союзников, участвуйте в сражениях и прокачивайте уровень юнитов. Будьте готовы в любой момент съесть своих компаньонов, если настанут темные времена. Нападайте на поселки и города, забирая все ценное у немногочисленных выживших. Совершайте рейды на фермы и теплицы.
Распространяйте свое влияние по всей территории. Захватив поселения, управляйте ими и назначайте помощников. Защищайтесь от нападения со стороны враждующих фракций. Особую угрозу в Raiders! Forsaken Earth представляют специально обученные бойцы, которые посланы устранить рейдеров.
Можно принимать участие в дуэлях, сражаясь с лидером противоборствующих группировок. Прокачивайте умственные и физические навыки, помогающие открыть новые возможности. Ваша задача - установить свои собственные правила и законы, господствуя над пустошью и став ее новым правителем. Взрастите обновленное общество, построенное на вашем видении и принципах.

Правленный вручную перевод для XUnity.AutoTranslator https://disk.yandex.ru/d/Nws3shvv5sYieA

Не кидай сюда такого рода переводы. А то много народу набежит что что то в переводе не так и тема засрётся. Сюда тока по проблемам с самой программой или какие то вопросы по ней. Если хочешь делать такие переводы делай в стиме в разделе руководства к игре или отдельно создавай в zog.

Поделиться сообщением


Ссылка на сообщение
В 15.03.2023 в 10:02, Aniv_D сказал:

Отправил в личку видео.

Добрый вечер. будьте так добры и мне отправить в личку видео пожалуйста. Делаю все по инструкции но не получается переводить игры на il2cpp. 

Изменено пользователем Brodjaga

Поделиться сообщением


Ссылка на сообщение

Что делать если при переводе на русский после каждой буквы стоит пробел ?

Поделиться сообщением


Ссылка на сообщение
В 15.03.2023 в 15:02, Aniv_D сказал:

Отправил в личку видео.

Здравствуйте, можно тоже видео в личку.

Поделиться сообщением


Ссылка на сообщение

Что делать если у меня кубы заместо текста ??? 
П.С. — Я решил свою проблему — не забываем скидывать шрифты в корень игры. В инструкции почему то это не написано )))

Изменено пользователем Kauron

Поделиться сообщением


Ссылка на сообщение
11 часов назад, Kauron сказал:

Что делать если у меня кубы заместо текста ??? 
П.С. — Я решил свою проблему — не забываем скидывать шрифты в корень игры. В инструкции почему то это не написано )))

вообще-то написано, вот тут

В 30.04.2019 в 17:04, Memoric сказал:

 

  Встречающиеся проблемы (Показать содержимое)

 

Хватает всё без разбору или не захватывает весь текст. 

  • ждать пока программу допилят 

 

Место текста краказябры, ☐☐☐☐ или вообще нет. 

  • игра на TextMeshPro и не имеет кириллицы есть решение

OverrideFontTextMeshPro отвечает за внешние шрифты в файле Config.ini .Шрифты нужно делать самим или скачать с github файл TMP_Font_AssetBundles.zip.Там два шрифта распаковать в корневую папку игры.

TMP_Font_AssetBundles содержит шрифты для Unity 2018,2019(подходит 2020) для остальных версий шрифты нужно делать вручную.

OverrideFontTextMeshPro=arialuni_sdf_u2018 (пример)

  • игра на NGUI и не имеет кириллицы решения пока нет

 

Плагин не подхватил игру.

  • выключите у папки игры атрибут тока для чтения повторить с 3 пункта

 

игра на il2cpp ( в папке {GameName}_Data имеется папка il2cpp_data)

 

 

 

 

 

 

Изменено пользователем Aniv_D
  • +1 1

Поделиться сообщением


Ссылка на сообщение

Не создаёт папку AutoTranslator что значит не могу настроить. Игра Wildfrost как быть то

Поделиться сообщением


Ссылка на сообщение

Здравствуйте, что делать если там кубики вместо перевода? Смотрел инструкции делал как всё по ней не помогло.

Название игры: Esports life tycoon (2019)

Поделиться сообщением


Ссылка на сообщение
В 20.04.2023 в 16:21, Shiro321 сказал:

Здравствуйте, что делать если там кубики вместо перевода? Смотрел инструкции делал как всё по ней не помогло.

Название игры: Esports life tycoon (2019)

УстановкаTextMeshPro шрифтов не помогает?

 

В 30.04.2019 в 17:04, Memoric сказал:
Встречающиеся проблемы (Показать содержимое)

 

Хватает всё без разбору или не захватывает весь текст. 

  • ждать пока программу допилят 

 

Место текста краказябры, ☐☐☐☐ или вообще нет. 

  • игра на TextMeshPro и не имеет кириллицы есть решение

OverrideFontTextMeshPro отвечает за внешние шрифты в файле Config.ini .Шрифты нужно делать самим или скачать с github файл TMP_Font_AssetBundles.zip.Там два шрифта распаковать в корневую папку игры.

TMP_Font_AssetBundles содержит шрифты для Unity 2018,2019(подходит 2020) для остальных версий шрифты нужно делать вручную.

OverrideFontTextMeshPro=arialuni_sdf_u2018 (пример)

  • игра на NGUI и не имеет кириллицы решения пока нет

 

Плагин не подхватил игру.

  • выключите у папки игры атрибут тока для чтения повторить с 3 пункта

 

игра на il2cpp ( в папке {GameName}_Data имеется папка il2cpp_data)

 

 

 

 

P.S. решил проверить сам еще. ога, к сожалению, ни один не хочет работать… почему то не подходят.
не хочет подгружать их и всё тут
 

[Info   :XUnity.AutoTranslator] Attempting to load TextMesh Pro font from asset bundle.
[Error  :XUnity.AutoTranslator] Could not find the TextMeshPro font asset: arialuni_sdf_u2018
[Warning:XUnity.AutoTranslator] Could not load fallback font for TextMesh Pro: arialuni_sdf_u2018
[Info   :XUnity.AutoTranslator] Loaded XUnity.AutoTranslator into Unity [2018.4.3f1] game.
[Info   :   BepInEx] Loading [XUnity Resource Redirector 2.0.0]
[Message:   BepInEx] Chainloader startup complete
 
 
Изменено пользователем Aniv_D

Поделиться сообщением


Ссылка на сообщение

Игра Starmancer v0.2.9 все по инструкции делаю, не появляется папка AutoTranslator, а если закинуть распакованный русик от версии 0.1.56 вместо буков пустота

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас популярно

  • Продвигаемые темы

  • Последние сообщения

    • Привет вероятно не актуально но мы уже неделю как исправили видео ролики и адаптировали озвучку под новую версию игры. И текстового перевода не ломающего ачивки нет. Ты можешь их включить но тогда сломается текст. Как включить уже объяснял тут надо дисабле рам и дисабле сброс в ини файле мгс фикс на труе переписать. Да перевод на msx есть но пока под эмулятор msx. В Стиме не версия msx там переработанный текст и чутка сюжет я не могу пока просто взять и перенести текст туда. Не совпадает перевод.
    • Ну раньше были олимпиады, спорт, а теперь там сплошная политика и почти никакого спорта, вот на политику и перешло дело, надо полагать. Эх, раньше трава была зеленее (как минимум там, где от заводов не была жёлто-красной).
    • Кстати ещё 6 лет назад политика интересовала только особо озабоченных. А теперь даже на игровом форуме такие темы постоянно.
    • На вопрос так и не ответил ж, приходится переспрашивать. ^^. А оно мне надо? тебе вот было надо, так что флаг тебе в руки. А я подожду.
    • Не припомню, чтобы я такое обещал о_О Ну вот,  займись лучше поиском "деньжищ" для предвыборной кампании, чем лясы тут на форуме точить) Всë в твоих руках. 
    • Случаем, не в краях, где опасные даскеры водятся, как там ты те края величал — лосадминосы или как-то так? А то, там всякое может происходить при истончённой границе реальности, не иначе.
    • История русской локализации Tales of Rebirth (PS2)
      Глава 7. Очистка строк от лишних данных и работа с нестандартными поинтерами
      https://temple-tales.ru/games/tor/russian_localization.html В начале прошлой главы на первом изображении я наглядно показал, что блоков с поинтерами в исполняемом файле всего более 40 штук. А теперь представьте, что все ранее описанные этапы нужно повторить заново с каждым из них. В таких случаях даже программистам приходится искать вручную каждый блок и идентифицировать все поинтеры. Потому что автоматизировать этот процесс очень сложно, ведь расположение поинтеров в большинстве блоках хаотичное, так как в одних расстояние между поинтерами одно, а в других — другое. Кроме того, расстояние в одном блоке поинтеров между разными указателями тоже может отличаться. А вот насколько сильно — вы можете посмотреть на приведённом изображении ниже:

      Визуализация разных расстояний между поинтерами. Красным отмечены области с расстоянием по 4 байта, синим — по 8 байт, а зелёным — по 12 байт соответственно. В этом случае возникает вопрос: а как в таком беспорядке abcde будет справляться с распознаванием поинтеров? Автор данного приложения этот момент не продумал. Если мы зададим программе интервал, то при извлечении текста в рамках этого интервала приложение будет пытаться прочитать поинтеры принудительно. Иначе говоря, после считывания обычных указателей приложение рано или поздно попытается считать поинтер из той области, которая не является поинтером. И именно в этот момент в строке с извлечённым текстом от программы стоит ожидать различного рода мусора, который будет очень сильно мешать работе в целом. Эти мусорные данные среди полезного текста выглядят примерно вот так:

      Розовым, чёрным и зелёным цветами отмечены блоки, которые программа ошибочно принимает за поинтеры и пытается извлечь текст по этим адресам. В результате прочитанные значения могут выходить за пределы массива данных файла, что в свою очередь создаёт различную несогласованность адресов. На данном изображении это отмечено серыми стрелками. Кроме того, если при попытке считывания по ложному смещению попадается первый байт со значением 0x00, то при извлечении эта строка будет пустой и в сформированном блоке поинтера ничего, кроме тега [END], мы не увидим. Напомню, что файлы с извлечёнными строками текста содержат свой блок данных для каждого поинтера, и в этих файлах их можно спокойно копировать и удалять, а также склеивать между собой как угодно, не нарушая синтаксис. Примерно вот так:

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

      Это ещё не всё, что хотелось бы осветить по поводу поинтеров. Дело в том, что, помимо простых указателей с поправкой, ещё существует второй тип поинтеров, которые записаны в функциях в виде инструкций прямо среди основного кода исполняемого файла. И не всегда их легко различить визуально. В нашем случае несколько таких поинтеров попадается в исполняемом файле, и работу с ними мне тоже пришлось освоить. Приложение abcde нам никак не поможет, потому что уровень сложности в этом случае резко возрастает и требует более глубоких знаний и понимания кода архитектуры процессора MIPS R5900, который используется в играх для платформы PlayStation 2. Для поиска таких поинтеров в очередной раз обращаемся к инструментам обратной разработки: IDA Pro или Ghidra. Как и в прошлый раз, опишу этот процесс, выполняемый с помощью IDA Pro. ⬜ Этап 1. Поиск функции, в которой прописан нестандартный поинтер а) Повторяем первоначальные шаги, которые были описаны в прошлой главе. Ищем нужные нам строки с текстом в исполняемом файле с помощью хекс-редактора, поинтеры которых не получилось найти. В качестве примера я выбрал строку вот с этим текстом: Chambers. Загружаем SLPS_254.50 в IDA Pro. Ждём, как приложение просчитает взаимосвязи всех функций. Далее щёлкаем по вкладке "Hex View-1" и ищем здесь начало того же текста, который нашли в хекс-редакторе. Вам необязательно сначала искать текст в хекс-редакторе, а потом в IDA Pro. Если вы достаточно хорошо ориентируетесь в IDA, то можете сразу начинать поиски текста в этом приложении. После того, как нашли строку с текстом, щёлкаем по вкладке "IDA View-A". Вы увидите вот такое окно:

      б) На представленном изображении в прошлом пункте наглядно видно, как чуть ниже строки с текстом программа прописывает адресацию к функции, в которой указан индекс к началу этого текста. Наводим курсором на эту взаимосвязь "# DATA XREF: .text:00153B3C↑o" и щёлкаем 2 раза:

      в) После того как два раза нажали на взаимосвязь "# DATA XREF: .text:00153B3C↑o", вас должно перекинуть на окно, которое по своей сути является просмотрщиком дизассемблированного кода:

      Таким образом мы попадаем в одну из функций, в которой прописаны определённые инструкции для работы с данной строкой. Именно здесь нам и предстоит ориентироваться в поисках нестандартного поинтера. ⬜ Этап 2. Определение верхней и нижней частей среди инструкций для формирования целого поинтера а) В первую очередь важно понять, что придётся часто переключаться между окнами "IDA View-A" и "Hex View-1", а также постоянно держать в голове поправку FF000 для точных расчётов. Можно упростить себе задачу и держать под рукой калькулятор для подсчётов в шестнадцатеричной системе счисления. Найденная область функции содержит данные сразу для работы с тремя строками: Оригинальный текст японской версии:
      1) 謎の館
      2) The Hidden Chambers
      3) この中に何があるのか……<__>全てが謎につつまれた館。 Текущий вариант перевода строк в нашей локализации:
      1) Таинственный особняк
      2) [SPACE]
      3) Особняк, окутанный тайнами.<__>Никто не знает, что в нём. Все они относятся к названию и описанию локации "Таинственный особняк". Но для того, чтобы вычислить каждый поинтер для всех этих строк, потребуются определённые манипуляции c идентификацией инструкций, в которых и спрятаны поинтеры. Кроме того, поинтеры для каждой строки разделены на 2 части и наша задача каждую из них найти, развернуть и правильно сложить. Перед тем, как приступить к следующему шагу, нужно немного рассказать об особенностях данного типа поинтеров. Процессоры MIPS работают с 32-битными указателями. Размер любого поинтера в памяти составляет 32 бита. Проще говоря, это 4 байта. Например: 0x0022C268. Это в свою очередь накладывает определённые ограничения, потому что любая инструкция MIPS занимает ровно 4 байта. В этот размер можно уместить: код операции, номера регистров и числовую константу (immediate). В итоге на константу в одной инструкции остаётся всего 2 байта. Это означает, что в одну инструкцию умещается только половина поинтера. Именно поэтому весь указатель собирается из двух инструкций. Первая инструкция загружает верхние 2 байта, а вторая добавляет нижние 2 байта. В этом и заключается основная задача: понять, где в инструкциях прописаны числовые константы для верхней и нижней части поинтера.



      б) В окне просмотра дизассемблированного кода "IDA View-A" нужно обратить внимание на следующие строки: lui $a0, 0x23 # '#'
      lui $a1, 0x23 # '#'
      lui $v1, 0x23 # '#' li $a0, unk_22C268
      li $a1, aTheHiddenChamb # "The Hidden Chambers"
      li $v1, unk_22C290 Первая группа из трёх строк отвечает за верхние части поинтеров, а вторая группа из трёх строк — за нижние. В итоге получаем вот такую взаимосвязь: Верхняя часть 1 поинтера = lui $a0, 0x23 # '#'
      Верхняя часть 2 поинтера = lui $a1, 0x23 # '#'
      Верхняя часть 3 поинтера = lui $v1, 0x23 # '#' Нижняя часть 1 поинтера = li $a0, unk_22C268
      Нижняя часть 2 поинтера = li $a1, aTheHiddenChamb # "The Hidden Chambers"
      Нижняя часть 3 поинтера = li $v1, unk_22C290 Для того, чтобы корректно отследить каждую часть, а потом сделать определённые изменения в соответствии с нашим переводом, возьмём вторую строку из первой группы и вторую строку из второй группы: Верхняя часть 2 поинтера = lui $a1, 0x23 # '#'
      Нижняя часть 2 поинтера = li $a1, aTheHiddenChamb # "The Hidden Chambers" Как только щёлкаем в любом месте по нужной нам инструкции в окне "IDA View-A", вся её часть подсвечивается соответствующим образом и в окне "Hex View-1". Пробуем нажать на "0x23" в окне "IDA View-A" (строка верхней части 2-го поинтера), а затем переключаемся на окно "Hex View-1" и наблюдаем, что IDA Pro выделяет все 4 байта этой инструкции:

      Первые 2 байта "23 00" в этом выделенном блоке и являются числовой константой, а именно верхней частью нужного нам поинтера. Запоминаем или записываем это значение. Далее приступаем к поиску нижней части поинтера. Для этого пробуем нажать на "aTheHiddenChamb" в окне "IDA View-A", а затем переключаемся на окно "Hex View-1" и снова наблюдаем, как IDA Pro выделяет все 4 байта другой инструкции:

      Здесь первые 2 байта "78 C2" тоже являются числовой константой, той самой нижней частью нужного нам поинтера. Теперь у нас на руках обе части. Перед тем как их сложить, нужно их развернуть — не забываем, что на консоли PS2 порядок построения байтов в поинтерах записывается в little-endian виде:
      23 00 » 00 23
      78 C2 » C2 78 Затем складываем:
      00 23 + C2 78 = 00 23 C2 78 Мы практически получили готовый поинтер, но не всё так просто. Если из него вычесть поправку FF000 и в исполняемом файле SLPS_254.50 в хекс-редакторе перейти по этому адресу, то мы не попадём на нужную нам строку, потому что существует определённое правило ещё одной поправки для инструкций, но уже для верхней части. Заключается оно в том, что если 2 байта из нижней части меньше или равны значению 0x8000, то к верхней части прибавляется 1 (то есть +0x10000), а если меньше, то эта поправка не нужна. В соответствии с этим правилом корректируем полученный поинтер, так как значение нижней части поинтера в нашем случаем больше этого числа: C278 > 8000. Пересчитываем:
      00 23 C2 78 - 00 01 00 00 = 00 22 C2 78 Вот только теперь мы получили правильный поинтер, от которого нужно отнять поправку FF000, о которой я просил вас не забывать:
      00 22 C2 78 - 00 0F F0 00 = 12 D2 78 Открываем исполняемый файл в хекс-редакторе и убеждаемся, что все расчёты были проведены правильно и что по данному адресу находится нужная нам строка с текстом:

      ⬜ Этап 3. Ручное изменение нестандратных поинтеров в хекс-редакторе а) Ну а теперь, когда нам известно, как найти все нестандартные поинтеры, то можно приступить к их изменению в соответствии с тем переводом текста, который я привёл в начале второго этапа. Есть попытаться вставить текст третьей строки, то он свободно умещается в изначально отведённое пространство. Но со второй строкой сделать это не получится — при попытке укладки переведённого текста в первую строку он начнёт перекрывать текст второй строки. Потому что для первой строки в исполняемом файле всего выделено 15 байт, а наш вариант "Таинственный особняк" занимает 20 байт + ещё нужно учитывать 1 байт окончания строки со значением {00}. Итого для нашего варианта перевода необходим 21 байт, что явно превышает размер 15 байт. Так как укладка текста будет идти в изначальный адрес оригинальной первой строки, то значения поинтера здесь менять не нужно, а вот значения поинтера для второй строки придётся изменить. Для новичков это может звучать немного запутанно, поэтому приведу несколько скриншотов, чтобы стало понятно получше:

    • Где такие страсти-то происходили-то? В нашем маленьком посёлке, где я учился, так-то про пикачу знало всего пара-тройка человек, при этом я — один из них. Помню как бегал со всех ног домой, чтобы успеть серию посмотреть. Эх, было ж время, чуть всех друзей так тогда не растерял, хотя… а, ну да, растерял. Ты это, выдвигать меня собираешься или нет?) А то таких деньжищ лично у меня не имеется, чтобы самовыдвижением заниматься. Чай, не Собчаг же ж.
    • Будет достойная замена Собчак)  У нас всякие водились. Видишь бегут два сорванца, а за ними тëтенька, у которой подрезали сумочку. И думаешь то ли тëтеньке помочь, отхвативв потом от кучки местной шпаны. То ли безразлично смотреть на происходящее. Это к слову для тех, кто мечтает о романтике 90-х, чтобы всë стало как в те "свободные" времена. 
  • Изменения статусов

    • Jimmi Hopkins  »  SerGEAnt

      Это не просто перевод, а полноценная авторская сценарная адаптация. Диалоги переписаны так, чтобы персонажи звучали живо, остро и в характере. Добавлен чёрный юмор там, где авторы постеснялись. Убраны лорные противоречия, докручены мотивации. В результате игра стала умнее, злее и смешнее оригинала.
      · 0 ответов
    • ElikaStudio

      Долгожданный релиз полного сезона состоялся!
      https://youtu.be/mwBk2stm2OQ?si=qpJojB_XDABaC0We
      https://vk.com/video-48153754_456239394?sh=4&list=c62797c2b7d0725d6e
      Life is Strange: Before the Storm:
      Эпизод 1: "Прoбуждeниe"
      Эпизод 2: "О дивный новый мир"
      Эпизод 3: "Ад пуст"
      Бонусный эпизод: "Прощание"
      Русская озвучка уже доступна для скачивания!
      ElikaStudio выражает огромную благодарность всем, кто принял участие в создании проекта! 
      Группе Mechanics VoiceOver R.G. MVO , в частности их руководителю Дмитрию за неоценимую помощь в выпуске эпизода.
      Скачать для PC Classic (2018):
      GDrive: - https://drive.google.com/file/d/19CL_L80Mz0sIxcb54Ss64byAkeZmV22r/view?usp=sharing
      Скачать для PC Remastered (2022):
      GDrive: - https://drive.google.com/file/d/13q58Lpvw5_aYPYeZ7OGYZlAKOoS1gEbL/view?usp=sharing
      Скачать для Свитч(2022):
      GDrive: - https://drive.google.com/file/d/15e—T1LQiGQCYIHeNnj_C2qJA16Gvh1i/view?usp=sharing
      Ручная установка PC(оба издания):
      https://drive.google.com/drive/folders/1MJPd8965m4XxxAuOBt8enSHtv8_yy5xh?usp=sharing
      Баг репорт в обсуждении:
      https://vk.com/topic-48153754_55571577
      ___________________________________________
      Финансовый аппарат:
      www.donationalerts.com/r/elikastudio
      Пожертвовать средства на наши проекты:
      Кошелек ЮMoney 4100 1188 6818 3009
      карта Сбер банк 2202 2018 6334 1042
      карта Альфа банк 5559 4937 0209 8584
      Спасибо за вашу поддержку!
      #elikastudio #русскаяозвучка
      · 0 ответов
    • fox222  »  Siberian GRemlin

      Здравствуйте, хочу купить персональный доступ к переводам, сколько стоит?
      · 1 ответ
    • vitkach  »  eaZy

      Извините за беспокойство. Хотел спросить, а русификатор ещё когда-нибудь будет обновляться? Дело в том, что после его выхода выходили ещё обновления, в частности обновление 1.1, вышедшее летом 2023 года, где была добавлена целая сюжетная глава в конце если проходишь на лучшую концовку золотого пути, это где-то ещё полчаса диалогов. Также в игре присутсвуют иногда кракозябры вместо русского языка, это в основном связано с тем, что кое-где текст был изменён, в основном в обучающих сообщениях.
      · 0 ответов
    • TerryBogard  »  Siberian GRemlin

      C&C: RA: Retaliation (ПК) не работает.
      · 0 ответов
  • Лучшие авторы


×