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

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

Razdor, не вопрос, протестирую и отпишусь.

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


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

Я еще хотел поделиться парой инструментов для более точного перевода.

Как вы, наверное, знаете, диалоги игры лежат в DLG файлах, запакованных в RIM файлы (папка modules). На мой взгляд, структура диалогов может быть очень полезной для точного перевода.

Чтобы вытащить диалоги из RIM файлов есть утилита ERFEdit. Скачать ее можно отсюда. Открываете в ней RIM файл, сортируете список по колонке Type, выделяете все DLG файлы и меню Tools -> Extract selected...

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

С этим DLGEditor есть проблема: он не понимает русский язык, поэтому ему стоит указывать английский dialog.tlk. Самые важные, на мой взгляд, данные, которые он показывает по каждой реплике диалога это кто говорит (Speaker), кому говорит (Listener) и индекс строки в TLK файле (StrRef). В редакторе переводов этот индекс указан в колонке Идентификатор. Стоит отметить, что если в диалоге StrRef равен -1, значит у этой реплики нет строки в dialog.tlk.

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

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

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


Ссылка на сообщение
С этим DLGEditor есть проблема: он не понимает русский язык...

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

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

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


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

Есть, и именно с ее помощью происходит перевод (тем самым он отличается от предыдущего, где строчки переводились в отрыве от игрового контекста). И именно в ней добавляются дополнительные строки для женских персонажей (там, где это возможно). Но она очень неудобна. Например тем, что нельзя из нее редактировать сам tlk-файл, и тем, что в ней не работают горячие клавиши, если не переключить раскладку на английский. Собственно говоря никаких дополнительных инструментов для облегчения редактирования tlk-файла и не нужно, сложность именно в dlg. А еще в том, что никто так и не ответил, нужно ли продолжать проект перевода. В данный момент он заморожен на "демонстрационной" версии. Ведь самому переводчику трудно определить, как ощущается текст, нужен взгляд со стороны. И не хочется тратить кучу времени на проект, результат которого не будет превосходить уже существующие по качеству.

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

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


Ссылка на сообщение
Собственно говоря никаких дополнительных инструментов для облегчения редактирования tlk-файла и не нужно, сложность именно в dlg.

Но ведь для перевода достаточно заменить английский текст на русский в tlk файле (если не считать сложностей с персонажем мужского/женского пола), разве нет? dlg нужны лишь для восстановления контекста для перевода, но сам перевод не затрагивает dlg файлы, в них лишь ссылки на строки в tlk файле. Или я что-то упускаю?

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


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

pzhukov

В шапке же есть инструменты.

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


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

В шапке же есть инструменты.

Да, был невнимателен. Прошу прощения.

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


Ссылка на сообщение
Но ведь для перевода достаточно заменить английский текст на русский в tlk файле (если не считать сложностей с персонажем мужского/женского пола), разве нет? dlg нужны лишь для восстановления контекста для перевода, но сам перевод не затрагивает dlg файлы, в них лишь ссылки на строки в tlk файле. Или я что-то упускаю?

Не упускаете, но это немного муторно. Смотреть в dlg-файле номер строки, открывать эту строку в TalkEd, переводить, сохранять. Умножайте это на ~20000-30000 раз. Возможность быстро переходить к нужной строчке для редактирования заметно облегчило и ускорило бы процесс.

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


Ссылка на сообщение
А еще в том, что никто так и не ответил, нужно ли продолжать проект перевода. В данный момент он заморожен на "демонстрационной" версии.

Конечно, нужно.

Был бы нужен - помогли бы в тестировании, это не самое трудное задание на свете.

Не могу помочь с тестированием в ближайшее время, в силу занятости по работе и нехватки времени на игры и прочие развлечения, но мог бы присоединиться к тестированию позже, когда у меня все стабилизируется. Если такой ответ принимается, как аргумент "за перевод", то вот, +1 голос…

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


Ссылка на сообщение
Не могу помочь с тестированием в ближайшее время, в силу занятости по работе и нехватки времени на игры и прочие развлечения, но мог бы присоединиться к тестированию позже, когда у меня все стабилизируется. Если такой ответ принимается, как аргумент "за перевод", то вот, +1 голос…

