Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вскрытие ресурсов Метро 2033
GAMEINATOR forums > Общие разделы > Создание и модификация игр. Геймдев.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
Panisher
Даа..Тема живёт :)
setback'у огромное спасибо.

Цитата
p.s.
scripts.bin, stable_ru.lng и прочие интересные файлы - не текстовые ;)

Как раз недавно начал изучать.Видать не зря взялся ;)
[SОC]
Цитата(Руся @ 21.03.2010, 09:21) *
Так что ресурсы, ес.. (нет) КОГДА их удастся открыть, и даже при условии что можно будет некую геймдату в папке с игрой организовать, делая мод - и правда послужат разве что правке конфигурации оружия, здоровья Библиотекарей и, например, цвета луча фонарика и его срока службы. 

Это при условии, что не будет предоставлено SDK. А мы ведь все знаем, как THQ любят давать фанатам редакторы, правда? Так что нельзя пока утверждать с полной уверенностью... Но в общем-то, на шутеры и делают, разве что оружие, звуки, текстуры, модельки небольшие... Никто и не говорил о глобальном изменении. А как песочница для тех же моделеров этот движок при наличии SDK очень даже не плох.
P.S. Если уж вообще прижмет, то всегда можно выдрать модели для И.Г.Р.Ы.
Veresk
Если судить по крошечным размерам локаций

то никакого "открытого" мира на метре непостроить.

Да и вообще это не сталкер, и проводить параллели бессмысленно. Обычный кинематографический шутер, моды на кторый (если будут) ограничатся правкой конфигов оружия
kiperenok
Цитата(Veresk @ 21.03.2010, 10:48) *
Если судить по крошечным размерам локаций

то никакого "открытого" мира на метре непостроить.

Да и вообще это не сталкер, и проводить параллели бессмысленно. Обычный кинематографический шутер, моды на кторый (если будут) ограничатся правкой конфигов оружия

А как ты в макс засунул ? На 3д рипер не похоже - слишком все ровно.
[SОC]
Цитата(Veresk @ 21.03.2010, 11:48) *
Обычный кинематографический шутер, моды на кторый (если будут) ограничатся правкой конфигов оружия

Не аргумент. Все помнят, во что превратился рельсовый шутер Half-Life?
Чем загонял в макс геометрию?
nemnogonado
А кто нить может подсказать,где находятся ролики,типа которые сны Артёма? smile.gif
T-braze
Цитата(kiperenok @ 21.03.2010, 12:07) *
На 3д рипер не похоже - слишком все ровно.

3д риппер + прямые руки, 100% wink.gif
kiperenok
Цитата(nemnogonado @ 21.03.2010, 11:16) *
А кто нить может подсказать,где находятся ролики,типа которые сны Артёма? smile.gif

Это ролики на движке игры.
nemnogonado
kiperenok,
Аа,спасибо,понял.Жаль.
Veresk
Зд риппер плюс правильные параметры импорта в макс

Отличие халфы от метра в том, что сурс почти открытый движок и к нему есть СДК, да и развернуться там есть где.
Panisher
Veresk
Цитата
Если судить по крошечным размерам локаций

А если учесть,что риппер не всегда выдерает сразу всю локацию..
Veresk
это не тот случай. Сравните локации с тем, что вы видели в игре. В метре почти все локации не больше подземелий Агропрома.
Panisher
Veresk
Цитата
это не тот случай

