Dodanie własnego dubbingu do prostego dialogu. 3671 6

O temacie

Autor O Z I

Zaczęty 22.10.2010 roku

Wyświetleń 3671

Odpowiedzi 6

O Z I

O Z I

Użytkownicy
posty15
  • Użytkownicy
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
 

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
Nagryawsz np Mam Piwo i zapisujesz pod nazwą DIA_Yurishi_HELLO3_15_01.wav, podobnie z innymi i potem do paczki z modem to dajesz. Tylko nie pamiętam jaką jakość trza było ustawić.

1.No raczej tak. Jak chcesz aby zniknął to chyba jest tam jakaś funkcja od tego.
2.Nie rozumiem ? Tworzysz normalny instalator który będzie wgrywał pliki do odpowiednich podkatalogów
3.Tak jest imho najlepiej i bez problemów. Można też jakoś przez Spacera chyba.
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

O Z I

O Z I

Użytkownicy
posty15
  • Użytkownicy
Jeżeli chodzi o te 3 pytania na końcu to dzięki, w miarę takich odpowiedzi oczekiwałem. Zobaczyłem, że jak odpalam zwykłym GothicStarterem też mod działa prawidłowo ;]

Co do dubbingu.

Nagrywam programem Audacity, eksportuję do pliku wav np. DIA_Yurishi_HELLO3_15_01.wav dla tekstu "Mam piwo". Z próbkowaniem domyślnym dla Gothica II NK 22kHz.

Ale nie rozumiem dalej, wrzucam do paczki z modem tzn? Do pliku ***.mod przy tworzeniu go programem VDFS? A skrypt sam będzie wiedział skąd pobrać sobie ten plik podczas dialogu?

Czyżby to było takie proste?

PS. Polecasz jakiś w miarę prosty, polski "generator instalatorów" .exe?

EDIT:

Jeśli chodzi o dialogi to dzięki, działają, tylkp rzy dodawaniu ich VdFS'em muszą być gdzieś w katalogu Gothica...dzięki za pomoc...
 

Sulejman

Sulejman

Użytkownicy
Piotrek
posty237
Propsy229
Profesjabrak
  • Użytkownicy
  • Piotrek
 

O Z I

O Z I

Użytkownicy
posty15
  • Użytkownicy
A mam jeszcze pytanie, bo przecież jak robię moda to pakuję to wszystko spacerem jak i VDFS'em to które pliki mam dodać do instalatora?

Na 100% plik ***.mod, pliki gothicstartera, ***.ini dla startera i coś jeszcze?
 

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
Plik .mod plik .ini oraz jakieś filmy jak masz zamiar dodawać i chyba tyle ? To zależy jak chcesz sobie zrobić, czy chcesz np łatwiej patchować później moda to robisz vdfy i dodajesz każdą rzecz odzielnie, tj speech,skrypty,textury,worldy itp albo pakujesz wszystko w jeden plik .mod
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

O Z I

O Z I

Użytkownicy
posty15
  • Użytkownicy
Ok, dzięki za przydatne informacje przyda się za jakiś czas ;)
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry