Willkommen Anonymous, es sind 34 User online. [ Anzeigen ]


[RPG]Board Neverwinter Nights NWN Scripting


[ Login ] [ Registrieren ] [ Abo ] [ Suche ] [ Profil ] [ Hilfe ]


Operatoren: zauriel, Avantenor
Moderatoren: NWN Moderat, Camael, IRQ
[ ANTWORTEN ]
[ FAQ ]
Autor Druckansicht   Thema: Multiplayer: Gespräch mit NPCs
Seite: 1
Patta93

Profil anschauen ]

erstellt am 08.03.2013 um 11:48 Uhr eMail schreiben      Zitatantwort        #1846571

Ich bin's schon wieder, es hat sich ein neues Problem aufgetan:

Ich arbeite gerade an einem kleinen Modul, welches auf Coop ausgelegt ist. Nun habe ich aber ein Problem damit, Variablen für alle Spieler zu setzen. Nehmen wir mal als Beispiel:

Spieler A redet mit dem Wirt, der ihn bittet, einen Bürger, der beim Würfeln betrügt, zu überführen. Daraufhin soll dann halt bei dem Betrüger ein neuer Dialog auftauchen, und der alte Dialog beim Wirt ersetzt werden. Für Singleplayer würde ich das denke ich auch hin bekommen (Über lokale Variablen und so) aber im Multiplayer könnte dann ja im Grunde jeder Spieler die Quest ein mal annehmen, der Dialog ändert sich nur für den Spieler, der die Quest schon angenommen hat. Wie kann ich das Problem am besten lösen? Globale Variablen gibt es in der Form ja auch nicht, was natürlich ein ziemliches Problem ist. Ich steh da gerade total auf dem Schlauch
Masqurin

Profil anschauen ]

Gilde/Clan:
Pessimist™

erstellt am 08.03.2013 um 13:01 Uhr       Zitatantwort        #1846580

Schau dir mal die Datei x0_i0_partywide an.

Dort gibt es Funktionen wie SetLocalIntOnAll() womit du allen Gruppenmitgliedern eine Variable zuweisen kannst. Ist vermutlich aber nicht sehr effizient umgesetzt (kann das gerade nicht prüfen), aber im Zweifel schau dir die Funktion an um zu sehen wie es umgesetzt wird.

Falls es nicht nur um Gruppen sondern wirklich alle Spieler geht, wäre wohl GetFirstPC() und GetNextPC() die Lösung als Schleife.
Patta93

Profil anschauen ]

erstellt am 08.03.2013 um 13:21 Uhr eMail schreiben      Zitatantwort        #1846583

Das sieht so aus, als könnte es mir helfen. Ich probier's mal aus, danke.
Uranochos

Profil anschauen ]

erstellt am 08.03.2013 um 15:36 Uhr eMail schreiben  Homepage besuchen    Zitatantwort        #1846599

x0_i0_partywide:

 
... 
// Given a varname, value, and PC, sets the variable on 
// all members of the PC's party, including associates. 
// For ints. 
void SetLocalIntOnAll(object oPC, string sVarname, int value) 
{ 
object oPartyMem = GetFirstFactionMember(oPC, FALSE); 
while (GetIsObjectValid(oPartyMem))  
    { 
    SetLocalInt(oPartyMem, sVarname, value); 
    oPartyMem = GetNextFactionMember(oPC, FALSE); 
    } 
//SetLocalInt(oPC, sVarname, value); 
} 
...


Das sieht doch eigentlich ganz brauchbar aus.

@Patta93: Was für ein Modul schwebt Dir denn vor? Alle Spieler ziehen an einem Strang, nur eine Gruppe? Oder konkurrierende Gruppen, oder konkurrierende Gruppen und/oder einzelne Spieler?

--
"Geschichten von der Alten Erde"
Deutschsprachiges Rollenspielprojekt.
-Work-in-progress-
[Externer Link - Bitte einloggen oder registrieren]
alte-erde.spdns.org

Patta93

Profil anschauen ]

erstellt am 08.03.2013 um 19:46 Uhr eMail schreiben      Zitatantwort        #1846642

Eine einzige Gruppe. Ausgelegt ist das ganze auf 2-3 Spieler. Bisher konnte ich es nur im Singleplayer testen, da mein Mit-Tester nicht anwesend ist Aber auch mit dem neuen Befehl funktioniert's im Singleplayer schon mal, ich teste es im MP sobald es geht. Danke.
Uranochos

Profil anschauen ]

erstellt am 08.03.2013 um 20:49 Uhr eMail schreiben  Homepage besuchen    Zitatantwort        #1846654

Falls Du mal Tester brauchst, schick mir eine PM.

Schönen Gruß,

Uranochos


--
"Geschichten von der Alten Erde"
Deutschsprachiges Rollenspielprojekt.
-Work-in-progress-
[Externer Link - Bitte einloggen oder registrieren]
alte-erde.spdns.org

Patta93

Profil anschauen ]

erstellt am 08.03.2013 um 22:13 Uhr eMail schreiben      Zitatantwort        #1846662

Ach, eigentlich habe ich genug, aber danke für das Angebot Besonders viel enthält das Modul eh nicht.
Seite: 1
Druckansicht   Thema: Multiplayer: Gespräch mit NPCs  
[ ANTWORTEN ]

[RPG]Board Neverwinter Nights NWN Scripting

  


[RPG]Board 1.94.01 wird betrieben von Sebastian "Pandur" Olle.
Programmiert von Andreas "Monti" Bytzek.
Nutzungsbedingungen / Impressum / Haftungsausschluss / Datenschutz
Scriptlaufzeit: 0.10 sec