|
|
03.12.2004, 10:05
|
#122
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Сделал полную разархивацию всех объектов из ou.bin, сейчас пишу архиватор, затем сделаю связь со скриптами. Нужен совет: Я предлагаю сделать в компиляторе/декомпиляторе обработку только ou.bin файла, ou.csl не обрабатывать. Екзешники Готик работают только с ou.bin, а если он отсутствует, то только в этом случае обрабатывается ou.csl.
|
Конечно, тем более что
на это потребуется примерно две недели.
|
Я вообще никогда и не понимал зачем нужен CSL, если по сути он является лишь промежуточным звеном :)
|
|
|
03.12.2004, 22:17
|
#123
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Декoмпилятор скриптов Готики
2TycoooN: 2Vam: Полностью с вами согласен, ou.csl не нужен, лучше сразу работать с bin`ом.
|
|
|
05.12.2004, 00:24
|
#125
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Сделал полную архивацию всех объектов в ou.bin, приступаю к написанию связи со скриптами.
|
Хорошо работаешь :) Держи :pivo: и плюс ;D Ждем-с...
|
|
|
06.12.2004, 00:45
|
#128
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Компиляция ou.bin из скриптов полностью звершена. Осталось декомпилировать ou.bin в скрипты.
|
Отличная новость! Продолжай в том же духе. Успехов.
|
|
|
06.12.2004, 22:44
|
#131
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam: Congreatilation!!! Vam ты ГЕНИЙ, без преувеличений, ты настощий гений!!!! Все супер, скрипты создаются, диалоги пишутся, молодец!!! З.Ы. Жаль я не могу карму менять, парни, мона бы Vam`у и "+" поставить, или поставьте кто нить от меня!! :)
|
|
|
06.12.2004, 22:57
|
#132
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam: Всё скачал, декомпилировал... круто! :pivo: Присоединяюсь ко всему сказанному Killer-XXX ;D ;D :pivo:
Жду отзывов, замечаний и предложений!!!
|
И снова мои трудновыполнимые предложения: почему бы не распределить скипты по папкам? Хотя бы основные сделать. Т.е. папка story, в ней npc и missions. Все файлы на b_*.d в папку story/b, все zs_*.d в папку story/zs. Может, ещё что-нибудь придумаем. Остальные файлы пусть остаются где есть :) Какой следующий шаг? Сделать всё то же для Готики 2? Или что? Ещё раз респект. :pivo:
|
|
|
06.12.2004, 23:10
|
#133
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
почему бы не распределить скипты по папкам?
|
Насчет папок подумаю, что можно сделать. Следующий шаг - адаптация всего сделанного под Готику2 и ее моды! ;) Всем тестерам :pivo:
|
|
|
09.12.2004, 15:32
|
#136
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
Что с интерфейсом будем делать?
|
Мои предложения в постах #115, #117, пока ничего не изменилось. Сейчас делаю расклад декомпилированных файлов по директориям, затем - Готика 2, вот мои ближайшие планы! ;)
|
|
|
10.12.2004, 12:57
|
#138
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
И снова мои трудновыполнимые предложения: почему бы не распределить скипты по папкам? Хотя бы основные сделать. Т.е. папка story, в ней npc и missions. Все файлы на b_*.d в папку story/b, все zs_*.d в папку story/zs. Может, ещё что-нибудь придумаем. Остальные файлы пусть остаются где есть
|
Выложена новая версия декомпилятора на DiccuricAG, она дополнительно поддерживает распределение скриптов по папкам. Просьба потестировать и выдать замечания. Перехожу к адаптации программы под Готику 2. *;)
|
|
|
10.12.2004, 22:48
|
#140
|
|
Re: Декомпилятор скриптов Готики
TycoooN:
Папку cutscene пришлось создавать самому в папке content, мне-то не сложно, но кто-то другой может и не догадаться
|
Папку создам, вопросов нет.
В папку ..\script\_compiled помещаются dat файлы для компиляции. Имхо всё-таки для декомпиляции
|
Да, имеется опечаточка, исправлю. Всем!!!Кто нибудь проверял в игре файлы, созданные компилятором, я вот решил проверить gothic.dat и ou.bin, в итоге получил облом в виде exception, теперь разбираюсь в чем дело, пока адаптация под Готику2 откладывается, увы. *:(
|
|
|
11.12.2004, 00:25
|
#142
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Кто нибудь проверял в игре файлы, созданные компилятором, я вот решил проверить gothic.dat и ou.bin, в итоге получил облом в виде exception
|
Такая же фигня! :(
|
|
|
11.12.2004, 22:42
|
#144
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Появилась интересная мысль, а нельзя ли перекомпилить моды Готики1 (да и саму Готику) под Готику2, со скриптами все должно быть в порядке, а как насчет графики, звука и музыки?
|
Каким образом? Ты разобрался с
?
|
|
|
11.12.2004, 23:41
|
#145
|
|
Re: Декомпилятор скриптов Готики
finch:
Например: Декомпилируем Диккурик в скрипты, а затем компилируем dat и bin файлы для Готики2. Но еще должно быть совместимо все остальное, графика и звук, а это я не знаю.
Ты разобрался с обломом в виде exception?
|
Да, исправил пару ошибок, под Готикой1 работает. Адаптирую декомпилятор под Готику2, компиляцию сделал, делаю декомпиляцию.
|
|
|
13.12.2004, 20:06
|
#146
|
|
Re: Декомпилятор скриптов Готики
Выложена новая версия декомпилятора на DiccuricAG, она дополнительно поддерживает работу с Готикой 2 и её модами.
Замечания: Скомпилированные программой dat и bin файлы из оригинальных скриптов работают нормально, но пробовал запустить скомпилированнные после декомпиляции файлы аддона и заметил глюк - Ксардас при входе в игру одет в какую-то странную броню, но сама игра работает, значит имеются некоторые неточности и ошибки при декомпиляции скриптов. Требуется помощь - необходимо сравнить на соответствие исходники оригинальных скриптов аддона с исходниками, созданными декомпилятором. Файлов очень много, больше 1500. Одному не справиться, желательно несколько человек. Если бы кто-то взялся за эту работу, я смог бы начать делать графическую оболочку и исправлять по ходу дела ошибки. Для Готики 1 я проводил сравнение, это заняло примерно две недели вместе с исправлением, но файлов там было почти в два раза меньше.
|
|
|
13.12.2004, 20:23
|
#148
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
А не проще ли сравнить оригинальный датник с полученным из декомпилированных скриптов?
|
Не проще, пробовал. Во-первых в создании нового датника участвуют два процесса декомпиляция и компиляция, ошибка при декомпиляции может вызвать корреляцию при последующей компиляции, в итоге иногда просто невозможно обнаружить место в скриптах с ошибкой. Во-вторых, в оригинальном датнике есть очень много неопределенной информации в полях структур, она мешает сравнению. Размер датника больше 7 мег, представляешь, что такое сравнивать вручную бинарные файлы? Это вообще нереально.
|
|
|
14.12.2004, 05:26
|
#151
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Требуется помощь - необходимо сравнить на соответствие исходники оригинальных скриптов аддона с исходниками, созданными декомпилятором.
|
Могу посоветовать для этих целей использовать очень мощную прогу Compare It 3.x www.grigsoft.com я сам ею пользовался для сравнения ou.csl при русификациях, думаю для исходников это тоже будет хорошо. Программа при нахождении нессоответствии двух сравниваемых файлов выделяет это место и позволяет бысто перейти к нему...
|
|
|
14.12.2004, 09:05
|
#152
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2B Wolf:
Могу посоветовать для этих целей использовать очень мощную прогу Compare It 3.x
|
Можно и обычным UltraEdit'ом сравнивать ::)
|
|
|
14.12.2004, 10:40
|
#153
|
|
Re: Декомпилятор скриптов Готики
2B Wolf:
Могу посоветовать для этих целей использовать очень мощную прогу Compare It 3.x
|
Програмка хорошая, но помощи от нее здесь мало. Привожу для примера две 100% идентичные функции Оригинал: func int C_GregsPiratesTooFar() { * * *//if (Npc_GetDistToWP (self,"ADW_CANYON_TELEPORT_PATH_01A") > 15000) * * * * * *//&& (Npc_GetDistToWP (self,"ADW_CANYON_PATH_TO_BANDITS_47") > 15000) * * *if (Npc_GetDistToWP (hero,"ADW_CANYON_MINE1_09") < 3000) * * *|| (Npc_GetDistToWP (hero,"ADW_CANYON_MINE2_04") < 2000) * * *|| (Npc_GetDistToWP (hero,"ADW_CANYON_LIBRARY_04") < 2000) * * *|| (Npc_GetDistToWP (hero,"ADW_CANYON_PATH_TO_BANDITS_25") < 6000) * * *|| (Npc_GetDistToWP (hero,"ADW_PIRATECAMP_WAY_16") < 8000) * * *{ * * * * * *return TRUE; * * *}; * * * * * *return FALSE; }; Декомпилированная версия: func int c_gregspiratestoofar() { * * *if((npc_getdisttowp(hero,"ADW_CANYON_MINE1_09") < 3000) || (npc_getdisttowp(hero,"ADW_CANYON_MINE2_04") < 2000) || (npc_getdisttowp(hero,"ADW_CANYON_LIBRARY_04") < 2000) || (npc_getdisttowp(hero,"ADW_CANYON_PATH_TO_BANDITS_ 25") < 6000) || (npc_getdisttowp(hero,"ADW_PIRATECAMP_WAY_16") < 8000)) * * *{ * * * * * *return TRUE; * * *}; * * *return FALSE; }; а прога на них выдает кучу отличий. Декомпилятор условие под if пишет в одну строку, а в исходном тексте это может быть несколько строк да еще и с комментариями между ними.
|
|
|
15.12.2004, 00:38
|
#155
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Irwin1138:
А как вы думаете насчет того чтобы сделать такой мод для Г2, который переносит Г1 в графику и возможности Г2? Ну типа Г1 но с графикой и возможностями Г2? Как вам идея?
|
Недавно Vam примерно то же самое предлагал :) 2Vam: У меня почему-то последний декомпилятор не пашет. Датник аддона вообще отказался декомпилировать, ориг. Г2 идёт где-то на половину, потом ошибка :(
|
|
|
15.12.2004, 02:57
|
#156
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
2B Wolf: Могу посоветовать для этих целей использовать очень мощную прогу Compare It 3.x Можно и обычным UltraEdit'ом сравнивать
|
Ну только, если все искать вручную :) Compare It именно находит и ВЫСВЕЧИВАЕТ отличия, сортирует одинаковые строки разных файлов в одном месте (эту прогу можно заставить работать по маске, т.е. исключить из сравнения ненужные строки) и позволяет нажатием клавиши перекидывать строки из одного файла в другой. Например при сравнении разных файлов ou.csl, или текстовых файлов полученных из gothic.dat с помощью утилиты dat2txt.exe (от Bigglass)Compare It оказывает реальную помощь... 2Vam:
Декомпилятор условие под if пишет в одну строку, а в исходном тексте это может быть несколько строк да еще и с комментариями между ними.
|
Мда, в этом случае от Compare It будет тяжело добиться помощи...
|
|
|
15.12.2004, 03:11
|
#157
|
|
Re: Декомпилятор скриптов Готики
Короче, сразу изиняюсь за оффтоп... Просто всем своим я уже пожаловался, осталось только в долине поплакаться... Установил я, значит, вчера декомпилятор последний... декомпилировал gothic.dat руссифицированный от аддона... декомпиляция прошла с ошибками, но то, что мне было надо, я получил... вот.. забросил обратно свой gothic.dat, ou.bin и ou.csl и решил пойти покурить... и вставая из-за компа одновременно попытался выкинуть какой-то левый архив с рабочего стола в корзину путем перетягивания мышью... но вместо корзины попал на ярлык декомпилятора........ что произошло дальше, я так и не понял... в папке Г2 не осталось ни одного файла... ВООБЩЕ НИ ОДНОГО... только несколько каталогов... а там ведь лежали все скрипты от моего мода... зен-файлы, скомпилированный датник и ОУ... плюс в этот же день (ближе к обеду) я удалил все старые бэкапы, но не удосужился заменить их на новые(думал, вечером)... полночи пытался при помощи разных софтин восстановить потерянные файлы... да где уж там... короче, [censored] пойти повеситься что ли?...
|
|
|
15.12.2004, 10:28
|
#158
|
|
Re: Декомпилятор скриптов Готики
finch:
в папке Г2 не осталось ни одного файла... ВООБЩЕ НИ ОДНОГО...
|
Прими мои соболезнования, я не знаю что у тебя произошло, могу сказать только одно, декомпилятор удаляет всё содержимое только папки ..\scripts\_decompiled\ и только при декомпиляции датников, в реадми на это указано. TycoooN:
У меня почему-то последний декомпилятор не пашет. Датник аддона вообще отказался декомпилировать, ориг. Г2 идёт где-то на половину, потом ошибка
|
В оригинальных скриптах Готики2 с аддоном есть ошибки, также ошибки есть и в датнике, но так как в датнике несведущему исправить ошибки невозможно, декомпилятор указывает на них и продолжает работать дальше, в итоге в создаваемом файле скриптов в месте ошибки появляется неправильная запись (номер строки, имя файла и ошибка фиксируются в логах), которая требует ручной правки. (Я таких мест при декомпиляции Готики2 рус + аддон насчитал порядка 5). Если же декомпилятор выдал ошибку и остановился не дойдя до конца, мне про неё необходимо знать, возможно потребуется исправление проги! Это про декомпиляцию. Теперь про компиляцию: Для того, чтобы по возможности не пропускать ошибки скриптов в датник, пришлось сделать более строгий компилятор, он при встрече ошибки подробно о ней сообщает и прекращает работу, ошибку необходимо исправить ручками в скриптах и повторить компиляцию. Компиляция декомпилированных файлов еще более сложна, в том же примере (Готика2 рус + аддон) встречается куча ошибок внесенных при ручном переводе скриптов (правка датника и оушника), это в основном вторые кавычки внутри строки текста, которая сама находится в кавычках, это недопустимо. Приходится ручками заменять их на апостроф, как и сделано в немецких ориг. скриптах. Так что дерзайте! Если у кого будут проблемы, просьба приводить строку с ошибкой из лога. Чем больше вы найдете ошибок и замечаний, тем удобней и полезней будет программа, когда исправлю все ошибки! Просьба задавать любые вопросы, они все будут полезны в этом общем деле! Всем:Ответа на вопрос возможно или нет перенести моды Готики1 в Готику2 я так и не получил. Неужели никто не разбирается в графике и звуке?
|
|
|
15.12.2004, 13:46
|
#159
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Ответа на вопрос возможно или нет перенести моды Готики1 в Готику2 я так и не получил.
|
Но мод Mirandadorf (вроде так пишется), ведь был сделан сначала для Г1, а затем для Г2.
Неужели никто не разбирается в графике
|
Ну разбираюсь. 3ds'ки из Г1 в Г2 легко переносятся, но только их надо текстурить по-новому (или пути менять).
|
|
|
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
|
|
Опции темы |
Поиск в этой теме |
|
|
Ваши права в разделе
|
|
|
|
Текущее время: 06:18. Часовой пояс GMT +4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|