SDK для 4A Engine своими руками |
Здравствуйте, гость ( Авторизация | Регистрация )
SDK для 4A Engine своими руками |
01.03.2019, 00:36
Сообщение
#101
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
Мне тут предложили создать отдельную тему по поводу редактора уровней который я показывал в теме "Вскрытие ресурсов Метро 2033", так что теперь все новости и прочее будет здесь.
Скачать актуальную версию можно тут: Скачать последнюю тестовую версию можно тут: Чейнджлог Версия от 28 февраля 2019:
Версия от 17 марта 2019:
Версия от 23 марта 2019:
Версия от 30 апреля 2019:
Версия от 18 августа 2019:
Версия от 25 августа 2019:
Версия от 20 января 2020:
Версия от 30 марта 2020:
Версия от 28 июня 2021:
Версия от 20 сентября 2021:
Версия от 4 ноября 2021:
Версия от 18 ноября 2021:
Версия от 6 февраля 2022:
Консольные утилиты Полноценный распаковщик и запаковщик для Last Light, readme в архиве Программы для работы с конфигами и конвертер моделей Исходники можно найти в исходниках level_editor'а. В архиве содержится три программы: split.exe, binunp.exe и model.exe. Первая split.exe, предназначена для разбития scripts.bin на отдельные файлы и сборки обратно. Для разбития поместить файл scripts.bin в рабочей папке и запустить без параметров или с одним параметром -d(без разницы). Код split.exe Если всё прошло хорошо должна появится папка scripts с большим количеством .bin файлов в ней. Для обратной сборки запустить с ключом -c: Код split.exe -c Скрипты при сборке опять таки берутся из папки scripts в рабочей папке. Вторая binunp.exe, предназначена для конвертирования .bin конфигов(файлы добытые из scripts.bin, level.bin и некоторые другие) в человеко-читаемый формат и обратно. Именно на её основе строится редактор уровней. Что умеет:
Распаковка level.bin осуществляется следующим образом: Код binunp.exe -l -d level.bin level.txt Где level.bin - имя файла для распаковки. Где level.txt - имя распакованного текстового файла. Запаковка level.bin: Код binunp.exe -l [-k N] -c level.txt level.bin Где level.txt - имя текстового файла для запаковки. Где level.bin - имя нового двоичного файла. Параметр -k необязательный, на месте N указывается тип .bin файла, по умолчанию 5. В 2033 используется 5, в last light 4, в следующих играх 36. Распаковка конфигов с отладочной инфой: Код binunp.exe -l -d file.bin file.txt Где file.bin - имя файла для распаковки. Где file.txt - имя распакованного текстового файла. При попытке распаковать таким образом конфиг без отладочной информации будет выведено сообщение об ошибке следующего вида: Код Exception: Cannot decompile config with kind=4 Распаковка конфигов без отладочной инфы(при помощи скрипта): Код binunp [-v] -s js\script.js file.bin file.txt Где js\script.js - имя скрипта в папке js используемого для разбора конфига. Где file.bin - имя файла для распаковки. Где file.txt - имя распакованного текстового файла. Параметр -v необязательный, если указать то будет выводиться предупреждение в том случае если данные были прочитаны не до конца. Есть специальный случай, если имя файла для распаковки textures.bin, то скрипт не используется, вместо него нужно указать пустую строчку. Код binunp -s "" textures.bin textures.txt Запаковка конфигов: Код binunp.exe [-k N] -c file.txt file.bin Где file.txt - имя текстового файла для запаковки. Где file.bin - имя нового двоичного файла. Параметр -k необязательный, на месте N указывается тип .bin файла, по умолчанию 5. Желательно указывать такой же какой был показан при распаковке. Последняя model.exe, конвертер моделей. Умеет следующее:
Краткая справка доступна при запуске без параметров. Эта инструкция будет дописываться. Сторонние утилиты Сообщение отредактировал Modera - 06.02.2022, 08:21 |
 
