Beckham

Паладин
Регистрация
9 Ноя 2006
Сообщения
189
Репутация
0
Адрес
Днепропетровск
LD3O

Опять же, из того, что ты написал нереально сделать однозначно вывод по поводу того, в чем ошибка.
Причин море может быть: не начал заново игру, нет такого вэйпоинта, не зменился файл скриптов в игре, а возможно элементарно твоя функция, внутри которой ты прописал встакуНПС, не срабатывает (т.е. не вызывается где надо).
Возможно и многое другое, надо подробно смотреть.
 

ghost

Воин Инноса
Регистрация
31 Июл 2007
Сообщения
415
Репутация
0
Не получается вставить монстра в игру, вродь в стартапе все правильно прописал:
Wld_InsertNpc (Zombie02, "NW_XARDAS_TOWER_04");

В спейсере замена скриптов проходит без ошибок, но в игре изменений нет. :unsure:
:) Есть странная особенность - моды/изменения плохо переносят фрагментацию HDD (глючность, невосприимчивость и т.д.), попробуй сделать физический раздел под свои разработки, или лучше, если это позволяет система, используй VMWare... Хотя в последнем случае есть свои особенности (но если занялся модемейкерством, то с системой скорее всего уже хорошо знаком)...
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
Beckham вейпоинт такой существует, потому что я место старого монстра (овца возле башни Ксара) прописал нового(зомби), потом сохранил и заменил скрипты через спейсер (gothicsourcer еще не овладел).
 

Kapitan_Greg

Воин Инноса
Регистрация
19 Окт 2007
Сообщения
351
Репутация
0
LD3O, значит пора овладевать! :)
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
УРАААААААААААААААА!!!!! Наконецто у меня получилось всатавить НПС в игру, проблема, скорей всего была из-за кряка на Готу. Теперь осталось научится делать диалоги и буду приступать за клепание мода.

Пы.Сы. Вот такая проблемка у меня в игра стала на половину немецкая( диалоги по немецки). Подскажите, что сделать?
 

redleha

Administrator
Команда форума
Регистрация
28 Фев 2008
Сообщения
1,492
Репутация
426
Адрес
г.Новокуйбышевск Самарская обл.
Пы.Сы. Вот такая проблемка у меня в игра стала на половину немецкая( диалоги по немецки). Подскажите, что сделать?
А ты случаем не через GothicStarter запускаешь? какой-нибудь GothicGame.ini :)
Запускай Gothic2.exe в папке System.
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
Пробовал всеми способами, всеравно табличка снизу, где игрок выбирает, что будет говорить ГГ по немецки. :unsure:

И еще вопросик: при создании диалогов, там надо удалить бин файл в папке Cutscene, но у меня его нет (покрайней мере я так думаю :D ), там есть: зип-архив(Ou.ISO), Ou.dat , OU.csl , Ou.lsc . Какой из них бин файл?
 

Beckham

Паладин
Регистрация
9 Ноя 2006
Сообщения
189
Репутация
0
Адрес
Днепропетровск
LD3O

ну Cutscene только если использрваны тексты диалога не в самом скрипте, а из файла, если я правильно помню.
Например, у Лебедеффа так было.
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
Итак, попробовал создать диалог с мини квестом по образцу DEDEROITа, ou файли сделал с помощью проги вама. Когда начал комплектировать повыдавало до фига ошибок, но квест сработал, только есть два НО : 1) разговор ГГ с нпс не показуется ( нету той таблички сверху). 2) При окончании квеста игра вылетает :unsure: .
 

MaGoth

Хранитель форума
Регистрация
30 Авг 2006
Сообщения
2,024
Репутация
0
Адрес
Самара
LD3O
Пробовал всеми способами, всеравно табличка снизу, где игрок выбирает, что будет говорить ГГ по немецки.
При установке G2MDK, нужно убрать галочки со скриптов(Skripte), тогда они остануться русскими.