Надеюсь это не так,проверю сам.
surfer
Цитата(HikeR @ 21.03.2010, 08:53) *
если кто изучал представленные исходники, подскажите плиз такую вещь. есть там пара строчек:
Код
unsigned off = (*inp & 0x02) ? 4 : 1;
if (off - 1 > 3) { clen = len = 0;
.......

я так понимаю первую строчку:
Код
unsigned off = (*inp & 0x02)
if (off > 0 ) off = 4 else off = 1;
.......

но тогда второе условие никогда не выполнится, 4-1=3, 1-1=0, в обоих случаях условие неверно.

Если условие в скобках выпоняется ( *inp & 0x02 ), а другими словами если в первом байте хоть один бит совпадет с соответствующим битом 0x02 (10b), то off = 4, если не совпадет ни один, то off = 1, честно сказать не понятно что проверяется в контексте этого условия, но в любом случае от того выполняется оно или нет - ничего не меняется во втором условии.
StreJloK
Цитата(Veresk @ 21.03.2010, 15:48) *
сли судить по крошечным размерам локаций

то никакого "открытого" мира на метре непостроить.

а с чего вы взяли что если в игре маленькие локации - то движок открытый мир не держит?
Скиф
Цитата(Veresk @ 21.03.2010, 12:53) *
Отличие халфы от метра в том, что сурс почти открытый движок и к нему есть СДК, да и развернуться там есть где.

Игра только вышла - раз. Уже сказали, что СДК будет - два. Тут скорее следует расчитывать на уровень модмейкинга Крайсиса на Край Энжайне 2 с его урезанным модмейкерским СДК. А вообще - время покажет, вы же наперед рвёте и сжигаете шкуру неубитого медведя - зачем?smile.gif
Veresk
Цитата(DESTROYER @ 22.03.2010, 11:58) *
а с чего вы взяли что если в игре маленькие локации - то движок открытый мир не держит?

а с чего вы взяли, что я такое сказал? Движок может держать что угодно, только мы этого никогда не узнаем. Если только не выйдет какой-нибудь открытой игры типа ФК2 на этом движке. Разрабы дуни сказали сразу, что "да", поддерживается огромный мир, мы его и получили. А разрабы метра сказали "да", а получили мы в итоге крошечные тонели.
shnaket
Зато насыщенные. Если моды и будут клепать, главное чтобы продолжали делать насыщенные локации, а не пустышки.
Veresk
Цитата(Скиф @ 22.03.2010, 12:33) *
Игра только вышла - раз. Уже сказали, что СДК будет - два. Тут скорее следует расчитывать на уровень модмейкинга Крайсиса на Край Энжайне 2 с его урезанным модмейкерским СДК. А вообще - время покажет, вы же наперед рвёте и сжигаете шкуру неубитого медведя - зачем?smile.gif

Опять же из области мифов. Разрабы сталка тоже много чего говорили, что мол тот СДК что отдали комунити, это и есть нормальный СДК и т.п. бред.
И что интересно метрастроевцам помешало сразу выложить СДК, если его обещали?
Какой нафиг уровень, если даже для сталка новых уровней сделано с десяток, и тех для мультика, и на сонове готовых обжектов.
Я не привык верить всему на слово - разочарований будет меньше в итоге. И вообще метро это не та игра, которую ожидает светлое будущее модмейкерства.
А вот её ресурсы использовать надо обязательно, хотя без нормальных плагинов для макса/майки это геморно.

Цитата(shnaket @ 22.03.2010, 12:46) *
Если моды и будут клепать, главное чтобы продолжали делать насыщенные локации, а не пустышки.

Кто? см. выше про локи для сталка
Степан друг москалів
Veresk, эта тема немного не о сталкере. И кстати к чему сокрушатся отсуствию сдк когда и его помощью ничего толкового не сделают ??
Panisher
Цитата
Разрабы сталка тоже много чего говорили, что мол тот СДК что отдали комунити, это и есть нормальный СДК и т.п. бред.

Верить ПЫС'ам - себя не уважать.
Цитата
если даже для сталка новых уровней сделано с десяток

был бы получше СДК,т.е. для всех понятен,было бы намного больше лок.
Цитата
И вообще метро это не та игра, которую ожидает светлое будущее модмейкерства.

тогда что Вы тут делаете? идите во всеми любимого сталкера играйте.
Степан друг москалів
Цитата(Panisher @ 22.03.2010, 12:03) *
Верить ПЫС'ам - себя не уважать.


Правда СДК который они дали тот же что юзали и сами.

Цитата(Panisher @ 22.03.2010, 12:03) *
был бы получше СДК,т.е. для всех понятен,было бы намного больше лок.


Есть море игр СДК к которым в разы лучше, например Обливион или Краизис, чем у сталка а новых локаций там не намного больше.

тока смысл сратся, пока даже конфиги не нарыли. tongue.gif
Panisher
m.i.n.a.s.
Цитата
Есть море игр СДК к которым в разы лучше, например Обливион или Краизис, чем у сталка а новых локаций там не намного больше.

Спорить не буду.но ведь основная масса таких игр - на один раз..Вот и нет смысла на них что-либо "творить".

Цитата
Особенно Обливион в который до сих пор играют

laugh.gif
Да,емного тупанул..Просто говорил за себя.Мне такое не более,чем на один раз.
Степан друг москалів
Цитата(Panisher @ 22.03.2010, 12:38) *
Спорить не буду.но ведь основная масса таких игр - на один раз..Вот и нет смысла на них что-либо "творить".



laugh.gif laugh.gif laugh.gif laugh.gif laugh.gif laugh.gif
Особенно Обливион в который до сих пор играют, просто уровень комьюнити + актуальность темы = много карт и модов
Veresk
Модятся те игры, в котрые играют больше одного раза, у метра реиграбельность минимальна: ну сейчас разок, потом ещё разок, что-бы пройти любимые моменты (особо умные для этого сохранят папочку с чекпоинтами)

ладно, отъехали от темы немного. С другой стороны, так как обсуждать сейчас особенно нечего, то только пофлуживать получается biggrin.gif
HikeR
metro_2033_unpacker_v1.2.7z

на текущий момент умеет доставать файлы из vfs и upk архивов, создавать upk патчи, а также полностью распаковывать все пожатые файлы из upk-патчей (10x to bardak). вся инфа в readme.txt

для полной распаковки всех игровых файлов, а не только находящихся в патчах можно помучатся таким образом:
- извлекаем все из vfs и upk архивов
- выбираем пожатые файлы, кладем их в каталог content (с сохранением структуры каталогов)
- делаем большой upk патч
- распаковываем его утилитой от bardak-а

только рекомендую не запаковывать больше 100 метров за раз, хотя и запрещать не буду ;)

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

