|
|
14.11.2004, 16:21
|
#82
|
|
Re: Декомпилятор скриптов Готики
2Vam: Присоединяюсь к пожеланиям TycoooN'a.
чтобы после строк AI_Output добавлялся комментарий с фразами.
|
- обязательно! Очень хотелось бы, чтобы декомпилятор к Г2 вышел как можно скорее! Гранд респект! :pivo:
|
|
|
14.11.2004, 19:18
|
#83
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
декомпилятор ведь разбивает файлы диалогов по НПС, т.е. у каждого НПС свой файл с диалогами, так нельзя ли называть эти файлы как DIA_ + имя НПС, которое указывается в параметре "npc =" в любом C_Info
|
Декомпилятор никакие файлы по диалогам не разбивает, поймите правильно, в дат файле есть только номер (вместо имени) исходного файла. Кроме файлов диалогов есть еще много других файлов, я пока не представляю как можно их называть. Была задумка имя файла делать по имени первой встретившейся в нем переменной, функции или инстанции, но проанализировав несколько исходных файлов скриптов, я понял, что получится ерунда, можете проверить сами, я пока не знаю, как даже приблизительно восстановить первоначальное имя. *:( После строк AI_Output() все будет ОК, дайте немного помыслить и передохнуть, а то такими темпами и сдохнуть не долго! Есть пожелание, проверить компилированный дат файл после декомпиляции в игре, все ли правильно происходит, я этого не делал, требует определенного времени. Вы же понимаете, есть две цели декомпиляции, первая - изучить то, что сделано кем-то, вторая - внести изменения, доработки, затем компильнуть и получить рабочий вариант дат файла. Первая цель, можно сказать, достигнута, а вторая, хоть и реализована, но требует проверки. Надеюсь на взаимопонимание! *:D
|
|
|
15.11.2004, 13:18
|
#85
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
Вот я и предлагаю назвать такой файл DIA_GRD_219_STONE, вернее спрашиваю, реально ли это
|
А как декомпилятору понять, что это файл диалога, а не какой-нибудь другой файл?
в нём есть только диалоги (C_Info и их функции) ТОЛЬКО с НПС GRD_219_STONE
|
Это человеку видно, а не программе. Чтобы это выявить, надо сначала декомпилировать файл, затем запустить какой-нибудь анализатор структур и функций, который сгенерит по определенным правилам имя файла, а затем переименовать файл. Другого выхода я не вижу. Насколько сложна будет реализация анализатора пока не представляю, сначала нужно разработать правила его работы. А кто за это возьмется? Если именовать только файлы диалогов, то ИМХО нет особого смысла, их не больше трети от всех файлов. Если именовать, то уж все файлы, но при любом раскладе новые имена 100% не будут соответствовать исходным именам. *;) Причем это все относится только к тем скриптам, на которые есть исходники, а взять какой-нибудь мод (например - Угроза), то один только бог знает, как разработчики называли файлы исходников. *::)
|
|
|
15.11.2004, 17:25
|
#87
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Это человеку видно, а не программе.
|
Ну, по-моему можно отличить файлы диалогов по обилию в них упоминаний instance ... (C_Info) А называть я предлагаю только файлы диалогов, потому что они наиболее нужны в модостроительстве руссифицированные, остальные можно и немецкие юзать :)
|
|
|
18.11.2004, 09:35
|
#90
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
Ещё раз сформулирую моё предложение: искать файлы, в которых... ну допустим более 2 раз встречается instance ... (C_Info) и называть такие файлы DIA_ плюс то, что прописано в параметре npc = любого C_Info
|
Все, что ты просил сделать с именами файлов, сделал, даже большее... :) Сейчас работаю над OU, разбираю формат. ;)
|
|
|
18.11.2004, 21:51
|
#91
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Все, что ты просил сделать с именами файлов, сделал, даже большее...
|
Звучит многообещающе :)
Сейчас работаю над OU, разбираю формат.
|
В каком смысле? У тебя ж вроде есть уже прога, которая прописывает фразы из OU в скрипты ::)
|
|
|
19.11.2004, 10:37
|
#93
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
В каком смысле? У тебя ж вроде есть уже прога, которая прописывает фразы из OU в скрипты
|
1. Прога то есть, но она работает только в одну сторону (из OU в скрипты). Так как я делаю компилятор и декомпилятор в одном пакете, то необходимо при компиляции создавать правильный OU файл, для этого надо знать полностью весь его формат. 2. Алгоритм, по которому работает существующая прога, здесь не годится (идет перебор всех файлов скриптов, чтобы вставить только одну строчку текста), надо все это делать "на лету" по ходу декомпиляции. Вот над этим сейчас и работаю! ;)
|
|
|
22.11.2004, 15:48
|
#94
|
|
Re: Декомпилятор скриптов Готики
По вашим пожеланиям привожу инструкцию по работе с декомпилятором.
Запуск программы производится из командной строки:
GothicSourcer -zlog:l,s -zfile:name -zcomp:c,d
где: * * *-zlog: определяет уровень диагностических сообщений * * * * * *l - число от 1 до 10 уровень сообщений, рекомендуемое значение 8. * * * * * *s - оставить без изменения * * *-zfile: определяет имя *.dat или *.src файла с которым работаем * * * * * *name - имя соответствующего файла (например: gothic), поддерживается * * * * * *только 8 имен: gothic, music, menu, sfx, fight, camera, visualfx и * * * * * *particlefx. * * *-zcomp: определяет режим работы программы * * * * * *Есть три режима работы: * * * * * *1. Компиляция src файла (с = 1, d = 0). * * * * * *2. Декомпиляция dat файла (с = 0, d = 0). * * * * * *3. Компиляция декомпилированного файла (с = 1, d = 1).
Пример: GothicSourcer -zlog:8,s -zfile:menu -zcomp:1,0 - выполнит компиляцию файла menu.src, результатом будет файл menu.dat
Пояснения по папкам: * * *В папке system находится то, что там лежит. * * *В соответствующие папки ..\script\system или ..\script\content помещаются * * *исходники Готики или ее модов. В папке ..\script\_compiled создается соответствующий * * *dat файл при компиляции или помещается в нее соответствующий dat файл для * * *декомпиляции. В этой же папке создается src файл декомпилированного dat файла * * *для последующей компиляции (его имя всегда test.src). В ней же создается dat * * *файл после компиляции декомпилированного файла (его имя всегда test.dat). * * *В папке ..\_compiled\decompile создаются исходники декомпилированного dat * * *файла.
Программа GothicSourcer.exe непосредственно не выдает никаких сообщений. Для получения сообщений необходимо сначала запустить программу zSpy.exe. Сообщения будут выводиться как в окно программы, так и в лог файл в директории system.
|
|
|
23.11.2004, 23:19
|
#96
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
А чем эта инструкция отличается от той, что в ReadMe.txt?
|
Да ничем, просто ее не все прочитать могут. *::)
|
|
|
25.11.2004, 15:06
|
#97
|
|
Re: Декомпилятор скриптов Готики
2Vam:
2TycoooN: А чем эта инструкция отличается от той, что в ReadMe.txt? Да ничем, просто ее не все прочитать могут.
|
Мда, UltraEdit нужно юзать... Там DOS кодировки отлично читаются :)
|
|
|
25.11.2004, 15:10
|
#98
|
|
Re: Декомпилятор скриптов Готики
2B Wolf:
Мда, UltraEdit нужно юзать... Там DOS кодировки отлично читаются
|
В винде тоже все нормально читается, если выбрать шрифт terminal. ;D
|
|
|
25.11.2004, 17:04
|
#100
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
А зачем было делать досовскую кодировку readme, если не секрет?
|
Maybe written with FAR
|
|
|
26.11.2004, 05:59
|
#102
|
|
Re: Декомпилятор скриптов Готики
2Vam:
2DimaD: Maybe written with FAR 100% пападание в цель!
|
FAR also support Windows encoding :)
|
|
|
26.11.2004, 09:20
|
#103
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2B Wolf:
FAR also support Windows encoding
|
Maybe Vam forgot to press F8 :) Let's stop flooding ::)
|
|
|
30.11.2004, 10:40
|
#106
|
|
Re: Декомпилятор скриптов Готики
2basilio58:
А как насчёт нормального интерфейса?
|
Просто на все и сразу не хватает времени. Примерный план построения компилятора-декомпилятора: 1. Добавить к существующему обработку OU файлов (bin, csl) в обе стороны, при декомпиляции инфа из OU переходит в скрипты, при компиляции создается рабочий файл ou.bin. Над этим сейчас и работаю. 2. Распространить все возможности программы на Готику2 и ее моды. 3. Создать графическую оболочку для работы с файлами скриптов и выполнения компиляции-декомпиляции (а-ля Visual C++ 6.0 или Borland Builder 5.0). По этому пункту не помешала бы помощь программистов, знающих указанные системы, если конечно оные есть и с желанием и со свободным временем. По скромным прикидкам, работая одному, на все это надо примерно полгода.
Sorry за наглость, просто ДАЛЕКО не все смогут пользоваться программой.
|
В чем трудность использовать готовую программу? Проинсталить Готику2 и ее моды (так чтобы все нормально работало) задача куда более сложная. Обращайтесь с вопросами, помогу! Если человек разбирается в скриптах, то разобраться с декомпилятором - плевое дело. ;) Я понимаю, что неудобно "спать на потолке", но это временно. ;D
|
|
|
30.11.2004, 19:44
|
#107
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
2. Распространить все возможности программы на Готику2 и ее моды.
|
Ну это можно сделать и после выхода декомпилятора для Г1 :)
По скромным прикидкам, работая одному, на все это надо примерно полгода.
|
Ты это серьёзно? Может стоит упростить что-нибудь, а то полгода - больно уж долго ::)
|
|
|
30.11.2004, 23:41
|
#109
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
Ну это можно сделать и после выхода декомпилятора для Г1
|
Ты предлагаешь сначала адаптировать декомпилятор для Готики2, а затем продолжить с OU, я правильно понял? 2basilio58:
А тебе не помогут случайно проги ou.bin to ou.csl, и тому подобные, от Bigglass?
|
Насколько я знаю, эти проги конвертят csl в bin и наоборот (это довольно просто), а к скриптам они никакого отношения не имеют. Вообще-то файлы OU это ZenGin Archive, архив структур, классов и всей прочей лабуды, которая есть в экзешнике, в таком же формате записываются и все игровые сейвы. Пока реализую архивные структуры, но так еще до конца и не понял как формируется архив из скриптов. :(
|
|
|
01.12.2004, 00:11
|
#110
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Ты предлагаешь сначала адаптировать декомпилятор для Готики2, а затем продолжить с OU, я правильно понял?
|
Не совсем. Я предлагаю сначала сделать всё для Г1 и лишь потом переключится на Г2 :)
|
|
|
01.12.2004, 11:52
|
#111
|
|
|
|
|
*
Регистрация: 29.08.2004
Сообщений: 1
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Насколько я знаю, эти проги конвертят csl в bin и наоборот (это довольно просто), а к скриптам они никакого отношения не имеют. Вообще-то файлы OU это ZenGin Archive, архив структур, классов и всей прочей лабуды, которая есть в экзешнике, в таком же формате записываются и все игровые сейвы. Пока реализую архивные структуры, но так еще до конца и не понял как формируется архив из скриптов.
|
Все дело в том, что уже сейчас есть крмвые пути создания и редактирования Ou.csl (Ou.dat) средствами самой игры. Я вообще это делаю врукопашную - морока геморой но за то игру лучше понимаешь. Поэтому - Думаю что сейчас лучше сосредоточится на совместимости и кросс возможностям Г1, Г2, Г2а и МОД-ов - это пройдет видимо легче в плане именно продолжения работ, а навеска Ou.csl (Ou.dat) скорее придет в ходе работ и видимо намного быстрее, чем через пол года. Сорри ИМХО.
|
|
|
02.12.2004, 10:30
|
#112
|
|
Re: Декомпилятор скриптов Готики
2TycoooN:
Я предлагаю сначала сделать всё для Г1
|
Скажи, что в твоем понятии значит "все"? 2Pa:
лучше сосредоточится на совместимости и кросс возможностях Г1, Г2, Г2а и МОД-ов
|
Про совместимость я понял, а что такое "кросс возможности"?
|
|
|
02.12.2004, 10:42
|
#113
|
|
Re: Декомпилятор скриптов Готики
2Vam:
Создать графическую оболочку для работы с файлами скриптов и выполнения компиляции-декомпиляции (а-ля Visual C++ 6.0 или Borland Builder 5.0). По этому пункту не помешала бы помощь программистов, знающих указанные системы, если конечно оные есть и с желанием и со свободным временем.
|
Я знаю Delphi :) Но толку от этого. только если твой код запихать в dll :)
|
|
|
02.12.2004, 13:22
|
#114
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
Я знаю Delphi. Но толку от этого. только если твой код запихать в dll
|
Delphi, как я знаю, это Паскаль (с которым я не дружу). Конечно, можно создать dll, оболочку написать на Дельфи, но это будет ограниченное взаимодействие ядра и оболочки. Я хотел оболочку сделать в виде менеджера проекта с редактором скриптов и многими сопутствующими функциями, а в этом случае подразумевается широкая взаимосвязь с ядром, которую довольно сложно реализовать на разных языках, если не использовать API интерфейс, а это только дополнительная морока. :)
|
|
|
02.12.2004, 14:44
|
#116
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
Builder полноценным компилятором C не считаю
|
А чем тебе так не нравится CBuilder 5.0, в нем очень быстро можно сделать любую графическую оболочку, правда взаимосвязь с функциями Винды слабовата, на в нашем случае это и не требуется. (Вообще-то, сам Билдер написан на Дельфи). В общем, могу сказать так, если есть желание помочь, я не против. Если хочешь делать оболочку на Дельфи, то в этом я помочь тебе не смогу, просто Паскаль не знаю. А что хотелось бы реализовать, ты наверно понял, в первую очередь интерфейс я-ля компилятор, по аналогии с Visual Studio или CBuilder (окно проектов, редактор файлов скриптов, окно вывода сообщений, системные меню с кнопками быстрого вызова, и, наверное, подсказки при вводе базовых функций скриптов с параметрами). Dll библиотеку с доп. функциями я могу сделать без проблем. ;)
|
|
|
02.12.2004, 15:22
|
#118
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
пока в принципе могу сделать графический лоадер
|
Он может быть реализован, имхо, а-ля Gothic Starter. *:)
Народ, вам это нужно или нет?
|
Я за.
|
|
|
02.12.2004, 19:12
|
#119
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2DimaD:
Народ, вам это нужно или нет?
|
Мне не нужно, т.к. с имеющимся декомпилятором можно всё без графического интрефейса делать. Лучше сосредоточиться на более важных вещах :) (создать полноценный декомпилятор)
|
|
|
02.12.2004, 22:44
|
#120
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Декомпилятор скриптов Готики
2DimaD: Вообще то пока не особо, хотелось бы дождатся, когда (это я не подгоняю, я просто констатирую факты) Vam разберется со всей этой структурой, чтобы в итоге получить, как он сказал (у меня аж слюни потекли от такой вещи, клава чуть не коротнула :)), что то типа Visual Studio.
|
|
|
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
|
|
Ваши права в разделе
|
|
|
|
Текущее время: 04:51. Часовой пояс GMT +4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|