Перейти к содержимому
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

 

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


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

Чуть обновил тупые сборки в стиле кинул что-нибудь в игру, тупа жмякнул на всё и уже гамаешь.
https://disk.yandex.ru/d/PkI0TPJFlk3IZA

Изменено пользователем DragonZH
что забанили ссылку, теперь другая
  • Лайк (+1) 4

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


Ссылка на сообщение
3 часа назад, SirKeeper сказал:

Пробовал Endpoint=Yandex и Endpoint=YandexTranslate, ни переводит ни фига…

На сколько знаю яндекс заблочили со стороны самого яндекса.

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


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

Может кто то помочь, возможно ли русифицировать эту игру Strategic Command WWII World at War. Посмотрел вроде бы не il2cpp попробовал оба описанных метода ReiPatcher и BepIn но почему то не сработало. ReiPatcher не создавал измененный ярлык игры.

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


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

Кто-то пытался перевести Caves of Qud?

 

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


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

Помогите перевести STORY OF SEASONS Pioneers of Olive Town. Пробовал но почему то не создает файл config.

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


Ссылка на сообщение
В 05.11.2022 в 01:49, Seg сказал:

Помогите перевести STORY OF SEASONS Pioneers of Olive Town. Пробовал но почему то не создает файл config.

игра на il2cpp.Спокойно захватывается MelonLoader.

также в игре TextMeshPro использовать шрифт arialuni_sdf_u2019

Также рядом с _AutoGeneratedTranslations создать текстовый файл и запихнуть

sr:"([0-9]+:[0-9]+) ([\S\s]+)"=$1 $2

Нужно чтобы у переводчика крыша не поехала от часов в игре.

 

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

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


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

игра на il2cpp.Спокойно захватывается MelonLoader.

также в игре TextMeshPro использовать шрифт arialuni_sdf_u2019

Также рядом с _AutoGeneratedTranslations создать тестовый файл и запихнуть

sr:"([0-9]+:[0-9]+) ([\S\s]+)"=$1 $2

Нужно чтобы у переводчика крыша не поехала от часов в игре.

 

там же автоматический перевод?

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


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

У кого бывает такое что переводчик перестает работать через некоторое время и надо перезапускать игру. Можно ли как то это починить или заставить работать без перезапуска?

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


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

У кого бывает такое что переводчик перестает работать через некоторое время и надо перезапускать игру. Можно ли как то это починить или заставить работать без перезапуска?

Чаше всего это происходит после определённого количество запросов переводчики. Причина когда в игре есть тикающий перевод часы или координаты которая она переводит каждую секунду. Это можно проверить в файле _AutoGeneratedTranslations там будет куча одинаковых строк перевода.

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


Ссылка на сообщение
14 минут назад, Memoric сказал:

Чаше всего это происходит после определённого количество запросов переводчики. Причина когда в игре есть тикающий перевод часы или координаты которая она переводит каждую секунду. Это можно проверить в файле _AutoGeneratedTranslations там будет куча одинаковых строк перевода.

Да не я просто быстро читаю диалоги. Главный вопрос был не в причинах, причины то как раз понятны, а в том как настроить чтоб не блочило. Интервал какой между запросами сделать. и где этот интервал искать.

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

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


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

Тут пишут, что проблема в Rune5 и Re Legend

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


Ссылка на сообщение
В 06.11.2022 в 11:27, Memoric сказал:

игра на il2cpp.Спокойно захватывается MelonLoader.

также в игре TextMeshPro использовать шрифт arialuni_sdf_u2019

Также рядом с _AutoGeneratedTranslations создать текстовый файл и запихнуть

sr:"([0-9]+:[0-9]+) ([\S\s]+)"=$1 $2

Нужно чтобы у переводчика крыша не поехала от часов в игре.

Спасибо за разъяснения ! Всё получилось !

А как можно решить проблему когда  перевод в диалоговое окно не помещается ?

 

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

Ur5yj.png

 

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

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


Ссылка на сообщение
В 09.11.2022 в 17:42, Leprikon01 сказал:

Да не я просто быстро читаю диалоги. Главный вопрос был не в причинах, причины то как раз понятны, а в том как настроить чтоб не блочило. Интервал какой между запросами сделать. и где этот интервал искать.

Проблема в самой структуре игры и переводчик нужно настраивать чтобы этого не происходила.

Пример:

Яблока:1

Яблока:2

Яблока:3

И она так всё переводит по отдельности. Поэтому переводчик отключается. В рпг играх очень много перевода с переменными.

Для подобных игр нужно писать регулярные выражение чтобы разделять текст на “Яблока:” и цыфры .

И это делается вручную.

пример:

 

//Power load 148%

sr:"^([A-Za-z\s]+)[\s]([0-9]+[%])"=$1 $2

разделяет на “Power load” и “148%”

22 часа назад, elmin59 сказал:

Тут пишут, что проблема в Rune5 и Re Legend

в любой рпг игре.

  • Лайк (+1) 1

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


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

Доброго времени суток. У меня проблема: Переводчик переводит каждое предложение в абзаце с новой строки и из-за этого при большом тексте переводчик отказывается переводить( скорее всего из-за того, что он просто не помещается на экране). Как сделать, что бы предложения были в одном абзаце?

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


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

 

В 11.11.2022 в 14:35, Memoric сказал:

//Power load 148%

sr:"^([A-Za-z\s]+)[\s]([0-9]+[%])"=$1 $2

Такое просто обходится включением функции TemplateAllNumberAway
В базе автоматически получится подстановка цифр //Power load {{A}}%
Гораздо сложнее с текстом бывает, когда текст вообще блоком идёт и не разделяется, в свою очередь в файлах это всё разделено, и этот текст как попало может меняться, несколько тысяч комбинаций, вот там нужны регулярки.
Как-то делал разделение блока текста на части, от начала строки до оператора цвета, до следующего оператора и до конца строки и так далее, с учётом что операторов цвета может быть очень много. То есть получилось практически как разделение блока на предложения, каждая часть блока, текст и подсвеченный текст стали переводиться отдельно.

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



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.*?\</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]*?)$"=$1$2$3$4$5$6$7$8$9
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]*?)$"=$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

 

 

36 минут назад, 3DBoy сказал:

Доброго времени суток. У меня проблема: Переводчик переводит каждое предложение в абзаце с новой строки и из-за этого при большом тексте переводчик отказывается переводить( скорее всего из-за того, что он просто не помещается на экране). Как сделать, что бы предложения были в одном абзаце?

Мне кажется это уже игра ломает, надо смотреть что в базе находится. Может спецом сделано, потому что начало предложения ещё ведь нужно определить, чтобы перенос перед ним поставить.

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


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

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

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

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

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

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

Войти

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

Войти сейчас



Zone of Games © 2003–2024 | Реклама на сайте.

×