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

From Dust

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

Сегодня я исследовал формат файлов *.oli, в них хранится весь текст. Он оказался тоже не простым.

Вот скрин с описанием того, что мне удалось выяснить:

olizia.th.png

Тут нужно писать отдельную утилиту, которая будет извлекать и записывать в них данные.

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


Ссылка на сообщение
Сегодня я исследовал формат файлов *.oli, в них хранится весь текст. Он оказался тоже не простым.

Вот скрин с описанием того, что мне удалось выяснить:

olizia.th.png

Тут нужно писать отдельную утилиту, которая будет извлекать и записывать в них данные.

одно слово или фраза из игры один файл *.oli на разных языках.

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


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

да да, очень извращённо. :mad:

Ещё замечания: После каждого текстового фрагмента 12 байт нулей.

AutoIt понимает этот текст только в кодировке UTF16 Little Endian, а Акельпад в UTF16 Big Endian

не знаю кому верить))

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

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


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

Если я не ошибаюсь в игре есть русский шрифт.не все буквы я, э, Э, P, p, Х, х, ю, Ю отсуствуют

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


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

Я пробывал забивать русский текст через HEX редактор (перевёл один из пункутов меню) строка тупо не отображалась. Хотя может я что-то напутал с кодировками.

Набросал скриптик, которым буду обрабатывать OLI файлы (это только набросок, потом будет массово)

$sScriptName = "From Dust OLI exporter v.0.1" ; имя программы$sOliFilePath = FileOpenDialog ( "Select *.oli archive", @ScriptDir, "From Dust(*.oli)", 1); выбираем файл *.oliIf $sOliFilePath = "" Then Exit ; если ничего не выбрали, выход$hOLIfile = FileOpen ($sOliFilePath, 0+16) ;открываем файл в режиме чтения+бинарный$bOLIfile = FileRead ($hOLIfile)$iNameLen = Dec (Hex (_Rotate(Binarymid ($bOLIfile, 38, 4)), 4))$sOliName = BinaryToString (Binarymid ($bOLIfile, 42, $iNameLen-2), 2); преобразуем бинарные данные в строку. UTF16 Little Endian$iTextLen = Dec (Hex (_Rotate(Binarymid ($bOLIfile, 42+$iNameLen+2, 4)), 4))$sOliText = BinaryToString (Binarymid ($bOLIfile, 42+$iNameLen+6, $iTextLen-2), 2)ClipPut ("["&$sOliName&"]"&@CRLF&$sOliText); копируем результат в буфер обменаMsgBox (0, $sScriptName, "["&$sOliName&"]"&@CRLF&$sOliText); функция переворачивания байтFunc _Rotate($bBytesToRotate)If IsBinary ($bBytesToRotate) = 0 Then Return "" ; если переданные данные не являются бинарными, возвращаем из функции пустоту$iBytes = BinaryLen ($bBytesToRotate) ; определяем количество байт$bRotatedBytes = Binary ("") ; объявляем переменную, в которой будет перевёрнутое значение и указываем, что она для хранения бинарных данныхFor $i = $iBytes To 1 Step -1 ; крутим цикл от максимального значения до 1$bRotatedBytes &= BinaryMid ($bBytesToRotate, $i, 1); выбираем по 1 байту с конца и объединяем с содержимым объявленной переменнойNext   Return $bRotatedBytes ; возвращаем перевёрнутый результат из функцииEndFunc ;==>_Rotate

 

Текст буду собирать в один файл, маркируя к какому файлу он относится. Пример:

[006_Dustpedia_Map_7_0000241]

The Ancients set foot on a strange land, which rose and fell with a gentle tide. The presence of the trees of water and trees of fire frightened the Ancients, who had already suffered from their clash. A man then noticed that a tree of fire and one of water had become intertwined.The fire of the first nourished the water of the second, from which vegetation grew. When the Ancients understood that the two breaths would oppose each other or join forces depending on the circumstances, they pursued their journey.

On this territory, you can form a long serpent of jellified water to grow vegetation on. The vegetation will spread along the water until it begins to flow again, when the effect of the power wears off.

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


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

Ну вроде готово. Массовый экспортер текста из OLI файлов: OLI_text_export.rar

Oli файлов том больше тысячи...

Выходной файл я сделал в кодировке UTF-8, так как вдруг придётся заливать на нотабиноид.

Встречаются какие-то непонятные символы, например в файле 006_Promo_Line2_Text_0001500.oli строка начинается с символа 0x2220, потом два пробела 0x2000 0x2000.