Дело как раз в том, что свой голос надо отдавать уже после тестирования. Разумеется, на вопрос "Хотите ли вы новый качественный перевод?" ответом будет единогласное "Да!". Но вопрос именно в том, является ли он таковым. Впрочем, я со своей стороны, когда сравнивал старый с новым, видел в старой версии множество неверно переведенных идиом, плохо подобранных фразеологизмов, контекстных нестыковок с предшествующими фразами и "характерами" персонажей, неверно переданные смысловые значения (когда технически фраза переведена верно), да и банального надмозга хватало. И это только самое начало игры. А в новом всего этого нет. Но я могу быть предвзятым из-за своей причастности к переводу. Кто знает, может новый текст не лучше? За этим и нужен взгляд со стороны. К тому же, отсутствие отклика "налагает штраф на показатель морали", если вы меня понимаете.

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

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


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

Ну что ж, делюсь впечатлениями. Не знаю, может я на редкость невнимателен, но не заметил серьёзной разницы в качестве переводов - нового и старого. Кое-где перевод отличается, но и тут у обоих версий есть свои и плюсы и минусы. Где-то старый перевод лучше, где-то новый, в целом - на одном уровне.

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

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


Ссылка на сообщение
Смотреть в dlg-файле номер строки, открывать эту строку в TalkEd, переводить, сохранять.

Да, примерно так я себе это и представлял. Я все же надеюсь, что в редакторе Microsoft поудобнее переводить будет. Кстати, мои советы не помогли уточнить проблему с конвертером?

Насколько я знаю, отсутствие контекста для перевода - стандартная проблема универсальных средств перевода. Да и процесс локализации в разработке приложений (и игр скорее всего тоже) довольно стандартный: вытащить все строки (в этот самый момент и теряется контекст), перевести, запаковать обратно.

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


Ссылка на сообщение
Где-то старый перевод лучше

В целях улучшения его качества было бы неплохо увидеть примеры.

Кстати, мои советы не помогли уточнить проблему с конвертером?

По запарке файл translated.tlk написал как translation.tlk

Стоило предусмотреть в коде проверку на наличие файлов.

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

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


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

Вот мои наблюдения при создании персонажа. Старый перевод: 1, Новый: 2. Имхо, "Мошенник" звучит получше, как-то немного не круто играть за "Негодяя". Характеристики. С: 3, Н: 4. Штрафы, аспекты... Суховато. С: 5, Н: 6. В 1ом варианте уточнение, что Сила - Физическая(видимо, чтобы не было путаницы с физической и джедайской) и обобщение "клинки", во 2ом просто "Сила" и "виброклинки", зато есть полезная информация, что харак-ка добавляет шанс попасть по цели. С: 7, 8, 9, 10, 11; Н: 12, 13, 14, 15, 16. Практически одно и то же, но в 1ом варианте описания лаконичнее, немного легче читаются. Зато во 2ом, в описании "Харизмы" понятнее сказано, что это от этой харак-ки зависит убеждение. Навыки. С: 17, 18, 19-20, 21, 22-23, 24-25, 26, 27; Н: 28, 29, 30-31-32, 33, 34-35, 36-37, 38-39, 40. В целом, в новом переводе больше понравились названия навыков и более детальное их описание. Но есть несколько "но". "Убеждение": во-1х словцо "обнародовать" имхо лучше заменить на просто "говорить", во-2х, про охранника не понятно - то ли он "легко согласится увеличить выдаваемую награду", то ли "может с лёгкостью уменьшить размер взятки". "Лечение ранений": ...увеличивает размер повреждений... "Врачевание": ...увеличивает излечиваемый урон... И там, и там навык увеличивает урон. Хотя должен лечить здоровье. Или, например, увеличивать кол-во пунктов здоровья, восстанавливаемых при использовании аптечки.

Позже добавлю ещё скрины для сравнения.

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


Ссылка на сообщение
Имхо, "Мошенник" звучит получше, как-то немного не круто играть за "Негодяя".

Мошенник\Плут - Rogue

Негодяй - Scoundrel

Rogue != Scoundrel

Устоявшийся перевод (см пункт о преведении названий к общепринятым названиям в D&D и SW).

--------------------

Han Solo: You like me because I'm a scoundrel. There aren't enough scoundrels in your life.

--------------------

Штрафы, аспекты... Суховато.

А старый плохо написан стилистически. Отдает, простите, "школьностью".

Что до сухости - так и должно быть. D&D-терминология не располагает к просторечивым описаниям. В оригинале так же. Поставьте английскую, и вы увидите.

В 1ом варианте уточнение, что Сила - Физическая(видимо, чтобы не было путаницы с физической и джедайской) и обобщение "клинки"

О какий "силе" идет речь будет всегда понятно из контекста, для этого будет сделано всё возможное.

Что до "уточнения", в оригинале vibroblades.

Практически одно и то же

