Правила, действующие в этом форуме и всех его подфорумах:
1) Запрещена реклама в любых её проявлениях (сразу бан без предупреждения)! 2) Мат тоже не приветствуется на форуме, но иногда можно выразить свои чувства ( лучше заменяйте матные слова точками, пробелами, другими буквами)! 3) Категорически запрещается унижать, посылать, издеваться над участниками форума! Мы здесь все - одна большая и дружная семья! Поэтому за нарушение этого правила автоматически будем банить! 4) Разрешены ссылки на информацию, которые относятся к тому или иному разделу форума! 5) Ссылки не в тему будут удаляться и пользователь получит предупреждение или будет забанен! 6) Пользователям разрешено задавать любые вопросы относящиеся к теме, а мы все дружно ответим на эти вопросы. А также отвечать на вопросы и высказывать своё мнение. 7) Повторные темы, которые будут создаваться, будут удалены! Создавайте темы, удостоверившись, что такой темы нет на форуме! 8) Запрещён флуд во всех его проявлениях, сообщения не по теме, сообщения состоящие из одного или нескольких смайликов без текста, сообщения типа - Вах!, Рулез!, Круто! и т.п. Пользуйтесь пожалуйста кнопкой [EDIT], не плодите бессодержательные сообщения. 9) Использование смайликов разрешается не более 3-х подряд!
Далее структура room повторяется до конца файла. При этом размер файла будет filesize = (room_count*28) + 4. Здесь 28 размер структуры room. По поводу текстур пока непонятно откуда берутся индексы. Причём некоторых текстур может не оказаться. Например, текстуры 00, 01 есть, 02 выпала, 03 есть.. странно это. С атрибутами морока. Простые атрибуты типа 05, 07 (отнять здоровье) вроде бы всё просто. Но если мы хотим сделать мигание света, тогда мало просто прописать атрибут 0С. Нужно ещё добавить в конец структуры дополнительную инфу о диапазоне мигания. Эта инфа занимает ещё целых 56 байт в довесок к 28 байтам по умолчанию. Подозреваю, что есть и другие атрибуты с другой доп. информацией. Жесть...
Похоже сделал такой же распаковщик, как у Holks'a только без добавления CCB, PDAT и других чанков в файлы из Doom'a. Распаковывать по кнопке Extract BIN->Doom (Rezfile). Никаких алгоритмов расжатия, тупо хождения по адресам и дёрганье данных.
Обновил инфу в посте REZFILE - DooM, Casper... Спасибо nikk, натолкнул на правильный путь. Хотя надо было давно уже про формат WAD почитать, а я всё ленился :) Вроде бы все составляющие части файлов WAD (карты) найдены. Основные отличия от PC формата в использовании везде и всюду четырёх байт вместо двух плюс в начале каждого файла первые 4 байта - количество (комнат, предметов и т.д.), этих байт в ВАДе нету. Плюс к этому 3DO не использует текстовые имена переменных, везде стоят индексы. Фактически осталось разобраться только с текстурами и можно пытаться делать WAD конвертер. У nikk он похоже есть, только он давно ничего не писал на эту тему. Блин, а ведь в киллинг тайме похожая структура карт и её тоже можно конвернуть в некое подобие вада!
Не знаю, я его не видел. Он тут оказывается выкладывал wad второго уровня, собранный из файлов 3DO версии. Изучил этот файл, нашёл все фрагменты, разобрался как он это сделал (не полностью, кое-что там изменено). В итоге теперь 240 из 473 распакованных файлов разобраны. В оставшихся 233 лежат текстуры и по идее там ещё должен быть главный файл игры. А может быть он состоит из этих 240 плюс ещё куски. Оригинальный файл Doom.wad весит 4 метра и у нас rez тоже на 4 метра, так что похоже что весь этот rez нужно целиком конвертировать в один wad, очень на это похоже. Но может и не так Нужно копать дальше.
В общем, теперь в файлах с 144 по 383 (кроме 152, 162, 172,...382) перевернуть байты таким образом, чтобы из 00 00 00 01 получить 01 00, а из 00 30 00 00 получилось 30 00. Другим словами было 4 байта, а стало 2. Обычный своп тут явно не подходит, ибо он из 00000001 сделает 01000000 (нужно два нуля обрезать). Вроде бы это не сложно.. плюс можно сразу первые 4 байта в этих файлах удалить за ненужностью. На выходе получим почти готовые файлы для вставки в WAD. Вот только названия текстур придётся самим писать, пока не придумаю как их вставку автоматизировать.
aliast, по моему опыту реверса основных игрулек, на 3DO, алгоритмы и дата контейнеры очень простые. У 3DO жизненный цикл был не большой, поэтому программеры не особо старались усложнять. В любой игре (при желании) можно разобраться. В DOOMе из консоли выжали максимум. Что либо сделать лучше наверное можно, только это будет едва заметное улучшение.
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Оригинальный файл Doom.wad весит 4 метра и у нас rez тоже на 4 метра, так что похоже что весь этот rez нужно целиком конвертировать в один wad, очень на это похоже.
Думаю, не совсем так. Некоторые уровни в 3DO версии порезаны. К тому же, сильно уменьшено их количество. Простым конвертом не получится.
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Ну то что простым конвертером не получится это понятно. Но тот что REZ модифицируется в WAD это почти наверняка так. То что этот вад будет отличаться от PCшного понятно, но размер совпадает.
DOOM1.WAD 4 196 020 REZFILE 4 694 831 Я не говорил что точно совпадает, но похоже, а разница из-за того, что на 3DO везде 4 байта используется, а на PC 2 байта. Ну и у CEL графики структура другая. Не знаю где больше, где меньше. Что такое 3DO.WAD я вообще не в курсе.
Это WAD, переделанный из версии Jaguar Doom в формат PC WAD.
Угу. Причём кривовато переделанный. Например, нет перехода с третьего уровня на секретный, хотя оный есть во всех версиях первого Дума для всех консолей. Верней, сам переход есть, только вместо секретного уровня попадаем по нему на четвёртый обычный уровень основной игры. Ягуаровская, ГБАшная и 3ДОшная версии дума идентичны. Верней, у них один и тот же набор карт, причём одинаково покоцанных. Остальные различия сами знаете (наверно) - в ягуаровской версии музыки нет вообще, в ГБАшной играют унылые мидюшки, а 3ДОшная в плане музыки впереди планеты всей!..
На Симбиан не такой порт, как на старые консоли. Там же вад от обычного Дума используется, причём любой, а не специально сделанный для приставки. Таких портов, кстати, большинство - http://iddqd.ru/porta?showed=20&auth=&type=any&file=
Добавлено спустя 6 минут 37 секунд:
aliast писал(а):
DOOM1.WAD 4 196 020 REZFILE 4 694 831 Я не говорил что точно совпадает, но похоже, а разница из-за того, что на 3DO везде 4 байта используется, а на PC 2 байта.
Тот DOOM1.WAD содержит только первый эпизод, первые 8 уровней плюс один секретный. Так что сравнение не очень корректное.
Вложения
doom_wads.png (16.16 КиБ) Просмотров: 1252
Последний раз редактировалось Yaranga 12 авг 2014, 16:32, всего редактировалось 1 раз.
Не забываем, что количество текстур в 3DO версии тоже небольшое. Ну или это плохая игра палитрой, хз...
Именно уменьшенное количество текстур. Чтоб влезло больше уровней в ограниченные 4 мегабайта ягуаровского картриджа, ведь в основе как раз и была эта самая ягуаровская версия...
Дядька aliast, может, поколдуешь над упаковкой "бутерброда"? Люди русскую версию Casper просят.
Последняя софтина Алексея (Author) тащит, кажется, все aif-ки из rezfile, и вполне себе корректно. Графики, похоже, тоже вытаскивает много, но с обрезанными заголовками, и не уверен, что всё корректно. В распакованных файлах попадаются файлы с какими-то странными кусками. Например:
Вложение
ktunrez1.PNG (49.73 КиБ) Просмотров: 771
Вложение
ktunrez2.PNG (51.14 КиБ) Просмотров: 771
Это - вообще "шедевр":
Вложение
ktunrez3.PNG (47.22 КиБ) Просмотров: 771
Вложение
ktunrez4.PNG (46.63 КиБ) Просмотров: 771
Так что, скорее всего, программа врёт. На досуге попробую с тем, что похоже на графику, повозиться.
Добавлено спустя 2 часа 2 минуты 2 секунды:
Сумел увидеть первую текстурку из раздербаненного:
Вложение
578._68888.PNG (81.75 КиБ) Просмотров: 754
Это файл ktrez578._68888._unpak, который делает версия Алексея ktunrez8.
Что ж, содержимое похоже на истину. (Когда я увидел эту картинку, у меня задёргались морда и глаз. И перед глазами всплыла IDA Pro.)
Добавлено спустя 24 минуты 14 секунд:
Мать честная, да их там две! Следующая - ktrez577._69424._unpak
Вложение
577._69424.PNG (82.17 КиБ) Просмотров: 747
Первая - для PAL, вторая - для NTSC. Значит, и вправду готовились сделать две версии игры с регион-локом.
Добавлено спустя 5 часов 24 минуты 48 секунд: upd/ Порылся повнимательнее - да, кое-какие текстуры достать можно. Но в целом программа Алексея файлы вытаскивает неправильно. В некоторых текстурах - по нескольку PLUT-ов. И там в rezfile ещё запакован текст. Программа Алексея зверски его разрывает на куски и раскидывает по файлам с текстурами. Примеры:
Вложение
246._94108.PNG (64.34 КиБ) Просмотров: 728
Вложение
546._94181.PNG (66.83 КиБ) Просмотров: 728
Хотя, по идее, если разработчики, конечно, не с дуба рухнули, то файл с текстом там должен быть один единый. Текст с указателями. Фрагмент с указателями я навскидку вообще не нашел. Видимо, он тоже оказался добавленным ещё к каким-то текстурам.
Вывод. Программа Алексея рвёт rezfile, как Тузик грелку. И хрен чего, скорее всего, из таких "результатов" толкового соберёшь.
Вывод 2 Вытащил всю озвучку из PS1 версии, и озвучка довольно «всратая». Если играть на консоли, то можно, наверное, не обратить внимания, но если слушать абстрактно от игры - там кошмар: наускоряли, назамедляли голоса... Короче, это не озвучка, а параша самая настоящая. «Vector» - есть «Vector».
В общем - предлагаю забить на это дело.))
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
На первом скрине я вижу 32-цветную палитру :) Третий файл с нулём действительно выдран с ошибкой. На самом деле rezfile разделён на две половинки. Первая половина с 578 картинками (может быть ещё что-то), и потом ещё 132 звуковых файла. А между ними непонятные байты 00 00 00 05 00 00 00 01, которые и порождают этот странный файл размером 1 байт. Не должно его быть...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения