Problem z monologiem 14718 56

O temacie

Autor Orion

Zaczęty 10.05.2013 roku

Wyświetleń 14718

Odpowiedzi 56

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy

Orion

Problem z monologiem
2013-05-10, 23:00(Ostatnia zmiana: 2013-05-10, 23:15)
Witam,
stworzyłem swój monolog, który umożliwia kowalstwo, jednak nie mogę go włączyć w grze. Na początku myślałem, że robię błąd podczas tworzenia paczki z modem, jednak nie w tym problem, ponieważ sprawdziłem to dodając opcję dialogową Orry'emu, oraz dodając opcję w monologu spania, która tylko nam wyświetla napis. Oczywiście dialog i napis działają.

Mój plik z monologiem nazywa się Forgeabit.d, i znajduje się w Gothic\_Work\Data\Scripts\Content\Story\EVENTS, czyli tam gdzie Sleepabit.d. Muszę jeszcze powiedzieć, że ustawiam w Spacerze OnStateFunction kowadła na Forgeabit.d, ale wciąż nic. Po rozmowie z Huno (tak jak mam to ustawione w skrypcie), podchodzę do kowadła, i dzieje się to samo co w grze, czyli jedynie animacja, oraz przerabianie rozgrzanej stali na niewykończony miecz. Sprawdzałem skrypty Spacerem i Mod_Starterem.

Oto mój skrypt Forgeabit.d:
Spoiler

func void Forgeabit_S1()
{
MonologUse=Forge_Use;
self.aivar[AIV_INVINCIBLE]=TRUE;
AI_ProcessInfos(self);
};

instance NoForgeLearned (C_Info)
{  
    npc = PC_Hero;
    condition = NoForgeLearned_condition;
    information = NoForgeLearned_info;
    important = 0;
    permanent = 1;
    description = "Nie potrafisz korzystać z kowadła!";
};

func int NoForgeLearned_condition()
{
    if (MonologUse == Forge_Use) && (Huno_LearnSmith == FALSE)
    {
            return 1;
    };
};

func void NoForgeLearned_info()
{
    MonologUse=0;
    AI_StopProcessInfos (self);
    self.aivar[AIV_INVINCIBLE] = FALSE;
};


instance NoForge (C_Info)
{
npc = PC_Hero;
nr = 999;
condition = NoForge_condition;
information = NoForge_info;
important = 0;
permanent = 1;
description = DIALOG_ENDE;
};

func int NoForge_condition()
{
if (MonologUse == Forge_Use)
{
return 1;
};
};

func void NoForge_info()
{
AI_StopProcessInfos (self);
self.aivar[AIV_INVINCIBLE] = FALSE;
};


//Niewykończony miecz
instance PC_ForgeMainSword1 (C_Info)
{
  npc = PC_Hero;
  nr = 1;
  condition  = PC_ForgeMainSword1_Condition;
  information  = PC_ForgeMainSword1_Info;
  important  = 0;
  permanent  = 1;
  description  = "Wykuj niewykończony miecz";
};

func int PC_ForgeMainSword1_Condition()
{
  if (MonologUse == Forge_Use) && (Huno_LearnSmith == TRUE)
  {
  return 1;
  };
};

func void PC_ForgeMainSword1_Info()
{
 if((Npc_HasItems(other,ItMiSwordrawhot) >= 1 ))
 {
  Npc_RemoveInvItems (other,ItMiSwordrawhot,1);
  CreateInvItems (other,ItMw_1H_Sword_01,1);
 }
 else
 {
  Print("Potrzebuję kawałka stali");
 };
};




Zapomniałem dodać, że w Story_Globals.d dodałem coś takiego:
var int MonologUse;
const int Sleep_Use=1;
const int Forge_Use=2;
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Cytuj
Muszę jeszcze powiedzieć, że ustawiam w Spacerze OnStateFunction kowadła na Forgeabit.d, ale wciąż nic
Nie masz ustawić tam nazwy pliku Forgeabit.d, tylko nazwę funkcji Forgeabit.

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy

Orion

Problem z monologiem
#2 2013-05-11, 06:54(Ostatnia zmiana: 2013-05-11, 06:55)
Ustawiłem w spacerze OnStateFunction na Forgeabit, ale dalej to samo. Jednak aby sprawdzić, czy jakiś błąd robię ze Spacerem dodałem 10 niewykończonych mieczy w skrzynce obok Huno. Normalnie są dwa, problem w tym, że gdy zmieniłem tam na 10 i kliknąłem Apply, zrobiłem paczkę i włączyłem moda, są tam dwa. Możliwe, że źle robię paczkę. Oto jak to u mnie przebiega:
-Sprawdzam skrypty
-Aktualizuje i zapisuje dialogi Spacerem
Otwieram GothicVDFS.exe
-Klikam na (MOD-Builder), w Filename ustalam nazwę moda, i zapisuję go w C:\Program Files\Piranha Bytes\Gothic\Data\ModVDF,  w Root Path ustawiam folder z Gothikem, i przechodzę do okna File(mask)(s) to include, dodaję tam plik Gothic. dat, OU.BIN, OLDCAMP.ZEN (ponieważ tylko w tym Zenie dokonuję zmian Spacerem).
-Tworzę plik (nazwamoda).ini i zmieniam tam opis, wersję itd.
-Włączam moda za pomocą GothicStarter.exe.
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
W pliku konfiguracyjnym masz ustawione world = OldCamp.zen?

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Chodzi o plik w folderze System z nazwą mojego moda?
Mam tam tak:
[SETTINGS]
player=PC_HERO
world=World.zen