Вот именно, что практически. Первое же описание, "так что" и "благодаря тому, что" имеют совершенно разное смысловое значение. "благодаря тому" тут правильный вариант. Казалось бы, и что тут такого, всего пара слов с немного иным значением. Но именно поэтому старый перевод никогда не исправят. Смотрят переводчики на перевод и думают "да и так сойдет, можно и самому догадаться, о чем речь".

Но есть несколько "но". "Убеждение": во-1х словцо "обнародовать" имхо лучше заменить на просто "говорить"

Сообщать. Уже стоит в списке на исправление.

то ли он "легко согласится увеличить выдаваемую награду", то ли "может с лёгкостью уменьшить размер взятки".

Спорный момент.

A guard might easily agree to increase a bounty, but convincing him to leave his post would be much harder.

Increase\decrease штуки разные. Если охранник уже взял взятку, но не покинул пост - зачем была нужна взятка? Если бы тут имелось в виду "убедить покинуть пост трудно, убедить подкупом - проще" то фраза была бы построена иначе. Не говоря о том, что в русском переводе ее именно так и надо было бы писать, иначе в этом нет логики. Имеется в виду, что попросить бОльшую награду за квест проще (DC зависит от того, на сколько хотите повысить свою награду), чем убедить охранника покинуть пост (DC у таких действий выше).

И там, и там навык увеличивает урон

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