Что за символ?

Ну и собственно сам английский текст: Gen_Common.lin.bf.rar

з.ы.

И ещё небольшой прогресс: Мне удалось вручную запихать текст в архив без ограничение на длинну строки. Теперь нужно писать скрипт-патчер

fromdust201108231537028.th.png

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

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


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

Интересно!

Будем ждать патчер и шрифты.

ОЛЕГатор - молодец :victory:

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


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

Небольшая инструкция как добавить текст вручную на примере [1891]000_Main_Menu_Play_Text_0000252.oli:

Открываем *.oli файл в HEX редакторе, Сверяясь по описанию находим первую строку с текстом (первый у нас английский, строка Play) и его длинну 0A 00 00 00, переворачиваем её 00 00 00 0A и переводим в десятичную систему 10 (можно использовать калькулятор Windows). Итого строка Play занимает 10 байт (на самом деле 8, последние 2 байта нули) по 2 байта на каждый символ. Теперь например откроем Akelpad напишем новый текст и сохраним его в кодировке UTF16 Little Endian (это значит старший байт будет первый из двух). Теперь открываем этот текстовый файлик в HEX редакторе и считаем сколько байт он занимает (Если вы сохраняли с BOM, то первые 2 байта это маркер кодировки и его не трогаем). Зная сколько было байт (8, последние нули не считаем) и сколько стало, расчитываем сколько лишних байт добивится в OLI файл. В HEX редакторе встаём на конец строки и зажимаем правой кнопкой Insert и добавляем нужное количество байт, заполняем их нужными значениями, помня о том, что последняя пара нули + расстояние до следующей строки 12 байт нулей. Теперь прибавляем количество к значениям размера блака данных (который идёт в самом начале и повторяется 2 раза) и к размеру всего файла, также перевернув, преобразовав в десятичну и потом результат в обратной последовательности.

Геморно, но я работаю над инструментом.

Теперь нужно всё это дело прикрепить к архиву BF. Открываем в его в HEX редакторе, двираемся в конец файла и правой кнопкой Insert и добавляем нужное количество байт равное размеру файлу (ПКМ => свойства на oli файле, который изменили) и заполняем эти байты данными из файла. Запоминаем смещение, с которого начинается этот блок данных. Идём в самое начало архива, поиском находим текст 000_Main_Menu_Play_Text_0000252.oli в шапке и по описанию формата находим размер (2 раза) и смещение, меняем их на наши учитывая, что они перевёрнуты.

Всё!

Тоже геморно, но я работаю над этим.

з.ы.

Этим методом вчера пытался всунуть TGA шрифт (предварительно изуродовав пару букв), чтобы идентифицировать какой куда относится - Так и не обнаружил никаких изменений во внешнем виде шрифта, перебрав все толстые. Вероятно он не в TGA?

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

Нашёл пару ошибок в распаковщике *.BF архивов. Исправленная версия анпакера: FromDust_BF_unpacker_fixed.rar

Исправления:

- устранена причина некорректного определения количества файлов в архиве

- исправлена ошибка с преобразованием HEX

- добавлена нумерация файлов в квадратных скобках, решает проблему перезаписи дублей (дубли оказались не совсмем дублями, имена одинаковые, а содержимое разное)

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

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


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

 

OLEGator84 Молодец =) Щас пока некогда игрой заниматься. если сильно не спешите, помогу чем смогу =)

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


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

Не помешает помощь в написании упаковщика в BF и необходимо разобраться со шрифтами. Я не смог выявить какие файлы к ним относятся. Имеющиеся TGA текстуры я менял, но результата нет.

В данный момент я работаю над редактором OLI

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

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


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

OLEGator84

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

Напиши в личку аську. Так удобнее будет скоординироваться по наличию свободного времени.

Насчет текста, в игре его много? По объему в страницах =) Я просто в игру толком еще не играл.

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


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

