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

Сообщение добавлено пользователем SerGEAnt

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

Извлечь весь текст не трудно. Задача состоит в том, чтобы получившийся перевод обратно записать в файлы UDLG. Это задача несколько сложнее, так как требует понимания того, как устроен формат udlg внутри, на что уйдет какое-то время.

В udlg далеко не весь текст, а только тот, что внизу в диалогах появляется. Всё остальное неизвестно где (ну вот в первой же локации, в своём отсеке ткните в витраж "Broken pixel", появится описание "this colorful mosaic бла-бла-бла". Этого в udlg нет.

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


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

Также очень понравилась данная игра.

Готов, в основном материально и морально помочь...

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


Ссылка на сообщение
В udlg далеко не весь текст, а только тот, что внизу в диалогах появляется. Всё остальное неизвестно где (ну вот в первой же локации, в своём отсеке ткните в витраж "Broken pixel", появится описание "this colorful mosaic бла-бла-бла". Этого в udlg нет.

Найдем и остальной :)

BumB_32, норм видимо шрифты таки прикрутились. Вопрос в следующем как контент в файл писался?

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


Ссылка на сообщение
Найдем и остальной :)

BumB_32, норм видимо шрифты таки при крутились. Вопрос в следующем как контент в файл писался?

Переименовал шрифт Т9.xnb в Т6.xnb (лень было переделывать). Два байта длина строки далее текст в кодировке UTF-8.

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


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

BumB_32, Два то два, но там формат используется 7BitEncodedInt, что было несколько не тривиально во всяком случае для меня, так как я не C# разработчик ;).

Я тут вспомнил, ты ранее писал о внутренностях udlg, по поводу последоствательности MT ID LN TEXT, если это было в udlg файлах, у тебя сохранился тот билд? Если да мне бы его на просмотр.

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


Ссылка на сообщение
Два то два

Ну есть и один байт длины слова, если слово не больше 0xFF по длине.

 

формат используется 7BitEncodedInt

Понятие не имею что такое 7BitEncodedInt.

так как я не C# разработчик

Я тоже не разработчик ))

по поводу последоствательности MT ID LN TEXT

Последовательность MT ID LN TEXT пришлось пересмотреть. Не устроил результат поиска игрового текста, было много мусора.

у тебя сохранился тот билд?

Прога? Или ты имел что-то другое?

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


Ссылка на сообщение
Ну есть и один байт длины слова, если слово не больше 0xFF по длине.

в том то и дело что не правильно, если длина слова 0xFF то записывается это двумя байтами 0хFF01

https://msdn.microsoft.com/en-us/library/dd...office.12).aspx

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


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

BumB_32, Ясно, ну ладно.

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

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


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

Такая вот инфа:

https://github.com/tarvitz/udlg тут в templates лежит репрезентация нужного для чтения udlg файлов, правда с одной оговоркой. Из-за того что бинарный формат подразумевает некоторые хитрые перемещения для ClassWithId (в основно как я понял это массивы объектов) назад по прочитанному большая часть в темплейтом не прочтется до конца корректно. У 010Editor есть ограничения, через которые я уже не хочу переступать, чтобы довести работу до конца + это и не обязательно, так как составить приложение на основе имеющихся данных уже можно.

В целом автор использовал стандартный механизм сериализации, документации на который находится тут https://msdn.microsoft.com/en-us/library/cc236844.aspx

Я же добивать буду данный формат уже для Python, возможно, если кто-то раньше не сподобится сделать инструмент для распаковки/запаковки, то я его таки допишу.

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


Ссылка на сообщение
Такая вот инфа:

https://github.com/tarvitz/udlg тут в templates лежит репрезентация нужного для чтения udlg файлов, правда с одной оговоркой. Из-за того что бинарный формат подразумевает некоторые хитрые перемещения для ClassWithId (в основно как я понял это массивы объектов) назад по прочитанному большая часть в темплейтом не прочтется до конца корректно. У 010Editor есть ограничения, через которые я уже не хочу переступать, чтобы довести работу до конца + это и не обязательно, так как составить приложение на основе имеющихся данных уже можно.

В целом автор использовал стандартный механизм сериализации, документации на который находится тут https://msdn.microsoft.com/en-us/library/cc236844.aspx

