Czarny ekran podczas wczytywania nowego świta 2418 85

O temacie

Autor Ravofficial

Zaczęty 22.01.2019 roku

Wyświetleń 2418

Odpowiedzi 85

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Witam , mam mały problem zacząłem bawić się w modowanie Gothica 2 NK.
Wszystko szło ładnie pięknie , aż doszło do pakowania moda.
Za pomocą program VDFS pakuje moda według poradników z YT i z tego forum.
Jednak gdy go odpalam , Pojawia się tylko postać a nie ma wczytanego zenu.
Pliki jakie z pakowałem to (świat=OldWorld.ZEN , GOTHIC.DAT , OU.BIN)
Świat OldWorld.ZEN jest zmodyfikowanym światem z G2NK . Mianowicie Górnicza dolina z dodanymi lokacjami -> https://themodders.org/index.php?topic=21402.0

*.ini :

[INFO]
Title=Ostatni Bastion
Version= 1.0
Authors=Rav
Webpage= *Brak*
Description= Górnicza dolina... czyli aktualne więzienie naszego bohatera
Icon=GothicStarter.exe

[FILES]
VDF=ostatnibastion.mod
Game=Content\Gothic
FightAI=Content\Fight
Menu=System\Menu
Camera=System\Camera
Music=System\Music
SoundEffects=System\SFX
ParticleEffects=System\ParticleFX
VisualEffects=System\VisualFX
OutputUnits=OU

[SETTINGS]
Player=PC_HERO
World= OldWorld.zen

[OPTIONS]
show_Info=0
show_InfoX=800
show_InfoY=7200
show_Version=1
show_VersionX=6500
show_VersionY=7200
show_Focus=1
show_FocusItm=1
show_FocusMob=1
show_FocusNpc=1
show_FocusBar=1
force_Subtitles=0
force_Parameters=

[OVERRIDES]
INTERNAL.extendedMenu=1
 

Splash

Splash

Moderator
posty3978
Propsy3183
ProfesjaNierób
  • Moderator
Świat musi mieć podaną ścieżkę jeśli znajduje się w dodatkowym folderze.
World=OldWorld\OldWorld.zen
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
rzeczywiście , Dzięki
Tak może poza tematem ale mam takie pytanko odnośnie kodu na posąg innosa. I jak zrobić żeby możn było się do niego modlić :D
 

Splash

Splash

Moderator
posty3978
Propsy3183
ProfesjaNierób
  • Moderator
Jeśli dobrze zrozumiałem, trzeba tylko trochę zmodyfikować skrypt:
INSTANCE ItMi_InnosStatue (C_Item)
{
name = "Posążek Innosa";

mainflag = ITEM_KAT_NONE;
flags = ITEM_MULTI;

value = Value_InnosStatue;

visual = "ItMi_InnosStatue.3DS";
material = MAT_METAL ;
scemeName = "MAP"; //animacja

description = name;
TEXT[5] = NAME_Value;
COUNT[5] = value;
on_state[0] = UseInnosStatue; //wywoływanie poniższej funkcji po użyciu
};

func void UseInnosStatue() {
if (Npc_IsPlayer(self)) { //czy postać używająca tego to gracz
self.aivar[AIV_INVINCIBLE] = true;  //używane w dialogach by npc częściowo ignorowali gracza
PLAYER_MOBSI_PRODUCTION = MOBSI_PrayShrine;
AI_ProcessInfos(hero); //rozpoczęcie dialogu
};
};


Teraz wyjaśnię o co chodzi z
PLAYER_MOBSI_PRODUCTION = MOBSI_PrayShrine;
Monolog to po prostu trik polegający na prowadzeniu rozmowy gracza z samym sobą. Dzięki temu sprawiamy, że wyświetlane są wyłącznie opcje dialogowe posągu Innosa.
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Nie wiem czy mogę cały czas pisać to w jednym wątku ale ok.
mam kolejny problem odnośnie dodawania postaci .
Tak jak w tym poradniku -> https://themodders.org/index.php?topic=73
aby dodać do nowego świata postać muszę lekko przerobić Stratup.d
Tak wygląda po przerobieniu przeze mnie :
// *********
// OldWorld - Ostatni Bastion
// *********
func void STARTUP_OldWorld ()
{
      Wld_InsertNpc       (RAV_888_NAJEMNIK,"STO_01"); //// Pomiędzy { i }; dajemy takie linijki, a w nich instancje NPC i waypoint z naszego świata, co do robienia NPC i waypointów są odpowiednie tutki
};

   func void INIT_SUB_OldWorld ()
   {
   };

func void INIT_OldWorld ()
{
   B_InitMonsterAttitudes ();
   B_InitGuildAttitudes();
   B_InitNpcGlobals ();
   
   INIT_SUB_OldWorld();
};

