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

Notabenoid — инвайты

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

 

5830d8fd-e9e6-4143-8025-5c8abbb59091.jpg

Закрылся сайт Notabenoid, где переводили фильмы, сериалы, игры, книги. Об этом говорится на главной странице.

В обращении к пользователям владелец Notabenoid Дмитрий Ромахин написал: «Благодаря компаниям, стоящим на страже интеллектуальной собственности, проект Notabenoid закрыт. Ни сил, ни желания воевать с ними у меня больше нет. Хостер заблокирует наши серверы сегодня вечером. Завтра, 28 октября, владельцы переводов смогут выкачать свои работы. Спустя некоторое время Notabenoid появится в Сети снова, но в ином виде. Спасибо всем, кто был с нами эти годы». У себя в фейсбуке Ромахин добавил, что, если сайт возродится, то станет закрытым клубом переводчиков, куда будет не так-то просто попасть.

Notabenoid (от лат. nota bene, обозначающего примечание в тексте) — сервис для переводчиков. На сайте можно было переводить в одиночку или группой фильмы, сериалы, игры, книги, статьи. Тексты на Notabenoid для удобства разбивались на маленькие куски, у участников были блоги, чтобы обсуждать рабочие вопросы, а субтитры генерировались автоматически с помощью одной кнопки. Сервис появился в 2008 году, а его прототип, разработанный веб-студией «Пароход», запустили годом раньше и опробовали на полнометражном мультфильме «Футурама: Большой куш Бендера», который любители перевели за три часа. Среди прочих Notabenoid пользовались многие пиратские студии озвучки.

---

Дабы не плодить сообщения об этом в 100500 темах, создал отдельную.

---

Всем желающим получить инвайт на ноту, требуется:

1) Указать уровень владения английского языка (нулевой/средний/выше среднего).

2) Указать наличие (отсутствие) опыта в каких-либо переводах.

3) Указать ориентировочное свободное время, которое может быть уделено переводу (1 час в день/1 час в неделю/1 час в месяц)

---

Нота снова открыта!!!
Изменено пользователем SerGEAnt
  • Лайк (+1) 2
  • Печальный (0) 1

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


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

1)B2 — Выше среднего
2) Переводил нативный польский для проведения международного мероприятия, с английского перевёл пару инди-игр, таких как Starbound, Terraria и Ultimate Chicken Horse, занимаюсь переводом SCP-объектов на SCP International(переведено уже 29 объектов). 
3) Около 7 часов в день
4)Kirillsam25@gmail.com

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


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

1. Выше среднего

2. Переводил с английского модификации для нескольких инди-игр (Minecraft, Terraria, Starbound и т. д.)

3. 4-6 часов в день. 

4. rbs.mine.27@gmail.com 

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


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

Доброго времени суток. 

  1. В2- С1
  2. Перевод и написание статей, сериалы и книжный перевод (немного).
  3. От 5 часов
  4. kayaelsker@gmail.com

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


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

1.Ниже среднего.

2.Переводил игру Attack on Titan 2.

3.2-3 часа в день обычно. Если проект интересен могу большее.

4.rysbek.muradilov@gmail.com 

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

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


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

1) Средний. Квалификации нет, только пятерка в дипломе химика по английскому. 

2) В основном переводил методики синтеза\технические химические статьи для работ в университете и один раз хентайную мангу. 

3) 6-10 часов в неделю. 

4) survior54@gmail.com

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


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

1) Средний. Квалификации нет, только пятерка в дипломе химика по английскому. 

2) В основном переводил методики синтеза\технические химические статьи для работ в университете и один раз хентайную мангу. 

3) 6-10 часов в неделю. 

4) survior54@gmail.com

Отправил на почту

  • Лайк (+1) 1

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


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

1)Средний/ниже среднего:unknw:
2)Для себя переводил простые игры (Undertale,Deltarune,Plague Inc,PvZ и т.п),а так ни с кем в переводе не сотрудничал)
3)1-6 часов в день
slavik.mullinov@gmail.com

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

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


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

1) Средний.

2) В основном переводил какие то песни, просто для себя.

3) 2 часа в день. 

4) lordleon92@gmail.com

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


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

1. Выше среднего;
2. Переводили Medieval Dynasty (wolsu team);
3. Много времени;
4. cs-kazan@yandex.ru

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


Ссылка на сообщение
  1. Выше среднего
  2. Переводил Baba is You, The Desolate Hope (заморожен), Fingered (в разработке), VVVVVV (в разработке), SanctuaryRPG: Black Edition (в разработке).
  3. От 5 часов (по настроению/настрою) в неделю.

Почта (её вроде указывать не надо, но зачем-то её ведь пишут).

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

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


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

Можно в личку, можно на почту

[здесь была почта]

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

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


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

отправил