p.s.
по поводу сдк для сталкера от разработчиков. он безполезен.
surfer
Цитата(HikeR @ 22.03.2010, 15:46) *
информация убрана от любопытных глаз

Есть мнение, что скрипты скомпилированы в байт-код.
Veresk
как просветил очень талантливый програмист: скорей всего так оно и есть. именно поэтому текстуры так хитро выглядят в распакованом виде - Они подготовлены сразу к утаскиванию в видеокарту

т.е. шансов на распаковку бина равны минус бесконечности :-)

И именно поэтому метро так шустро работает и портирована на приставки (цитата с вики: Преимущество — в портируемости, т. е. один и тот же байт-код может исполняться на разных платформах и архитектурах)
Deimos
Цитата(surfer @ 22.03.2010, 15:21) *
Есть мнение, что скрипты скомпилированы в байт-код.

Цитата(Veresk @ 22.03.2010, 15:44) *
Они подготовлены сразу к утаскиванию в видеокарту

Кэп в ударе. smile.gif
Цитата
т.е. шансов на распаковку бина равны минус бесконечности

Скриптов, конфигов и пропсов - да. Но никогда не говорите никогда. smile.gif
А вот текстуры - очень даже быть. Вероятно, сжатые DXT, как у всех.

Про Сталкер больше не вспоминаем здесь.