И еще вопросик: при создании диалогов, там надо удалить бин файл в папке Cutscene, но у меня его нет (покрайней мере я так думаю  ), там есть: зип-архив(Ou.ISO), Ou.dat , OU.csl , Ou.lsc . Какой из них бин файл?
Если бина нет, то при запуске новой игры он должен быть создан автоматичсеки из файла OU.csl - экзешником Готы. Иначе, прогой Готик Соурсер, но данный оу применим только к датникам созданным в компиляторе. :)

Итак, попробовал создать диалог с мини квестом по образцу DEDEROITа, ou файли сделал с помощью проги вама. Когда начал комплектировать повыдавало до фига ошибок, но квест сработал, только есть два НО : 1) разговор ГГ с нпс не показуется ( нету той таблички сверху). 2) При окончании квеста игра вылетает  :unsure:.
Ошибки нужно править ручками, пока ошибки не исправлены компилляция завершена не будет.
Что до диалога, то наверное писал не правильно... ;)
Скачай тутор Vam'a и почитай его, многое станет понятнее.
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
Народ хелп диалоги не высвечуются и в дневнике про мисию ни чего нету:


[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--] INSTANCE DIA_Xardas_qqq(C_INFO)
{
npc = NONE_100_Xardas;
nr = 999;
condition = DIA_Xardas_qqq_Condition;
information = DIA_Xardas_qqq_Info;
permanent = FALSE;
important = FALSE;
description = "Ксардас?!";
};

FUNC INT DIA_Xardas_qqq_Condition()
{
return TRUE;
};

FUNC VOID DIA_Xardas_qqq_Info()
{
AI_Output (other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
AI_Output (self, other,"DIA_Xardas_qqq_14_01"); //А...что?Это ты...жывой? (разкашлялся).
AI_Output (self, other,"DIA_Xardas_qqq_15_01"); //Что с тобой случилось?!Вид у тебя хреновый...
AI_Output (self, other,"DIA_Xardas_qqq_14_02"); //Аггг..( стонет от боли).Это сейчас неважно, главное мои эксперементы удались(кашляя), но каким образом?!
AI_Output (self, other,"DIA_Xardas_qqq_15_02"); //Я вижу тебя окончательно крышу снесло...
AI_Output (self, other,"DIA_Xardas_qqq_14_03"); //Cмерть!Да, точно, как я сразу не догадался...( зашелся диким кашлем) Глаз... Глаз Инноса... найди его, ты едеинственная надежда Хоринеса!
Info_AddChoice(DIA_Xardas_qqq,"Что? Глаз Инноса? Что это? Эй, ты куда?!",DIA_Xardas_qqq_e);

NONE_100_Xardas.aivar[AIV_PARTYMEMBER] = TRUE;
B_StartOtherRoutine(NONE_100_Xardas,"Go");

};

func void DIA_Xardas_qqq_e()
Log_CreateTopic(TOPIC_Xar,LOG_MISSION);//дневник.
Log_SetTopicStatus(TOPIC_Xar,LOG_Running);//дневник(миссия началась)!
B_LogEntry(TOPIC_Xar,"Что это с Ксардасом? Он был смертельно болен, какойто дрянью.Он просил меня отыскать Глаз Инноса, но что это? Какойто древний артефакт? Надобно разузнать обстановку, и вобще, где я щас нахожусь?"); //запись в дневнике.
MIS_Xar = LOG_Running;
};
AI_StopProcessInfos(self);
};

instance DIA_Xardas_qqq_EXIT(C_Info)
{
npc = DIA_Xardas_qqq;
nr = 999;
condition = DIA_Xardas_qqq_EXIT_Condition;
information = DIA_Xardas_qqq_EXIT_Info;
permanent = TRUE;
description = “Конец”;
};
func int DIA_Xardas_qqq_EXIT_Condition()
{
return TRUE;
};
func void DIA_Xardas_qqq_EXIT_Info()
{
AI_StopProcessInfos(self);
}; [!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]
 

