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 9 von 9
  1. Beiträge anzeigen #1
    Waldläufer Avatar von Hirnschmalz
    Registriert seit
    Oct 2008
    Ort
    hic et nunc
    Beiträge
    160
     
    Hirnschmalz ist offline

    Question Spielsucht bei NPCs

    Einen guten Abend allerseits,

    angeregt durch diverse Minispiele in verschiedenen anderen Games möchte ich meinem hero
    und dem ein oder anderen NPC zu der Möglichkeit verhelfen, ein bisschen Gold zu verzocken.

    Aus einem entsprechenden Dialog heraus soll also gewürfelt rsp. Karten gezogen werden,
    nachdem man einen Einsatz getätigt und die Spielmodalitäten geklärt hat.

    Das sieht imho auch ganz gut aus ...
    [Bild: Spielsucht.jpg]
    ... klappt aber leider nur als on_state-Func aus einem Buch o.ä. heraus, nicht per Dialog.
    Auch lässt sich das Buch nicht aus einem Dialog heraus aufrufen, weder per AI_UseItem vor
    oder nach der AI_StopProcessInfo, noch sonstwie (rumprobiert habe ich einiges).
    Kiemliche Zagge.

    Gibt's dafür eine Lösung oder war die ganze Arbeit umsonst?

    Edit: nur ein paar Details eingefügt
    Geändert von Hirnschmalz (26.11.2020 um 17:27 Uhr)

  2. Beiträge anzeigen #2
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.243
     
    Milky-Way ist offline
    Wie genau ist das denn im Moment implementiert? Ohne Code kann man da nur raten... aktuell als Schriftstück, dass das angezeigt wird? Du könntest die Texturen alternativ mit LeGo views anzeigen lassen, dass sollte Buch-Unabhängig funktionieren.

    Übrigens: sehen sehr schön aus, die Spielkarten

  3. Beiträge anzeigen #3
    Waldläufer Avatar von Hirnschmalz
    Registriert seit
    Oct 2008
    Ort
    hic et nunc
    Beiträge
    160
     
    Hirnschmalz ist offline
    Danke für die Blumen ...

    Wie gesagt, es ist derzeit nur ein "Buch", das auf der einen Seite die Karte / den Würfel des NPC zeigt,
    auf der anderen die / den von hero.
    Je nachdem, was der funktionseigene Zufallsgenerator auswirft, ändern sich die Seiten.
    Code:
    //	Fandos Seite
    	if dice_VAR[4] == 2	{	Doc_SetPage 	( nDocID,  0, "dicenote2_L_blck_2.tga", 0);
    	}	else if dice_VAR[4] == 3	{	Doc_SetPage 	( nDocID,  0, "dicenote2_L_blck_3.tga", 0);
    	}	else if dice_VAR[4] == 4	{	Doc_SetPage 	( nDocID,  0, "dicenote2_L_blck_4.tga", 0);
    	}	else if dice_VAR[4] == 5	{	Doc_SetPage 	( nDocID,  0, "dicenote2_L_blck_5.tga", 0);
    	}	else if dice_VAR[4] == 6	{	Doc_SetPage 	( nDocID,  0, "dicenote2_L_blck_6.tga", 0);
    	};
    //	Heros Seite
    	if dice_VAR[3] == 1	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_1.tga", 0);
    	}	else if dice_VAR[3] == 2	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_2.tga", 0);
    	}	else if dice_VAR[3] == 3	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_3.tga", 0);
    	}	else if dice_VAR[3] == 4	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_4.tga", 0);
    	}	else if dice_VAR[3] == 5	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_5.tga", 0);
    	}	else if dice_VAR[3] == 6	{	Doc_SetPage 	( nDocID,  1, "dicenote2_R_wht_6.tga", 0);
    	};
    Entsprechend bei den Karten - zwei Seiten eines Buches, es gibt auch nur 5 Karten pro Set (10, J, Q, K, A) -
    und natürlich darf keine Karte doppelt gezogen werden.
    Ziemlich simpel, macht aber als Buch etwas her.
    Genau diese Funktion - oder ein adäquater Ersatz, der optisch dasselbe Ergebnis liefert - hätte ich gerne im
    Dialog oder direkt danach - eine Variable (z.B. Spiel_läuft = 1; ) könnte dann einen important-Dialog triggern,
    in dem der Sieger direkt seine Kohle einsacken kann (und Spiel_läuft auf 0 setzt).
    Auch das funxt aber - bislang - nicht ...
    Geändert von Hirnschmalz (26.11.2020 um 18:29 Uhr)

  4. #4
    Falugify
    Gast
     
    Zitat Zitat von Hirnschmalz Beitrag anzeigen
    Einen guten Abend allerseits,

    angeregt durch diverse Minispiele in verschiedenen anderen Games möchte ich meinem hero
    und dem ein oder anderen NPC zu der Möglichkeit verhelfen, ein bisschen Gold zu verzocken.

    Aus einem entsprechenden Dialog heraus soll also gewürfelt rsp. Karten gezogen werden,
    nachdem man einen Einsatz getätigt und die Spielmodalitäten geklärt hat.

    Das sieht imho auch ganz gut aus ...
    [Bild: Spielsucht.jpg]
    ... klappt aber leider nur als on_state-Func aus einem Buch o.ä. heraus, nicht per Dialog.
    Auch lässt sich das Buch nicht aus einem Dialog heraus aufrufen, weder per AI_UseItem vor
    oder nach der AI_StopProcessInfo, noch sonstwie (rumprobiert habe ich einiges).
    Kiemliche Zagge.

    Gibt's dafür eine Lösung oder war die ganze Arbeit umsonst?

    Edit: nur ein paar Details eingefügt
    Hast du es schon mit AI_UseItemToState versucht?

  5. Beiträge anzeigen #5
    Waldläufer Avatar von Hirnschmalz
    Registriert seit
    Oct 2008
    Ort
    hic et nunc
    Beiträge
    160
     
    Hirnschmalz ist offline
    Jo, habe ich sogar. Dabei kommt es aber imho nicht einmal zur Ausführung der func -
    jedenfalls passierte dabei nichts ...

  6. Beiträge anzeigen #6
    Waldläufer Avatar von Hirnschmalz
    Registriert seit
    Oct 2008
    Ort
    hic et nunc
    Beiträge
    160
     
    Hirnschmalz ist offline

    Thumbs up Problem gelöst!

    So, mal keine Frage oder weinerlicher Kommentar, sondern, TADA! , eine Lösung ...
    Habe eine FrameFunction (LEGO) folgendermaßen eingebaut:

    Code:
    func void framefunccards()	{	
    	if !Npc_IsInState (BDT_5357_Fando, ZS_Talk)	{	UseCardGame();	//	<==  Das ist 'Buch'-UseFunktion ...!
    		FF_Remove(framefunccards);
    };	};
    
    func void DIA_Fando_CARDS()	{
    	AI_Output (self, other, "DIA_hero_PLAYCARDS");//Lass uns Karten ziehen.
    	AI_Output (self, other, "DIA_Fando_DRAWFIRST");//Na, dann mal los! Du ziehst deine zuerst, ich meine danach.
    	FF_Apply (framefunccards);
    	Info_ClearChoices (DIA_Fando_GAME);
    	Info_AddChoice (DIA_Fando_GAME, "- Karte ziehen -", DIA_Fando_GAME_DRAWCARDS);
    };
    ... und siehe da, es funktioniert. - Warum bin ich nicht früher darauf gekommen ...

    Seltsamerweise hat es mit "!Npc_IsInState (hero, ZS_Talk)" nicht geklappt!?

  7. Beiträge anzeigen #7
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.243
     
    Milky-Way ist offline
    Ja, zs_talk abfragen für Hero klappt nicht - allgemein ist der Hero nicht immer in den passenden states, glaube ich

  8. Beiträge anzeigen #8
    Knight
    Registriert seit
    Aug 2009
    Ort
    Hessen
    Beiträge
    1.487
     
    Cryp18Struct ist offline
    Allgemein wenn man abfragen möchte ob kein Dialog läuft kann man InfoManager_hasFinished() abfragen.
    Und ja, der hero ist nie in ZS_Talk.

    Ich verstehe auch nicht warum man erwarten würde das der hero in ZS_Talk ist. Der Zustand ist dafür da das NPCs während einem Gespräch nicht ihrem Tagesablauf nachgehen oder abgelenkt werden wenn sie irgendwas wahrnehmen.
    Der hero ist ja nicht Zustandsgesteuert/hat keinen Tagesablauf sondern wird von Spieler Eingaben gesteuert.
    Selbst wann man wollte, man kann den hero während einen Gespräches nicht davon steuern und mobs benutzen oder ähnlichen krams.

    Ich möchte mich hier auch Milky-Way anschließen: sind sehr schön die Karten!

  9. Beiträge anzeigen #9
    Legende der Amazonen Avatar von Bisasam
    Registriert seit
    Dec 2006
    Ort
    Meine Faust in Sinis Gesicht
    Beiträge
    9.639
     
    Bisasam ist offline
    Frag laufende Dialoge über AIV_INVINCIBLE ab. Dafür ist das da.
    Ich persönlich arbeite mit Lego_buttons.
    Mache jede der auswählbaren Karten zu einem Button. Über die on_click kannst du die Karte von der Hand löschen und z.B. platzieren. Auch Abfragen sind möglich. Das macht es gleich interaktiver und du musst nicht über Dialogauswahl gehen wie in nem frühen Text RPG.


    "Das erinnert doch sehr erfreulich an das, was man sich als Gothicfan wünscht!"
    -Korallenkette

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