Multiple Choise Dialoge

  • Multiple Choise Dialoge

    Hallo,


    ich würde in mein nächstes Spiel gerne unlinear gestalten. Dazu brauche ich aber spezielle Dialoge, bei denen sich der Spieler verschiedene Antworten, bzw. Fragen aussuchen kann.
    Das wiederum hat Einfluss auf die Handlung.
    Leider habe ich in Gamemaker bisher keine andere Möglichkeit gefunden, als für jede Antwort oder Frage einen eigenen Sprite zu erstellen. Das ist aber sehr Zeitaufwendig und Ressourcenfressend, deshalb würde ich gern wissen, ob man solche Dialoge villeicht mithilfe von Scripts einbauen könnte.

    Ich würde mich über Hilfe sehr freuen.


  • Wie meinst du das "für jede Antwort oder Frage einen eigenen Sprite zu erstellen"?
    Machst du tausende von Antwortbuttons mit der entsprechenden Antwort darauf?

    Was hältst du davon die Antwort ingame als Schrift auf den Butons darzustellen?
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • kilik meint das so: du hast eine button grafik mit dem hintergrund des buttons. Dieses weist du jedem Button zu. Dann machst du im Draw-Event einfach:

    GML-Quellcode

    1. draw_sprite(sprite_index,image_index,x,y);
    2. draw_text(x,y,"Choice wasweißich");

    dann wird das Sprite angezeigt und der Text dazugezeichnet. Dann brauchst du aber immernoch für jeden Button ein Objekt. Das kannst du aber mit dem Instance Creation Code besser machen, indem du eine Variable machst, die den Text beinhaltet, und eine, die zB die aktion beinhaltet oder so.
    Eine weitere Möglichkeit wäre auch, alles von einem Objekt zu steuern, und die Buttons nicht per GM-Event abzufragen sondern direkt per Maus Koordinaten im Step-Event. Da sind dann aber schon fortgeschrittene Kenntnisse von Nöten.
    “Computers are good at following instructions, but not at reading your mind.” (Donald Knuth)

    Ich schreibe mit Neo.
  • GML-Quellcode

    1. choice=0 //variabel choiche wird auf 0 gesetzt
    2. color_choice=c_orange //variabel color_choice wird auf orange gesetzt
    3. color_normal=c_black //variabel color_normal wird auf schwarz gesetzt
    4. draw_text(50,0,"Was wollen Sie kaufen?") //Frage wird gezeigt
    5. if keyboard_check(vk_up)=true //wenn der "oben-knopf" gedrückt wird,
    6. {
    7. if choice=0 //und wenn choice=0 ist,
    8. {
    9. choice=2 //wird choice wieder auf 2 gesetzt
    10. }
    11. else //wenn choice nicht 0 ist,
    12. {
    13. choice-=1 //wird choice um 1 subtrahiert
    14. }
    15. }
    16. }
    17. if keyboard_check(vk_down)=true //wenn der "unten-knopf" gedrückt wird,
    18. {
    19. if choice=2 //und wenn choice=2 ist,
    20. {
    21. choice=0 //wird choice wieder auf 0 gesetzt
    22. }
    23. else //wenn choice nicht 2 ist,
    24. {
    25. choice+=1 //wird choice um 1 addiert
    26. }
    27. }
    28. }
    29. if choice=0 { draw_set_color=color_choice } //Bei choice=0 wird die Farbe geändert
    30. else { draw_set_color=color_normal}
    31. draw_text(100,0,"Ein Schwert") //und der Text ausgegeben
    32. // Das gleiche für die Anderen "choices"
    33. if keyboard_check(vk_enter)=true //Wenn Enter gedrückt wird,
    34. {
    35. if choice=0 //und choice=0 ist
    36. {
    37. schwert+=1 //passiert etwas
    38. }
    39. }
    40. //Auch hier dasselbe für die Anderen "choices".
    Alles anzeigen

    Magical dream time!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Megamag ()

  • Nici, nichts für ungut, aber ein Multible choice Dialog ist schon ein etwas komplexeres konstrukt als du dir vorstellst. Ich hab damals für EN:Dee einen geschrieben. Man sollte schon einige ahnung von Strukturen und Arrays haben, um sich an so etwas heranzuwagen.

    Ein (Mega)Script für multible Choice Gespräche muß auch auf das Spiel abgestimmt sein. In meinem Fall z.b. mußte das Script in der Lage sein neue Quests anzulegen, bei Quests Details hinzuzufügen. Desweiteren durften nicht immer alle Gesprächsoptionen von Anfang an im Spiel vorhanden sein. Einem Gewissen Charakter konnte man eine Frage erst stellen, wenn man im spiel einen gewissen Gegenstand untersucht hat.

    Dann musst du dir immer vor Augen halten, ein Multible choice Gespräch ist ein bisschen wie ein Baum aufgebaut. Hier mal ein kurzes Beispiel:



    Dabei müssen die Äste auch die Fähigkeit haben an bestimmte Punkte im Gespräch zurückzuspringen, wie z.b. eine Verzweigung davor oder an den Anfang, dem Spieler einen Gegenstand zu geben, oder das Gespräch zu beenden.
    ...
  • Benutzer online 1

    1 Besucher