|
|
|
|
06.04.2019, 16:30
Сообщение
#102
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
После перезапуска тоже надо запоминать или не обязательно? Думаю не обязательно. Кстати в model_Editor путь запоминается и не сбрасывается да-же после перезапуска ОС-и. Хотел написать про экспорт, но тут у меня, по непонятной причине "поламался" level_Editor. Перестал видеть объекты, выдает ошибку: По моему на предыдущей версии, а может и на этой (точно не помню), такое то-же раз было, но тогда помогла замена файлов level_editor_test из архива. А сейчас, да-же архив перекачал и не помогло. Подозреваю, что такаое произошло после запуска model_Editor, хотя он сам в отличии от level_Editor модели видит. Сообщение отредактировал WolfHeart - 06.04.2019, 16:31 |
 
|
|
06.04.2019, 16:52
Сообщение
#103
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
|
 
|
|
06.04.2019, 17:01
Сообщение
#104
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Да не, это маловероятно. Ну, другого, я больше ничего не делал. Путь к ресурсам точно правильно указан? Если путь содержит пробелы то его нужно заключить в кавычки "". Так ведь без разници с чего запускаю, с батника или с level_Editor.exe Путь к карте у меня такой: Код D:\Game\Dev\level_editor_test\Metro_Exodus\content\maps\m3\000 В батнике: Код level_Editor.exe "D:\Game\Dev\level_editor_test\Metro_Exodus" Хоть у меня пробелов и нет, но в кавычках, да и до этого-же все работало. Попробовал без кавычек, никаких изменений. |
 
|
|
06.04.2019, 17:16
Сообщение
#105
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
WolfHeart, читай внимательнее реадми, хоть он и не очень актуальный.
Цитата Параметры командной строки: По умолчанию ресурсы берутся из папки content в текущей папке. Можно явно указать путь к папке content передав его первым параметром: level_Editor.exe "D:\Program Files (x86)\THQ\Metro 2033\content" Исходя из этого в батнике должно быть написано Код level_Editor.exe "D:\Game\Dev\level_editor_test\Metro_Exodus\content"
|
 
|
|
06.04.2019, 18:16
Сообщение
#106
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Исходя из этого в батнике должно быть написано Код level_Editor.exe "D:\Game\Dev\level_editor_test\Metro_Exodus\content" Да, да, все так и записанно, просто в спешке видать не все скопировал. Да и нашел я причину. Все оказалось банально, антивирус вдруг с чего-то его решил заблокировать, видать из за того, что он хотел экспортировать уровень в защищенную папку. По умолчанию он ее открывает. Теперь об экспорте: Я так понимаю экспорта отдельной модели из открытого уровня нет, выделение есть, а экспортировать выбранную модель нельзя. Было-бы очень здорово, если-бы такую возможность можно было добавить. Теперь сам экспорт карты. При выборе экспорта в OBJ; FBX; 3DS, если не дописать к имени файла расширение .obj; .fbx; .max, самостоятельно, в ручную, то он так и сохраняется без расширений (исключение только файл .mtl). И Мах их соответственно не видит. Если прописать перед экспортом в ручную, то OBJ открывается нормально, а вот FBX и 3DS выдает ошибку: Сообщение отредактировал WolfHeart - 06.04.2019, 18:28 |
 
|
|
06.04.2019, 18:28
Сообщение
#107
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
Я так понимаю экспорта отдельной модели из открытого уровня нет, выделение есть, а экспортировать выбранную модель нельзя. Было-бы очень здорово, если-бы такую возможность можно было добавить. Есть. Ставишь галочку на Selection only и будет экспортироваться только выделенное. Теперь сам экспорт карты. При выборе экспорта в OBJ; FBX; 3DS, если не дописать к имени файла расширение .obj; .fbx; .max, самостоятельно, в ручную, то он так и сохраняется без расширений (исключение только файл .mtl). Это я знаю. Если прописать перед экспортом в ручную, то OBJ открывается нормально, а вот FBX и 3DS выдает ошибку: Странно, может ему собака в имени не нравится. У меня вот блендер нормально импортирует. |
 
