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

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

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас


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

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

    • @sakhDoc действительно, чудеса Надеюсь автор сможет подправить русификатор, чтобы весь прогресс не терять.
    • Вот, например, популярно расписано что такой мультикласс и с чем его едят. Ты б попробовал сперва сам вокруг механики носом поводить, прежде чем чудеса искать в других. Уворот можно качать без убийств, если не знал. В т.ч. никто не запрещает потом вернуться в старый класс. После перехода навыки вкачанные не теряются и доступны. Сам обычно брал первым лвлом неосновной класс, качал подобные вещи ещё на пляже в начале, потом переходил в то, что хотел основным. Около получаса гринда, а потом комфорт на всю игру. Повторюсь, всё это чаще всего нужно, когда хочешь играть в одного персонажа без каких-либо сопартийцев. Тут совсем другой подход к игре и другие потребности. Есть. У мобов в локациях пусть и есть максимальный левел для локации, но если ты не превосходишь макс лвл, доступный мобам, они левелятся под тебя +фактор рандома. Если человек не задротит, а играет обычным образом, то перекач может не увидеть вообще никогда. Перекач — это более свойственно для стиля игры для неполной пачки или соло, когда человек гриндит направленно, т.к. иначе может быть затруднительно играть.  
    • Моя теория подтвердилась. Делитнул сейф (ранее не находил такого меню в игре, либо игра не реагировало на него), переставил руссификатор и игра заработала на русском… Чудеса!
    • Русификатор Venetica 1.00 обновлённый (Только текст) Исправлен текст Немного изменён шрифт Добавлен game_menu.gfx из-за одной строки в Настройках управления (которая отсутствовала в english.bin)   P.s. Архив самораспаковывающийся (Закинуть в папку Venetica и запустить, согласившись на замену) 
    • @oleg72 еще одно чудо которое в игру не играло. Нет там автолевела, я чётко помню как убегал из локации в которой даже три раунда просто выстоять не мог и я выше писал, что в соло комфортно можно играть если в уровне превосходсвто есть.    Девка повелась на прекрасного незнакомца, который ей в последствии глаз вырвал, один из персонажей убивает свою дочь — это так обычно не то что в третьем ведьмаке. Сюжет там есть и он хорош, но его очень мало и локации очень разнообразные, просто на графон деньги кончились.  Для своей целевой аудитории это шедевр на все времена, ну а идеальную игру, так еще такую в которой после нескольких прохождении недостатков не увидеть, еще никто не сделал.  
    • @sakhDoc не думаю что в сейвах дело. автор чуть выше писал что заменяются ресурсы, если я правильно понял, то в результате вместо английского появляется русский. а сейвы легко находятся, можно даже отредактировать их в блокноте. да и в самой игре есть кнопка удаления сейвов.
    • Cразу “Ведьмак” вспоминается, последняя книга, я помню там какую-то чудищу тоже Мыкола звали.
    • Добавлю, как и до этого, что проблема аналогична. Но я грешу на сейф игры. Возможно в нём зашиты какие-то настройки. Как удалить сейф/файл с настройками, я так и не нашел.
    • @Atanvaron  перекачал с я.диска. архив, опять скопировал (как и в прошлые разы с заменой, т.е. в нужное место копирую) — ничего. скачал установщик, запустил, он сам нашёл куда установлен tape to tape, поставил — ничего. Логично. Но не поменялось ничего ошибок нет, тексты в порядке, в настройках язык меняется английски <> французский.
    • ля там треш ближе к концу происходит, я увидел очередную нелепую смерть в кино 
  • Изменения статусов

  • Лучшие авторы


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

×