ого, ну вы работу проводите, жаль я помочь не смогу, не разбираюсь в этом =(

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


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

текста 123.6 КБ в текстовом файле формата UTF-8 (это с именами файлов внутри, а зачастую имя файла больше самого текста)

Текст я выкладывал выше.

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


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

шрифты находятся в файла расширением ffd русская буква {А} код 0С0Н буква {Я}-0DFH

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

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


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

ммм... интересно!

Это значит нам не нужно их править и русские буквы все внутри?

Только мне не понятно что это: 0С0Н, 0DFH ? Что означает символ H?

В кодировке UTF-16 LE: А - 1004, Я - 2F04 не отображаются в игре.

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: mordamax

      Скоро игре 5 лет, а перевода всё нет, и нет. 
      Придётся заняться самим.
      Движок: Unity
      Жанр: Решение с последствиями, Детективное, Симулятор.
       
    • Автор: Gerald
      Предлагаю на перевод вот steam https://store.steampowered.com/app/2451460/_2222/?curator_clanid=39058271
      Погрузитесь в антиутопический мир, где человечество своими действиями развратило планету. Вы живете в возвышенном городе, над облаками радиоактивной пыли, без чувства смысла жизни, участвуя в очередном «дне сурка» главного героя. Ваша задача скользить под поверхностью города, дабы отремонтировать автономную систему, обеспечивающую функционирование жителей города. Это очередная рутинная неудача, или сегодняшний день изменит вас навсегда? Пришло время ответить на вопрос, каков ваш путь и правда.

      Рисованная графика
      Одной из уникальных особенностей нашей игры является рисованная графика. Во времена искусственного интеллекта, игр, созданных из ассетов и фотографий, сгенерированных с помощью искусственного интеллекта, мы подготовили для вас часы графики, сцен, анимаций, которые создают уникальную атмосферу Lazarus. Уникальная игра, ей нужен уникальный сеттинг, и это дает Lazarus. Ваш игровой процесс состоит из большого, большого, большого количества нашего времени и энергии. В конце концов, что только не делается для верного игрока?

      Окунитесь в атмосферу игры
      Мы подготовили для вас около 2 часов истории, которая написана языком, позволяющим проникнуть в тело и разум главного героя. Вас ждут как инфантильные, юмористические разговоры и внутренние диалоги, так и серьезный поиск смысла жизни, цели путешествия в этом мире.

      У вас есть выбор
      Делайте выбор, который повлияет на остальную часть игры. Вы верите в эффект бабочки? Если это так, у вас есть возможность испытать это на собственном примере во время игры.

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

      Достигать
      Охотник за достижениями, мы подготовили для вас достижения, которые обогатят вашу коллекцию. Конечно, не все из них удастся получить простым способом. Наконец, вы сможете сравнить себя в этом отношении с другими игроками в «Lazarus 2222 a.d. ». Принимаете ли вы вызов заработать все достижения?

      Мини-игры
      В некоторых моментах стоит оторваться от основного сюжета и поиграть в мини игры, которые разнообразят игровой процесс. Проявите свой блеск, ловкость, логическое мышление, играя в мини-игры.

      Работа с геймпадом
      Вы можете играть в Lazarus на геймпаде. Если вы играли на геймпаде, напишите нам, если вам понравилась поддержка игры на нем.  

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

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

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

    • Все восемь запланированных серий выйдут на площадке 25 ноября текущего года. Сервис Prime Video недавно выпустил первый трейлер сериала «Бегущий по лезвию 2099». Все восемь запланированных серий выйдут на площадке 25 ноября текущего года.
    • Слава богу, хоть интерес проявляешь. Глядишь и осмысленно размышлять начнёшь над чужими сообщениями, а не только свою дальновидность тешить.
    • А скажи, дальновидный ты наш, какова цель всего этого гемороя, в т.ч. для Стим? Делать все это нужно чтобы что? 
    • В аркаде обещают? Это они погорячились. Чуть позже засунут в делюкс или ультемейт.
    • Авторов проекта нещадно критиковали за насильную привязку игры Ace Combat Zero, предоставляемой владельцам предзаказа, к 8 части серии в Steam. Сегодня Bandai Namco заявила, что в скором времени Zero будет выпущена как отдельное приложение и по-прежнему будет доступна лишь тем, кто ранее оформлял предварительный заказ на Wings of Theve. На днях Bandai Namco Entertainment Europe сообщила: Ace Combat 8: Wings of Theve достигла 1 миллиона проданных копий по всему миру — быстрее, чем любая другая игра за 30-летнюю историю франшизы. Ранний доступ стартовал 29 сентября, а мировой релиз состоялся 2 октября 2026 года. Игра уже стала второй по оценкам критиков среди всех частей серии по данным агрегаторов рецензий. Проект разработан Bandai Namco Aces и работает на Unreal Engine 5 с использованием собственных технологий студии. Игрокам обещают ультрареалистичный воздушный экшен, сюжетную кампанию и самый масштабный мультиплеер в истории серии. Игра доступна на PlayStation 5, Xbox Series X|S и ПК в сервисе Steam. Серия Ace Combat продолжает расти: в июне 2025 года франшиза отметила 30-летие. В Ace Combat 8 игрокам предстоит сесть за штурвал истребителей, вдохновленных реальными моделями, и участвовать в воздушных боях в одиночку и в мультиплеере — на фоне выразительных облачных пейзажей и детально проработанных локаций. Помимо рекордных темпов продаж, «восьмерка» стала одной из лучших игр серии: по оценкам критиков она уступает только Ace Combat 4: Shattered Skies, вышедшей в 2001 году на PlayStation 2. Игроков и журналистов привлекает кампания — кинематографичная история о пилоте-асе в вымышленном мире, охваченном войной. Мультиплеер тоже самый масштабный в серии: кросс-плей объединяет пилотов с разных платформ, доступны режимы PvE и PvP, а социальная площадка вмещает до 100 игроков — там можно настроить персонажа, прокачиваться, тренироваться, следить за наградами и объединяться в отряды перед вылетом. Авторов проекта нещадно критиковали за насильную привязку игры Ace Combat Zero, предоставляемой владельцам предзаказа, к 8 части серии в Steam. Сегодня Bandai Namco заявила, что в скором времени Zero будет выпущена как отдельное приложение и по-прежнему будет доступна лишь тем, кто ранее оформлял предварительный заказ на Wings of Theve. Сейчас разработчики проводят «финальное тестирование качества и совместимости перед выпуском игры».
    • Подскажите версия переводя мгс 4 от  ПК-версии (Xesenger, ExclusivE Studio, Alliance Team) довольно хороша, можно уже врываться ? описание почитал, там почти все на 100 % переведено.
    • Для Switch перевод будет ?
    • Файла давно не существует. Надо бы перезалить
    • Капитализм и демократия так и работают, каждый сам выбирает, на что тратить доходы.(свои или содержащего его,при его согласии) Если что-то не запрещено, то каждый может делать что хочет. Кто-то циферки собирает, кто-то лодку на рыбку покупает, кто пиво пьёт, а кто-то календарики собирает и готов за редкий и 100к выложить .  
  • Изменения статусов

    • goosemose  »  Orionus

      Здраствуйте
      Хотел спросить за руссификатор для Dragon Quest 3, есть ли бесплатный для пк? Или только платный недавно купил ее в стиме, думал что на пк есть руссификатор, уже некоторое время ищу и нахожу либу пустые файлы либо платные, хотя по коментариям вроде видно что был на пк бесплатный перевод.
      Подскажите пожалуйста.
       
      · 0 ответов
    • axe66  »  SerGEAnt

      здравствуйте. можете добавить на сайт раздел для игры She’s Leaving и русификатор к нему? и как и куда вам скинуть фото и сам русификатор?
      [h2] Версия: 1.0.1 (от 22.05.2026)
      Совместимость: для сборки 20909321 [/h2]
       Информация:
      Машинный перевод моделью gemma2:9b-instruct с несколькими этапами автоматической перепроверки (модель "самопроверялась") и финальными ручными правками.
      Это не финальная версия — по мере нахождения ошибок перевода будут выходить обновления.
      Известные нюансы:
      * Возможны неточности и ошибки в переводе.
      * Некоторые элементы интерфейса остались без перевода.
       Установка:
      1. Запустить Russifier.exe
      2. Нажать "Выбрать папку"
      3. Выбрать папку с игрой и нажать ОК
      4. Нажать "Установить"
      5. Дождаться завершения установки и закрыть программу.
      После установки запустите игру и наслаждайтесь!
      Если заметили ошибки или некорректные формулировки — оставляйте комментарии, будем исправлять!
       
      Автор: Serjik Sokolov История изменений:   Версия 1.0.1 от 22.05.2026 - Установщик теперь автоматически определяет корневую папку игры, даже если случайно выбрана вложенная папка.   Версия 1.0.0 от 03.12.2025 - Релиз
      · 1 ответ
    • Perfect End Strange  »  SerGEAnt

      Привет, озвучку для Silent Hill 4: The Room выпустил энтузиаст под ником Perfect End Strange, а вы написали совсем другую студию, пожалуйста, исправьте эту оплошность
      · 0 ответов
    • Jimmi Hopkins  »  SerGEAnt

      я его уже открыл в свободный доступ, чтобы не потерялось среди новинок
      · 0 ответов
  • Лучшие авторы


×