Witam, to mój 2 dzień modowania. Nauczyłem się do tej pory tworzyć postacie, umieszczać je w świecie za pomocą pliku Startup.d i tworzyć proste dialogi/zadania.
Potrzebuję informacji jak dodać nagrany przeze mnie dubbing do skryptu dialogu? W jakim formacie ma być nagrany dialog? Jakich programów do tego użyć? Jakie pliki edytować prócz skryptu? Taki krótki tutorial.
Tu wklejam przykładowy skrypt dialogu z moim NPC:
//========================================
//-----------------> OPCJA *KONIEC*
//========================================
INSTANCE DIA_Yurishi_EXIT(C_INFO)
{
npc = SLD_888_Yurishi;
nr = 999;
condition = DIA_Yurishi_EXIT_Condition;
information = DIA_Yurishi_EXIT_Info;
permanent = TRUE;
description = "KONIEC";
};
FUNC INT DIA_Yurishi_EXIT_Condition()
{
return TRUE;
};
FUNC VOID DIA_Yurishi_EXIT_Info()
{
AI_StopProcessInfos (self);
};
//========================================
//-----------------> HELLO1
//========================================
INSTANCE DIA_Yurishi_HELLO1 (C_INFO)
{
npc = SLD_888_Yurishi;
nr = 1;
condition = DIA_Yurishi_HELLO1_Condition;
information = DIA_Yurishi_HELLO1_Info;
permanent = FALSE;
description = "Kim jesteś?";
};
FUNC INT DIA_Yurishi_HELLO1_Condition()
{
return TRUE;
};
FUNC VOID DIA_Yurishi_HELLO1_Info()
{
AI_Output (other, self ,"DIA_Yurishi_HELLO1_15_01"); //Kim jesteś?
AI_Output (self, other ,"DIA_Yurishi_HELLO1_03_02"); //Myśliwym, poluję na dzikie zwierzęta i staram się jakoś przeżyć w tej dziczy.
AI_Output (other, self ,"DIA_Yurishi_HELLO1_15_03"); //Możesz mnie czegoś nauczyć?
AI_Output (self, other ,"DIA_Yurishi_HELLO1_03_04"); //Nie, swoją wiedzę trzymam dla siebie.
};
//========================================
//-----------------> HELLO2
//========================================
INSTANCE DIA_Yurishi_HELLO2 (C_INFO)
{
npc = SLD_888_Yurishi;
nr = 2;
condition = DIA_Yurishi_HELLO2_Condition;
information = DIA_Yurishi_HELLO2_Info;
permanent = FALSE;
description = "Masz dla mnie jakieś zadanie?";
};
FUNC INT DIA_Yurishi_HELLO2_Condition()
{
return TRUE;
};
FUNC VOID DIA_Yurishi_HELLO2_Info()
{
AI_Output (other, self ,"DIA_Yurishi_HELLO2_15_01"); //Masz dla mnie jakieś zadanie, potrzebuję trochę grosza?
AI_Output (self, other ,"DIA_Yurishi_HELLO2_03_02"); //No pewnie.Przynieś mi piwo.
AI_Output (other, self ,"DIA_Yurishi_HELLO2_15_03"); //Ok postaram się.
AI_Output (self, other ,"DIA_Yurishi_HELLO2_03_04"); //Tylko się pośpiesz!
Log_CreateTopic (TOPIC_Piwo_Yurishiego, LOG_MISSION);
Log_SetTopicStatus (TOPIC_Piwo_Yurishiego, LOG_RUNNING);
B_LogEntry (TOPIC_Piwo_Yurishiego,"Mam przynieść Yurishiemu piwo");
};
//========================================
//-----------------> HELLO3
//========================================
INSTANCE DIA_Yurishi_HELLO3 (C_INFO)
{
npc = SLD_888_Yurishi;
nr = 3;
condition = DIA_Yurishi_HELLO3_Condition;
information = DIA_Yurishi_HELLO3_Info;
permanent = FALSE;
description = "Mam piwo.";
};
FUNC INT DIA_Yurishi_HELLO3_Condition()
{
if (Npc_KnowsInfo (other, DIA_Yurishi_HELLO2))
&& (Npc_HasItems (other, ItFo_Beer) >=1)
{
return TRUE;
};
};
FUNC VOID DIA_Yurishi_HELLO3_Info()
{
AI_Output (other, self ,"DIA_Yurishi_HELLO3_15_01"); //Mam piwo.
AI_Output (self, other ,"DIA_Yurishi_HELLO3_03_02"); //To dawaj.
AI_Output (other, self ,"DIA_Yurishi_HELLO3_15_03"); //Trzymaj.
AI_Output (self, other ,"DIA_Yurishi_HELLO3_03_04"); //Jednak na coś się przydałeś.
AI_Output (self, other ,"DIA_Yurishi_HELLO3_03_05"); //Masz w nagrodę 50 sztuk złota.
B_LogEntry (TOPIC_Piwo_Yurishiego,"Przyniosłem piwo Yurishiemu");
Log_SetTopicStatus (TOPIC_Piwo_Yurishiego, LOG_SUCCESS);
B_GivePlayerXP (500);
B_GiveInvItems (other, self, ItFo_Beer, 1);
CreateInvItems (self, ItMi_Gold, 50);
B_GiveInvItems (self, other, ItMi_Gold, 50);
};
Mam nadzieję, że dobry dział... ;-]
PS. Mam jeszcze kilka mniejszych pytań:
1. Czy jeżeli dodałem NPC przez plik Startup.d to będzie on przez wszystkie rozdziały tam?
2. Jak skompilować gotowy MOD który instalował by się sam z pliku .exe?
3. Zawsze muszę odpalać mod przez GothicStarterMod z opcją reparse scripts?
Pozdrawiam, Oskar