Ну если говорят, что Прохоров пообещал СДК, стоит подождать. Может новые локации возможно будет делать и вообще создать мод по рассказу "Конец дороги".
[SОC]
HikeR, благодарю! Видимые продвижения, теперь можно распаковать уже текстуры. Гляди еще неделя и начнется активное изменение ресурсов.
P.S. Вспоминаются времена распаковки ресурсов первых билдов...
Veresk
Цитата(Deimos @ 22.03.2010, 19:25) *
Ну если говорят, что Прохоров пообещал СДК, стоит подождать. Может новые локации возможно будет делать и вообще создать мод по рассказу "Конец дороги".

А интересно каким хитрым способом вы их к игре подключите и как туда действо заведёте? Может хватит бредить! Как же однобоко вы смотрите на офигенную пропасть проблем с модингом метра.

Используйте ресы метра для других игр и благодарите моделеров-метростроевцев за их классные штукевины


А ты побольше флуди вместо нормального разговора в этой теме...
kiperenok
Цитата(Veresk @ 22.03.2010, 20:25) *
Цитата(Deimos @ 22.03.2010, 19:25) *
Ну если говорят, что Прохоров пообещал СДК, стоит подождать. Может новые локации возможно будет делать и вообще создать мод по рассказу "Конец дороги".

А интересно каким хитрым способом вы их к игре подключите и как туда действо заведёте? Может хватит бредить! Как же однобоко вы смотрите на офигенную пропасть проблем с модингом метра.

Используйте ресы метра для других игр и благодарите моделеров-метростроевцев за их классные штукевины


Дружище сделай плиз скрин окна импорта геометрии 3д рипера с твоими настройками. rolleyes.gif
HikeR
Цитата(Deimos @ 22.03.2010, 20:25) *
А вот текстуры - очень даже быть. Вероятно, сжатые DXT, как у всех.

может стоит самому посмотреть для начала, чтобы более предметно общаться по поводу текстур "как у всех"?

берем любую текстуру оканчивающуюся на .2048. предполагаем, что это квадрат со стороной 2048 точек. размер файла - 4 мб ровно, текстура получается 8-ми битная, что несколько нехарактерно для игр.
если предположить 32-битный цвет (3 байта + альфа), то квадрат выходит уже 1024х1024 точки.

ни один raw-плагин с настройками не желает отобразить правильно эти текстуры. какие есть мысли?
Veresk
Сняты все дополнительные галки, да изначально фрейм получается "грязный", но можно быть уверенным. что ничего потом не собъётся и не потеряется. При выборе соотношения сторон и угла зрения выбирается наибольшее значение. только при нём (у меня) не портится геометрия. Ну а далее уже ручками, ручками.
В игре снимок лучше всего делать стоя максимально близко к снимаемому объекту, тогда он будет близко к началу осей координат. и можно небоятся, что вы его отрежете случайно.
Оружие всегда расплагается под правильными углами к осям.
Deimos
Цитата(HikeR @ 22.03.2010, 20:36) *
может стоит самому посмотреть для начала, чтобы более предметно общаться по поводу текстур "как у всех"?

Может стоит дружелюбнее относится к людям. Я не заявлял, что оно абсолютно так.
Насколько я знаю, видеокарты имеют аппаратное распаковывание DXT.
Цитата
какие есть мысли?

DXT5 кодирует 16 пикселей в 128 бит, то-есть 8 бит на пиксель.
Может тулзы от нВидиа для dds помогут.

Оставляю "профессионалов" наедине...
MetroStalk
Собрал нужное воедино... подправил и добавил в первый пост... ссылку на утилиту от бардака скиньте... не нашёл в дебрях постов smile.gif
[SОC]
MetroStalk, бардак собственно выложил только исходники на форуме GSC, Хайкер же (насколько я понял с его слов) сделал сам анпакер upk файлов при помощи этих исходников.
Но на всякий случай сам пост Сетбека...
http://www.gsc-game.com/russian/main.php?t...ec_id=14#562479
MetroStalk
Цитата(ОСК @ 22.03.2010, 22:43) *
MetroStalk, бардак собственно выложил только исходники на форуме GSC, Хайкер же (насколько я понял с его слов) сделал сам анпакер upk файлов при помощи этих исходников.
Но на всякий случай сам пост Сетбека...
http://www.gsc-game.com/russian/main.php?t...ec_id=14#562479
понял... цитирую пост HikeR - распаковываем его утилитой от bardak-а это вот я так понял исходники распаковщика для м2033 http://www.sendspace.com/file/3m832x а где согласно посту HikeR взять утилиту от bardak-а?
Veresk
Учитиесь читать нормально. Бардак выложил только исходники, по которым умные люди смогут собрать анпакер, что Хайкер и сделал. Никакх "утилит от самого" нету.
[SОC]
Цитата(MetroStalk @ 22.03.2010, 22:53) *
где согласно посту HikeR взять утилиту от bardak-а?