Я же добивать буду данный формат уже для Python, возможно, если кто-то раньше не сподобится сделать инструмент для распаковки/запаковки, то я его таки допишу.

Могу написать прогу для редактирования udlg файлов на Delphi

Только не разобрался пока со структурой этих udlg

Полистав ветку форума, все ссылки в т.ч. и https://msdn.microsoft.com/en-us/library/cc236865.aspx понял, что udlg - это файл, каждый элемент которого является записью

Есть конкретная инфа по заголовку udlg и структуре записи ?

Ну кроме

MT- что-то типа метки всегда 0x00000006

ID- индекс строки (наверное), занимает четыре байта

LN- длина текста занимает один байт (максимум длина строки составляет 255 символов)

TEXT- сам текст + служебные данные

В udlg реплики идут после символа с ASCII-кодом 6

Могу написать прогу, которая позводит редактировать реплики между соответствующими служебными символами

Тогда вся эта возня со структурой udlg будет не нужна

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

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


Ссылка на сообщение
Тогда вся эта возня со структурой udlg будет не нужна

Я так и знал =)). Конечно не нужна. Всего то было нужно заменить текст и плюс длину строки.

В udlg реплики идут после символа с ASCII-кодом 6

Много мусора будет.

Короче в udlg переведенный текст вставить не проблема. Скрин был выложен выше.

Вопрос в другом, где еще игровой текст кроме exe и udlg.

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

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


Ссылка на сообщение
Могу написать прогу для редактирования udlg файлов на Delphi

Только не разобрался пока со структурой этих udlg.bt

Уже разобрались читай последнее последнее моё сообщение, иди по ссылке. Качай темплейты, ставь 010Editor и натравливай темплейт на udlg файлы.

Все необходимое уже вскрыто и помечено как оно внутри структур отображается.

Есть конкретная инфа по заголовку udlg и структуре записи ?

Делай шаг, описанный выше и все увидишь в удобном формате. https://yadi.sk/i/I3cbO7GKmdHzG примерно так это будет выглядеть.

Еще раз повторю формат в 010Editor темплейтах представлен не полностью в силу того, что некоторые типы записей требуют несколько более сложных операций чем чтение вперед. Но например на cc_dogInMotion.udlg сработает адекватно.

Ну кроме

MT- что-то типа метки всегда 0x00000006

ID- индекс строки (наверное), занимает четыре байта

LN- длина текста занимает один байт (максимум длина строки составляет 255 символов)

TEXT- сам текст + служебные данные

Эти данные не верны. Можешь их забыть.

В udlg реплики идут после символа с ASCII-кодом 6

Строки там делятся на LengthPrefixedString и BinaryObjectString (смотри официальную спецификацию от MS, ссылка выше).

Все верно 06 являтся идетификатором новой записи внутри структуры .NET Binary Data structure format документе (коим является udlg).

Далее следует uint32 object_id далее уже сама строка в формате LengthPrefixedString.

В неё входит от 1 байта до 5 байт и длина последующей строки кодируется этим числом. После этого идет сама строка.

Могу написать прогу, которая позводит редактировать реплики между соответствующими служебными символами

Тогда вся эта возня со структурой udlg будет не нужна