redleha

Administrator
Команда форума
Регистрация
28 Фев 2008
Сообщения
1,492
Репутация
426
Адрес
г.Новокуйбышевск Самарская обл.
LD3O
Во-первых, навскидку, исправляй следующее:
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
FUNC VOID DIA_Xardas_qqq_Info()
{
AI_Output (other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
AI_Output (self, other,"DIA_Xardas_qqq_14_01"); //А...что?Это ты...жывой? (разкашлялся).
AI_Output (self, other,"DIA_Xardas_qqq_15_01"); //Что с тобой случилось?!Вид у тебя хреновый...
AI_Output (self, other,"DIA_Xardas_qqq_14_02"); //Аггг..( стонет от боли).Это сейчас неважно, главное мои эксперементы удались(кашляя), но каким образом?!
AI_Output (self, other,"DIA_Xardas_qqq_15_02"); //Я вижу тебя окончательно крышу снесло...
AI_Output (self, other,"DIA_Xardas_qqq_14_03"); //Cмерть!Да, точно, как я сразу не догадался...( зашелся диким кашлем) Глаз... Глаз Инноса... найди его, ты едеинственная надежда Хоринеса!
Info_AddChoice(DIA_Xardas_qqq,"Что? Глаз Инноса? Что это? Эй, ты куда?!",DIA_Xardas_qqq_e);
NONE_100_Xardas.aivar[AIV_PARTYMEMBER] = TRUE;
B_StartOtherRoutine(NONE_100_Xardas,"Go");
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]
на
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
FUNC VOID DIA_Xardas_qqq_Info()
{
AI_Output (other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
AI_Output (self, other,"DIA_Xardas_qqq_14_01"); //А...что?Это ты...жывой? (разкашлялся).
AI_Output (other,self,"DIA_Xardas_qqq_15_01"); //Что с тобой случилось?!Вид у тебя хреновый...
AI_Output (self, other,"DIA_Xardas_qqq_14_02"); //Аггг..( стонет от боли).Это сейчас неважно, главное мои эксперементы удались(кашляя), но каким образом?!
AI_Output (other,self,"DIA_Xardas_qqq_15_02"); //Я вижу тебя окончательно крышу снесло...
AI_Output (self, other,"DIA_Xardas_qqq_14_03"); //Cмерть!Да, точно, как я сразу не догадался...( зашелся диким кашлем) Глаз... Глаз Инноса... найди его, ты едеинственная надежда Хоринеса!
Info_AddChoice(DIA_Xardas_qqq,"Что? Глаз Инноса? Что это? Эй, ты куда?!",DIA_Xardas_qqq_e);
NONE_100_Xardas.aivar[AIV_PARTYMEMBER] = TRUE;
B_StartOtherRoutine(NONE_100_Xardas,"Go");
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]

Далее, чтобы у тебя была запись в дневнике, то тебе необходимо добавить в файл LOG_Constants_Yoly.d или LOG_Constants_Mattes.d
что-то типа const string TOPIC_Xar = "<kf-<kf-<kf";
Далее, заранее пропиши в StoryGlobals : var int MIS_Xar;

Ещё есть ошибка либо твоего копирования, либо просто синтаксиса, а именно:
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
func void DIA_Xardas_qqq_e()
Log_CreateTopic(TOPIC_Xar,LOG_MISSION);//дневник.
Log_SetTopicStatus(TOPIC_Xar,LOG_Running);//дневник(миссия началась)!
B_LogEntry(TOPIC_Xar,"Что это с Ксардасом? Он был смертельно болен, какойто дрянью.Он просил меня отыскать Глаз Инноса, но что это? Какойто древний артефакт? Надобно разузнать обстановку, и вобще, где я щас нахожусь?"); //запись в дневнике.
MIS_Xar = LOG_Running;
};
AI_StopProcessInfos(self);
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]
исправь на:
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
func void DIA_Xardas_qqq_e()
{
Log_CreateTopic(TOPIC_Xar,LOG_MISSION);//дневник.
Log_SetTopicStatus(TOPIC_Xar,LOG_Running);//дневник(миссия началась)!
B_LogEntry(TOPIC_Xar,"Что это с Ксардасом? Он был смертельно болен, какойто дрянью.Он просил меня отыскать Глаз Инноса, но что это? Какойто древний артефакт? Надобно разузнать обстановку, и вобще, где я щас нахожусь?"); //запись в дневнике.
MIS_Xar = LOG_Running;
AI_StopProcessInfos(self);
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]

