Показать сообщение отдельно
Старый 07.03.2005, 17:43   #406
Vam

AGFC
Гость
 
Сообщений: n/a

По умолчанию Re: Декомпилятор скриптов Готики

2Donate2005 и другим
Сначала предлагаю соблюдать порядок:
1. Вопросы конкретно по Урокам скриптологии -> в соотв. тему.
2. Общие и разные вопросы по скриптам -> в тему Скриптинг в Готике.
3. По декомпилятору -> сюда.

Появились жалобы на декомпилятор, что возникают ошибки при декомпиляции (при компиляции их быть не может!!!), да, это возможно, но для их устранения мне необходима помощь всех, кто использует декомпилятор не только для изучения скриптов, но для переводов их и создания новых модов, т.е. помощь тех, кто заинтересован, что его продукт будет без глюков (я один не могу проработать все варианты).
Ошибки возможны в случае переопределенных типов, это самый вероятный их источник.
По этому поводу я много говорил в этой теме, всем заинтересованным советую перечитать ее заново.
Сейчас в декомпиляторе имеется возможноть облегчить эту задачу: если в ключе -zlog: поставить уровень сообщений на 9, то в лог файле зеленым цветом и со словами Потенциальный INT будут выданы все места возможных ошибок. Другое дело как их проверить и исправить - возможны варианты: проверять лучше (кто не особо хорошо разбирается в скриптах) сравнивая декомпилированные скрипты с исходными скриптами Готики 1 или 2, ну, и естественно , сообщать мне.

2Donate2005:

Миранду скачал и посмотрел, ошибка в файле C_PCIsInMyRoom
Фрагмент оригинала -
 * * *if ((self == owner) || (Wld_GetGuildAttitude( self.guild, portalowner ) == ATT_FRIENDLY) )
 * * *{  * * * * * *
 * * * * * *return 1;
 * * *}  * * *

а в твоем моде -
* * *if((self == 2165) || (Wld_GetGuildAttitude(self.guild,portalowner) == ATT_FRIENDLY))
* * *{
* * * * * *return 1;
* * *}

необходимо 2165 заменить на owner

Как устранить это в декомпиляторе буду думать!

ЗЫ: Если что либо непонятно по переопределенным типам и потенциальным ошибкам, лучше спросить не стесняясь, благо есть кому ответить!  ;)
Ответить с цитированием