В архиве последней версии анпакера, который он выложил. Он там есть... unpack_files_in_upk.exe, если не ошибаюсь. Следует уточнить, это именно программа собранная Хайкером. Имя "утилита бардака" получила только из-за того, что основывается на бардаковском коде.
Veresk, нужно быть более дружелюбным к людям.
Лохотрон
Цитата
Учитиесь читать нормально. Бардак выложил только исходники, по которым умные люди смогут собрать анпакер, что Хайкер и сделал. Никакх "утилит от самого" нету.

мда, а взять и собрать самому для текущего среднестатического пользователя это проблемно? то что у hiker'а в архиве, как написал ОСК, и есть анпакер от бардака, для не верущих собранный мною из сорцев, сайз чутку отличается, но догадываюсь что хайкер юзал прост другой компилер или забилдено с разной степенью оптимизации

http://narod.ru/disk/19011411000/upk_unpacker.rar.html
MetroStalk
Цитата(Veresk @ 22.03.2010, 23:57) *
Учитиесь читать нормально. Бардак выложил только исходники, по которым умные люди смогут собрать анпакер, что Хайкер и сделал. Никакх "утилит от самого" нету.
читаем прям из тоннеля через пнв... так что всё ок... просто строка в посте ввела в заблуждение... всё вопрос исчерпан... Veresk в следующий раз подобный гонорный пост не прощу...

HikeR
Цитата(Deimos @ 22.03.2010, 22:49) *
DXT5 кодирует 16 пикселей в 128 бит, то-есть 8 бит на пиксель.
Может тулзы от нВидиа для dds помогут.

заголовки у текстур отрезаны, тулзов для восстановления не нашел. однако действительно оказалось, что большинство текстур оканчивающихся на .512, .1024, .2048 - это DDS, нужно только приклеить минимальный заголовок. осталось подобрать правильные параметры этого заголовка, или поискать их в скриптах, что-ли ;)
Цитата(MetroStalk @ 22.03.2010, 23:38) *
ссылку на утилиту от бардака скиньте...

раскрываю вопрос полностью: по выложенным исходникам я собрал эту утиль, но убрал из нее проверку CRC32-суммы, ибо созданные самолично архивы этой чексуммы не имеют и утиль на них падает. чексумма вычисляется для НЕпожатых файлов перед упаковкой, но пакера у нас нет. игре все-равно пофиг на эту проверку. утиль действительно зовут unpack_files_in_upk.exe, и находится она в архиве metro_2033_unpacker_v1.2.7z. вроде все ;)
Цитата(Тырса @ 23.03.2010, 00:32) *
сайз чутку отличается

полный стрип и независимость от VCR90 ;)
HikeR
про отрезанные заголовки. их действительно орезали и запихнули в textures.bin. в начале идут шапки, в конце файла названия текстур через символ 00. если дойдет до изменения картинок, то придется перестраивать этот файлик при каждом чихе.
я продолжаю удивляться скорости загрузки уровней и сейвов при всех примененных техниках сокрытия инфы ;)
surfer
Портирую 'metro2033_unpack_vfs.bms' на С:

Код

Код
#include "stdio.h"

