Geschrieben um 02:01 am 24.11.2010 | Zitat | Editieren | Löschen | |
Gast | Hey Leute! Jau, ich habe mir die Reden-erweiterung geholt. http://www.martin-oehm.de/tag/nuetzl.html Menügesteuerte Kommunikation schränkt den Spieler meiner Meinung nach zu sehr ein, doch ohne diese Menüsteuerung ist kein gescheiter Dialog möglich. (Oder doch? Das Kapitel im Handbuch fehlt...) Daher schwebt mir eine "Kombination" vor, bei dem das Menü nur als "Reaktion" erscheinen soll. Beispiel: Ich habe in meinem Mini-Adventure eine Oma gebaut, die man nach einem Briefkastenschlüssel fragen kann; der Spieler soll allerdings selbst auf die Idee kommen, sie danach zu fragen. "Frage Oma nach Briefkastenschlüssel." Darauf soll die Oma verwirrt in ihrer Hosentasche herumsuchen. Jetzt soll der Spieler durch eine Menüsteuerung verschiedene Reaktionsmöglichkeiten bekommen. *"Mh, kannst du nicht selbst den Briefkasten öffnen?" "Das dauert aber..." "Lass dir ruhig Zeit."* Ich habe so etwas versucht, zu programmieren, doch dann kam folgende Fehlermeldung: **Fehler REDEN.ADX, Zeile 124: 'reden' - Doppelte Variable** Dieser Fehler erscheint mir durchaus logisch, denn das Menüsystem ist ja denke ich mal so programmiert worden, dass es auch erscheint, wenn man eingibt "rede mit xy". Bevor ich mir also lange Gedanken mache und nach möglichen Fehlerursachen den Kopf zerbreche, wollte ich fragen, ob meine Idee überhaupt zu verwirklichen ist. Wenn ich das bestätigt bekomme, werde ich auch meinen Quellcode nachreichen. Besten Dank! (P.S: Ist es erwünscht, wenn ich 100.000 Fragethreads aufmache? Meinetwegen kann ich auch einen "TAGträumer hat mal wieder Probleme"-Thread aufmachen...) EDIT: Kann man eigentlich diese "Drücke 0, um nichts zu sagen"-Funktion ausstellen? Die hätte nämlich in meinem Fall keinen Sinn; irgendwie muss ja der Spieler reagieren. Ich finde in dem Beispiel "Papagei" nichts darüber. |
Geschrieben um 09:38 am 24.11.2010 | Zitat | Editieren | Löschen | |
Mitglied Prof Gumby Beiträge: 634 | Ja, das Kapitel fehlt tatsächlich. Lies dir stattdessen mal Kapitel 9 im Tutorium durch, da werden Konversationen mit dem Schema "frage x über y" behandelt. TAGträumer:
Klar geht so was. Du musst halt bei jedem Stichwort zunächst 'redeDialog' ausführen und dann die Variable 'redeAuswahl' auslesen, d.h. du musst für jedes Stichwort das machen, was normalerweise in der 'VorAusf' zu 'reden' gemacht wird. (Den Beehl 'reden' brauchst Du aber nicht.') Ganz leicht ist das aber nicht: Vor 'redeDialog' musst Du nämlich das Feld 'aktiv' an das Stichwort anpassen. Und dann möchtest Du Dir gewiss merken, was zu jedem Sichwort bereits gesagt wurde. Du müsstest also ein paralleles Feld pflegen, aus dem Du die relevanten Flaggen jeweils hinüber- und nach dem Reden wieder zurückkopierst. Viel Arbeit. Als Spieler wäre ich gewiss nicht begeistert, wenn ich merke, dass ich auf fast kein Stichwort eine Antwort erhalte, aber beim Briefkastenschlüssel durch ein nachgeschaltetes Menü weiter in die Tiefe gehe. Ich würde entweder nur 'frage x nach y' verwenden (wobei die Antwort ja vom Spielstand abhängen kann) oder nur 'rede mit' mit Menüsteuerung. TAGträumer:
Wieso hat das keinen Sinn? Was ist, wenn der Spieler mit 'frage Oma nach Briefkastenschlüssel' keine Deiner Auswahlmöglichkeiten im Sinn hatte? |
Geschrieben um 18:39 am 24.11.2010 | Zitat | Editieren | Löschen | |
Gast | Die Oma soll ja auch zu den anderen Stichworten passend antworten, und der Spieler soll ja auch nur weiterkommen, wenn er die Oma nach dem Schlüssel fragt. Hm, vielleicht mute ich mir da aber echt zu viel zu. Das Problem ist halt, dass ich nicht weiß, wie ich ohne Menüsteuerung Dialoge führen soll. Ich weiß nur, dass man über "irgendetwas" reden kann. Wirklich realistisch ist das nicht. Vielleicht müsste ich mir mal ein Beispielprogramm suchen, bei dem der Spieler etwas komplexer antworten kann. So was fehlt nämlich auch im Tutorum, und beim Beispielprogramm Karn auch. Glaube ich. Zum letzten Punkt: Im echten Leben kann man bei einer bestimmten Situation auch nicht einfach den Dialog abbrechen, durch die Gegend spazieren und dann später erst zurückkehren und antworten. In dieser Situation wäre es zu verkraften, doch es gibt genügend Beispiele, bei denen es wirklich stören würde. Die Menüführung soll alle Antworten abdecken, die zu dem gespielten Charaktär passend sind. Mir ist klar, dass die Menüführung die Freiheit des Spielers stark einschränkt, darum will ich sie ja kombinieren. Öhm... ja ich kann ja mal meinen (stark verkürzten) Code kopieren... Ich habe lediglich das Papagei-Programm als Vorbild genutzt... erwartet also nicht zu viel...
Dankööö |
Geschrieben um 21:26 am 27.11.2010 | Zitat | Editieren | Löschen | |
Gast | Also das Problem ist noch aktuell... die Fehlermeldung bekomme ich immer noch. Ich habe mal versucht, das freie Gespräch herauszunehmen, und mich auf das Menügestuerte zu fokussieren... klappt immer noch nicht. Ich weiß auch nicht was es mit dem Block 'r' auf sich hat.
|
Geschrieben um 11:53 am 28.11.2010 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | TAGträumer:
Das liegt daran, dass der Befehl reden doppelt defniert wird: einmal in normal.adv und einmal in reden.adx, jeweil mit unterschiedlicher Syntax. Um den Befehl reden in reden.adx zu benutzen, müsstest du die Doublette in normal.adv auskommentieren:
|
Geschrieben um 18:47 am 28.11.2010 | Zitat | Editieren | Löschen | |
Gast | Vielen Dank! Ist echt cool, dass einem hier so geholfen wird! Aber drei Fragen habe ich noch:
Das hätte vielleicht Sinn, wenn man jemanden ansprechen will, dann aber merkt, dass man keines von den genannten Sachen sagen will. Wobei man in dem Fall ja auch einfach eine Nummer anfügen kann, in der "(Doch nichts sagen)" steht. Aber als Reaktion (wie in meinem Beispiel) finde ich ein abruptes Dialogende (das nachher beliebig fortgesetzt werden kann) lächerlich.
|
Geschrieben um 20:50 am 28.11.2010 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | TAGträumer:
Den Befehl kannst du einfach umbenennen, z.B. in reden_mit:
|