Construction Set Viele Fragen zu Dialogen

Eddy Kaschinski

Angehöriger
Folgende Probleme

1) Ich habe ein Topic "Greeting" mit 4 möglichen Antworten im Quest erstellt. Damit sie Wahllos ausgesucht werden, den Punkt "Random" bei allen markiert.
Es sind an jedem möglichen Greeting drei Topics (Wahlmöglichkeiten des Players nach dem Greeting) angehangen. Eingepflegt unter den Punkt "Choices"

Soweit - sogut

Nun ist es aber so, das der NPC hier auch die Standartgreetings einbezieht. Also muß ich ihn so lange versuchen anzusprechen, bis ein Greeting von mir mit den Wahlmöglichkeiten kommt. Nehme ich "Random" raus, macht er das nicht. Er begrüßt mich dann jedoch immer mit der ersten Möglichkeit. Die anderen drei werden ignoriert.

2) Wann benutze ich im Quest/Dialog das Feld "Add Topic" und wann das Feld "Add Choice"? Wo liegt da überhaupt Vor- und Nachteil, oder Nutzen?

3) Könnte ich vier mögliche Greetings auch alle unter "Response Text" eingeben?
 
Zuletzt bearbeitet:
An der Stelle hänge ich im Moment auch fest und mein Englisch ist auch nach besser als das von Eddy. Aber das gibt es ja sicher auch in Deutsch *hoff*. ;)
 
Nein, aber ich kann kurz übersetzen:

1. Erstellt eine neue Fraktion

2. Fügt alle Npc's die diese Topic nichz haben sollen, der Fraktion hinzu.

3. Unten bei dem Beitrag in der Wiki ist eine liste der Quest, wo ihr unter Questsdata "GetInFaction eureFraktion == 0" eintragen müsst.

4. Fertig, im spiel sind diese Dialoge nun nicht mehr vorhanden.
 
  • Like
Reaktionen: Blacklands
@AjAeXx

So, habe mich nun durch das englische Tut gequält. Wenn ich es richtig verstanden habe geht es hier um die Entfernung unerwünschter Konversationen. Wenn man z.B. einen NPC entworfen hat und ihm seine Sprache verliehen hat, so würde dieser NPC ja dann in zwei verschiedenen Sprachen (Deiner und die allgemeine die dieser Rasse zugeordnet ist) sprechen.

Um dies zu vermeiden kannst du feinem NPC ganz bestimmte Generic-Topics erstellen. Dazu müssen die alten jedoch entfernt werden. Dafür ist dieses Tut.

Sehr interessant, ist jedoch nicht das was ich brauche. Ich will ja nichts entfernen, weil die Stimme passt ja.


Fehlerbeschreibung:
Ich konnte den Bug nochmals eingrenzen.
Mein NPC vermischt die Greetings die ich erstellt habe mit den Generic-Greetings, also den allgemeinen Begrüßungen. Dadurch wird auch verhindert, das mein NPC mit anderen "Tratscht"

Ich klicke ihn an - 4 mögliche Begrüßungen die er geben kann. Danach Außwahl von 3 Topics. -Komm mit- -Reden- -Bleib hier-

Klappt ja auch, nur nicht immer. Der NPC mischt die Standartbegrüßungen darunter, die natürlich nicht die Außwahl von 3 Topics hat. Also muß ich ihn so lange anklicken bis er per Zufallsgenerator meine erwischt.

Der NPC betreibt auch keine Konversation mit anderen NPCs. Wenn er einen anderen NPC trifft, bleibt er wie angenagelt stehen und die beiden starren sich an. In dieser Situation funktioniert auch nichts mehr. Er folgt nicht mehr usw.

Wenn ich den NPC in dieser Situation anklicke und im Menü "Reden" auswähle, fängt er mit dem anderen NPC das "Tratschen" an. Danach ist alles wieder OK.

Wo könnte hier der Fehler liegen.
 
Ja, du kannst die Generic Begrüßungen auf dem oben beschriebenen Weg entfernen.

Richtig, das kann ich. Aber dann hat mein NPC ja keine Standartbegrüßungen für die anderen NPCs mehr.

"Guten Tag" - "Schönen Tag" usw. Er soll ja tratschen. Nur er tut es nicht. Ich denke wenn ich diesen Fehler beheben kann, erledigt sich auch der andere. Er bleíbt wie angenagelt stehen wenn er von anderen NPCs angesprochen wird.

Ich habe meine Einstellungen z.B. mit Alba verglichen. Ich konnte keinen Fehler finden. Trotzdem habe ich irgendwo einen Bug verbaut. Nur wo.
 
Alle deinen neuen Begrüßungen liegen ja in einem eigenen Quest.
Mach also erstmal bei allen deinen Greetings einen Haken bei Random. Beim untersten zusätzlich einen Haken bei "Random End".
Nun noch bei Quest Data die Priority höher setzen, z.B. auf 91.

Das AddTopic Feld benutzt am Besten gar nicht. Da gibt es einen Bug, der u.U. auftreten kann. Topics daher immer über das Result Script adden.
AddTopic fügt ein Topic der Liste hinzu, d.h. das Stichwort ist dem Spieler fortan bekannt und kann es immer auswählen, wenn es möglich ist.
Bei Choices wird das Topic NICHT der Liste hinzugefügt, sondern der Spieler erhält eine Auswahl an Möglichkeiten, von der er eine nehmen MUSS.
 
  • Like
Reaktionen: Eddy Kaschinski
@LordKain

Jepp, "Random End" hat das Problem mit dem vermischen der Greetings behoben.

Gracias :)

Nun bleibt noch das "Tratschen." Habe meinen NPC auf eine belebte Stelle platzier.

-Ein anderer geht auf ihn zu - und nix.
-Sie starren sich an als wollten sie sich Hypnotisieren.
-Keiner sagt was.
-Wenn ich meinen NPC anklicke und "Reden" wähle fängt er das "Tratschen" mit dem anderen an und alles ist wieder gut.
 
@AnAlleDieWasWissenKönnten

Also der Reiter Conversation im Quest ist leer. Bei dem NPC über Dialog/Conversation/Hello sieht es so aus:




Die Conversation ist ja da. Sie wird nur irgendwie geblockt. Ausgelößt wird sie dann wenn ich den NPC anklicke und reden wähle. Dann tratscht sie mit den anderen.
 
Also das Problem lag bei mir als ich auch das hatte daran: Du musst bei GetIsPlayableRace auf 1.000 machen. Sonst steht da nur o.ooo.
 
Zuletzt bearbeitet:
@LordKain

Jepp, "Random End" hat das Problem mit dem vermischen der Greetings behoben.

Gracias :)

Nun bleibt noch das "Tratschen." Habe meinen NPC auf eine belebte Stelle platzier.

-Ein anderer geht auf ihn zu - und nix.
-Sie starren sich an als wollten sie sich Hypnotisieren.
-Keiner sagt was.
-Wenn ich meinen NPC anklicke und "Reden" wähle fängt er das "Tratschen" mit dem anderen an und alles ist wieder gut.


Habe das Problem durch einen kleinen Zusatz im Script beheben können. Nu ist alles bestens. Es lag nicht an den Dialogeinstellungen. Dort war alles richtig. Der Fehler, bzw der fehlende Eintrag war im "OnActivate" Block zu suchen. Es ist schon fast lächerlich. Der NPC hat auf die Aktivierung des Players gewartet, um mit anderen "tratschen" zu können. Dieser Eintrag hat es behoben:

HTML:
if IsActionRef Player != 1
	Activate
	return