Files
rustkeep/.scratch/rustkeep-1.0/issues/08-event-trigger-system.md

1.0 KiB

08 — Event- und Trigger-System

Type: grilling Status: open Blocked by: 07

Question

Welche Ereignisse meldet das Spiel, und wie hängen Quests und Effekte daran?

Quests sind Bedingung plus Belohnung als Daten; Script-Mods hängen sich später an dieselben Events. Zu klären:

  • Welche Events gibt es, und welche Daten trägt jedes? enemy_killed, item_picked_up, floor_entered, npc_talked, turn_started, damage_taken, player_died.
  • Wie werden Events benannt und für Modder erweiterbar gemacht — feste Liste oder auch namespaced IDs?
  • Bedingungen: reines Zählen (töte 5 Ratten) oder auch Zustandsabfragen (habe 100 Gold, Level ≥ 3)? Braucht es Verknüpfung mit UND/ODER?
  • Wie wird ein Questfortschritt gespeichert und wie überlebt er das Deaktivieren des Quest-Mods?
  • Reihenfolge und Rekursion: Was passiert, wenn eine Belohnung selbst ein Event auslöst?
  • Ist das synchrone Aufrufe (Handler direkt ausführen) oder eine Warteschlange?

Ergebnis: Eventliste mit Nutzlast, Bedingungs-Grammatik, TOML-Beispiel für eine Quest.