Теперь, главное. Интерфейс - не совсем то, что должно обсуждаться. Первостепенное значение при переводе все же имели диалоги.

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас

  • Похожие публикации

    • Автор: SerGEAnt
      Disney Villains: Cursed Cafe

      Метки: Казуальная игра, Point & Click, Интерактивная литература, 2D, Фэнтези Платформы: PC SW Разработчик: Bloom Digital Media Издатель: Disney Дата выхода: 27 марта 2025 года Отзывы Steam: 31 отзывов, 74% положительных

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

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

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

    • [vFonts.r01] В связи с внедрением разработчиков русского перевода от сообщества в игру, оставил только аутентичные кириллические шрифты.
    • Языки в мире вообще не совершенны и полны логических ошибок сами по себе, особенно французский. И ничего. Как-то никто вопросов не задает. Русский язык тоже не идеальный и время от времени в нем что-то меняют. Что-то с не правильного становится со временем правильным.  Сейчас правильно ставить ударение в слове звонит на второй слог. Хотя люди всё больше ставят ударение на корень в глаголах, чем на окончание. И скорее всего это скоро станет официальным “правильным” вариантом, может уже стало, я не особо слежу за этим, давно об этом читал. В языках программирования, главное выдерживать стиль, чтобы твой код понимали другие. В обычных языках я считаю, это тоже самое главное. Пока тебя понимают — всё ок. Если докапываться до каждой буковки и до каждой запятой, то вместо диалога у людей будет вечное редактирование ошибок. Если ты хотел показать мне, что такое не приятно читать, то надо было стараться сильнее. Я привык даже вот к такому: “приФфки, а ти ни ХоТил Бы ню такъс чтобы нимноЖечка, поФфармить асечки  то Ж я баЮсь одна миня моГутЪ убиФфать там злие пвпсчеры а ток ти са мной будефф и мы всих убфьем, мурь?”
    • Спасибо за развернутый ответ. Поживу тогда с костылем. Того, что работает мне с головой хватает
      В любом случае благодарю за вашу работу. Скрипт шикарный. )
    • Вообще-то зашито. Все млекопитающие играют в игры. Естественно, животные не играют в компьютерные игры, как и люди не играли до изобретения компьютеров. Тоже неправильный пример, т.к. без еды прожить нельзя, а без близости с другим человеком можно.
    • Да, как я и предполагал, за исключением дополнения в виде наблюдателя времени друзей.

      Экосистема менеджеров (Tampermonkey, Greasemonkey, Violentmonkey и др.), а также сред выполнения скриптов, встроенных в другие расширения (как в AdGuard), довольно разнообразна. Да, все они служат одной цели, но их внутренние реализации могут существенно отличаться. В основе их работы лежит концепция песочницы - изолированной среды, которая создается из соображений безопасности, чтобы пользовательский скрипт не мог бесконтрольно хозяйничать на странице, например, похищая личные данные. Но строгость этой песочницы и набор инструментов, которые предоставляются скрипту для общения с внешним миром, сильно варьируются. Хотя все они стремятся следовать общему стандарту Greasemonkey API, их реализации отличаются. Tampermonkey, на сегодняшний день, является наиболее функционально полным и стабильным менеджером, который реализует даже самые специфические, но ставшие стандартом де-факто в сообществе, возможности API, такие как unsafeWindow и гибкое управление кросс-доменными запросами. Другие менеджеры зачастую являются форками (ответвлениями) более старых версий или независимыми разработками, которые догоняют “золотой стандарт” по функциональности с разной скоростью. Иногда это приводит к тому, что в них отсутствуют определённые функции.

      Например, некоторое время назад была проблема с работой другого моего скрипта в OrangeMonkey (который использовал наш главадмин SerGEAnt). Она была связана с тем, как расширение обрабатывало разрешения на кросс-доменные запросы и взаимодействие с веб-редактором CKEDITOR, который используется на многих форумах на движке Invasion Board. Скрипту требовался доступ к API редактора, но OrangeMonkey не предоставлял необходимого моста для выхода из “песочницы”, что приводило к ошибке. В то же время в Tampermonkey этой проблемы уже не было, так как его разработчики реализовали более продвинутые механизмы взаимодействия с контекстом страницы. Это классический пример рассинхронизации в разработке, где одно расширение уже адаптировалось под новые веб-технологии, а другое - ещё нет. AdGuard, конечно, довольно мощнейший инструмент для блокировки контента и защита приватности, но выполнение пользовательских скриптов является его вторичной, хоть и очень полезной, функцией. Поэтому вполне объяснимо, что его песочница может быть более строгой, а среда выполнения не предоставляет некоторые узкоспециализированные, но критически важные для сложных скриптов API, такие как unsafeWindow. Это не столько недостаток, сколько фундаментальное различие в философии разработки: приоритет отдается максимальной безопасности, иногда в ущерб расширенной функциональности пользовательских скриптов. Теперь давайте пройдёмся по результатам. Это как раз то, о чём я писал в предыдущем сообщении. Во время разработки скрипт все еще мог получить список игр из window, но где-то с полторы недели назад Valve немного изменила свой фронтенд. Они всё активнее используют современные фреймворки, которые строят страницу динамически, а данные хранят внутри своей инкапсулированной экосистемы (состояние компонентов). Раньше переменные могли просто объявляться в глобальной области видимости, теперь же они "живут" внутри фреймворка, и доступ к ним снаружи затруднен. В какой-то момент массив с ID игр из списка желаемого (g_rgWishlistData), который раньше был легко доступен, стал инициализироваться таким образом, что его можно прочитать только через прямой доступ к JavaScript-контексту самой страницы. Именно для этого понадобился unsafeWindow. Он как ключ, который позволяет скрипту, работающему в изолированной песочнице, дотянуться до переменных на основной странице. Костыль (var unsafeWindow = window;) - это хороший фикс для предотвращения падения скрипта от ReferenceError, но он лишь создаёт псевдоним для window песочницы, в которой g_rgWishlistData по-прежнему не существует. AdGuard не предоставляет этот ключ, поэтому скрипт не может найти ID и сообщает об ошибке. Здесь причина схожа, но связана не столько с доступом к переменным, сколько с изоляцией сессии аутентификации. Ваше тестирование подтверждает, что среда AdGuard, скорее всего, выполняет скрипты в настолько изолированном контексте, что они не имеют полного доступа к вашей браузерной сессии на сайтах Steam. Для работы этих модулей необходима авторизация. Её отсутствие или изоляция приводят к неработоспособности: Наблюдатель: Его основная задача - отслеживать изменения в вашем списке желаемого и библиотеке. Для этого скрипт обращается к эндпоинту Steam /dynamicstore/userdata/:
      https://store.steampowered.com/dynamicstore/userdata/
      Когда вы авторизованы, сервер Steam отдает специальный JSON-файл, содержащий ID ваших игр из rgWishlist, rgOwnedApps и т.д. (в этом JSON также содержатся ваши настройки персонализации магазина, но нет и не может быть логина, хэша пароля, платёжной информации или токенов аутентификации). Скрипт использует эти ID, чтобы затем сделать отдельные, публичные запросы к API Steam и получить информацию по каждой конкретной игре. Когда скрипт через GM_xmlhttpRequest делает запрос к /userdata/, этот запрос должен содержать ваши аутентификационные данные. Если среда выполнения (AdGuard) не передает их, для сервера Steam этот запрос выглядит как анонимный, и он возвращает пустой ответ. Таким образом, у модуля просто нет исходных данных для работы - он не знает, за какими играми ему нужно следить, и его панель остается пустой. Время друзей: Механизм абсолютно такой же. Чтобы показать, сколько времени ваши друзья провели в игре, скрипт должен сначала узнать, кто ваши друзья. Эта информация находится на персонализированной странице сообщества Steam (friendsthatplay), например:
      https://steamcommunity.com/my/friendsthatplay/1245620
      она генерируется сервером динамически, специально для вашего аккаунта. Для анонимного пользователя или для скрипта, работающего в изолированной сессии без доступа к актуальным данным, такой страницы не существует - Steam просто не вернет нужные данные. Соответственно, без доступа к этой странице скрипт не может извлечь имена друзей и их наигранные часы и делает логичный вывод - “друзья не играли”. Фильтр “Только ваши DLC”: Этот фильтр в каталоге поиска полностью зависит от вашей личной библиотеки. Его механизм прост: при отображении каждого товара скрипт проверяет, является ли он дополнением (DLC). Если да, он определяет ID основной игры (parent_appid) и ищет его в вашем списке rgOwnedApps, полученном из того же /userdata/. Если вы не авторизованы или сессия недоступна, список rgOwnedApps пуст, и фильтр просто не сможет найти ни одного подходящего DLC. Помощники подарков (Gift Helpers): И на странице игры, и в списке желаемого, для корректной работы им необходима точка отсчета - цена и валюта в вашем регионе. Эту информацию Steam предоставляет пользователю через переменные g_strCountryCode и g_rgWalletInfo. Без них скрипт не может запросить локальную цену и выполнить правильную конвертацию для сравнения с ценой друга. Тем не менее, как вы и заметили, помощник на странице игры у вас сработал. Это связано с наличием в этом модуле специального костыля: если скрипт не может определить данные текущего пользователя, он по умолчанию использует данные для российского региона в качестве базовых. Это позволяет функции работать, но сравнение цен может быть неточным, если вы на самом деле находитесь в другом регионе. Для помощника в списке желаемого этот костыль уже не помогает, так как тот модуль при попытке получить ID игр со страницы. Вот как-то так.
    • *радостно думает — ведь Сам попросил… , достает набор томов Русского Языка и основ правописания*  — p.s. Знаки препинания, обоснованные правилами, не всегда могут передать ход мысли. Поэтому наличие лишних (,) иногда (,) в “общательно-форумных” целях (,) можно считать некоторым Самовыражением. Но вот отсутствие...)
    • Обновил русификатор - теперь русские шрифты основаны на оригинальных, и выглядят намного лучше.
    • Всем ку! Скиньте перевод пожалуйста!
    • Ты енто, тогось, не путай просторечие устаревшее “деревенское” словарное специально говорное с ихними тамошными твоейными ошибками по незнанию, чай культурный человек, городской же ж должен быть, а то ты чавой-то ентого опять ты напутал. Знаешь же ж, что мы тут все из дерЁвни, агась, при том ещё ж и не столичной дерЁвни, а чукчи, не иначе, агась. P.S. весь мозг сломал, пока печатал, понадобилось две чайки кофе и грибы.
    • https://github.com/darthalex2014/Look-Outside-Rus/releases/download/1.0.5p/Look.Outside.Rus.v1.0.5p_FIX.7z
      Fix:
      - Починил перевод плагинов (теперь нет вопросов вместо слов)
      - В новых строках посеял ":" в 1 строке, из-за этого перевод съехал - исправил.
      - Сделал варп строк еще больше.
  • Изменения статусов

    • Дмитрий Соснов  »  Tirniel

      Привет! ты разбираешься в компьютерном железе, сможешь помочь с советом по апгрейду старого компа?
      · 1 ответ
    • SHAMAH

      Куда вход на сайт убрали и ЗАЧЕМ? Хотел файл скачать, там только медленная загрузка и “зарегистрируйтесь”. Все. Пришлось вручную страницу входа прописывать.
      · 0 ответов
    • Nosferatu  »  behar

      Добрый вечер.
      Подскажите пожалуйста, у вас не осталось случайно исходников для фикса на широкоформатные мониторы для игры Vampire The Masquerade Redemption?
      Если да, то не могли бы вы ими поделиться, а если нет, то прошу прощенья что побеспокоил.
      Заранее спасибо.
      · 0 ответов
    • AlcoKolyic  »  makc_ar

      Здраствуйте! Извините, а можно попросить ссылку на место где можно взять перевод (патч или образ игры с переводом) El Shaddai: Ascension of the Metatron для ps3, пожалуйста? А то в теме к этой игре у меня не получилось найти работающие ссылки… Первая ведет в группу в которой удалены большинство постов, а пост с этой игрой ведет на сайт https://psnext.ru который сейчас не имеет отношения к видеоиграм. 
      · 0 ответов
    • oleg72  »  Boor

      https://www.skidrowcodex.net/fate-reawakened-goldberg/
      · 0 ответов
  • Лучшие авторы


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

×