Jednak podczas sprawdzania w spacerze skryptów wywala mi takie 2 błędy :
1 - > https://imgur.com/a/tfGJxP2
2 - > https://imgur.com/a/RxtzmIR
Jednak nie wiem co tutaj jest źle ...
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
"Redefined identifier" - czyli dosłownie "Ponownie zdefiniowany identyfikator".

W całej grze możesz mieć tylko jedną funkcję o takiej samej nazwie, a te według tych błędów, dwie funkcje się powtarzają.
 
while (!success) try{...}

Splash

Splash

Moderator
posty3978
Propsy3183
ProfesjaNierób
  • Moderator
Nie tylko funkcję. Nazwy nie mogą się powtarzać niezależnie od tego czy jest to funkcja, zmienna, stała, instancja etc. Na przykład nie można zadeklarować zmiennej o nazwie, która nosi ją już na przykład jakaś funkcja. Wyjątkiem są zmienne i stałe lokalne, ponieważ parser rozpoznaje je po nazwie:
NazwaFunkcji.NazwaZmiennej
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Wszystko spoko , tylko po proszę wersje dla nie ogara  XD
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
Masz podwójnie STARTUP_OldWorld i INIT_OldWorld.
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
// *********
// OldWorld - Ostatni Bastion
// *********
func void STARTUP_OldWorld ()
{
      Wld_InsertNpc       (RAV_888_NAJEMNIK,"STO_01"); //// Pomiędzy { i }; dajemy takie linijki, a w nich instancje NPC i waypoint z naszego świata, co do robienia NPC i waypointów są odpowiednie tutki
};

   func void INIT_SUB_OldWorld ()
   {
   };

Tak ?

Post połączony: 2019-01-23, 17:25
Tak jak mam normalnie to jest w poradniku -> https://themodders.org/index.php?topic=73

i tak też robili sami twórcy :
//------------------------------------------------------------
//      Addon World GOLDMINE
//------------------------------------------------------------
func void STARTUP_ADDON_PART_GOLDMINE_01 ()
{
   //----------------------Humans----------------------------
   Wld_InsertNpc    (STRF_1118_Addon_Patrick,    "ADDON_GOLDMINE");
   Wld_InsertNpc    (STRF_1119_Addon_Monty,    "ADDON_GOLDMINE");
   Wld_InsertNpc    (STRF_1120_Addon_Tonak,    "ADDON_GOLDMINE");
   Wld_InsertNpc    (STRF_1121_Addon_Telbor,    "ADDON_GOLDMINE");
   Wld_InsertNpc    (STRF_1122_Addon_Pardos,    "ADDON_GOLDMINE");
   
   Wld_InsertNpc    (BDT_1095_Addon_Crimson,    "ADDON_GOLDMINE");
   
   
   Wld_InsertNpc   (BDT_10023_Addon_Wache,      "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10024_Addon_Garaz,      "ADDON_GOLDMINE");
   
   //----------------tote Sklaven--------------------
   Wld_InsertNpc   (STRF_1131_Addon_Sklave, "ADW_MINE_SKLAVENTOD_01");
   Wld_InsertNpc   (STRF_1132_Addon_Sklave, "ADW_MINE_SKLAVENTOD_01");
   Wld_InsertNpc   (STRF_1133_Addon_Sklave, "ADW_MINE_SKLAVENTOD_01");
   Wld_InsertNpc   (STRF_1134_Addon_Sklave, "ADW_MINE_SKLAVENTOD_01");
   Wld_InsertNpc   (STRF_1135_Addon_Sklave, "ADW_MINE_SKLAVENTOD_01");
   
   //----------------Plus Buddler, Wachen, Sklaven--------------------
   Wld_InsertNpc   (STRF_1128_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1129_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1130_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1136_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1137_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1138_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1139_Addon_Sklave, "ADDON_GOLDMINE");
   Wld_InsertNpc   (STRF_1140_Addon_Sklave, "ADDON_GOLDMINE");
   
   Wld_InsertNpc   (BDT_10025_Addon_Wache, "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10026_Addon_Wache, "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10027_Addon_Buddler, "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10028_Addon_Buddler, "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10029_Addon_Buddler, "ADDON_GOLDMINE");
   Wld_InsertNpc   (BDT_10030_Addon_Buddler, "ADDON_GOLDMINE");
   
      
      
   //------------ Monster ANZAHL (10) WICHTIG für Garaz (FIXME_FILLER) ----------------------------
   Wld_InsertNpc    (GoldMinecrawler,    "ADW_MINE_MC_04");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_04");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_03");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_03");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_08");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_08");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_07");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_07");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_02");
   Wld_InsertNpc    (GoldMinecrawler,          "ADW_MINE_MC_02");

   Wld_InsertNpc    (Meatbug,          "ADW_MINE_LAGER_08");
   Wld_InsertNpc    (Meatbug,          "ADW_MINE_LAGER_09");
   Wld_InsertNpc    (Meatbug,          "ADW_MINE_LAGER_05");
   Wld_InsertNpc    (Meatbug,          "ADW_MINE_LAGER_SIDE_04");
   
   Wld_InsertNpc    (Stoneguardian_MineDead1,    "ADW_GRUFT_01");
   Wld_InsertNpc    (Stoneguardian_MineDead2,    "ADW_GRUFT_02");
   Wld_InsertNpc    (Stoneguardian_MineDead3,    "ADW_MINE_TO_GRUFT_05");
   Wld_InsertNpc    (Stoneguardian_MineDead4,    "ADW_MINE_TO_GRUFT_06");
   
   
   
   
   

};

