• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

Gothic Sourcer

marazmus

★★★★★★★★★★★
Основатель
Регистрация
7 Янв 2003
Сообщения
2.117
Благодарности
914
Баллы
385
  • Первое сообщение
  • #1

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Есть разрывы в путях веев, единственный вариант, который приходит мне в голову. Тоесть между исходным веем и веем конечным нет связи. Мы таким путем, дабы не париться с AI_Teleport() реализовали вставку жука в доме.


Эта проблема сильно выражена на висте, на семерке тоже бывает. Так что не парься и ставь ХР второй осью ;)
А на висте не то что файлы, целые игры пропадали))))

Нееее.. все хватет с меня масдая, стану красноглазиком, и поставлю линух под KDE рабочим столом и все, там хотябы сорсер пашет НОРМАЛЬНО хоть и через вайн..

Стану Кадерастом!
 

George_M

Участник форума
Регистрация
17 Дек 2010
Сообщения
692
Благодарности
18
Баллы
255
Встретил при работе над переводом Dark Mysteries странный глюк. При попытке открыть проект программа просто вылетает. Вычислил кусок в скриптах, который к этому приводит:
INSTANCE Bugsoup (C_INFO)
{
npc = PC_Hero;
condition = Bugsoup_Condition;
information = Bugsoup_Info;
important = 0;
permanent = 1;
description = "Рагу из мяса жуков.";
};

FUNC INT Bugsoup_Condition()
{
if (MobUse == Cooker_Used)
{
return 1;
};
};

func void Bugsoup_Info ()
{
if (Npc_HasItems (other,ItAt_Meatbug_01)>=1)
{
AI_StopProcessInfos (self);
Npc_RemoveInvItems (hero, ItAt_Meatbug_01, 1);
CreateInvItems (hero, ItFoMeatbugragout, 1);
Cook ();

}
else
{
AI_StopProcessInfos (self);
PrintScreen ("Нет нужных ингредиентов.", -1,-1,"font_old_20_white.tga",3);
MobUse = 0;
};
};
Я его просто разремил для разнообразия. В общем, убрал его назад и проблемы нету, но уж очень хочется понять, почему этот кусок кода приводит к вылету на стадии простого открытия проекта. Там таких рецептов несколько и они от данного по сути не отличаются, но к сбоям не приводят.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
George_M, Соурсер вылетает не из-за этого, а от того что в скриптах некоторыми функциями передается значение которое Соурсер не может передать, а именно - строку. Поэтому работа со скриптами из Соурсера бесполезна, пользуй Спейсер.
 

George_M

Участник форума
Регистрация
17 Дек 2010
Сообщения
692
Благодарности
18
Баллы
255
MaGoth, в данном случае он вылетает именно из-за приведенного мной куска скрипта. Я не могу понять, какая в нем строка куда-то передается?
Для примера, другой рецепт в том же файле - он к вылетам не приводит.
INSTANCE zupa_z_ziela (C_INFO)
{
npc = PC_Hero;
condition = ziele_Condition;
information = ziele_Info;
important = 0;
permanent = 1;
description = "Травяной суп.";
};

FUNC INT ziele_Condition()
{
if (MobUse == Cooker_Used) && ( (zupazwarzyw == LOG_RUNNING))
{
return 1;
};
};

func void ziele_Info ()

{
if (Npc_HasItems (other,ItFo_Plants_Herb_01)>=2) && (Npc_HasItems (other,ItFo_Plants_Berrys_01))

{
AI_StopProcessInfos (self);
Npc_RemoveInvItems (hero, ItFo_Plants_Herb_01, 2);
Npc_RemoveInvItems (hero, ItFo_Plants_Berrys_01, 1);
CreateInvItems (hero, ZIELSKO,1);
Cook ();
}
else
{
AI_StopProcessInfos (self);
PrintScreen ("Нет нужных ингредиентов.", -1,-1,"font_old_20_white.tga",3);
MobUse = 0;
};
};
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
George_M, Читай выше, ибо как поведет себя Соурсер в данном случае, одному Соурсеру известно...
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
MaGoth, в данном случае он вылетает именно из-за приведенного мной куска скрипта. Я не могу понять, какая в нем строка куда-то передается?
Для примера, другой рецепт в том же файле - он к вылетам не приводит.
INSTANCE zupa_z_ziela (C_INFO)
{
npc = PC_Hero;
condition = ziele_Condition;
information = ziele_Info;
important = 0;
permanent = 1;
description = "Травяной суп.";
};

FUNC INT ziele_Condition()
{
if (MobUse == Cooker_Used) && ( (zupazwarzyw == LOG_RUNNING))
{
return 1;
};
};

