Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Ergebnis 1 bis 2 von 2
  1. Homepage besuchen Beiträge anzeigen #1 Zitieren
    Schwertmeister Avatar von Xardas1001
    Registriert seit
    May 2009
    Ort
    Beliars Reich
    Beiträge
    831
     
    Xardas1001 ist offline

    Überarbeitete .zen im Hauptspiel verwenden?

    Guten Tag

    Ich habe bisher an den Unterparts der NewWorld.zen gearbeitet, also bspw. der NewWorld_Part_Xardas_01.zen
    Diese habe ich im Spacer editiert und solange ich Test-Inis und eigene Startups dafür schreibe, werden meine Welten auch sehr schön geladen.

    Da ich nun einige Quests testen möchte, für die ich an unterschiedliche Unterparts der NewWorld laufen muss, dachte ich, ich könnte ja mal die Startup der NewWorld anpassen, so dass statt der eigentlichen Unterzens nun meine geladen werden.

    Die STARTUP_NewWorld sieht jetzt folgendermaßen aus

    Code:
    // ------ World -------
    FUNC VOID STARTUP_NewWorld()
    {	
    	// ------ StartUps der Unter-Parts ------ 
    	STARTUP_NewWorld_Part_City_01_Test();
    	STARTUP_NewWorld_Part_Farm_01();
    	STARTUP_NewWorld_Part_Xardas_Test();
    	STARTUP_NewWorld_Part_Monastery_Test();
    	STARTUP_NewWorld_Part_GreatPeasant_01_Test();
    	STARTUP_NewWorld_Part_TrollArea_01();
    	STARTUP_NewWorld_Part_Forest_01();
    	STARTUP_NewWorld_Part_Pass_To_OW_01();
    	// ------ INTRO - muss ganz am Ende der Startup stehen ------
    	Kapitel = 1; //Joly: Kann hier stehen bleiben!
    	PlayVideo ("INTRO.BIK");
    	PlayVideo ("Addon_Title.BIK");
    	
    	//-----Addon Talent Goldhacken---------
    	Hero_HackChance = 10;
    };
    FUNC VOID INIT_NewWorld()
    {
        B_InitMonsterAttitudes ();
    	B_InitGuildAttitudes();
    	B_InitNpcGlobals ();
    	
    	B_ENTER_NEWWORLD ();
    	
    	// ------- Diebesgilde abtöten ------ 
    	if (Diebesgilde_Verraten)
    	&& (Andre_Diebesgilde_aufgeraeumt != TRUE)
    	{
    		if (!Npc_IsDead(Cassia))
    		|| (!Npc_IsDead(Jesper))
    		|| (!Npc_IsDead(Ramirez))
    		{
    			B_KillNpc(VLK_447_Cassia);
    			B_KillNpc(VLK_446_Jesper);
    			B_KillNpc(VLK_445_Ramirez);
    			Andre_Diebesgilde_aufgeraeumt = TRUE;
    		};
    	};
    	
    	// ------ INITS der Unter-Parts ------ 
    	INIT_SUB_NewWorld_Part_City_01_Test();
    	INIT_SUB_NewWorld_Part_Farm_01();
    	INIT_SUB_NewWorld_Part_Xardas_Test();
    	INIT_SUB_NewWorld_Part_Monastery_Test();
    	INIT_SUB_NewWorld_Part_GreatPeasant_01_Test();
    	INIT_SUB_NewWorld_Part_TrollArea_01();
    	INIT_SUB_NewWorld_Part_Forest_01();
    	INIT_SUB_NewWorld_Part_Pass_To_OW_01();
    	
    	if (MIS_ReadyForChapter3  == TRUE )	//Joly: muß hier in der INIT ganz zum schluss stehen, nachdem alle NSCs fürs Kapitel insertet wurden!!!
    	&& (B_Chapter3_OneTime == FALSE)
    	{
    		B_Kapitelwechsel (3,NEWWORLD_ZEN);
    		B_Chapter3_OneTime = TRUE;
    	};
    
    	if (MIS_AllDragonsDead  == TRUE )	//Joly: muß hier in der INIT ganz zum schluss stehen, nachdem alle NSCs fürs Kapitel insertet wurden!!!
    	&& (B_Chapter5_OneTime == FALSE)
    	{
    		B_Kapitelwechsel (5, NEWWORLD_ZEN);
    		B_Chapter5_OneTime = TRUE;
    	};
    };
    Und meine veränderten Unterparts (zu erkennen an dem _test hintendranne) haben jeweils ihre eigene Startup, die bei allen wie folgt aussieht:

    Code:
    func void STARTUP_NewWorld_Part_Xardas_Test  ()
    {
    	//NPCs
    	Wld_InsertNpc 	(KDF_99000_Xardas, 		"NW_XARDAS_TOWER_THRONEROOM_SIT");
    	//Wld_InsertNpc 	(SLD_99500_Gorn,		"NW_XARDAS_TOWER_THRONEROOM_STAND_04");
    	Wld_InsertNpc 	(EBR_99700_Diego,		"NW_XARDAS_TOWER_THRONEROOM_STAND_04");
    	Wld_InsertNpc 	(Pal_99101_Leibwache,	"NW_XARDAS_TOWER_IN1_12");
    	Wld_InsertNpc 	(Pal_99102_Torwache,	"NW_XARDAS_TOWER_PATH_01_B");
    	Wld_InsertNpc 	(Pal_99103_Torwache,	"XARDAS");
    	Wld_InsertNpc 	(Pal_99104_Wegwache,	"NW_XARDAS_PATH_SPAL_STAND_01");
    	Wld_InsertNpc 	(Pal_99105_Wegwache,	"NW_XARDAS_PATH_SPAL_STAND_02");
    	Wld_InsertNpc 	(NONE_99900_UntoterDiener,"NW_XARDAS_TOWER_IN1_01");
    	
    };
    	func void INIT_SUB_NewWorld_Part_Xardas_Test()
    	{
    	};
    	
    	//Konfig
    	func void INIT_NewWorld_Part_Xardas_Test()
    {
    		
    	B_InitMonsterAttitudes ();
    	B_InitGuildAttitudes();
    	B_InitNpcGlobals ();
    };
    Wenn ich nun aber über den Modstarter das normale Spiel öffne, wird die NewWorld weiterhin so geladen, wie sie aus dem Originalspiel bereits bekannt ist. Allerdings werden die NPC's die an bereits existierenden Waypoints (also keinen von mir neuen hinzugefügten Waypoints) gespawned werden sollen korrekt gespawned.

    Meine Vermutung ist ja, dass ich eine eigene INI schreiben muss und/oder eine eigene Startup für eine NewWorld_2.zen oder ähnliches, allerdings wüsste ich nicht, wie ich eine eigene NewWorld_2.zen erstellen sollte....
    Ist das erste mal, dass ich das versuche, also hoffe ich, dass ihr mir weiterhelfen könnt

    Liebe Grüße
    "Es ist nicht schwer, von jedem ethischen Prinzip zu beweisen, dass es in der Praxis scheitern muss, wenn man zugleich voraussetzt, dass allgemeiner Schwachsinn herrscht."
    - John Stuart Mill

  2. Beiträge anzeigen #2 Zitieren
    Ehrengarde
    Registriert seit
    Nov 2009
    Ort
    Deutschland
    Beiträge
    2.531
     
    Grekain ist offline
    Da die NewWorld_Part_Xardas_01.zen Teil der NewWorld.zen ist, musst du sie per Makro neu zusammenfügen. Im Spacer geht das unter Tools -> Macros -> Compile NewWorld (Doppelklick). Danach musst du diese zen mit der alten ersetzen.

    Du kannst auch eine eigene ini und NewWorld2.zen verwenden, wenn du die alte nicht verändern willst. Dazu kannst du die per Makro erstelle Welt auch einfach NewWorld2.zen nennen und diese benutzen.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide