Вернуться   Форум команды Magic Team > Создание модов > Модостроение к Gothic

Важная информация

Модостроение к Gothic Как делаются моды к Готике...

Ответ
 
Опции темы Опции просмотра
Старый 02.03.2009, 20:59   #211
Готоман
Адепт
 
Аватар для LD3O
 
Регистрация: 22.04.2008
Адрес: г.Обухов, Киевская область
Сообщений: 706
Сказал(а) спасибо: 61
Поблагодарили 33 раз(а) в 19 сообщениях
По умолчанию Скриптинг

Народ хелп диалоги не высвечуются и в дневнике про мисию ни чего нету:


[!--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--]



__________________
Державне поле треба корчувати,
Щоб виросла на ньому благодать.
Да буде мир!І Богом я клянусь,
Що кожного вразить моя сокира,
Хто збаламутить Київ наш і Русь,
Хто осквернить насильством справу миру.
LD3O вне форума   Ответить с цитированием
Старый 02.03.2009, 22:30   #212
Администратор
Мастер
 
Аватар для redleha
 
Регистрация: 28.02.2008
Адрес: г.Новокуйбышевск Самарская обл.
Сообщений: 1,458
Сказал(а) спасибо: 544
Поблагодарили 419 раз(а) в 183 сообщениях
По умолчанию Скриптинг

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. В следующий раз обрамляй листинг скрипта в тэги спойлера, пожалуйста.
__________________
redleha вне форума   Ответить с цитированием
Старый 03.03.2009, 16:37   #213
Готоман
Адепт
 
Аватар для LD3O
 
Регистрация: 22.04.2008
Адрес: г.Обухов, Киевская область
Сообщений: 706
Сказал(а) спасибо: 61
Поблагодарили 33 раз(а) в 19 сообщениях
По умолчанию Скриптинг

Ошибки исправил, теперь при замене скриптов ошибок не выдает, насчет дневника я в сториглобалс немного не так прописал, но теперь все работает. Осталась только одна важная проблема: диалоги не отображаются!!!
__________________
Державне поле треба корчувати,
Щоб виросла на ньому благодать.
Да буде мир!І Богом я клянусь,
Що кожного вразить моя сокира,
Хто збаламутить Київ наш і Русь,
Хто осквернить насильством справу миру.
LD3O вне форума   Ответить с цитированием
Старый 03.03.2009, 17:30   #214
Администратор
Мастер
 
Аватар для redleha
 
Регистрация: 28.02.2008
Адрес: г.Новокуйбышевск Самарская обл.
Сообщений: 1,458
Сказал(а) спасибо: 544
Поблагодарили 419 раз(а) в 183 сообщениях
По умолчанию Скриптинг

Цитата:
Осталась только одна важная проблема: диалоги не отображаются!!!
Ё-моё, если только твои диалоги не отображаются, то это очень странно. Если все диалоги, то это в настройках игры надо включить субтитры.
Единственное, разве что.... убери пробелы между функцией и аргументами в скобках, т.е.
AI_Output (other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
на
AI_Output(other, self,"DIA_Xardas_qqq_15_00"); //Ксардас?!
И так везде.(хотя это не принципиально).
__________________
redleha вне форума   Ответить с цитированием
Старый 18.04.2009, 06:36   #215
Готоман
Пользователь
 
Аватар для . . . .Pr0gр@мmеR. . . .
 
Регистрация: 15.07.2007
Сообщений: 52
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
По умолчанию Скриптинг

Цитата:
Такое впечатление, что ты не шариш в програмирровании вообще.
Если так, то, для начала очень советую почитать хотяб основы С++ и ООП.
Просто, такие вещи как instance, классы - эти понятия взяты отуда, хотя и не совсем одинаково все.
CInfo - к примеру класс , а если ты не понимаешь, что такое класс или структура вообще, то просто ОЧЕНЬ трудно будет понять смысл подобных скриптов.
Я знаю, что такое классы. Знаю, что такое структуры. А то, что я, ни разу не разбирав язык скриптов готики, задал такой вопрос, не говорит о моём плохом знакомстве с программированием. Я знаю больше, чем основы С++ и ооп. Но, так или иначе, сейчас я работаю на совершенно на другом языке и голова у меня забита именно его функциями и командами. Да и язык готики, это не С++.
. . . .Pr0gр@мmеR. . . . вне форума   Ответить с цитированием
Старый 18.04.2009, 14:24   #216
Готоман
Магистр форума
 
Аватар для MaGoth
 
Регистрация: 30.08.2006
Адрес: Самара
Сообщений: 2,024
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
По умолчанию Скриптинг

.*.*.*.Pr0gр@мmеR.*.*.*.
Цитата:
Да и язык готики, это не С++.
Нет, это не С++, это модифицированный язык С.
MaGoth вне форума   Ответить с цитированием
Старый 19.04.2009, 12:00   #217
Готоман
Пользователь
 
Аватар для . . . .Pr0gр@мmеR. . . .
 
Регистрация: 15.07.2007
Сообщений: 52
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
По умолчанию Скриптинг

Разве я сказал, что это С++? оО
. . . .Pr0gр@мmеR. . . . вне форума   Ответить с цитированием
Старый 23.12.2009, 00:49   #218
Готоман
Ученик
 
Аватар для Колян
 
Регистрация: 02.12.2009
Адрес: Петрозаводск
Сообщений: 181
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 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_TROLLSCHLUCH T_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--]
Вобще что-то не соображу никак...
Колян вне форума   Ответить с цитированием
Старый 23.12.2009, 01:01   #219
Готоман
Магистр форума
 
Аватар для MaGoth
 
Регистрация: 30.08.2006
Адрес: Самара
Сообщений: 2,024
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
По умолчанию Скриптинг

Колян
В твоих двух случаях нужно заменять тип функции на void, а в целом по ошибкам нужно смотреть по скриптам, скачай тутор Вама и ознакомься с ним, многое станет понятнее...
Тутор на воге смотри в разделе модостроения.
MaGoth вне форума   Ответить с цитированием
Старый 23.12.2009, 02:22   #220
Готоман
Ученик
 
Аватар для Колян
 
Регистрация: 02.12.2009
Адрес: Петрозаводск
Сообщений: 181
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 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 в диалоге с Горацио.
- Агрессия Горна по отношению к ГГ во время зачистки Свободной Шахты.
-----------------
Просто хочется нормально поиграть...
Колян вне форума   Ответить с цитированием
Ответ

Метки
доп.программы, полезная информация, скриптинг, советы, ссылки


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 05:33. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot
Magic Team© 2006-2019, The development and modification