Не стоит пренебрегать уже проделанной работой, она должна помочь в разборе структуры. Также советую смотреть в документ [MS-NRBF] (доступен http://download.microsoft.com/download/9/5...s_Protocols.zip вот тут).

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


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

Блин, когда будет Альфа\бета версия русификатора выложена? Ну или хотя бы показано сколько процентов переведено и сколько осталось?

Неизвестность знайте ли, гложет сильнее чем малый, но видимый прогресс.

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


Ссылка на сообщение
Блин, когда будет Альфа\бета версия русификатора выложена? Ну или хотя бы показано сколько процентов переведено и сколько осталось?

Неизвестность знайте ли, гложет сильнее чем малый, но видимый прогресс.

какие альфы и беты? если ребята ещё даже не весь текст нашли!!

по русски же написано!

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


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

2 hazan

смотри F22.6.

русификатор будет готов, когда будет готов. Люди работают.

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: SerGEAnt
      Lamplight City

      Метки: Приключение, Point & Click, Детектив, Альтернативная история, Инди Платформы: PC iOS MAC Разработчик: Grundislav Games Издатель: Application Systems Heidelberg Серия: World of Vespuccia Дата выхода: 13 сентября 2018 года Отзывы Steam: 704 отзывов, 89% положительных
    • Автор: 0wn3df1x
      Miraculous: Rise of the Sphinx

      Метки: Приключение, Экшен, Кооператив, Локальный кооператив, Локальный мультиплеер Разработчик: Magic Pockets Издатель: GameMill Entertainment Серия: GameMill Entertainment Дата выхода: 25.10.2022 Отзывы Steam: 125 отзывов, 49% положительных

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

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

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

    • Все нормально! Это просто у Питона сарказм очень реалистично получается
    • У нынешних ПК игр проблема с картами решается двумя способами. Первый, цивилизованный способ - официальная поддержка модов, как в WoW. Разработчики предоставляют специальный программный интерфейс, или API (в случае WoW - на языке Lua), который позволяет модам легально и напрямую взаимодействовать с игровым клиентом. Мод знает наши точные координаты (x, y, z), наши цели по квестам, потому что клиент ему об этом сообщает. Это санкционированный, структурированный обмен данными. В облачной модели это невозможно в принципе, так как на вашем ПК нет самого игрового клиента, который мог бы предоставить такой API. Есть лишь терминал, принимающий видеопоток. Второй, партизанский способ - прямой анализ игровых ресурсов. Энтузиасты вскрывают упакованные файлы игры, извлекают из них текстуры карты, 3D-модели, координаты всех NPC, точек интереса, сундуков, а затем собирают из этого конструктора внешнюю интерактивную онлайн-карту. Это обратный инжиниринг в чистом виде. Остаются разные белые пятна типа зон появления объекта задания или ресурса, которые медленно заполняет сообщество, оно же верифицирует информацию (чтоб какой-нибудь шутник не добавил на карту то, чего нет и чтоб люди не бегали в поисках несуществующего). В облачном гейминге у нас нет доступа файлам клиента и мы не можем вскрыть то, чего у вас нет. То есть в облачной реальности у нас нет ни того, ни другого. У нас нет API и нет игровых файлов. Есть только видеопоток. И попытка воссоздать функциональность мода в таких условиях требует прохождения двух этапов, первый из которых использовался для создания карт для тех же консольных игр (где по какой-то причине был ограничен датамайнинг для более удобного создания карты). Этап 1: Создание цифрового двойника карты
      Прежде чем что-то накладывать на видеопоток, нужно иметь исходный материал. В нашем случае - идеальную, полную, чистую карту игрового мира. Ее нужно воссоздать с нуля, процесс выглядит так: Тотальная зачистка карты: Один или несколько энтузиастов должны физически пройти всю игру, открыв каждый уголок карты, чтобы избавиться от "тумана войны". Нужно обойти каждую гору, заплыть в каждую пещеру. Создание атласа: Затем начинается кропотливая работа по созданию гигантского изображения - атласа карты. Это сотни, если не тысячи скриншотов, сделанных на каждом уровне масштабирования, которые затем нужно программно или вручную "сшить" в единое полотно высокого разрешения. При этом нужно бороться с искажениями перспективы, цветов и так далее. Это сродни созданию спутниковой карты Земли, только без мощностей гугла и янекса. Ретушь и очистка: С полученного атласа нужно убрать все динамические элементы интерфейса: иконку игрока, маркеры квестов, временные метки, всплывающие подсказки. Любой "мусор", который будет мешать последующему распознаванию. Если в игре это не отключается, то это что часы скрупулезной работы в условном фотошопе, где нужно аккуратно закрашивать элементы, стараясь не повредить оригинальную текстуру карты под ними. Только после этой работы у сообщества появляется "Ground Truth" - эталонная карта, на которую можно наносить метки. Как показывает опыт создания карт для того же RDR2 (ещё на консольной версии), этот процесс может занимать месяцы, а то и годы, и целиком зависит от энтузиазма горстки людей. Этап 2: Оверлей в реальном времени (кошмар инженера)
      Допустим, сообщество создало эталонную карту. Теперь начинается самое сложное: как заставить программу в реальном времени понимать, что происходит на экране, и накладывать на это изображение нужные данные?  Игрок открывает свою внутриигровую карту. Она частично покрыта "туманом войны", на ней есть его иконка, активный квест, возможно, она полупрозрачна. Программа-оверлей должна: Распознать контекст: Сначала ей нужно решить задачу распознавания и регистрации изображений. Она должна посмотреть на прямоугольник на экране и сопоставить его с гигантским эталонным атласом, чтобы понять, какой именно участок карты сейчас открыт и с каким масштабом. Для этого используются сложные алгоритмы (например, на основе SIFT или SURF дескрипторов, которые ищут уникальные ключевые точки на обоих изображениях и сравнивают их). Другое разрешение экрана, обновление интерфейса от разработчиков, даже небольшое изменение цветовой палитры - все это может полностью сломать алгоритм распознавания. Отследить игрока: Допустим, программа справилась и сопоставила изображения. Теперь ей нужно найти на карте иконку игрока, чтобы определить его точные координаты в данный момент времени. Это еще один цикл распознавания образов. А что, если иконка игрока меняет цвет? Или частично перекрыта другим значком? Алгоритм должен быть невероятно надежным, чтобы не ошибиться. Синхронизировать данные: Игрок двигается, карта в игре смещается. Оверлей должен в реальном времени (в идеале - 60 раз в секунду) повторять все эти шаги: распознать новый участок, найти иконку, запросить из внешней базы данных координаты нужных сундуков в этой области и спроецировать их на экран с учетом текущего масштаба и поворота карты. Любой сетевой лаг, просадка FPS, резкое открытие/закрытие карты или просто обновление интерфейса разработчиками сломает эту хрупкую систему. Вместо удобного помощника пользователь получит дерганый, мерцающий, постоянно теряющий синхронизацию оверлей. И тут мы подходим к главному вопросу. Кто будет этим заниматься?

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

      Разработка сложного CV-мода для каждой новой ААА-игры - это колоссальный труд, требующий такой же команды специалистов и постоянной поддержки. Делать это бесплатно? Слишком муторно. Продавать за деньги? Но зачем игроку платить за нестабильную, кустарную технологию, если издатель предлагает ему купить ту же самую карту всех сундуков за за те же деньги, но в виде идеально работающей, нативной игровой функции, интегрированной прямо в движок? Поэтому, хотя теоретическая возможность такого моддинга существует, она вряд ли представляет реальную угрозу для издательской модели монетизации. Это слишком сложно, слишком дорого в разработке и слишком нестабильно в использовании, чтобы стать массовым явлением. Гораздо более реалистичным остаётся старый метод: сначала подождать год-два, пока (и если) онлайн карту полноценно заполнят, затем открыть её на втором мониторе или планшете, и постоянно сверяться с ней (и ругаться на разработчиков).
    • Аналогично — кошак прячеся, а что постоянно хвост торчит это не считается. Он не шутит, в Питере своя атмосфера.
    • Шуточки Питона не всегда очевидны. А смайликами он частенько пренебрегает.
    • Там еще пару ошибок в TQ2.locres, что есть даже в англ. 3592 " StunDurationCurrent}" на "{StunDurationCurrent}"
      4187 "}FrozenGroundDuration}" на "}{FrozenGroundDuration}"
    • *свой пост грохнул, что-то у меня сегодня недосып и отсутствие возможности определять сарказм и подобное… да и времени пофлудить нет(
    • У меня этот принцип знает даже кот! Он прячется за шторой, и раз он оттуда ничего не видит, значит опасности нет. И пофиг, что полтулоыища из-за шторы торчит. Это у вас в Севастополе не преподают. А в Питере это даже детсадовцы знают. @piton4 не даст соврать и школьный аттестат показать может, если захочет.
    •     
        Если что-то в не поля твоего зрения, значит этого не существует. Это фундаментальные основы реальности, и насколько помню, преподаётся на теоретической физике ещё в начальных классах. Ты в школе не учился?
    • Можешь пожалуйста сказать какие дат файлы отвечают за руссификацию меню Нг3? думаю если их убрать и оставить файлы для русс диалогов , то краша игры не будет.
    • вполне логично. многие платные приватные читы для игр маскируются под драйверы как раз требуют отключения безопасной загрузки.
  • Изменения статусов

    • Дмитрий Соснов  »  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 | Реклама на сайте.

×