int main( int argc, char *argv[] )
{
    char *source = argv[1];
    size_t max_size, data_pos, offset;
    FILE* handle;
    _int32 ffff;
    _int32 chunk_size;
    int exit = 0;

    handle = fopen( "content.vfi", "rb" );
    if( !handle )
    {
        return -1;
    }

    fseek( handle, 0, SEEK_END );
    max_size = ftell( handle );
    fseek( handle, 0, SEEK_SET );

    fread( &ffff, 4, 1, handle );
    fread( &chunk_size, 4, 1, handle );

    data_pos = ftell( handle );
    offset = data_pos + chunk_size;

    do
    {
        // ...
        exit = 1;
    }
    while( !exit );

    fclose( handle );

    return 0;
}


я правильно понимаю порядок действий?
HikeR
сорри, я в сях не спец. вот полное описание скриптов BMS - http://aluigi.altervista.org/papers/quickbms.txt, команды там простейшие и очень похожи на сишные.

по сути content.vli является оглавлением, первая секция с номером ffff - неактуальна (содержит некий GUID которым оканчиваются все vfs архивы), далее по одной секции на каждый архив. скрипт перебирает их пока не встретит заданное имя файла, затем он входит в секцию и дял каждого файла читает параметры crc, смещение, распакованный и запакованный размер, полное имя. смещение и размер - это прямое указание где брать файл в архиве vfs.

кстати, while( !exit ); вам зачем? это издержки простейшего скриптового языка. можно более кратко и понятно, что-то вроде while (offset < max_size);
HikeR
да, еще один не совсем очевидный момент. в BMS скриптах чтение переменной автоматически сдвигает указатель на область памяти, а в сях его надо двигать ручками.
HikeR
да, еще один не совсем очевидный момент. в BMS скриптах чтение переменной автоматически сдвигает указатель на область памяти, а в сях его надо двигать ручками.

и по текстурам. в файле textures.bin упоминаются 3594 файла без расширения, а всего текстур с расширением .512 - 2459. причем в bin перечисляются и dds файлы (непонятно зачем, они ведь не попорчены) причем тоже не все, есть текстуры в архивах, которых просто нет в этом списке. однако без textures.bin игра работать не хочет ;(

что еще интересно, предполагалось, что для каждой текстуры есть 3 версии: 512, 1024, 2048. реальная картина:
.512 - 2459
.1024 - 1919
.2048 - 995
.dds - 358

в итоге взял текстуры wm_gluho.*, приделал им заголовок от пустого dds-файла с равным размером и сжатием DXT1 без мип-уровней, поредактировал, сохранил, отрезал заголовок - вуаля:


это для .1024 файлов размером в полметра. которые по мегабайту - там DXT5 без мип-уровней.
surfer
Цитата(HikeR @ 23.03.2010, 02:11) *
кстати, while( !exit ); вам зачем? это издержки простейшего скриптового языка. можно более кратко и понятно

На данном этапе мне нужно было разобраться в самом алгоритме.
Цитата(HikeR @ 23.03.2010, 04:57) *
в BMS скриптах чтение переменной автоматически сдвигает указатель на область памяти, а в сях его надо двигать ручками.

Нет, файловый указатель перемещается при чтении/записи на кол-во байт, которые были прочитаны/записаны

Я почти закончил, осталось купить игру и проверить в действии smile.gif
Veresk
Цитата(HikeR @ 23.03.2010, 02:35) *
я продолжаю удивляться скорости загрузки уровней и сейвов при всех примененных техниках сокрытия инфы wink.gif

Врядли это технология сокрытия инфы. От кого? от простого пользователя да, а от тех кто хочет ею попользоваться нет.
Если сравнивать с другими шутерами, то скорость загрузки самая обычная. Да и грузить там особенно нечего: уровни небольшие, текстур используется для них мало, причем многие текстуры (разумно) используются и для неписей и для деталей интерьера. Почти все неписи получены путём комбинирования деталей одежды и экипировки (а не как в сталке, что укаждой групировки своя раскраска костюма) и т.д. и т.п. smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.