|
|
06.04.2019, 18:33
Сообщение
#108
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Есть. Ставишь галочку на Selection only и будет экспортироваться только выделенное. Вот спасибо! Я еще и хотел спросить за Selection only, да забыл. Странно, может ему собака в имени не нравится. Да я вроде разные пробовал, но проверю еще и тогда уже точно отпишу. |
 
|
|
06.04.2019, 20:09
Сообщение
#109
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Хм... Странно, экспортил уровень "000", в OBJ, так его и назвал "000", расширение не дописывал и Мах выдал вот такое:
Перевод: Цитата При попытке прочитать файл FBX произошла следующая ошибка: В логе: Код 2019-04-06 18:37:53: LOG: Import: D:\Game\Dev\level_editor_test\import\000 2019-04-06 18:45:43: LOG: [ERROR ] File Input/Output Error - The following error(s) occurred while attempting to read the FBX file: Дописал расширение .obj в ручную, экспортировал и уровень загрузился нормально: На втором скрине текстуры которые не видит редактор и соответственно Мах. Может тебе это чем-то поможет. FBX: Расширение не дописывал, имя то-же "000". При импорте в Мах выбрал "All files", уровень загрузился, но как-то странно: Дописал расширение . fbx, ничего не изменилось, уровень загрузился все так-же странно: 3DS: Все сделал так-же как с FBX в первом случае, но уровень не загрузился: Ошибка и лог аналогичный тому, что и для OBJ в первом случае. Скрины постить не стал они такие-же. Дописал расширение .3ds: Попробовал экспортнуть с прописанным расширением .мах Результат оказался ожидаемый: Сообщение отредактировал WolfHeart - 06.04.2019, 20:12 |
 
