1. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление
    1. Если вы сделали перевод или русификацию игры, то вы можете поделиться своим творением здесь.
    2. О правилах вступления в группу переводчиков можно прочитать здесь.
    3. Русификации следует искать там.
  2. Пожалуйста, внимательно прочитайте правила раздела.

Анализ ресурсов игры Wrath of Earth (возможность перевода)

Тема в разделе "Переводы своими руками", создана пользователем WERTA, 26 июн 2013.

  1. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Точнее тему стоило бы назвать О невозможности перевода... но не будем так пессимистично говорить.

    Итак, нашел наконец-то распаковщик библиотек игры. Многие знают, что Wrath of Earth фактически представлена всего 5 файлами в игровом архиве. Все ресурсы запакованы в двух файлах. Отсюда сложности с простейшим анализом ситуации.
    Вот ссылка на распаковщик и его С++ код
    http://www.abandonia.com/vbullet/showpost.php?p=376501&postcount=35

    Автор - некто AlumiuN из Christchurch, New Zealand
    Профиль
    http://www.abandonia.com/vbullet/member.php?u=19575

    Просто нужно запустить распаковщик и подложить к нему в папку два файла игры
    WOE.LIB и WOE.RSC. Он их распакует. Что мы имеем? Огромное число файлов - 1669 (47 МБт) после распаковки. Типов файлов очень много. Текстовики я даже не смог найти в этом "хаосе". Но подвижка есть. Есть открытый код распаковщика, значит возможен и запаковщик. Пока данная ситуация полностью наоборот напоминает тот анекдот про программиста: "...теперь думаю над алгоритмом распаковки..".

    Пока вердикт "Перевод игры Wrath of Earth - технически возможен" выводить рановато. Нужен анализ форматов и типов файлов. Для чего, собственно, я и создал эту тему...
     
    Последнее редактирование: 27 июн 2013
    Vladimir 777, kreol, Neitan и ещё 1-му нравится это.
  2.  
  3. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    BIN - одна-две RAW, один с какими-то данными.
    BMP - 1360 файлов. Все хранятся в WOE.LIB.
    DAT - один файл с бинарным порядком данных.
    DRV - без комментариев.
    FST - возможно, сжатые данные разметки для уровней.
    Без расширения - 41 файл, около половины большого размера.
    PCX - 7 файлов.
    SMP - скорее всего, звуки в RAW. Некоторые с заголовком.
    SND - по-моему, музыка.
    SPC - возможно, тоже звуки в RAW.
     

    Вложения:

    Neitan, Чёрный Думер и WERTA нравится это.
  4. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    Поискал другие версии в интернете - нашел самую раннюю, января 1995 года. Изменений в ресурсах не обнаружил, за исключением, что озвучка(.SPC) находится на отдельных дискетах. К слову, возможно, что игра изначально вышла на дискетах(не уверен, распространялась ли она по модели Shareware), а потом было издание на CD, куда просто включили озвучку.

    Ссылки на наиболее подозрительные файлы:
    https://disk.yandex.ru/public/?hash=YxwSUyzyJOc2+YvX4iqF0nxqgp5BxYYLDaRlZb/ivGQ=
    https://disk.yandex.ru/public/?hash=cuVxDpvLvvr3twJzms+3M6j7QNkqm7bq4RlDQTi6Cew=
     
    Neitan, Чёрный Думер и WERTA нравится это.
  5. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.359
    Попробую написать запаковщик для RSC и LIB.

    UPD: вникаю в форматы. RSC - обычный псевдоархив, LIB - сваленные друг за дружкой безо всяких ограничителей непожатые матрицы 64x64, которые при распаковке программа переводит в BMP.
    Структура файла:
    unsigned short количество_файлов_в_архиве

    и потом количество_файлов_в_архиве раз
    int размер_файла
    int НЁХ
    int смещение_начала_блока_данных_файла_в_архиве
    char название_файла[13]
    (последний байт всегда нулевой)


    и потом идут блоки данных.

    Сел писать упаковщик RSC. Для LIB писать не буду - русифицированные текстуры (а там есть, что переводить, хоть и немного) можно воткнуть при помощи обычного GBS с кастомной палитрой.

    UPD2: формат оказался несколько сложнее, с наскоку написать запаковщик не удалось.
     
    Последнее редактирование: 28 июн 2013
    WERTA и Neitan нравится это.
  6. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Идея прекрасная, но что-то мне файлы игры не нравятся, уж очень они тяжелы для перевода. Так и не нашел ни текстов ни шрифтов.
     
    Последнее редактирование: 27 июн 2013
    Чёрный Думер нравится это.
  7. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.359
    WERTA, а в чём именно состоит сложность? Или только в том, что шрифты и тексты лежат где-то глубоко?
     
    WERTA нравится это.
  8. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Да не то что глубоко, они похоже закодированы. У них даже кредитсы в бинарном формате изображения получились. Я давно понял, что это игра будет непроста для перевода.
     
    Последнее редактирование: 27 июн 2013
    Чёрный Думер нравится это.
  9. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    Думаю, для начала следует копать в сторону файлов без расширения - они наиболее большие, могут являться сжатыми данными(есть, однако, подозрение, что среди них ролики в FLC\FLI\FLIC), которые содержат разные компоненты - спрайты, анимации, текст, прочее.

    Также, возможно, что пожат и EXE, но это на всякий случай, чтобы исключить ситуацию, когда все оказывается на поверхности.
     
    Чёрный Думер и WERTA нравится это.
  10. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.359
    С киркой и лопатой отправились ребята

    Дописал запаковщик RSC.
    Вот (программа + исходник на FreeBASIC): Посмотреть вложение rscpack.7z
    Программа максимально проста. Перетягиваете на EXE-файл папку с ресурсами, которые надо запаковать, на выходе получаете "woe.RSC". Никакой защиты от дурака нету, поэтому может вылетать в экстремальных (лол) условиях. Если поймаете на вылете или оно выдаст битый RSC-файл - сообщите мне. И да: при упаковке в папке с программой не должно быть ещё одного WOE.RSC, потому что проверки соответствующей нету и всё запишется поверх, что может привести к битому файлу, если новые данные будут размером меньше.

    Формат оказался на деле очень простым, просто я вчера уставший был и просмотрел некоторые важные вещи в исходнике распаковщика. Однако всё ещё неясным остаётся значение второго поля структуры описания ресурса в RSC-файле (см. моё предыдущее сообщение). Хоть игра и жрёт новый ресурсник, собранный моей программой из тех же файлов, и, ЧСХ, даже не давится, но всё равно это странно. Ладно бы в оригинальном файле это поле везде было бы забито нулями или одинаковым значением, тогда можно было бы принять за зарезервированное, но нет же. У меня пока что только две догадки - либо это битовые флаги с какими-нибудь параметрами для конкретных ресурсов, либо это размер буфера для декомпрессора.

    Кстати, о компрессии. В игре она определённо точно используется. Вот какие любопытные строчки об ошибках я нашёл в EXE-файле:
    Код:
    $Procedure Load_Map, decompression error.
    $Procedure Load_Map, bad tag in compressed file.
    Т.е. как минимум на картах компрессия используется. На других же ресурсах вряд ли, как мне кажется.
    Сам EXE'шник, если верить UNP, ничем не сжат. Да оно ему и не нужно, по идее - ассемблер же ведь. Оверлея у него тоже нету. И текста, кстати, нету, кроме сообщений об ошибках и прочей мелочи.

    UPD: Раскрылся формат и SPC-файлов. Это обычные звуковые RAW-файлы без заголовка, формат 8-bit unsigned, моно, 11025 Гц. В них записана речь игрового информатора (или как это обозвать).
     
    Последнее редактирование: 28 июн 2013
    Vladimir 777, WERTA и Gamerun нравится это.
  11. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Чёрный Думер, это отлично, что запаковка так просто далась. Но меня смущает, что текста вообще нигде не могу найти. Я боюсь, что он загаммирован, а не сжат. Поскольку любой сжатый текст всегда можно будет хоть как-то, да увидеть. А тут его нет. Предлагаю пока сосредоточить усилия на поиске текста. Если его можно будет найти, тогда имеет смысл и далее экспериментировать с запаковкой. Просто перевод без текста - это как машина без колёс. Хотя, тут я не совсем прав, даже если перевод будет невозможен, то благодаря твоим запаковщикам люди смогут делать исправления в картах (если изучат их формат). Просто игра похоже непроста и в плане глюков. На абандонии у людей проблемы часто случались в месте под названием Shuttle Bay.
     
    Чёрный Думер нравится это.
  12. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    Тогда посмотрите DAT и FST - если в них тоже не текст, то однозначно искать в файлах без расширения.

    При этом, нужен тех. специалист, который разгадает есть ли у всех файлов под подозрением сжатие, который напишет декодер для них. Без этого пытаться искать текст стандартными средствами(hex, gbs, tiled) просто лишено смысла.
     
    Чёрный Думер и WERTA нравится это.
  13. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.359
    Мне кажется, что файлы без расширения - это карты. Больно уж похож стиль наименования названий на используемый в подобных случаях.
     
    WERTA нравится это.
  14. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    Уровней либо 9, либо 15. (зависит от количества роликов или от количества файлов не уровней)

    Из маленьких наибольшее подозрение вызывает M1, B0-2, DE, WC, WO - у них не фиксированный размер данных(что было бы более характерно для шрифтов)
     
    Чёрный Думер и WERTA нравится это.
  15. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Скорее 9. Там на *.рсх две локации
    1. Планета (красн.)
    2. Спутник (синий)
    Примерно по 4 уровня в локации

    Вот немного посмотрел ресурсы.

    *.pcx – заставки уровней, игры, издателя, HUD, финальный титл.
    *.fst – похоже на звук (небольшой размер файлов, HEX-нумерация файлов 01h–14h)
    *.spc – похоже на звук (большой размер файлов, DEC-нумерация файлов 00–27 + доп. алфавитная нумерация – 93 файла)
    *.snd – в основном нули, небольшие файлы, DEC-нумерация файлов a0–a9
    *.smp – похоже на звук, алфавитная нумерация, средние файлы, 124 файла , есть странные файлы, начинающиеся на е и имеющие формат имени е# (e0-e9)
    ENDGAME.BIN – аналогичные по способу вывода титры как и в CREDITS.BIN
    Остальные файлы без расширений напоминают графику, хотя и не все.

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

    Варианты кодирования:
    1. Просто смещение
    2. Простое гаммирование одним байтом
    3. Сложная перекодировка букв.
    В конце файла woe.exe есть нечто интересное с 00015190. Может это перекодировка, или таблица ключей гаммирования ниже?

    ---------- Сообщение добавлено в 22:28 ---------- Предыдущее сообщение размещено в 21:45 ----------

    Круг сужается, это RAW-аудио
    SPC – 11 kHz, Mono, 8Bit, Unsigned (речь персонажей и голос интерфейса... )
    SMP – 11 kHz, Mono, 8Bit, Unsigned (двери, взрывы, лифты…)
    FST – 11 kHz, Mono, 8Bit, Unsigned (шаги, шаркания...)
     
    Последнее редактирование: 29 июн 2013
    Vladimir 777 и Чёрный Думер нравится это.
  16. Vladimir 777

    Vladimir 777

    Хелпер

    Регистрация:
    22 мар 2010
    Сообщения:
    1.347
    Часть текста (скорее всего, всё, кроме брифингов) находится прямо в WOE.EXE. Только кодировка там чудовая.

    Если открыть ЕХЕ в такой кодировке (я открывал Hex Workshop v4.23) по FFB9, 121A4, 145C9, 149DF заметны фрагменты текста. Сведения о кодировке получены путём записи в сейв с различными именами и рассматриванием его "шапки" с помощью Hex Workshop. Первые байты и будут названием файла.

    С помощью запаковщика от Чёрного Думера можно провести простейший эксперимент с заменой файлов аналогичными по размеру, но состоящими из нулевых байтов, и последующей запаковкой в WOE.RSC.

    Удалось выяснить, что файлы 000, 00A, 00B, 001, 002, 003, 004, 005, 006, 007, 008, 009 (всё после 00A ещё не проверялось, но заголовки файлов очень схожие) представляют собой сжатые карты, может там и тексты брифингов. Подмена 000 на переименованную копию 00A привела к загрузке (не вполне корректной) другой карты на первом уровне. Порча байта в 000 по 3001 (46 в 00) вызывает вылет с сообщением "Procedure Load_Map, bad tag in compressed file", что полностью подтверждает предположение о сжатии карты. Возможно, в ЕХЕ получится найти процедуру распаковки карт.

    Точно определены назначения следующих файлов:

    M1 - картинка человека в серебристом скафандре на синем фоне, видна справа при выборе сложности игры;
    WC - два скафандра, видны слева и справа при выборе пола персонажа;

    Предположительно:

    WO - возможно рамки меню (при замене файла на состоящий из нулевых байтов виснет сразу после ролика);
    F0-F5 - похоже на несжатые изображения каких-то множественных сходных объектов (настройки GBS - 16 BPP, width - 24),
    замена файла аналогичным по размеру, но состоящими из нулевых байтов вылетов и висов не вызывает;
    C0-C3 - похоже на несжатые изображения каких-то множественных сходных объектов (настройки GBS - 16 BPP, width - 24).

    Тексты брифингов и шрифты пока не найдены.

    ---------- Сообщение добавлено в 19:12 ---------- Предыдущее сообщение размещено в 19:04 ----------

    О, и в SETUP.COM, прямо в начале, текст в этой странной кодировке.
     
    Последнее редактирование: 2 июл 2013
    Чёрный Думер, kreol, WERTA и 2 другим нравится это.
  17. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Отлично! Я ожидал намного худшего варианта с кодировкой в игре. Сейчас изготовлю конвертер, чтобы можно было посмотреть все тексты в woe.exe или в других файлах. Нужно прогнать все байты ехе-шника и сложить с числом 40h, тогда будет сразу видно. Вполне возможно, что брифинги могут быть в картах.

    Осталось найти шрифты. Ширина букв до 4 пикс, а высота 5 пикс. Если и искать с помощью GViewer в ресурсах woe.exe или остальных граф. файлах, то на ориентируясь на значения ширины от 3 до 5 пикселов и в цветовом разрешении 1 бит. Проанализировал сегодня все *.bin файлы. Практически вся графика в этих файлах несжатая, но сгруппирована блочно. Похоже в игре вся графика и звуки несжатые. Не забываем, что писал ее Дэйв Фоллер на чистом ассемблере, поэтому есть надежда на святую простоту всего, что связано с ресурсами этой игры.
     
  18. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    6.724
    Вот простейший декодер во вложении.
    1. Открывает файл.
    2. Прибавляет при сохранении к каждому байту значение 40h
    3. К имени сохраненного файл прибавляет постфикс 40h. Путь всегда тот же, что и у оригинального файла.

    Пока не увидел текста в woe.exe Этим декодером можно быстро "прошерстить" подозрительные ресурсы - это все файлы без расширений. По крайней мере буквы он отобразит. Затем доработаю декодирование для цифр и знаков препинания.
     

    Вложения:

    • WoEdecod.rar
      Размер файла:
      129,4 КБ
      Просмотров:
      57
    Чёрный Думер и Vladimir 777 нравится это.
  19. Vladimir 777

    Vladimir 777

    Хелпер

    Регистрация:
    22 мар 2010
    Сообщения:
    1.347
    Прибавляй 41h, тогда будет видно. В woe.exe по FFB9 сразу заметен текст. Первый фрагмент - "UNKNOWN ELEMENTS". А у тебя с 40h там получается "TMJMNVM=DKDLDMSR".

    ---------- Сообщение добавлено в 21:28 ---------- Предыдущее сообщение размещено в 21:20 ----------

    Да, и ещё. Если текст брифингов находится в тех 12 файлах с сжатыми картами (а так похоже и есть), он же тоже пожат будет, так что прибавка 41h тут не поможет.
     
    Чёрный Думер и WERTA нравится это.
  20. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    7.439
    Попробовал новый WOE.RSC с частью порченных файлов - в результате выяснил, что 15 файлов - это как раз карты уровней, но не все. 9 файлов точно карты, остальные 6 - это меню, экраны и прочее(плюс, возможно, графика).

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

    Прикладываю архив WOE.RSC с порченными файлами. (основано на первой версии игры)
     

    Вложения:

    • WOE.RSC.rar
      Размер файла:
      4,4 МБ
      Просмотров:
      54
    Чёрный Думер, WERTA и Vladimir 777 нравится это.
  21. Vladimir 777

    Vladimir 777

    Хелпер

    Регистрация:
    22 мар 2010
    Сообщения:
    1.347
    Уровней же 12, об этом сам Дэйв Фоллер (автор) говорил: http://www.abandonia.com/vbullet/showpost.php?p=376101&postcount=33

    Нашёлся крупный шрифт (похож на тот, который используется в меню). Он в SETUP.COM, начинается по 9CD. Настройки GBS: 8 BPP, Width (вобщем-то для шрифта это будет не ширина, а высота - шрифт "лежит на боку") - 10.
     
    Чёрный Думер и WERTA нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление