|
|
21.11.2005, 14:16
|
#602
|
|
Re: Декомпилятор скриптов Готики
2TSYLin:
Хочу спросить вообще реально ли создать компилятор\декмопилятор готической анимации и моделей, ведб спейсер их компилирует, возможно ли извлечь этот код и создать такое приложение а то очень необходима!
|
Повторяю пост №461: О конвертации моделей. Проанализировав загрузку модели из файла ASC и запись модели в файл MDL пришел к выводу, что обратный процесс создания модели из файла MDL практически невозможен. При компиляции ASC файла выполняются арифметические операции и другие преобразования с векторами, результат преобразований сохраняется в структурах, затем эти структуры в прямом виде записываются в файл MDL. Загрузив MDL файл мы получим структуры, а воссоздать из них первоначальные строки ASC файла нереально. Добавление от 11/21/05, в 13:36:42 P.S. Вообще-то, если есть кто-то хорошо знающий принципы построения графических изображений и векторную алгебру, то могу поделиться своими соображениями и наработками по данному вопросу, может быть совместными усилиями что-нибудь получится. *;)
|
|
|
22.11.2005, 11:01
|
#604
|
|
Re: Декомпилятор скриптов Готики
2TSYLin:
возможно ли создать конвертор для внутри готического формата компиляции, то есть из файла MDL Г1 сделать MDL Г2аддон, просто движок не воспринимает файлы компиляций разных версий Готики?
|
Это сделать более реально, mdl файлы Готик отличаются только структурой zCMaterial, во второй Готике эта структура больше размером. За что отвечает этот класс я точно не знаю, и чем заполнить недостающую часть класса при конвертации из Готики1 в Готику2 тоже не знаю. Вот в принципе и вся проблема. А написать конвертер, т.е. добавить опцию в существующий декомпилятор - это один или два вечера.
|
|
|
22.11.2005, 23:45
|
#606
|
|
Re: Декомпилятор скриптов Готики
2TSYLin:
Если ты думаешь, что извинился, то флуд не в счет, то ты ошибаешься. В данном конкретном случае я конечно флуда не усматриваю, но твои "извинения" уже порядком поднадоели. В следующий раз дам желтую.
|
|
|
23.11.2005, 01:02
|
#607
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Это сделать более реально, mdl файлы Готик отличаются только структурой zCMaterial, во второй Готике эта структура больше размером. За что отвечает этот класс я точно не знаю, и чем заполнить недостающую часть класса при конвертации из Готики1 в Готику2 тоже не знаю. Вот в принципе и вся проблема. А написать конвертер, т.е. добавить опцию в существующий декомпилятор - это один или два вечера.
|
А ты попробуй - хоть чем-ньть ;) Я даже пробовал отлаживать загрузку старого .mdl, забивать проверку версий итп - не помогло. Там, на самом деле, наверняка что-то не сильно важное. Ну, например, как я затаскиваю локации из первой готики во вторую - конверчу zen в текстовый формат, копирую текст в файл и добавляю там самописной софтиной поля vobFarClipZScale=float:1 visualAniModeStrength=float:0 visualAniMode=enum:0 в каждый инстанс. В mdl, скорее всего, что-то в этом роде - новые и не самые важные свойства материала - под новые карточки, которые появились между GI и GII. А то, блин, старую шахту добавлять в мод - а модели фиговины, к которой шестеренку в первой части искали - нету :)
|
|
|
23.11.2005, 01:17
|
#608
|
|
Re: Декомпилятор скриптов Готики
2Vam:
За что отвечает этот класс я точно не знаю, и чем заполнить недостающую часть класса при конвертации из Готики1 в Готику2 тоже не знаю.
|
Ну хотя бы для начала конвертацию из Г2, в Г1, ведь лишнее выкинуть ИМХО будет легче :) Очень требуется подобная вещь.
|
|
|
25.11.2005, 22:35
|
#610
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Кто-нибудь может ответить: одинаковые файлы *.man для Г1 и Г2 взаимозаменяемы, или для них тоже необходим конвертер?
|
Это результат разбора .mds - анимация людей и животных. Оно не так актуально, оно во второй части практически все есть. Поэтому насчет заменяемости не в курсе. Я могу сказать, чего не хватало, когда я затаскивал локации: mdh/mdl/mdm. Я даже могу предметы перечислить - слоты для мечей в храме спящего, мумия орка, портал спящего, хреновина, которую орк-раб крутит, еще хреновина - к которой шестеренку искали. И еще хреновина - для поддувания воздуха в плавильню руды. И Уризель ;) Хотя, для слота мечей, например .man файлы есть (HUMANS-S_EXCALIBUR_S0.MAN итд) Но про совеместимость непонятно - там для начала EXCALIBUR_1.MDL не читался.
|
|
|
25.11.2005, 23:18
|
#611
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Кто-нибудь может ответить: одинаковые файлы *.man для Г1 и Г2 взаимозаменяемы, или для них тоже необходим конвертер?
|
Да, я сам вставлял файлы анимаций ГГ и орков из Г2а в свой мод для Г1 и они отлично прижились. Также я сравнивал файлы анимации Травяного падальщика из Диккурика (мод Г1) и Травяного падальщика из Г2а, файлы анимаций были абсолютно одинаковые, а *.mdl файлы различались.
|
|
|
03.12.2005, 10:19
|
#614
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
2Ukur: а из консоли запускать не пробовал без оболочки?
|
Да. Вот аналогичная. GothicSourcerV2_13.exe -zlog:8,s -zfile:gothic -zcomp:1,1 -zgame:0 Компиляция декомпилированного файла для Г1. Дело не в оболочке. Также не компилируется последний *.d файл в Gothic.src.
|
|
|
05.12.2005, 09:24
|
#616
|
|
Re: Декомпилятор скриптов Готики
2Ukur: 2marazmus:
Компилятор не компилирует последний, указанный в Gothic.src *.d файл. Это показывает и ZSpy. Я смог уладить проблему добавлением в конец файла Gothic.src ссылки на пустой *.d файла.
|
Это не ошибка, а ваша невнимательность, каждая текстовая строка src файла (и не только его) должна заканчиваться кодом новой строки. Файл, созданный декомпилятором правильный, если вы добавляете в него новые строки, то не забывайте после них давить ENTER.
|
|
|
05.12.2005, 09:39
|
#617
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Это не ошибка, а ваша невнимательность
|
Ага, вот оно как значит :) 2Vam:
каждая текстовая строка src файла (и не только его) должна заканчиваться кодом новой строки. Файл, созданный декомпилятором правильный, если вы добавляете в него новые строки, то не забывайте после них давить ENTER.
|
А сколько раз давить ENTER, не уточняется? Я могу конечно еще пару раз надавить.. :)
|
|
|
05.12.2005, 10:09
|
#618
|
|
Re: Декомпилятор скриптов Готики
2Ukur:
А сколько раз давить ENTER, не уточняется? Я могу конечно еще пару раз надавить..
|
Одного раза достаточно, но и несколько - не беда, пустые строки игнорируются. :D Конвертер mdl файлов.
В класс zCMaterial Г2 добавлено 10 новых переменных: * *float * detailObjectScale * * * * * * * (???) * *bool * *forceOccluder * * * * * * * * * (false,true) * *bool * *environmentalMapping * * * * * *(false,true) * *float * environmentalMappingStrength * *(???) * *enum * *waveMode * * * * * * * * * * * *(NONE,AMBIENT_GROUND,GROUND,AMBIENT_WALL,WALL,ENV ,AMBIENT_WIND,WIND) * *enum * *waveSpeed * * * * * * * * * * * (NONE,SLOW,NORMAL,FAST) * *float * waveMaxAmplitude * * * * * * * *(???) * *float * waveGridSize * * * * * * * * * *(???) * *bool * *ignoreSunLight * * * * * * * * *(false,true) * *enum * *alphaFunc * * * * * * * * * * * (MAT_DEFAULT,NONE,BLEND,ADD,SUB,MUL,MUL2)
Формат записи: тип, имя, (возможные значения). При конвертации mdl файла Г2 в Г1 трудности не возникает, эти переменные игнорируются. Вопрос знатокам: какие значения присвоить этим переменным при конвертации из Г1 в Г2?
P.S: Конвертер mdl файлов из Г2 в Г1 практически готов.
|
|
|
06.12.2005, 07:18
|
#619
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Одного раза достаточно, но и несколько - не беда, пустые строки игнорируются.
|
Я о том и говорил, что один раз у меня всегда ENTER пробит :) 2Vam:
P.S: Конвертер mdl файлов из Г2 в Г1 практически готов.
|
Отлично! Обязательно буду тестировать и недобитые ENTER'ы находить :)))
|
|
|
06.12.2005, 16:58
|
#621
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Новая версии Декомпилятора V2.14выложена на Яндексе.
|
Эмм... Это только у меня проблемы с доступом?! мыло - DiccuricAG, пароль - forum.
|
|
|
06.12.2005, 17:02
|
#622
|
|
Re: Декомпилятор скриптов Готики
2Ukur:
Эмм... Это только у меня проблемы с доступом?! мыло - DiccuricAG, пароль - forum.
|
Ответ в посте #589. Я думал, что готоманы следят за обновлениями. :)
|
|
|
06.12.2005, 17:12
|
#623
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Ответ в посте #589. Я думал, что готоманы следят за обновлениями. *
|
Не пинайте, видимо не настолько :) Запрос отменяется... Вот моя отмазка: Прошлую версию ГотикСорсера качал не оттуда, а перепакованную одним из форумитов и выложенную на другом источнике! :)
|
|
|
06.12.2005, 23:05
|
#626
|
|
Re: Декомпилятор скриптов Готики
2marazmus:2DeadlyArrow:
Декомпилятором заинтересовались некоторые люди с ВОГа, вы не будете против, если его выложат на каком-нибудь сайте, что бы они смогли скачать (они по русски не понимают в русской почте или на сайтах искать не могут)?
|
Я согласен, выкладывайте.
|
|
|
07.12.2005, 00:47
|
#628
|
|
Re: Декомпилятор скриптов Готики
Конвертирование проводилось пакетное, т.е. сразу всех моделей, а затем неудачные модели проверялись по одиночке, но результат от этого не менялся.
Журнал пакетной обработки (с прочими моделями) прилагается: -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BARBQ_NW_MISC_SHEEP_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BARBQ_NW_MISC_SHEEP_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BARBQ_SCAV.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BARBQ_SCAV.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BAUMSAEGE_1.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BAUMSAEGE_1.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_1_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_1_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_2_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_2_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_NW_EDEL_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_NW_EDEL_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_NW_MASTER_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_NW_MASTER_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_NW_NORMAL_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_NW_NORMAL_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_PC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_PC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BEDHIGH_PSI.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BEDHIGH_PSI.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BED_1_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BED_1_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BED_2_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BED_2_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_1_NC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_1_NC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_1_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_1_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_2_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_2_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_3_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_3_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_NW_CITY_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_NW_CITY_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_NW_CITY_02.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_NW_CITY_02.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_NW_OW_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_NW_OW_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BENCH_THRONE.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BENCH_THRONE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BLO_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 3 D: MDL: Saving SoftSkin, polys: 372, verts: 340, mem: 10863 .... <zProgMeshProto.cpp,#2483> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BLO_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BOOK_ADDON_STONEPLATE_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BOOK_ADDON_STONEPLATE_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BOOK_BLUE.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 3 D: MDL: Saving SoftSkin, polys: 48, verts: 26, mem: 546 .... <zProgMeshProto.cpp,#2483> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BOOK_BLUE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'BOOK_NW_CITY_CUPBOARD_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'BOOK_NW_CITY_CUPBOARD_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CAMPFIRE_NW_FIREPLACE_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CAMPFIRE_NW_FIREPLACE_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CAULDRON_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CAULDRON_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_1_NC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_1_NC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_1_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_1_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_1_PC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_1_PC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_2_NC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_2_NC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_2_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_2_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_3_OC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_3_OC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_3_PC.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_3_PC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_NW_EDEL_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_NW_EDEL_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHAIR_NW_NORMAL_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHAIR_NW_NORMAL_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTBIG_NW_NORMAL_LOCKED.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTBIG_NW_NORMAL_LOCKED.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTBIG_NW_NORMAL_OPEN.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTBIG_NW_NORMAL_OPEN.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTBIG_NW_RICH_LOCKED.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTBIG_NW_RICH_LOCKED.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTBIG_NW_RICH_OPEN.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTBIG_NW_RICH_OPEN.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTBIG_OCCHESTMEDIUM.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTBIG_OCCHESTMEDIUM.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTSMALL_NW_POOR_LOCKED.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTSMALL_NW_POOR_LOCKED.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CHESTSMALL_NW_POOR_OPEN.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'CHESTSMALL_NW_POOR_OPEN.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CR2_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:00 Fault:0 V: MDL: File "CR2_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'CRW_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:00 Fault:0 V: MDL: File "CRW_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DEM2_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:00 Fault:0 V: MDL: File "DEM2_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DEM_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:00 Fault:0 V: MDL: File "DEM_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_CITY_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_CITY_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_DRAGONISLE_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_DRAGONISLE_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_DRAGONISLE_02.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_DRAGONISLE_02.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_NORMAL_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_NORMAL_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_POOR_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_POOR_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DOOR_NW_RICH_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'DOOR_NW_RICH_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'DRACONIAN_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:00 Fault:0 V: MDL: File "DRACONIAN_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_GROUND.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_GROUND.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_GROUND2.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_GROUND2.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_GROUND_USE.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_GROUND_USE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_HIGH.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_HIGH.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_HIGH2.MDL' .... <zModelProto.cpp,#4029> -4- 00:00 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_HIGH2.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:00 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_MIDDLE.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_MIDDLE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_NCSTONE.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_NCSTONE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_NCSTONE2.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_NCSTONE2.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_NW_LAMP_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_NW_LAMP_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_ORCSTAND.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_ORCSTAND.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_PCHIGH.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_PCHIGH.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FIREPLACE_PCHIGH2.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FIREPLACE_PCHIGH2.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'FLAG_MESH.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'FLAG_MESH.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GIANT_RAT_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 430, verts: 213, mem: 6139 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'GIANT_RAT_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GOBBO_SKELETON_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "GOBBO_SKELETON_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GOB_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "GOB_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GOL_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "GOL_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GOL_FIRE_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "GOL_FIRE_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GOL_ICE_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "GOL_ICE_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'GROUND_SLOT.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'GROUND_SLOT.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'HAMMEL_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 774, verts: 389, mem: 12096 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'HAMMEL_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'HAR_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "HAR_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'HERB_NW_MISC_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'HERB_NW_MISC_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'IDOL_SLEEPER3_PC.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'IDOL_SLEEPER3_PC.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'INNOS_BELIAR_ADDON_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'INNOS_BELIAR_ADDON_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'INNOS_NW_MISC_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'INNOS_NW_MISC_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'LAB_PSI.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'LAB_PSI.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'LUR_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "LUR_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'MBG_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "MBG_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'ORCDRUM_1.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'ORCDRUM_1.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'ORC_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 54, verts: 46, mem: 1306 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 456, verts: 246, mem: 6713 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'ORC_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'ORE_GROUND.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'ORE_GROUND.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'ORE_GROUND_GOLD.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'ORE_GROUND_GOLD.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'RAT_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "RAT_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'RAZOR_DEMON_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "RAZOR_DEMON_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'REPAIR_PLANK.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'REPAIR_PLANK.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'RMAKER_1.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'RMAKER_1.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SCAVENGER_DEMON_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SCAVENGER_DEMON_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SCA_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SCA_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SDW_MOBSI.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'SDW_MOBSI.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SHADOWBEAST_SKELETON_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SHADOWBEAST_SKELETON_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SHA_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SHA_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SHEEP_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 686, verts: 345, mem: 11172 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'SHEEP_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SKE_BODY2.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SKE_BODY2.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SKE_FLY_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "SKE_FLY_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SMOKE_WATERPIPE.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 211, verts: 115, mem: 2415 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'SMOKE_WATERPIPE.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SNA_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 426, verts: 215, mem: 7796 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'SNA_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'STOVE_NW_CITY_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'STOVE_NW_CITY_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'SWA_BODY.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 3 D: MDL: Saving SoftSkin, polys: 418, verts: 211, mem: 7202 .... <zProgMeshProto.cpp,#2483> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'SWA_BODY.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'THRONE_BIG.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'THRONE_BIG.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'THRONE_NW_CITY_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'THRONE_NW_CITY_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'TREASURE_ADDON_01.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'TREASURE_ADDON_01.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'TROLL_BLACK_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "TROLL_BLACK_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'TRO_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "TRO_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'VOBBOX_1.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'VOBBOX_1.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'WARG_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "WARG_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'WAR_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "WAR_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'WAR_FIRE_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "WAR_FIRE_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'WASH_SLOT.MDL' .... <zModelProto.cpp,#4029> -4- 00:01 Info: 5 D: MDL: Saving Model-MDL 'WASH_SLOT.MDL'... OK .... <zModelProto.cpp,#4077> -4- 00:01 Info: 5 D: MDL: Loading Model-MDL 'ZOM_BODY.MDL' .... <zModelProto.cpp,#4029> -2- 00:01 Fault:0 V: MDL: File "ZOM_BODY.MDL" not compatible version. .... <zModelProto.cpp,#228>
Оказывается, для того чтобы модели успешно заработали в игре, расширение всех конвертированных моделей нужно было изменить на "*.MDM", сами они не переименовывались :)
|
|
|
07.12.2005, 11:13
|
#629
|
|
Re: Декомпилятор скриптов Готики
2Ukur:Стоп, стоп, стоп... не всё сразу, будем разбираться попорядку. 1. Небольшой вводный материал:В анимации и моделировании Готик используются следующие форматы файлов: - .MAN (ModelAnimation) * * * * Анимация модели - .MDH (ModelHierarchie) * * * *Иерархия модели - .MDM (ModelMesh) * * * * * * *Меш модели - .MDL (Model (complete)) * * * Иерархия и Меш модели - .MDS (ModelScript) * * * * * *Скрипт модели (анимация, иерархия и меш модели в текстовом виде) - .MMS (MorphMeshScript) * * * *Скрипт трансформации меша (анимация, иерархия и меш модели в текстовом виде) - .MMB (MorphMeshBinary) * * * *Трансформация меша (двоичная форма предыдущего типа) - .MRM (MultiResolutionMesh) * *Статический меш с сокращенным числом полигонов (CLOD) - .MSH (Mesh) * * * * * * * * * Анимация меша (старый формат, не используется, но может встретиться) - .MSB (ModelScriptBinary) * * *Модель (двоичная форма .MDS формата) - .ASC (ACII, 3DS-MAX Export) * Текстовая форма данных, экспортируемая из 3DS-MAX (из неё при компиляции получается большинство предыдущих типов) Многие из этих типов, как видно из названия, взаимозависимы. Для того, чтобы модель правильно отображалась и работала необходимо соответствие некоторых типов. Причем, не все типы обязательны, при отсутствии некоторых из них ядро создает недостающие типы из cуществующих. Разобраться в этом затруднительно (какие типы могут отсутствовать, а какие обязательны), всё в экзешнике сильно запутано. Помочь может только практическое тестирование. Точно могу сказать: 1. Файл MDL является суммой двух файлов MDH + MDM. 2. Файлы MDH Г1 и Г2 взаимозаменяемы, различий в них нет. 2. Ответы на вопросы.
Конвертирование моделей производилось из формата Г2(а), в формат Г1. В конвертировании принимали участие все животные Г2(а), а также остальные модели. Частичный успех: HAMMEL_BODY.MDL - баран стал абсолютно невидимым...
|
Возможно несовместимость некоторых форматов, нужно разбираться.
От конвертирования живность отказалась (неподдерживаемая версия)
|
Существует три типа MDL файлов, поясню, в каждом MDL файле после ключегого кода - 00 D0 04 00 00 00 идут четыре байта номера версии файла, это - 06 05 03 04 - Готика1, 06 05 09 04 - Готика2, 06 05 08 04 - неизвестный формат (третий байт задает номер версии класса zCMaterial) Обработчика класса zCMaterial с версией 08 я не нашел ни в одном экзешнике, как обрабатывается этот класс - для меня загадка, поэтому такие MDL файлы пропускаются.
Журнал пакетной обработки (с прочими моделями) прилагается
|
Эту информацию можно не приводить, толку от неё мало.
Оказывается, для того чтобы модели успешно заработали в игре, расширение всех конвертированных моделей нужно было изменить на "*.MDM", сами они не переименовывались
|
Ошибочное суждение, файл MDM является только частью файла MDL, поэтому переименовывать эти файлы (да и вообще любые другие нельзя). Здесь верояннее всего происходит следующее: ядро встречает неправильный формат MDM файла и восстанавливает его из MDL файла. Поэтому наиболее правильней просто удалить MDM файл, ядро должно его восстановить, но это необходимо проверить экспериментально, я не уверен. Пока всё, задавайте вопросы, постараюсь ответить, а разбираться в моделях нужно совместно - тогда будет нужный результат. *;)
|
|
|
07.12.2005, 13:00
|
#630
|
|
Re: Декомпилятор скриптов Готики
2Vam:
06 05 08 04 - неизвестный формат (третий байт задает номер версии класса zCMaterial)
|
А "насильственно" этот класс можно как нибудь пристроить к конвертеру? Возможно в какую либо сторону он конвертируется, а что из этого получится, будем проверять на практике. 2Vam:
Эту информацию можно не приводить, толку от неё мало.
|
Ок. 2Vam:
Ошибочное суждение, файл MDM является только частью файла MDL
|
Ясно, но у меня в данное время отлично работает. 2Vam:
поэтому переименовывать эти файлы (да и вообще любые другие нельзя)
|
Интуиция и собственные ошибки - тоже практический опыт :) 2Vam:
Поэтому наиболее правильней просто удалить MDM файл, ядро должно его восстановить, но это необходимо проверить экспериментально, я не уверен.
|
Да, без VDFS распаковщика здесь не обойтись... У меня ядро Г1 НЕ восстанавливало *.MDM файл из *.MDL, и вылетало на рабочий стол с сообщением о невозможности найти *.ASC сырье, даже если восстанавливаемого MDM файла нигде не было(включая VDF архив). Пример: Овца, в Г1 вообще нету. Ложил SHEEP-BODY.MDL файл в каталог _work\data\anims\_compiled - вылетало с требованием *.ASC, работало только "неправильниым" способом, т.е. ручным переименованием в SHEEP-BODY.MDM Прочие файлы анимации: *.MAN, *.MDH и пр... лежали в VDF архиве мода. Ждем новостей...
|
|
|
07.12.2005, 14:10
|
#631
|
|
Re: Декомпилятор скриптов Готики
2Ukur:
А "насильственно" этот класс можно как нибудь пристроить к конвертеру? Возможно в какую либо сторону он конвертируется, а что из этого получится, будем проверять на практике.
|
Чтобы сконвертировать файл его необходимо правильно прочитать, пока этого не получается, пробовал без конвертации: читаю (создается куча классов и структур), записываю (эти классы и структуры) - в итоге файл получается на два байта длиннее. С остальными кодами (03 и 09) все нормально, файлы идентичны. Вывод - в файле присутствуют данные, которые не воспринимаются.
работало только "неправильниым" способом, т.е. ручным переименованием в SHEEP-BODY.MDM
|
В следующей версии, если необходимо, сделаю создание "правильных" MDM файлов. P.S: Для правильной визуализации моделей может потребоваться перетаскивание из одной Готики в другую текстур, если они отсутствуют.
|
|
|
08.12.2005, 04:40
|
#632
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Вывод - в файле присутствуют данные, которые не воспринимаются.
|
Хм, я-сно, почти :) А если эти данные игнорировать, т.е. пропускать? Из предыдущих постов, я так понял что в "неподдерживаемом" файле используется неизвестный класс материала (не совсем в этом разбираюсь, что это, но влиет ли на форму модели?). Если материал на конвертированном просто заменить каким-нибудь известным, для тестовых-практических целей. 2Vam:
В следующей версии, если необходимо, сделаю создание "правильных" MDM файлов.
|
Да, вообщем не напрягает переименование, но хотелось бы, чтобы работало как было задуманно разработчиком конвертера :) 2Vam:
P.S: Для правильной визуализации моделей может потребоваться перетаскивание из одной Готики в другую текстур, если они отсутствуют.
|
Ну, это само собой разумеется :) Да, в Диккурике (мод Г1) используется травяной падальщик SCAVENGER_DEMON_BODY.MDM, который есть только в Ночи Ворона...(остальные файлы анимаций идентичны) Конвертер на нем тоже выдает "неподдерживаемую" версию, интересно, где они "взяли" модель(сырье) падальщика? Сравнивал на БейондКомпаре модели конвертируемого и конвертированного файла, нашел совсем немного отличий. Сравнивал травяного падальщика из диккурика и ночи ворона, структура очень сильно отличается.
|
|
|
09.12.2005, 00:50
|
#634
|
|
Re: Декомпилятор скриптов Готики
2Vam:
то в игру вставляешь оба файла или только MDM?
|
Вставлял только MDM, т.е. переименованный MDL, т.е. только одну "копию" файла. 2Vam:
Следовательно, загрузчик MDM файла, встретив код "чужой" записи, пропускает её, таким образом пропускается вся MDH часть и загружается только MDM часть.
|
Ага, значит движок игры пытается любым способом загрузить модель?... А что там насчет проблем с классом материалов? И нужны ли теперь MDH файлы? Хотя, сам проверю :)
|
|
|
09.12.2005, 09:36
|
#635
|
|
Re: Декомпилятор скриптов Готики
Некоторые соображения по файлам моделей и их использованию.
1. Модели бывают двух типов - статическая и динамическая. Для статической модели (предметы интерьера без анимации) нужен только файл типа MDL. Для динамической модели (всё что движется, трансформируется и т.д.) обязателен файл MDS или MSB (об отличиях их см. ниже). Этот файл представляет из себя полный скрипт модели вместе с анимацией и он определяет какие ещё файлы должны загружаться для модели (это MAN, MDH и MDM). MAN файлов может быть несколько, для каждой фазы анимации модели - свой файл. MDH файл может быть, а может и отсутствовать. MDM файл обязателен. MDL файл для динамической модели не нужен и может быть удален.
2. Различия применения MDS и MSB файлов. MSB файл используется только Готикой 2, Готика 1 его не понимает (отсутствует загрузчик). Г2 может использовать эти оба формата, но предпочтение отдается MSB файлу, только при его отсутствии загружается MDS файл. Следовательно, все MSB файлы Г1 и MDS файлы Г2 лишние, и могут быть удалены.
3. В Г2 и некоторых модах встречаются MDL файлы с неподдерживаемым форматом (см. посты выше), такие файлы можно удалить, они не нужны, т.к. они относятся к динамической модели и есть соответствующий ему правильный MDM файл. В следующей версии Декомпилятора будет добавлен конвертер MDM файлов Готик.
|
|
|
10.12.2005, 15:07
|
#636
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Некоторые соображения по файлам моделей и их использованию.
|
Пока руки никак не дойдут посмотреть, но огромная тебе благодарность за то, что ты делаешь :)
|
|
|
17.12.2005, 17:17
|
#637
|
|
Re: Декомпилятор скриптов Готики
2Vam:Спасибо за проделанную работу.
Некоторые соображения по файлам моделей и их использованию.
|
Да все так и есть! Т.н. статическая модель - это ASC model mesh и его откомпиленный вариант MDL. Т.н. динамическая модель - это скрипт MDS и его откомпиленный вариант MSB. В свою очередь этот скрипт определяет набор файлов ASC динамической модели: 1) строчка meshAndTree() определяет ASC model mesh, из него обязательно компилится иерархия модели MDH и не обязательно меш модели MDM.
MDH файл может быть, а может и отсутствовать.
|
По идее файл иерархии должен быть всегда. 2) каждая строчка registerMesh() определяет ASC model mesh и его откомпиленный вариант меша модели MDM 3) каждая строчка ani() определяет ASC model animation и его откомпиленный вариант анимации модели MAN. В итоге, для того чтобы перенести целиком модель из одной готики в другую и не запутаться в огромном количестве файлов, можно действовать следующим образом: 1)для статической модели нужен только MDL файл, его нужно конвертить и переносить. 2)для динамической модели нужен скрипт-исходник MDS (они все есть, кстати Vam еще раз спасибо за соображения, теперь я понял, почему скрипты-исходники оставили разработчики) Далее берем файл иерархии MDH по названию скрипта, а также ищем по скрипту все требуемые MDM и MAN файлы и конвертим их, если требуется. Возможно, есть исключения или еще где-то что-то .), но по идее так должно быть. Что касается конвертера в ASC (помнится, мы с Vam'ом обсуждали этот вопрос весной), то пользы от него мало, т.к. импортер из ASC в 3Д макс неполный. Он не восстанавливает привязку вертексов к скелету, да и сам скелет будет являться результатом экспорта из макса в ASC - с таким скелетом работать невозможно. Имея допустим конвертер, можно делать следующее: 1) конвертация из MDL в ASC в целом даст полный доступ к статической модели Может быть полезно. 2) с динамическими моделями сложнее. Самое ценное и нужное - это иерархия, т.к. имея ее, можно с легкостью создать новую анимацию или новый меш например для готиковского волка или тролля. Теоретически нужно MDH "конвертнуть" в ASC и открыть в максе, и далее создать новую скелетную систему в точности такую же, как и у оригинальной модели, ту же иерархию и то же расположение костей(хелперов) с теми же названиями. Не думаю, что кто-то будет этим заниматься.) Конвертация MAN в ASC вообще вещь бесполезная. Наконец, конвертация MDM в ASC даст доступ к мешу модели, эти меши можно использовать в дальнейшем для своих целей.
|
|
|
18.12.2005, 20:22
|
#638
|
|
Re: Декомпилятор скриптов Готики
Новая версии [glow=red,2,300]Декомпилятора V2.15[/glow] выложена на Яндексе.
- добавлен режим конвертирования *.mdm файлов Готик. параметр -zfile: задает имя *.mds (*.msb) файла (расширение необязательно, если имя не задано, то обрабатываются все *.mds (*.msb) файлы из директории ..\anims - для *.mds или из директории ..\anims\_compiled - для *.msb). Результат записывается в директорию ..\anims\_converted. параметр -zcomp:2,1 - конвертация *.mdm файлов параметр -zgame:0 - конвертация из Г1 в Г2 (1 - из Г2 в Г1) !!!Внимание!!! Для правильной конвертации *.mdm файлов необходимо наличие полного комплекта файлов модели (*.mds (*.msb), *.mdh, *.man, *.mdm) в соответствующих директориях. При конвертации попутно осуществляется проверка всех файлов моделей на ошибки, так что следите за сообщениями. Для Готики 1 перед конвертацией файлы *.mds необходимо из директорий ..\mds_mobsi и ..\mds_overlay скопировать в директорию ..\anims (только она обрабатывается).
Тестируйте...
ЗЫ: Осталось разобраться с файлами *.mmb (они относятся к классу zCMorphMesh) и нуждаются в конвертации, простой перенос их между Готиками невозможен.
|
|
|
19.12.2005, 01:07
|
#640
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam: Брависсимо! Просто супер!
З.Ы. Прошу модеров не ругацца, но за такое нельзя не поблагодарить!
Добавление от 12/19/05, в 00:27:49 Забыл, сам сейчас проверить не могу, но хотелось бы знать, как я понял при конвертировании в asc модель получается без скелета? Или с ним?
btw: По идее он ДОЛЖЕН быть, иначе как тогда в Готике скелет есть? Или его нет, там просто анимация изменяющегося меша?
|
|
|
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
|
|
Ваши права в разделе
|
|
|
|
Текущее время: 07:48. Часовой пояс GMT +4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|