P.S. В следующий раз обрамляй листинг скрипта в тэги спойлера, пожалуйста.
 

LD3O

Победивший Спящего
Регистрация
22 Апр 2008
Сообщения
706
Репутация
33
Адрес
г.Обухов, Киевская область
Ошибки исправил, теперь при замене скриптов ошибок не выдает, насчет дневника я в сториглобалс немного не так прописал, но теперь все работает. Осталась только одна важная проблема: диалоги не отображаются!!! :(
 

redleha

Administrator
Команда форума
Регистрация
28 Фев 2008
Сообщения
1,492
Репутация
426
Адрес
г.Новокуйбышевск Самарская обл.
Осталась только одна важная проблема: диалоги не отображаются!!! :(
Ё-моё, если только твои диалоги не отображаются, то это очень странно. Если все диалоги, то это в настройках игры надо включить субтитры.
Единственное, разве что.... убери пробелы между функцией и аргументами в скобках, т.е.
AI_Output (other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
на
AI_Output(other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
И так везде.(хотя это не принципиально).
 

. . . .Pr0gр@мmеR. . . .

Ополченец
Регистрация
15 Июл 2007
Сообщения
52
Репутация
0
Такое впечатление, что ты не шариш в програмирровании вообще.
Если так, то, для начала очень советую почитать хотяб основы С++ и ООП.
Просто, такие вещи как instance, классы - эти понятия взяты отуда, хотя и не совсем одинаково все.
CInfo - к примеру класс , а если ты не понимаешь, что такое класс или структура вообще, то просто ОЧЕНЬ трудно будет понять смысл подобных скриптов.
Я знаю, что такое классы. Знаю, что такое структуры. А то, что я, ни разу не разбирав язык скриптов готики, задал такой вопрос, не говорит о моём плохом знакомстве с программированием. Я знаю больше, чем основы С++ и ооп. Но, так или иначе, сейчас я работаю на совершенно на другом языке и голова у меня забита именно его функциями и командами. Да и язык готики, это не С++.
 

Колян

Паладин
Регистрация
2 Дек 2009
Сообщения
181
Репутация
2
Адрес
Петрозаводск
Ищу помощи у знающих людей...
Вобщем, установил я себе первую Готику, скачал для неё патч InExtremoPatch...
Но при осмотре его изнутри, обнаружил логическую ошибку...
Исправил это дело, но при компиляции в GothicSourcer v3.14 - вылезли ошибки (64 шт.) типа: Функция должна возвращать значение...
Не внимания, а именно ошибки!
В итоге Gothic.dat не создаётся...
Что делать то?
Ниже, приведён кусок из 'ошибочного файла' (я лично критической ошибки в нём не вижу), на который ругается прога...
Посмотрите опытным взгядом, что тут можно сделать...
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
func int evt_trollschlucht_gate_trigger()
{
PrintDebugNpc(PD_ITEM_MOBSI,"EVT_TROLLSCHLUCHT_GATE_TRIGGER");
if(Saturas_BringFoci > 0)
{
if(Troll_Wheel == 0)
{
G_PrintScreen(_STR_MESSAGE_WHEEL_STUCKS);
Troll_Wheel = 1;
return FALSE;
}
else if(Troll_Wheel == 1)
{
G_PrintScreen(_STR_MESSAGE_WHEEL_STUCKS);
return FALSE;
}
else if(Troll_Wheel == 2)
{
AI_UseMob(hero,"VWHEEL",1);
AI_UseMob(hero,"VWHEEL",-1);
Troll_Wheel = 3;
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_13");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_13");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_13");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_13");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_14");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_14");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_14");
Wld_InsertNpc(BlackGobboWarrior,"LOCATION_12_14");
return TRUE;
}
else
{
return FALSE;
};
}
else
{
G_PrintScreen(_STR_MESSAGE_WHEEL_STUCKS);
};
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]
Ведь функция по идее возвращает значение, хотя и при определённых условиях if(Saturas_BringFoci > 0)...
Или вот ещё
[!--SpoilerBegin--][/div][table border=\'0\' align=\'center\' width=\'95%\' cellpadding=\'3\' cellspacing=\'1\'][tr][td onclick=\'ShowTableTdFromTd(this,1)\' style=\"cursor:pointer\"]Скрытый текст (нажмите сюда, чтобы увидеть) [/td][/tr][tr][td style=\"display:none\" id=\'SPOILER\'][!--SpoilerEBegin--]
func int Info_TPL_1442_Attack_Info()
{
hero.aivar[AIV_LASTDISTTOWP] = 0;
hero.aivar[AIV_GUARDPASSAGE_STATUS] = AIV_GPS_PUNISH;
B_FullStop(self);
AI_StopProcessInfos(self);
B_IntruderAlert(self,other);
B_SetAttackReason(self,AIV_AR_INTRUDER);
Npc_SetTarget(self,hero);
AI_StartState(self,ZS_Attack,1,"");
};
[!--SpoilerEnd--][/td][/tr][/table][div class=\'postcolor\'][!--SpoilerEEnd--]
Вобще что-то не соображу никак...
 

MaGoth

Хранитель форума
Регистрация
30 Авг 2006
Сообщения
2,024
Репутация
0
Адрес
Самара
Колян
В твоих двух случаях нужно заменять тип функции на void, а в целом по ошибкам нужно смотреть по скриптам, скачай тутор Вама и ознакомься с ним, многое станет понятнее...
Тутор на воге смотри в разделе модостроения.
 

Колян

Паладин
Регистрация
2 Дек 2009
Сообщения
181
Репутация
2
Адрес
Петрозаводск
MaGoth, дорогой, посоветуй какие именно патчи (из имеющихся на данный момент) мне поставить, чтобы, чтобы избавиться от ошибок, и чтобы они не мешали друг-другу?
На форуме АГ, несколько патчей выложены, но там не сказано, будут конфликты друг с другом или нет...
А лишнего качать не охота...
Скачал еще soundpatch_gothic_rus., в него входит InExtremoPatch, или нет (если знаешь конечно)?
Просто патчей куча, но некоторые из них, дополненые предыдущие...
Запутался... :unsure:
------------------------------------------------------------------------------------------------
Вобщем, вопрос такой:
Если я поставлю вот эти патчи, то не будет проблем?
Новая версия G1PK
Описание: Обновление компонентов G1PK. Исправляет баги, связанные с экзешником игры.

GothicFps
Описание: Патч снимает лимит FPS. Устанавливается поверх обновления G1PK.
Проблемы: Один из переключателей в Храме Спящего перестанет реагировать на стрелы (некритично).

G1 OrcTempel Patch
Описание: Патч решает проблему с переключателем в Храме Спящего, возникающую при установке GothicFps.

Soundpatch fur Gothic I (Snowball)
Описание: Патч восстанавливает вырезанные звуки Г1. В том числе восстановлен концерт In Extremo.
Также исправлены критические баги:
- Невозможность вступления в маги огня.
- Сброс силы до 100 в диалоге с Горацио.
- Агрессия Горна по отношению к ГГ во время зачистки Свободной Шахты.
-----------------
Просто хочется нормально поиграть...
 
Сверху Снизу