func void INIT_SUB_ADDON_PART_GOLDMINE_01 ()
{
   
};

func void INIT_ADDON_PART_GOLDMINE_01 ()
{
   B_InitMonsterAttitudes ();
   B_InitGuildAttitudes();
   B_InitNpcGlobals ();
   
   INIT_SUB_ADDON_PART_GOLDMINE_01();
};

 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
Nie wiem jak to dokładnie u Ciebie wygląda, ale komunikaty parsera wyraźnie mówią o tym, że masz zduplikowane nazwy funkcji.

Zmień po prostu nazwę zena na np. ostatnibastion.zen, a potem swoich funkcji Startup i Init na angoliczne Startup_ostatnibastion i Init_ostatnibastion.

Albo zostaw to jak jest, tylko wywal oryginalne funkcje inicjujące oldworlda.
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Spacer po zmianie nazwy to przepuścił ale teraz nie ładuje się zen . Czarny ekran i tylko postać

Post połączony: 2019-01-23, 18:16
[INFO]
Title=Ostatni Bastion
Version= 1.0
Authors=Rav
Webpage= *Brak*
Description= Górnicza dolina... czyli aktualne więzienie naszego bohatera
Icon=GothicStarter.exe

[FILES]
VDF=ostatnibastion.mod
Game=Content\Gothic
FightAI=Content\Fight
Menu=System\Menu
Camera=System\Camera
Music=System\Music
SoundEffects=System\SFX
ParticleEffects=System\ParticleFX
VisualEffects=System\VisualFX
OutputUnits=OU

[SETTINGS]
Player=PC_HERO
World=ostatnibastion\ostatnibastion.ZEN

[OPTIONS]
show_Info=0
show_InfoX=800
show_InfoY=7200
show_Version=1
show_VersionX=6500
show_VersionY=7200
show_Focus=1
show_FocusItm=1
show_FocusMob=1
show_FocusNpc=1
show_FocusBar=1
force_Subtitles=0
force_Parameters=

[OVERRIDES]
INTERNAL.extendedMenu=1
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
A spróbuj jako world dać samą nazwę świata, bez ścieżki.
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Próbowałem tak:
World=ostatnibastion.ZEN
i tak
World=ostatnibastion
i też nie działa
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
Jeślibyś zrobił

VDF=
(Do testów możesz zaznaczyć sobie dodatkowo opcję reparse scripts w starterze, wówczas nie musisz robić paczki z modem, aby zobaczyć każdą, najprostszą zmianę)

wówczas gra pobierałaby nie z paczki z modem, tylko z assetów, które masz w folderach. Jeśli wtedy załadowałby się świat to można byłoby przynajmniej zawęzić krąg poszukiwań przyczyny błędu. 
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
Po zmianie VDF nadal to samo ,
ja ma wersje niemiecką startera ale mam to chyba zaznaczone "Skripte parsen"
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
No to nie wiem. Problem w takim razie musi być ze ścieżką do zena, albo z samym światem. Spróbuj pokombinować. Ja niestety nie mam innego pomysłu.
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
znaczy świat się ładował do momentu wprowadzenia zmian w startup.d . wtedy był jeszcze pod nazwą OldWorld.zen . A zmiany te chciałem wprowadzić bo postacie chciałem dodać
 

Cruc

Cruc

Użytkownicy
posty624
Propsy198
Profesjabrak
  • Użytkownicy
Startup nie wpływa na ładowanie się świata. On jedynie odpala funkcje startup i init kolejno przy pierwszym starcie świata i przy kolejnych.

Problem musi być z nazwami.
 
while (!success) try{...}

Ravofficial

Ravofficial

Użytkownicy
posty62
Profesjabrak
  • Użytkownicy
jak będziesz miał czas to spójrz na to ( jak nie ma wszystkiego to napisz może o czymś zapomniałem) a jak nie to walić może po prostu się nie nadaje
https://www105.zippyshare.com/v/QchjvQ4p/file.html
 


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