Премного благодарен.

 

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: Mormon

      Один из первых вопросов, который появляется у переводчиков игр, когда текст уже распакован — а где собственно мы будем переводить игру? Тут начинаются варианты. Всё зависит от объёма проекта, структуры текста и, что важнее всего, предпочтений самих переводчиков. И, что немаловажно, от количества людей, работающих над проектом и того, как осуществляется контроль качества на проекте.
      Один из первых вопросов, который появляется у переводчиков игр, когда текст уже распакован — а где собственно мы будем переводить игру? Тут начинаются варианты. Всё зависит от объёма проекта, структуры текста и, что важнее всего, предпочтений самих переводчиков. И, что немаловажно, от количества людей, работающих над проектом и того, как осуществляется контроль качества на проекте. Поэтому все системы можно рассматривать, исходя из нескольких критериев: сложность и удобство в работе, функционал, возможность распределения работы между несколькими переводчиками и возможности по контролю качества проекта.
      От редакции: текст взят из группы FaceOff и опубликован одним из пользователей.
      Начнём с самого универсального софта. Даже для тех, кто не занимался непосредственно переводом, наверняка знакома программа Notepad++. При всей кажущейся простоте у этой программы и её аналогов много встроенных функций и практически бесконечная возможность их расширения с помощью плагинов. Даже при использовании других более узкоспециализированных программ для переводчиков, многими функциями я продолжаю пользоваться в ней.
      Помимо того, что это, собственно, мощный редактор, отмечу возможность настройки синтаксиса (выделить или даже скрыть сегменты текста, которые не нужно переводить и которые, в принципе, лучше не трогать), гибкую возможность автозамены по файлу или всем файлам в папке (т.н. регулярные выражения — друзья переводчиков игр), возможность проверки явных грамматических ошибок с помощью спеллчекера, проверка превышения допустимого количества символов в строке с помощью линейки. Из естественных минусов программы можно отметить, что она всё-таки не затачивалась под перевод. Она никак не помогает при работе нескольких переводчиков, так как не является некой единой для них онлайн средой. Впрочем, на некоторых проектах её функций вполне достаточно. Такие игры, как Ittle Dew 2+ и Cadence of Hyrule были без проблем полностью переведены в одно лицо в этой программе.

      Фрагмент текста Xenoblade. Без использования синтаксиса глаза быстро собираются в кучку.
      Даже с составленным глоссарием иной раз в тексте натыкаешься на незнакомый термин, для перевода которого не хватает контекста. Когда интернет бессилен и не может подсказать хоть что-то о его значении, остаётся копать саму игру. Разобранный текст игры чаще всего находится не в одном файле, а в нескольких. Или — в нескольких сотнях файлов (порой с ни о чём не говорящими именами) в папках, которые находятся в других папках внутри ещё более крупных папок. Для поиска контекста возникает необходимость поиска по всем файлам. В таких случаях я, например, пользуюсь отдельной маленькой программкой Folder Find Text.

      Поиск показал, что Гоблин — не только монстр, но карта для мини-игры, а также упоминается в сюжетной сцене и на экранах обучения
      Такой поиск полезен не только на этапе перевода. Ещё больше от него пользы, когда игра находится на стадии тестирования, потому что по тексту со скриншота с ошибкой можно быстро найти файл, в котором находится этот фрагмент. Например, в Tokyo Mirage Sessions мы сняли под тысячу скриншотов (вылезание текста, пунктуация и прочие ошибки), когда перевод был совсем сырой, и по большинству их приходилось вот так искать текст. Ведь даже при хорошо знакомой структуре текста, расположение отдельных его фрагментов бывает неочевидным.
      Довольно распространённым вариантом для перевода является использование таблиц типа Excel. Таблицы от google бесплатны и их онлайн-функции компенсируют отсутствие оных у того же редактора вроде Notepad++. Становится возможным организовать работу нескольких переводчиков. Текст можно разбить либо между несколькими таблицами, либо их листами, либо даже слить всё на одну кажущуюся бесконечной страницу. В одном столбце английский вариант, в другом русский. Дальше начинаются варианты. Можно добавить столбец комментариев, можно для справки привести японский оригинал… короче всё, что будет полезно и придёт в голову переводчикам. Достаточно легко прикручиваются различные счётчики, которые контролируют длину строки или факт перевода/редактуры для подсчёта общей статистики. Нумерация строк помогает разбить текст между несколькими переводчиками. Все недостатки сводятся к тому, что опять же эта среда изначально универсальная и не была предназначена для переводов. Из неё при желании можно выжать многое, прикручивая что-то, но не раз мы натыкались на невозможность реализации того или иного облегчающего жизнь пожелания, мирились с этим и работали как есть.

      В одной таблице идёт перевод на несколько языков. Вдруг вы захотите для разнообразия пройти Марио на греческом.
      Кому-то вариант таблиц покажется тривиальным, но опять же для проектов среднего объёма он неплохо подходит. Таким образом были переведены Dusk Diver, Paper Mario Origami King, Phoenotopia Awakening, Mail Mole, Prison Princess. В таблицах также начинался перевод Daemon ex Machina, пока не был перенесён на «ноту». Иногда в таблицы удобно просто заливать результат работы, так как он доступен всем внутри группы переводчиков.
      Ещё пара моментов касательно таблиц из опыта работы с ними. Таблица Paper Mario Origami King можно считать филиалом Организации Объединённых Наций, потому что там помимо русского идёт перевод ещё на несколько языков. Соответственно, при желании и возможности переводчики могут подсмотреть друг у друга перевод тех или иных моментов, терминов и тому подобного. Меня очень умиляет сам факт такого интернационального перевода.

      Так называемый «лок-кит» Phoenotopia Awekening. Очень удобно, что разработчик оставил много комментариев по самым различным аспектам игры.
      А также вы могли заметить, что в списке проектов, переведённых в таблицах, были два официальных проекта. Дело в том, что такая среда удобна и многим инди-разработчикам. В Фенотопии в какой-то момент это сыграло с нами шутку: мы думали, что переводим копию текста, а оказалось, что вставляем свой перевод в основной файл, оригинал таблицы. И что все наши несерьёзные комментарии видны разработчикам, среди которых оказалась девушка, знающая русский язык… остальное можете додумать сами.

      Интерфейс Trello. Всё можно сделать довольно красиво.
      Возможно кто-то вспомнит проект перевода игры Detective Pikachu. Так вот он был организован на площадке под названием Trello. Этот сайт не столько среда для переводчиков, сколько пространство для выполнения крупных задач, которые разбиваются на более мелкие задачи. На трелло можно создать несколько досок под каждый проект. Основа - карточки, олицетворяющие какое-то задание (например разработка шрифта). Для этих карточек можно создать категории, например "Нужно сделать", "В работе" и "Готово". Между категориями карточки переносятся простым drag&drop. Уже к задачам этим можно прикреплять конкретные файлы, участников (ответственных за задание), метки и срок. Главный минус: ограничение на количество досок для бесплатной версии. Сам я, если честно, в ней не работал, а пришёл, когда проект перевода впал в транс. Этот абзац написан со слов Кирилла, который застал работу над Детективом Пикачу и участвовал в ней, а мы, отмечу, трелло не используем из-за наличия более функциональных площадок для перевода.

      Poedit. В ней начинался перевод Dusk Diver. Сам я в нём не участвовал, поэтому вот вам случайный скриншот на немецком.
      При написании этого материала мне подсказали, что часто для перевода используется инструмент под названием Poedit. В отличие от ранее представленных, это уже инструмент, заточенный под локализацию и в нём когда-то начинался перевод Dusk Diver. В этой же программе наши друзья из Digital Devil Translators переводят Shin Megami Tensei 4 (по их словам инструмент, довольно полезный). Отказались от его использования мы потому, что там сложно организовать работу нескольких переводчиков (совместный доступ продаётся в программе отдельно). Кэп упоминал, что мы как-то пробовали организовать на нём совместную работу через Git, но судя по тому, что работу мы заканчивали уже в гугл-таблицах, это видимо того не стоило. Сам я в этой программе не работал, поэтому и сказать про неё мне особо нечего.
      Переходим к тяжелой артиллерии. Среди русскоязычного сообщества переводчиков манги, сериалов, игр и тому подобного контента пользуется популярностью сайт Notabenoid. Та самая «нота», которая уже звучала в этом тексте. Это полузакрытый форум переводчиков, куда можно загрузить свои файлы, разбить их на сегменты, назначить переводчиков и даже подключить словарь перевода (глоссарий). Несмотря на то, что на сайт довольно сложно попасть (нужно приглашение, причем даже у нас при работе их было ограниченное количество и не у всех), многое на нём подкупает и сделано довольно удобно. В переводимых сегментах автоматически проверяются грамматические ошибки, автоматически считается статистика перевода. В этой среде вполне можно работать, хотя со временем начинаешь понимать, что ей не хватает многих функций. А потом этих функций начинает сильно не хватать и на ноту уже не хочется возвращаться.

      Минималистичный интерфейс Notabenoid.
      Многие переводчики, которым стала привычна эта среда, возразят, что всё самое нужное на этом сервисе есть. По крайней мере то, сколько на ней ведётся переводов, доказывает, что там есть достаточный минимум функций. Но при переводе Catherine Full Body вскрылись многие из недостатков сервиса, а перевод женского рута Persona 3 Portable стал последним проектом, который мы сделали на ноте. Что же неудобно на ноте?
      не хватает проверки на наличие повторов в тексте. Допустим, один и тот же фрагмент текста попадается в 10 разных файлах. Они могут попасться разным переводчикам, а потом в игре окажется, что они переведены по-разному. Да, это может привести в порядок редактор, или сам переводчик может вручную поискать повторяющийся фрагмент текста и подставить его во всех таких ситуациях. Но это можно учесть, если программа изначально обрабатывает текст на наличие повторов. Переводишь текст один раз, и он автоматически подставляется в другие фрагменты. Звучит как излишество? Просто эта функция есть в среде, в которой мы работаем сейчас, и теперь при взгляде на ноту я понимаю, что этого там очень не хватает; ограничение на количество строк в файле при их загрузке. Кажется, это как-то обходят с помощью скрипта, либо разбивают файл на части, но это тоже лишняя работа; отсутствие автозамены по нескольким файлам или даже в рамках одного файла; отсутствие возможности использовать машинный перевод. Да, он зачастую переводит текст отвратительно, но я сомневаюсь, что найдётся хотя бы один переводчик, который при работе ни разу не искал перевод отдельных слов в предложении. И вот иногда полезно на него опираться, чтобы увидеть вариант перевода. А если предложение простое и имеет однозначный смысл, то машинный перевод бывает даже вполне правильным; отсутствие возможности использовать подгруженную извне память переводов. Допустим вы перевели одну часть Atelier Ryza и хотите перевести её продолжение. Вы думаете, что наверняка часть системных текстов совпадает между частями игры и можно подставить готовые материалы из первой части во вторую. Нет, на ноте эти материалы никак не использовать. Только подстановка вручную, только хардкор. Ну или не подгружать такие файлу на ноту и делать часть проекта там, часть тут. Думаю, пример понятен. Естественно, можно работать и без этого, но когда где-то можно сократить время работы его лучше сократить, правда? отсутствие конкордансного поиска. Так, а это что за покемон? Это связано с памятью переводов. Возможность посмотреть в переведённых уже (и не только собой) сегментах как переводился тот или иной термин. Очень полезная фича, иногда даже заменяющая необходимость глоссария. Ведь при её реализации всегда можно вбить в поиск английский термин и посмотреть, как его перевели в прошлом. Очень удобно. Но на ноте этой функции тоже нет; было бы здорово, если программа понимала, что определённые куски текста нужно сохранять не тронутыми и как-то их выделяла. Я сейчас про теги и прочий код, который можно случайно перевести или сломать игру, удалив лишнюю скобочку. За этим на ноте тоже нужно следить только вручную; последнее, что пришло мне в голову — это работа с глоссарием. В каком-то виде он реализован на ноте и там можно проверить перевод термина. Но для того, чтобы найти перевод термина нужно вначале знать, что это важный термин. Почему бы не подсвечивать в оригинале совпадения с существующим глоссарием и не выводить в отдельном окошке перевод таких терминов? Тогда, в принципе, не нужно было бы лезть в глоссарий — знай себе, подставляй нужное совпадение с глоссарием в текст перевода. Но на ноте этого тоже нет. В итоге, на ноте определённо можно работать. Но многие полезные функции так называемых CAT-систем на ней не реализованы. Из-за существования таких систем мы и узнали собственно, что на ноте их не хватает. Поговорим о них. Приведённая аббревиатура никак не связана с кошками и расшифровывается как Computer Assisted Translation. По сути это совокупность программ или сервисов, которые делают перевод удобным и минимизируют различные связанные с ним рутинные операции. Я бы сказал, что это верхний эшелон программ для локализации и поэтому стоимость их использования часто выше того, что готовы платить люди, занимающиеся фанатскими переводами. Но некоторые из этих программ имеют бесплатные версии, функций которых вполне достаточно для работы.

      На первый взгляд интерфейс почти такой же, как и на ноте. Нюансы кроятся в меню сверху и других возможностях сервиса.
      Хотя сервис не является единственной подобной бесплатной программой, мы уже довольно давно остановили свой выбор на системе под названием SmartCAT. Чтобы не перечислять заново, можете просто вернуться немного назад и прочитать недостатки ноты. Все эти функции в том или ином виде реализованы на смарткате. К недостаткам можно отнести, что с такими системами нужно чуть больше разбираться вначале, но доступный функционал это многократно компенсирует.

      Как там я, в итоге, перевёл слово Goblin? А точно — как Гоблин… А если серьёзно, конкордансный поиск — очень полезная вещь.
      Прежде всего, на этом сервисе можно зарегистрироваться как фрилансер или как организация. Всем переводчикам, успешно прошедшим тест, мы сразу же рекомендуем зарегистрироваться там, потому что на текущий момент все наши основные проекты ведутся там.

      Этот кот явно использует правильные инструменты перевода.
      Сервис поддерживает различные форматы входных текстовых данных. Он автоматически разбивает их на сегменты, отчего с ними становится проще работать, ищет повторы и указывает, если фрагмент повторяется где-то в тексте. Есть поддержка памяти переводов, конкордансный поиск, автозамена, совпадения с глоссарием выделяются, а самое главное — можно распределять задачи между несколькими переводчиками, как и на других ресурсах (сервис онлайновый).

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

      Меню совпадений с памятью переводов и машинный перевод. Да совпадение на 102%, это не ошибка. Это значит, что совпадает не только сегмент, но и порядок сегментов. Значит тем более можно взять перевод из памяти переводов.
      Немаловажным является и то, что все проекты находятся в одном месте. Их легко контролировать, понятно где сколько людей, где нужна небольшая помощь, все вопросы менеджмента переводов становятся не такими утомительными и возможно именно из-за этого нам получилось довести число активно идущих переводов до 16. Всё прозрачно и удобно.

      В программе удобно искать как работу для фрилансеров, так и фрилансеров для работы. Стоп, у нас уже 29 человек в команде?
      Этот текст получился уже значительно длиннее, чем я планировал. Я никак не упомянул специальные инструменты, которые существуют для отдельных игр или их серий. Кроме того, отдельно можно рассказать и о тех справочных ресурсах, которыми часто приходится пользоваться независимо от содержания игры. Об этом давайте как-нибудь в другой раз. Надеюсь, вам было интересно почитать о нашем переводческом опыте. До следующего четверга, и как всегда…
      Stay Tuned!

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

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

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

    • смена разрешения есть и настройки под ретро 
    • Добрый день, скачал игру в Steam версия 0.9.0.5 устанавливаю русификатор и при входе в игру меню игры исчезает полностью, ничего не могу сделать в игре, даже выйти, приходится через Alt+F4 закрывать, помогите, оч хочу в неё поиграть.
    • Прямой эфир будет как обычно идти на наших Twitch, ВК, а также в Telegram. Товарищи! Все свободные граждане приглашаются вечером на просмотр фильма «Шпионские игры». Начать планируем после 22:00 по московскому времени. Прямой эфир будет как обычно идти на наших Twitch, ВК, а также в Telegram.
    • История русской локализации Tales of Rebirth (PS2)
      Глава 6. Разбор исполняемого файла ELF с помощью IDA Pro
      https://temple-tales.ru/games/tor/russian_localization.html Если попалась игра, в которой куча строк текста находится в исполняемом файле и с этим некому помочь, то, скорее всего, вам прямая дорога к таким инструментам обратной разработки, как IDA Pro или Ghidra. Для новичков это очень непростое погружение, и многое в этих приложениях может быть непонятным. Тем не менее часть из этого я попытаюсь объяснить, так как со всеми текстами в файле ELF Сказаний Перерождения мне пришлось поработать очень активно. И всё это для возможности гибких изменений, чтобы работать с текстом без ограничений по количеству символов на каждую строку. На изображении наглядная визуализация распределения поинтеров на блоки по разным местам исполняемого файла:
      Если мы просто откроем исполняемый файл SLPS_254.50 в хекс-редакторе, то при беглом просмотре рано или поздно наткнёмся на блоки текста, которые распределены в хаотичном порядке близко к самому хвосту файла. На изображении выше я попытался визуально изобразить степень распределения текста и поинтеров в этой области. Все поинтеры скучкованы по разным блокам, а всего этих блоков более четырёх десятков. Кроме того, многие из них попадаются прямо посреди участков с записанными текстовыми данными. Всё это очень непросто отследить, высчитать, а также написать алгоритм для извлечения и вставки текста. В этом нам поможет комплекс нескольких программ. По началу мне советовали использовать специальное приложение под названием Kruptar авторства Джинни (https://magicteam.net/index.php?page=programs). С одной стороны, я посчитал его слишком запутанным, а с другой — простым, так как программа имеет ряд ограничений, а созданный в ней проект привязан к своему файлу, в котором сконцентрированы все данные. Это, в свою очередь, накладывает ряд неудобств из-за невозможности внешней манипуляций на каждом шагу. Затем мне посоветовали поэкспериментировать с IDA Pro — эта программа умеет работать с архитектурой консолей PS1-2. Впоследствии я отказался от работы с IDA Pro и перешёл на более удобный мне способ извлечения и упаковки текста в исполняемых файлах. Тем не менее иногда я до сих пор открываю различные файлы PSX-EXE или ELF в IDA Pro для поиска каких-то данных, так как эта программа строит удобную карту взаимосвязей между различными функциями. Поэтому для начала я покажу вам, как искать поинтеры к строкам текстов в исполняемом файле с использованием IDA Pro и простого хекс-редактора. ⬜ Этап 1. Поиск любого текста в SLPS_254.50 через хекс-редактор и IDA Pro а) Открываем любой хекс-редактор и ищем текст. К этому моменту у нас уже должен быть набит глаз для таких поисков. Возьмём для примера блок со строками текста, в котором находятся названия сценок. Первая строка начинается со смещения 0x1133E0, следующая с 0x1133F8 и т.д. О том, что именно этот блок является текстом, можно легко понять, если использовать на этой области преобразование кодировки текста, о которой я уже писал во втором этапе в четвёртой главе.
      б) Теперь загружаем SLPS_254.50 в IDA Pro. Программа автоматически распознаёт файл как "ELF for MIPS", а среди перечня работы с архитектурой процессоров должна автоматически выбрать "MIPS little endian". Нажимаем "ОК" и ждём, как приложение просчитает взаимосвязи всех функций. После полного анализа вы услышите звуковое уведомление. Затем щёлкаем по вкладке "Hex View-1" и наблюдаем по головной части данных, что программа просчитала весь файл немного не так, как располагаются значения при открытии через хекс-редактор. Дело в том, что все смещения в IDA Pro указаны сразу с учётом расположения этих данных относительно оперативной памяти консоли. Поверьте, это весьма удобно для поиска поинтеров, которые имеют не фактический адрес. А ведь практически все поинтеры в исполняемом файле ELF именно такого типа. Теперь нам нужно найти здесь начало того же текста, как это было сделано в хекс-редакторе на смещении 0x1133E0. Для этого мы открываем в верхней строке вкладку "Search" и выбираем пункт "Sequence of bytes". Далее вводим все значения той самой строки, которую нашли через обычный хекс-редактор: 99 9c 9a 6e 9a 83 9a 8d 9a 5d 99 cd 9d 61 99 a6 99 cd 99 9d. Затем нажимаем "ОК" и, если всё написано верно, программа покажет расположение того самого текста.
      ⬜ Этап 2. Поиск поинтеров в SLPS_254.50 а) Обратите внимание на выделенные красным цветом смещения строк в хекс-редакторе и IDA Pro на предыдущих двух изображениях. Имея на руках оба этих адреса, мы можем спокойно высчитать поправку для поиска будущих поинтеров. Для этого берём числовое значение смещения 0x2123E0 (IDA Pro) и вычитаем из него значение 0x1133E0 (хекс-редактор), а как результат получаем число поправки FF000. Теперь, когда нам известно смещение, где находится текст и число поправки, мы можем высчитать значение поинтера и адрес его расположения. б) В этом и следующем пунктах я опишу метод поиска поинтеров через любой хекс-редактор. После того, как находим любую строку с текстом, запоминаем числовое значение смещения этой строки (в нашем примере это 0x1133E0), а затем к этому числу прибавляем поправку FF000 и получаем значение 002123E0. Если попытаться найти это значение через поиск, то у вас ничего не получится, потому что текущий вид этого значения имеет тип порядка байтов big-endian. Напоминаю, что принцип построения порядка байтов в поинтерах PS2 консоли имеет вид little-endian, а это значит, что необходимо развернуть полученное значение по байтам наоборот: 00 21 23 E0 >> E0 23 21 00.
      в) Теперь, когда у нас на руках есть реальное значение самого поинтера, то его можно легко найти в исполняемом файле. Просто копируем 4 байта "E0 23 21 00" в строку поиска и жмём искать по всему файлу. Результатом должно быть одно найденное место, которое и будет являться поинтером. Запоминаем, что начало и конец этого поинтера находятся на смещениях 0xF5368 и 0xF536B.
      г) Метод поиска поинтеров через IDA Pro гораздо проще, чем через хекс-редактор. Потому что вся разница сводится к тому, что на этапе 1 в пункте "б", найденный текст по первому байту уже подсвечивается смещением, которое можно спокойно вводить в поиск в пункте "Sequence of bytes". Только не забудьте во всплывающем окне поиска поставить галочку "Find all occurences", чтобы поиск работал по всему файлу.
      Достаточно просто искать поинтеры таким вот способом, не правда ли? Если посмотрим на весь диапазон поинтеров, которые располагаются друг за другом выше от найденного указателя, то обнаружим, что все поинтеры, которые скучкованы в этом блоке, находятся в диапазоне от 0xF42A8 до 0xF536B. Всё, что находится за пределами этого диапазона — это уже совсем другие данные или другая группа поинтеров. Именно с этим диапазоном нам и нужно будет дальше работать. Потому что найти всё это одно дело, а составить алгоритм для правильной адресации, извлечения текстов с учётом разделителей, вставки изменённого текста с учётом пересчёта поинтеров и многого другого — совсем другая задача, которая требует использования совсем других подручных средств. В этом нам поможет приложение "abcde", которое я указал среди перечня сборника уникальных программ во второй главе, а также небольшое дополнение к нему под названием "ELF Text Injector", которое я специально заказывал у RikuKH3, чтобы облегчить себе работу по вставке текстов в ELF-файлы. Далее я поэтапно покажу, как пользоваться этими приложениями, которые не имеют графический интерфейс и в которых все настройки прописываются в основном в качестве числовых значений.

      ⬜ Этап 3. Установка Strawberry Perl, Python и работа с приложением abcde а) Для начала необходимо установить Strawberry Perl. Это бесплатный дистрибутив на языке программирования Perl для операционных систем Windows. Он включает в себя всё для запуска и разработки Perl-приложений. Скачать его можно с официального сайта: https://strawberryperl.com. Без этого abcde работать нормально не будет, так как приложение написано на этом языке. После этого требуется установить дистрибутив Python. "Он тоже бесплатный, но на другом одноимённом языке программирования. Его тоже можно скачать с официального сайта: https://www.python.org/downloads. Один из моих знакомых Ethanol (уважаемый программист) написал специальный код на языке Python для работы с приложением abcde. Поэтому будем использовать его наработки.
      б) Далее к этому пункту я прилагаю архив с приложением abcde v0.0.10, который включает в себя все готовые настройки для работы с нашим типом поинтеров. Его можно распаковать в любую папку. Внимание!!! Для корректной работы программы и всех скриптов необходимо, чтобы путь к программе не содержал никаких пробелов. В противном случае приложение не будет извлекать текст и вставлять его обратно. Скачать #1
      https://temple-tales.ru/games/tor/data_design/files/abcde_v0.0.10.zip Скачать #2 (зеркало)
      https://disk.yandex.ru/d/CRbc-SWxnXHC-w Красным я выделил файлы, которые были созданы дополнительно для работы с приложением, а зелёным - те, которые относятся к ресурсам игры: исполняемый файл и таблица с кодами для правильной идентификации кодировки игры.
      в) Теперь нужно корректно настроить работу программы для извлечения строк текста. Сначала подготавливается TBL для работы с кодировкой игры (ToR.tbl). Об этом я уже рассказывал в четвёртой главе. Только разница с программой CODES в том, что abcde читает другой формат таблицы. Разделитель значений здесь другой. Кроме того, программа ругается на использование символов "<" и ">", а значит, в нашей таблице мы их опустим и заменим на "[" и "]" соответственно. Готовая таблица в формате TBL для приложения abcde прилагается в архиве, ссылка на который размещена в прошлом пункте.
      г) Далее настраиваем работу с поинтерами через файл "!abcde_script_skits.txt". Все строки настроек я описывать не буду — пройдусь по основным, которые необходимы для понимания принципа работы. Этой базовой информации хватает для того, чтобы работать с исполняемыми файлами консолей PS1-2 и других аналогичных файлов, в которых поинтеры лежат в открытом виде.
      #GAME NAME: Tales of Rebirth
      Здесь указывается название игры. Данная строка ни на что далее не влияет, и является по своей сути простой меткой на случай, если у вас будет накоплено много файлов данного типа для разных игр. #BLOCK NAME: Skits
      В этой строке прописывается название блока текста. А это на тот случай, если таких скриптов будет много в рамках одной игры. В принципе, можно даже указать название файла, если в нём всего 1 блок поинтеров и создавать другие нет надобности. #POINTER ENDIAN: LITTLE
      С этого параметра начинается ввод важных данных, которые дают понять, с каким типом порядка байтов программе необходимо работать: big-endian или little-endian. В нашем случае это little-endian (особенность платформы PS2), но если бы мы работали с какой-нибудь игрой на ПК, то, скорее всего, пришлось бы указать big-endian. Приложение считывает синтаксис в этой строке только в таком виде:
      BIG
      LITTLE #POINTER TABLE START: $F42A8
      #POINTER TABLE STOP: $F536B
      Помните, как был найден диапазон поинтеров для блока названия сценок? Об этом я писал на этапе 2 после пункта "г". Именно этот диапазон и нужно прописывать в этих двух строках. Одна из них указывает начало смещения, с которого начинается таблица поинтеров для данного блока, а вторая указывает самый последний байт крайнего поинтера в этом блоке. Приложение считывает синтаксис в этих строках только в таком виде:
      $*****
      Вместо звёздочек нужно написать смещение. #POINTER SIZE: $04
      Помимо типа порядка байтов, программа учитывает и размер поинтеров. Они бывают по 2 и 4 байта. Соответственно, в этой строке приложение будет считывать только следующий синтаксис:
      $02
      $04 #POINTER SPACE: $00
      Если так случилось, что между поинтерами есть какое-то пространство, то эту особенность можно прописать в этой строке. Приложение будет учитывать эти пробелы между поинтерами, а если поинтеры идут друг за другом без дополнительного пространства, как в нашем случае, то необходимо указывать просто нулевое значение. Приложение считывает синтаксис в этих строках только в таком виде:
      $**
      Вместо звёздочек нужно написать размер в байтах, которое будет соответствовать дополнительному пространству. Наглядное представление пространства между поинтерами при просмотре через хекс-редактор на изображении ниже (поинтеры выделены голубым цветом):
      #BASE POINTER: $-FF000
      Одно из первостепенных неудобств при работе с поинтерами в исполняемых файлах это то, что всегда нужно учитывать поправку. Разумеется, в этом приложении предусмотрен учёт разницы между фактическим расположением поинтеров в файле и оперативной памяти. Здесь приложение считывает синтаксис в этой строке только в таком виде:
      $-*****
      Вместо звёздочек нужно написать размер поправки. #TABLE: ToR.tbl
      Ну и напоследок стоит упомянуть таблицу кодов, которую здесь тоже нужно прописывать в виде названия файла. Именно на эту таблицу приложение и будет опираться во время извлечения строк с текстом. д) Заранее подготавливаем файлы с командами для извлечения и вставки текста через командную строку: Файл 1, извлечение
      !abcde_dump_skits.bat
      perl abcde.pl -m bin2text -cm abcde::Cartographer "SLPS_254.50" "!abcde_script_skits.txt" Tales_of_Rebirth_dump_skits -s
      pause Файл 2, вставка
      !abcde_inception_skits.bat
      perl abcde.pl -m text2bin -cm abcde::Atlas "SLPS_254.50" Tales_of_Rebirth_dump_skits.txt
      pause Все файлы должны находиться в корневой папке приложения. е) После того, как закончили готовиться к работе, копируем исполняемый файл игры в директорию программы и нажимаем пакетный bat-файл "!abcde_dump_skits.bat". После обработки получаем файл с извлечёнными строками текста "Tales_of_Rebirth_dump_skits.txt". Если всё сделано корректно, то вы увидите вот такое сообщение в командной строке:
      ж) Файл с извлечёнными строками текста будет выглядеть примерно так:
      Первые несколько частей содержат дублирующую информацию из настраиваемого файла скрипта, но в немного изменённом виде, а чуть ниже уже идут строки с метками #JMP и //POINTER #0. С метками поинтеров всё просто. Для каждого поинтера есть свой индивидуальный блок с множеством сегментов. Здесь сразу указаны смещения поинтера и строки, порядковый номер и сами строки с извлечённым текстом. Когда вы сделаете множество вот таких файлов с извлечёнными строками с текстом, то все блоки с поинтерами и прилагаемыми к ним данными можете копировать между собой или объединять в один файл без ограничений, а нумерация #0, #1, #2 и т.д. не будет мешать самому процессу работы. Данные номера — это просто заметка о порядковом номере извлечения. Так что в них нет ничего особенного. А вот что касается метки #JMP, то это вспомогательный сегмент, о котором стоит рассказать подробнее в следующем пункте, так как его роль очень важна. з) #JMP — это отдельная настройка, которую программа высчитывает самостоятельно и которая потребуется нам дальше для обратной вставки изменённого текста. В извлечённом файле данная строка имеет вот такой вид: #JMP($1133E0, $1195C0) // Jump to insertion point В скобках указан диапазон смещений между первым байтом первой извлечённой строки и последним байтом последней строки. Иначе говоря, данный интервал даёт нам представление о размере той области, в которой находятся извлечённые строки с текстом. Это очень полезная информация, и её нужно куда-то выписывать отдельно. Потому что, как я говорил в начале этой главы, в исполняемом файле есть несколько десятков отдельных блоков поинтеров, соответственно, и областей с текстом тоже. При обратной вставке текст нужно укладывать строго в те области, в которых изначально находился японский текст. Только таким образом в коде игры мы ничего не сломаем. Когда я активно занимался исполняемым файлом и идентифицировал все блоки поинтеров и области текста, то составил несколько строк с диапазоном, куда программе можно укладывать текст. Если кому-то интересно, то вот этот список: 112EA0;11332E
      113DBC;1195C6
      119890;11C8A6
      11C8A8;11D99E
      11D9A0;11E36E
      11E370;11E88E
      11E890;11F38E
      11F3C0;11FCDE
      11FCE0;1200B5
      120228;1206C6
      1206D8;120776
      120778;12280E
      122B30;12A63E
      12A640;12AAAE
      12AB28;12AFC6
      12B0E8;12B15E
      12B1A0;12BACE
      12BAD0;12D0FE
      12DCA0;12EBBE
      12EBC0;12EF76
      12EFF0;130A5E Внимание!!! При обратной вставке текста программа использует файл с извлечёнными строками текста "Tales_of_Rebirth_dump_skits.txt", а это значит, что во время этого процесса менять диапазон, прописанный в строке #JMP, можно как угодно. Это очень удобно, так как объём переведённого текста всегда отличается в большую или меньшую сторону. Возможность укладки текста в доступные области ограничена лишь вашими собственными нуждами. В общем, как вам удобно, так и выбирайте. Но к этому нужно подходить с умом, потому что когда областей мало, то расчёты сводятся к минимуму, а когда нужно работать с огромным количеством областей, то тут уже требуется провести достаточно большое количество расчётов. и) После того, как были извлечены все строки с названиями сценок в диапазоне 0xF42A8 - 0xF536B, их все можно переводить в этом документе ТХТ, но это достаточно неудобно, так как файл слишком большой, и в нём не так просто ориентироваться. А если учесть то, что таких файлов придётся сделать несколько десятков, то приходит понимание, что всё это нужно как-то систематизировать. В этом нам поможет Microsoft Excel. Для этого я создаю отдельную таблицу с фильтрами для столбцов, а также присваиваю каждой строке свой ID, чтобы всегда можно было развернуть порядок строк на обратный, как оно есть в исходном файле, а также сместить все лишние строки вниз, чтобы они не мешали во время процесса перевода. К этому пункту прилагаю готовый файл для экселя, а также на изображении ниже наглядно показываю, как выглядит текст до сортировки текста и после того, как всё упорядочено:
      Скачать #1
      https://temple-tales.ru/games/tor/data_design/files/Skits.xlsx Скачать #2 (зеркало)
      https://disk.yandex.ru/i/z-J4JIO7-zVtSw к) Как только текст переведён, можно отсортировывать все строки согласно корректным значениям алфавитного порядка по колонке ID, а затем выделить весь текст и скопировать его в файл с извлечёнными строками "Tales_of_Rebirth_dump_skits.txt".
      л) Обратная вставка строк с текстом в исполняемый файл осуществляется через командную строку. Для этого просто запускаем пакетный bat-файл, о подготовке которого я упоминал ранее: Файл 2, вставка
      !abcde_inception_skits.bat
      perl abcde.pl -m text2bin -cm abcde::Atlas "SLPS_254.50" Tales_of_Rebirth_dump_skits.txt
      pause Если всё сделано корректно, то вы увидите вот такое сообщение в командной строке:
      Внимание!!! Всегда проверяйте числовые значения, которые прописаны в командной строке после вставки. Приложение прописывает там весь диапазон области для вставки, а также сколько байт было записано. Если общий объём вашего переведённого текста будет превышать установленный диапазон для вставки, то в командной строке программа уведомит вас о том, сколько байт было превышено. м) В завершении этого этапа хочу отметить, что перед тем, как вставлять текст обратно в исполняемый файл, необходимо отредактировать файл с таблицей кодов. Так как для извлечения текста нужен один набор кодов, а для обратной вставки он немного поменяется, потому что в файле шрифта игры при адаптации кириллицы приходится использовать многие коды для русских букв. Именно поэтому всегда нужно иметь наготове 2 файла с таблицей кодов: для японской версии и для русской. Это далеко не всё. Ведь всегда можно улучшить и как-то оптимизировать процесс запаковки или вставки текста. В самом начале главы я упоминал про дополнительную программу "ELF Text Injector" авторства RikuKH3. Дело в том, что работа с abcde хоть и решает множество задач, но во время вставки текста всегда тянет за собой весь дистрибутив, а также не учитывает оптимизацию текста. Именно поэтому в какой-то момент мне захотелось облегчить процесс. Я заказал у RikuKH3 данную программу и кратко описал задачу: что именно мне требуется для работы с Tales of Rebirth, а также чтобы это по необходимости можно было применить к любым другим файлам. Использование данной программы полностью заменяет пункт "л" на этапе 3. Приложение вы можете скачать из таблицы сборника уникальных программ во второй главе. А уже саму настройку и использование программы я опишу на этапе 4. ⬜ Этап 4. Использование ELF Text Injector для оптимизации вставляемого текста а) В первую очередь важно понять, что ELF Text Injector распознаёт синтаксис abcde и для вставки использует файл извлечённого текста "Tales_of_Rebirth_dump_skits.txt". Ничего заново настраивать не нужно. Кроме того, приложение также подхватывает таблицу кодов TBL. Всё, что требуется, это подготовить файл с командами для вставки текста через командную строку, а также создать дополнительный файл "tor_elftext.lst" со списком диапазона смещений, в которые будет укладываться текст. Выглядит этот файл со списком вот так:
      б) Обратная вставка строк с текстом в исполняемый файл осуществляется через командную строку. Для этого просто запускаем пакетный bat-файл, о подготовке которого я упоминал в прошлом пункте: !1_Text_Injector_RUN.bat
      @copy /y SLPS_254.50 SLPS_254.50_new > NUL
      tor_elftext.exe -LittleEndian "tor_elftext.tbl" "!2_ELF_Russian_compiled.txt" "SLPS_254.50_new"
      @pause Если всё сделано корректно, то в командной строке вы увидите вот такое сообщение:
      Как и в случае с abcde, данная программа уведомляет о том, сколько байт было записано из доступного диапазона. в) Но это всё, по сути, тоже самое, что и при использовании самого abcde. А вот что гораздо важнее — ELF Text Injector делает оптимизацию текста и экономит место во время укладки в заданный диапазон. Для полного понимания плюсов этого алгоритма на нём стоит остановиться подробнее. Дело в том, что разработчики множества игр используют как раз-таки этот метод. Его суть заключается в том, что если в процессе перевода имеется две и более строки с одинаковым текстом, то есть дубликаты, то программа укладывает только одну строку, а все поинтеры содержат адрес к этой самой строке. В результате у нас не записываются остальные дублирующие строки, а значит, происходит экономия места. Если попытаться изобразить это в хекс-редакторе, то выглядеть это будет примерно так:
    • Ну, какими бы вылизанными не было бы механики в returnal, рогаликом и буллет хеллом он быть не перестанет, игра то именно про это, это её ядро и основа, и по этому если человеку это не нравиться, то и играть в returnal он не будет.   Неа, вообще никак настроек, да в общем то, и без них норм.
    • Правильно. Не пристало мужику заниматься эскортом.
    • Мне это не впервой. Постепенно устаю от любой игры если она длинная. Ну, он говорит, что потом после первого акта хрень происходит.
    • Нет, не по делу.  Ты пишешь не про геймплей, а про базовую механику определённого жанра. А я говорю про геймплей(геймплейные механики: прыжок, рывок, стрельба, удары, механика с паразитами, апгрейды и тп) . Про то, насколько хорошо это ощущается и взаимодействует между собой.  А то, что тебе лично не заходит особенность определённого поджанра(буллет хелл), это всё понятно, но только здесь это вообще ни при чём.  Игровые механики и геймплейные механики это разные вещи. Говоря про геймплей, подразумеваются геймплейные механики. Это всё твоё индивидуальное. Только не нужно отрицать, великолепно отточенный геймплей Ретёрнал, ведь он там реализован на очень высоком уровне. @\miroslav\ А что за фигня с настройками в Ground Zero?  Графических настроек там вообще нету, да? ) Даже выбора разрешения.
    • Я ненавижу миссии сопровождения,у меня просто нет навыка сопровождения 
    • Забрасывать какие-то "песочницы" это одно. А забрасывать, после "восторгов" от первого акта, очень сюжетно ориентированное, линейное приключение с интересным исследованием - это совсем разные вещи.  Просто большинству очень понравилась игра, и в первом акте, и после него. Отсюда и "восторги"
  • Изменения статусов

    • 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 ответов
  • Лучшие авторы


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

×