Перенос карт из Штурма 2
|
|
|
|
Эта тема посвящена переносу карт из Штурма 2, CTA и будущих версий игр на игры Штурм 1, ЛП и проекты использующие схожие движки (Диверсанты Вьетнам, БПО, Штрафбат, Чёрные бушлаты, ВТВ2)
По мере изучения этого вопроса, сюда буду выкладывать информацию по этому поводу.
Так же прошу Вас делиться информацией по этому поводу.
|
|
|
|
Вот мои наработки по этому поводу:
Вот так выглядит оригинальный map.ply файл из ЛП/Штурма 1
Вот так выглядит оригинальный map.ply файл из Штурма 2
А вот переделка этого map.ply файла из Штурма 2 с помощью моей проги
Но по пока не известным причинам вылазит ошибка "Invalid chunk in PLY file"
Моя прога переносит пути текстур из Mtl файлов принадлежащих ply - файлу второго штурма в новый ply файл, согласно структуре ЛПшенского файла, а инфу после текстурного блока переносит без изменений. Но остаётся много не расшифрованных данных, а конкретно - я не знаю за что отвечают эти данные:
В штурме 2
В штурме 1 и ЛП
Моя прога конечно нерабочая, но и её в месте с исходными кодами и проектом (для C++Builder XE3), я прикрепляю к посту: (удалено)
|
|
|
|
Аааааа, зачем так сложно??? Просто прописываешь каждому материалу свой mtl-файл и все.
|
|
|
|
Цитата medvedkadjak ( ) Просто прописываешь каждому материалу свой mtl-файл и все.
Задача: перенести Ply-файлы карт из Штурма 2 в Штурм 1.
Штурм 1 не понимает mtl-файлы, а точнее SUBM - текстурные модули для BPLYBNDS`овских маповских ply-файлов.
Попробую поколдовать с головой файла, хоть я и не знаю структуры.
Допустим, вместо статичного кода: 0X42, 0X50, 0X4C, 0X59, 0X41, 0X4E, 0X44, 0X53, 0X01, 0X40, 0X7A, 0XC5, 0X00, 0X40, 0X7A, 0XC5, 0X88, 0X04, 0XEE, 0XC2, 0X01, 0X40, 0X7A, 0X45, 0X00, 0X40, 0X7A, 0X45, 0XFD, 0X56, 0X9E, 0X43. попробую писать динамический (исходя из разницы файлов), либо родной (т.е. наследовать).
Но на изучение всего этого, а т.ж. на эксперименты уйдет время, которого пока нету(((
|
|
|
|
Увы, исходных кодов игры у меня нет, а Man232 молчит - поэтому делать приходится "в слепую".
|
|
|
|
Цитата TonaTor ( ) Увы, исходных кодов игры у меня нет, а Man232 молчит - поэтому делать приходится "в слепую". Вот может пригодиться ) Ресурсы из CtA Что то подобное бы сделать и из Штурма два в один )
|
|
|
|
Цитата UZSTALKER ( ) Вот может пригодиться ) Ресурсы из CtA
Не совсем понял, чем мне помогут ресурсы из CTA.
Глянуть бы код структуры данных с 0 по 31вую цифру.
|
|
|
|
Цитата TonaTor ( ) Не совсем понял, чем мне помогут ресурсы из CTA. Ну может быть захочется что то и из КТА перенести в первый Штурм )
|
|
|
|
Цитата UZSTALKER ( ) Ну может быть захочется что то и из КТА перенести в первый Штурм )
Но ведь проблема только в переносе карт. А всё остальное переносится без существенных проблем.
|
|
|
|
Создал две тестовые карты 5x5 в Ш1 и Ш2 с одинаковыми параметрами. В месте с Ply файлами и там и там создались net файлы, которые оказались CRC32 одинаковыми. А вот как выглядят Ply файлы в Ш1 и Ш2 соответственно.
|
|
|
|
Как оказалось их хедеры, BAS и IND одинаковы. И вся проблема вероятно заключается в текстурных SUBM/MESHR модулях. В ходе теста оказалось, что простой заменой хедера, SUBMа и путей не отделаться.
|
|
|
|
М-да уж, а вот на этом я могу запороться:
Расшифровать и смоделировать эти значения мне не удалось. Это не похоже ни на размеры ни на адреса неких блоков ни вообще на чтобы-то ни было.
01000000000000FAAA000004100000 010000FAAA0000621C000004100000 0100005CC700001000000004100000 0100006CC700007401000004100000 010000E0C80000B102000004100000 01000091CB00006E00000004100000 010000FFCB00005E06000004100000 0100005DD200000700000004100000 01000064D200003E01000004100000 010000A2D300004C04000004100000 010000EED70000F119000004100000 010000DFF10000E008000004100000 010000BFFA00005A00000004100000 01000019FB0000730E000004100000 0100008C090100E304000004100000 0100006F0E01002302000004100000 010000921001006B06000004100000 010000FD1601003118000004100000 0100002E2F01002309000004100000 01000000000000A036000004100000 010000A03600003F15000004100000 010000DF4B00005A01000004100000 010000394D0000ED00000004100000 010000264E00004501000004100000 0100006B4F00003900000004100000 010000A44F0000CD13000004100000 01000071630000DD01000004100000 0100004E6500002608000004100000 010000746D0000291F000004100000 0100009D8C00002601000004100000 010000C38D00001F00000004100000 010000E28D0000790B000004100000 0100005B9900000200000004100000 0100005D9900008201000004100000 010000DF9A0000EF06000004100000 010000CEA10000BA0A000004100000 01000088AC0000BE05000004100000 01000046B200005200000004100000 01000098B200007801000004100000 01000010B40000DB00000004100000 010000EBB400008902000004100000 01000074B700000701000004100000 0100007BB800008C03000004100000 01000007BC00005201000004100000 01000059BD0000D302000004100000 0100002CC00000E103000004100000 0100000DC400006003000004100000 0100006DC700003208000004100000 0100009FCF00008100000004100000 01000020D00000B002000004100000 010000D0D20000D801000004100000 010000A8D400001201000004100000 010000BAD50000AA07000004100000 01000064DD0000A904000004100000 0100000DE20000DE05000004100000 010000EBE70000960A000004100000 01000081F200002D08000004100000 01000000000000DAA7010004100000 010000DAA701003F30000004100000 01000019D80100DD87000004100000 010000F65F0200F615000004100000 010000EC7502002C04000004100000 010000187A02003906000004100000 010000518002005F06000004100000 010000B08602005010000004100000 01000000970200E91F000004100000 010000E9B602009D1B000004100000 01000086D202005A0B000004100000 010000000000006C5D000004100000 0100006C5D0000A617000004100000 010000127500003C2A000004100000 0100004E9F00000511000004100000 01000053B00000EB28000004100000 0100003ED90000ED15000004100000 0100002BEF00002C1B000004100000 010000570A0100980B000004100000 010000EF150100231F000004100000 010000123501002816000004100000 01000000000000C003000004100000 010000C00300001000000004100000 010000D00300004D45000004100000 0100001D4900005A00000004100000 01000077490000A501000004100000 0100001C4B00003804000004100000 010000544F00006707000004100000 010000BB560000E041000004100000 0100009B980000F303000004100000 0100008E9C00000900000004100000 010000979C00009B01000004100000 010000329E0000AE05000004100000 010000000000002000000004100000 010000000000003000000004100000
|
| | |
|
|
|
Я не читал, что тут написано.
В каждом map.ply - есть данный меша (начала и конец текстуры), количество символов в название материала и д.т
У Меня есть рабочая версия. Проверенная
с Ш2 в Ш1
Основатель: MultiScript
|
|
|
|
Man232, распиши пожалуйста подробнее, что за что отвечает.
Что вообще делать с данными после слова MESHR и до адреса текстуры? Как рассчитать или откуда брать "количество символов" и "начала и конец текстуры".
Из предыдущего ответа мало что стало понятно.
|
|
|
|
Ах да, еще в map.ply (AS, OLD game) - другие блоки данных, чем в AS2, CTA
Основатель: MultiScript
|
|
|
|