Mam zmienić na world=OldCamp.zen?
 

gothic1210
  • Gość
Nie, nie zmieniaj tego. Jak otwierasz świat spacerem to co otwierasz? WORLD.ZEN czy OLDCAMP.ZEN? Powinieneś ten  pierwszy. PB robiło świat po kawałku i potem go połączyli w jeden, który jest wczytywany w grze. Dodaj te miecze czy coś w WORLD.ZEN a nie w OLDCAMP i powiedz czy działa.
 

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Tylko gdzie jest plik WORLD.ZEN? Nie mogę go znaleźć nawet w wyszukiwaniu.
 

gothic1210
  • Gość
Tylko gdzie jest plik WORLD.ZEN? Nie mogę go znaleźć nawet w wyszukiwaniu.
Przypomniało mi się, że w GMDK go chyba nie było, ale pewnie masz wszystkie jego części. Możesz je połączyć w Spacerze, albo najprościej wyciągnąć z Worlds.vdf.
 

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Nigdzie o takich operacjach w omówieniach monologów do G1 nie wspominają, więc może jest prostszy sposób. Nie mam pojęcia jak wciągnąć ten plik.
 

gothic1210
  • Gość
Chociażby Gomanem. Program, którym robisz paczkę (GothicVDFS) też powinien sobie poradzić.
 

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Ok, wiem jak wyciągnąć, tylko że nie wiem czy mam wyciągnąć wszystkie pliki z Worlds.vdf czy tylko WORLD.ZEN.
No i do tego nie wiem gdzie powinienem zapisać zmiany dokonane w Spacerze. Do pliku Worlds.vdf, czy po prostu zapisać np. w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Worlds\_work, czyli tam gdzie OLDCAMP.ZEN itd., a potem wrzucić do paczki z modem. Zaraz zobaczę jak to wygląda.
 

gothic1210
  • Gość

gothic1210
Gość

Problem z monologiem
#11 2013-05-11, 13:26(Ostatnia zmiana: 2013-05-11, 13:28)
Ok, wiem jak wyciągnąć, tylko że nie wiem czy mam wyciągnąć wszystkie pliki z Worlds.vdf czy tylko WORLD.ZEN.
No i do tego nie wiem gdzie powinienem zapisać zmiany dokonane w Spacerze. Do pliku Worlds.vdf, czy po prostu zapisać np. w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Worlds\_work, czyli tam gdzie OLDCAMP.ZEN itd., a potem wrzucić do paczki z modem. Zaraz zobaczę jak to wygląda.
Tylko WORLD.ZEN. Zmiany zapisuj tak jak mówisz. Aha. Jedna rzecz. Jak zapiszesz ten twój świat jako WORLD.ZEN i potem go otworzysz to zmiany nie będą widoczne. Dlaczego? Bo masz Worlds.vdf. Musiałbyś zmienić jego rozszerzenie np na *.off, albo tymczasowo go przenieść. Ja robię to tak, że świat zapisuję jako WORLD_01.ZEN, a jak chcę złożyć paczkę to dopiero wtedy zmieniam nazwę na prawidłową.
 

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy

Orion

Problem z monologiem
#12 2013-05-11, 13:35(Ostatnia zmiana: 2013-05-11, 21:05)
Czyli jak? Zapisuję zmiany w tym pliku jako WORLD_01.ZEN, i zapisuję go w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Worlds\_work, a potem zmieniam jego nazwę na World.zen?

Edit:

Chyba nie do końca zrozumiałem co mam zrobić. Zrobiłem tak:
-Wyciągnąłem World.zen z Worlds.vdf
-Pozmieniałem tam co trzeba w Spacerze
-Zapisałem to jako WORLD_01.ZEN w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Worlds\_work
-Zmieniłem nazwę na World.zen i dodałem do paczki z modem, jednak żadnych zmian nie widać

Dziękuję wszystkim, już działa, rozgryzłem o co chodzi w Twoim poście, i już mam swoje kowalstwo w grze.
 

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Odświeżam temat, ponieważ mam jeszcze jedno pytanie.
Gdzie znajdują się skrypty, które odpowiadają za to, że na kowadle zamienia się Rozgrzaną stal na Rozgrzane ostrze? Pytam, ponieważ podchodząc do kowadła mając tylko jedną rozgrzaną stal, nie mogę niczego wykuć, bo jej "używam" na kowadle, i gdy skończę, to zamienia się ona na Rozgrzane ostrze. Może mi ktoś podać, gdzie te skrypty się znajdują?
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Jak dobrze pamiętam, znajduje się to w którymś *.mds.

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
Nie mogę znaleźć żadnego pliku z rozszerzeniem .mds. Są one instalowane od razu z GMDK, czy trzeba je wypakować z jakiegoś pliku, tak jak było z world.zen?
 

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel
Są w GMDK, folder /anims nie /scripts.
I Adanos dobrze mówi, to na pewno jest tam.
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny

Orion

Orion

Użytkownicy
posty41
  • Użytkownicy
W takim razie coś u mnie jest nie tak, bo w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Anims mam tylko _compiled, który jest zupełnie pusty, i asc_anims, w którym jest Meatbug. Wychodzi na to, że coś mi się źle zainstalowało.
 

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel
GothicVDFS i wypakuj anims.vdf
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny



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