Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Veiter

Frischling

  • »Veiter« ist der Autor dieses Themas

Beiträge: 55

Wohnort: München

Beruf: Software-Entwickler

  • Private Nachricht senden

1

21.04.2008, 14:39

Wie programmiert man Quests?

Hallo,

ich stehe gerade vor der interessanten Herausforderung, Quests in ein Spiel einzupflegen. Unser Projekt (Randwelt) wurde bereits hier vorgestellt und bietet zur Zeit Features wie Kampf in einer 3D-Umgebung, Inventar, aber auch ein Dialog-System ist schon enthalten.

Aber wie ist der Ansatz, um Aufträge für den Spieler zu programmieren? Fürs erste möchte ich alle Quest-Items / Suchaufträge usw. außen vor lassen und einen reinen dialog-basierten Quest entwickeln.

Konkret bittet Figur A den Spieler darum, Figur B etwas zu fragen. Mit der gesuchten Information gehts zurück zu Figur A, die sich erfreut zeigt und dem Spieler etwas Geld überweist.

Hier zeigt sich, dass das Quest-System eng mit dem Dialog-System verknüpft sein muss, damit z.B. Gesprächsoptionen bei Bedarf freigeschaltet werden können. Nur wie sollte so eine Datenstruktur (Baum?) aussehen?
(Unser Dialogsystem basiert auf Blöcken, bestehend aus NPC-Text und Spieler-Antwortmöglichkeiten. Jede Antwortmöglichkeit verweist auf einen weiteren Block (oder auf NULL)).

Ich wäre erfreut, wenn jemand Anregungen liefern könnte. Quests werden immerhin für jedes Rollenspiel gebraucht, also gehe ich mal davon aus, dass dieses Problem schon 100mal gelöst wurde (obwohl es keine Suchergebnisse gab).

MfG
Veiter

2

21.04.2008, 16:38

Du musst Trigger oder Skripte einbauen. Trigger sind einfacher, Skripte mächtiger.
Bei Age of Empires 2 hab ich das zum ersten mal ausprobiert, im Missionseditor. Grob gesagt, hat man eine Bedingung (Figur in Gebiet, Gegner getötet usw.) die ein paar Parameter hat (welches Gebiet, welcher Spieler, welcher Gegner) und dann ein paar Aktionen (Dinge die Geschehen, wenn die Bedingung erfüllt ist). Das wäre z.B: Gewinnen, Verlieren, X Rohstoffe bekommen usw.

Bei Skripten hast du ein paar mehr Möglichkeiten, z.B. kannst du Schleifen bauen und so. Für Skripte würde ich auch eine Vorgefertigte Skriptsprache nehmen, Lua ist da z.B. ein prominentes Beispiel.

Naja, evtl. hast du ja irgendwelche Spiele (RTS, RPG) mit Missionseditor, wo man selber Quests erstellen kann und so. Schau dir die am besten an, damit kann man sehr schön Ideen sammeln.
Lieber dumm fragen, als dumm bleiben!