func void ziele_Info ()

{
if (Npc_HasItems (other,ItFo_Plants_Herb_01)>=2) && (Npc_HasItems (other,ItFo_Plants_Berrys_01))

{
AI_StopProcessInfos (self);
Npc_RemoveInvItems (hero, ItFo_Plants_Herb_01, 2);
Npc_RemoveInvItems (hero, ItFo_Plants_Berrys_01, 1);
CreateInvItems (hero, ZIELSKO,1);
Cook ();
}
else
{
AI_StopProcessInfos (self);
PrintScreen ("Нет нужных ингредиентов.", -1,-1,"font_old_20_white.tga",3);
MobUse = 0;
};
};
а ты не пробовал вставить в диалог еще параметр
тоесть чтобы было так
Код:
INSTANCE Bugsoup (C_INFO)
{
npc = PC_Hero;
condition = Bugsoup_Condition;
information = Bugsoup_Info;
important = 0;
nr = 1; вот
permanent = 1;
description = "Рагу из мяса жуков."; 
};
 

George_M

Участник форума
Регистрация
17 Дек 2010
Сообщения
692
Благодарности
18
Баллы
255
Saturas, кусок скрипта, приведенный во втором моем посте ошибок не вызывает - я его потому и привел, что разницы вроде как нет и таких рецептов там подряд пол дюжины идет и все без nr, но все работают, а один - выкидывает.
P.S. На всякий случай проверил совет - выкидывает как и раньше.

ХА! Нашел точно причину вылета - такое поведение на конструкцию //*/ в конце файла! Да, //* в конце любого файла тоже приводит к вылету при загрузке проекта!
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
George_M,
ХА! Нашел точно причину вылета - такое поведение на конструкцию //*/ в конце файла! Да, //* в конце любого файла тоже приводит к вылету при загрузке проекта!
А почему ты не указываешь в своем примере скрипта этот кусок кода, или ты думаешь что тут все телепаты и видят твой скрипт на расстоянии ?
И как я теперь понимаю у тебя старая версия скриптов МТ ?
 

George_M

Участник форума
Регистрация
17 Дек 2010
Сообщения
692
Благодарности
18
Баллы
255
MaGoth, ну чайник я - мне и в голову не могло прийти, что вылет из-за зареминой строчки, да и отключенные строчки считать куском кода это как-то очень куртуазно:D Ведь когда она была зеремина с идущим выше куском, то проблем не было.

А что касается старой версии скриптов, это смотря как на это смотреть - у меня последняя версии 2.02, которую на официальном сайте Поземкиз назвали финальной версией мода.
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Люди, я чета не врубаюсь, зачем вам вырубил поддержку командной строки из гс 3.14 ?
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Saturas, Ты че курил?
В ГС версии 3.0 и выше поддержка командной строки не предусмотрена. ::)
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
а я о чем гуарю?) Зачем было ее выпиливать?) оставил-бы как было. нада ему написать кароче, и сказать чтобы забилдил сборку с поддержкой... бо по отдельности компилить скрипты, и мод файл действует на нервы)
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Saturas, Юзай 2.40, какая проблема ? :D
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Да юзал бы, но трабла есть, не хочет компилить то что охотно компилит 3.14)

Bump: Зы, та-же ошЫбка при попытке компилить спейсером)
 

Dimmell

Участник форума
Регистрация
23 Ноя 2008
Сообщения
2.899
Благодарности
111
Баллы
285
бо по отдельности компилить скрипты, и мод файл действует на нервы)
А галимый батник влом написать? :D
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Мда, ты не понял суть, я и так мод файл компилю одним кликом по ярлыку, суть в другом, чтобы жмешь батник Компилить, и сначала компилит, а патом еще и в мод собирает)
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Saturas,
.. суть в другом, чтобы жмешь батник Компилить, и сначала компилит, а патом еще и в мод собирает)
Чет де-то у мня такой универсальный файлик валялся, может дам если встречу на винтах, это из старых солянок инсталлеров... :D
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
да тут делов том что 2.40 не компилит мои скрипты, я то знаю как такой написать)
в том-же месте и спейсер матюкаеца)

Bump: причина в том что обращение к инстанции предмета, стоит до самого предмета, а иначе ни как)
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Ну я хз, 2.40 не пользуюсь по определению, слишком древний раритет... ::)
 

kraw


Модостроитель
Регистрация
11 Окт 2005
Сообщения
2.095
Благодарности
871
Баллы
295
"батник, батник..." Давно есть такой инструмент как make. Правда не уверен, что под виндой он работает. Но в юниксах при помощи него очень удобно организовывать компилляции и сборки.
 
Сверху Снизу