|
|
06.04.2019, 20:59
Сообщение
#110
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
Дописал расширение . fbx, ничего не изменилось, уровень загрузился все так-же странно: Ну значит такой экспортёр. У меня блендер вот так импортирует: А майя вот так: Так же как у тебя. 3ds в блендер импортируется, но криво. Можно ещё какой-нибудь формат для экспорта попробовать добавить, assimp много чего поддерживает. Цитата Exporters: DAE (Collada) STL OBJ PLY X 3DS JSON (for WebGl, via ASSBIN STEP glTF 1.0 (partial) glTF 2.0 (partial) 3MF ( experimental ) FBX ( experimental ) |
 
|
|
06.04.2019, 22:05
Сообщение
#111
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Можно ещё какой-нибудь формат для экспорта попробовать добавить, assimp много чего поддерживает. Да в принципе, мне пока и OBJ достаточно. Экспортирует вроде нормально, главное не забывать расширение дописывать. Есть пара вопросов: 1. Планируешь ли добавить в редактор Metro LL? 2. Не совсем понимаю назначение model_Editor. Экспорта/импорта в нем вроде как нет, есть только сохранить, но что, куда и за чем? Не совсем понятно. Не мешало бы хоть какое-то описание. А вообще... На данном этапе, все замечательно. Конечно, есть еще что дорабатывать, что-то добавлять, улучшать и т.д. Но то, что уже есть, просто отлично, ты молодчина. А если еще и Last Light добавишь, то цены тебе не будет. |
 
|
|
06.04.2019, 23:27
Сообщение
#112
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
1. Планируешь ли добавить в редактор Metro LL? Уже отвечал на первой странице, в обозримом будещём не собираюсь. 2. Не совсем понимаю назначение model_Editor. Экспорта/импорта в нем вроде как нет, есть только сохранить, но что, куда и за чем? Не совсем понятно. Он на данный момент годится только для назначения материалов, ибо способ назначения материалов в консольном конвертере моделей не очень удобный. Импорт там когда-нибудь будет, экспорт врядли, и так уже куча инструментов для этого существует. Интересной фичей этого редактора является то, что открывает он 2033, ластлайт, исход и даже арктику.1, а сохраняет только в формате 2033. Так что можно какую-нить модель из исхода открыть, сохранить в формат 2033 и поставить на свой уровень, например. Сообщение отредактировал Modera - 06.04.2019, 23:28 |
 
|
|
06.04.2019, 23:41
Сообщение
#113
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
Уже отвечал на первой странице, в обозримом будещём не собираюсь. Жаль, но надеюсь что будущее не за горами. Так что можно какую-нить модель из исхода открыть, сохранить в формат 2033 и поставить на свой уровень, например. Подробней можно об этом? И еще, чем конвертировать текстуры Метро 2033, что-бы их видел редактор? Я конвертировал утелитой M2033DDSFixer: Но редактор, да и сам плагин макса их не видет. |
 
|
|
06.04.2019, 23:43
Сообщение
#114
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
WolfHeart, для редактора можно не конвертировать, и так должны работать.
|
 
|
|
06.04.2019, 23:48
Сообщение
#115
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
|
 
|
|
07.04.2019, 14:50
Сообщение
#116
|
|
Геймер Репутация: 0 Группа: Участник Сообщений: 100 Регистрация: 02.03.2019 |
|
 
|
|
07.04.2019, 16:29
Сообщение
#117
|
|
Новичок Репутация: 0 Группа: Участник Сообщений: 8 Регистрация: 15.03.2019 |
А вообще... На данном этапе, все замечательно. Конечно, есть еще что дорабатывать, что-то добавлять, улучшать и т.д. Но то, что уже есть, просто отлично, ты молодчина. А если еще и Last Light добавишь, то цены тебе не будет. Присоединяюсь . Modera, Вы Молодец!Сделать такую программу и добавить экспорт уровней, огромное вам спасибо, если вы ещё добавите Last Light то радости моей не будет предела , я понимаю для этого нужно время и желание, у вас наверняка много других важных дел, пожалуйста, если будет время, добавьте Last Light, я вас очень прошу, и судя по комментариям не я один Повторюсь, Огромное Вам Спасибо за вашу программу, Вы Супер ! |
 
|
|
07.04.2019, 22:11
Сообщение
#118
|
|
Геймер Репутация: 0 Группа: Участник Сообщений: 100 Регистрация: 02.03.2019 |
Цитата(WolfHeart @ 06.04.2019, 22:05) А вообще... На данном этапе, все замечательно. Конечно, есть еще что дорабатывать, что-то добавлять, улучшать и т.д. Но то, что уже есть, просто отлично, ты молодчина. А если еще и Last Light добавишь, то цены тебе не будет. Присоединяюсь . Я тоже присоединяюсь , может у нас получиться уговорить Modera и он добавит Last Light . Modera, есть ли у нас хоть малейшие шансы уговорить вас добавить Last Light? |
 
|
|
07.04.2019, 22:13
Сообщение
#119
|
|
. Репутация: 750 Куратор темы Сообщений: 7072 Регистрация: 30.07.2010 |
Thekello, я занят исходом сейчас, очень много ещё там надо доделывать.
|
 
|
|
07.04.2019, 22:18
Сообщение
#120
|
|
Продвинутый геймер Репутация: 17 Группа: Участник Сообщений: 277 Регистрация: 18.08.2017 |
|
 
|
|
07.04.2019, 22:30
Сообщение
#121
|
|
Геймер Репутация: 0 Группа: Участник Сообщений: 100 Регистрация: 02.03.2019 |
Thekello, я занят исходом сейчас, очень много ещё там надо доделывать. Извините, я не хотел вас торопить, я понимаю у вас очень много работы, Спасибо вам большое что вы занялись экспортом уровней, я имел ввиду после исхода Ты нам только надежду дай, Надежда для нас сейчас как воздух)) Сообщение отредактировал Thekello - 07.04.2019, 22:23 |
 
|
|
Текстовая версия | Сейчас: 10.05.2024, 01:31 |