Schnellstart für Aktionen und Regeln

Mit einer PlayStream-Regel können Sie in Echtzeit auf eine Teilmenge eines PlayStream-Ereignistyps reagieren.

Voraussetzungen

Ein kurzes Glossar mit relevanten Begriffen:

  • PlayStream: Die Gruppe von Features, aus denen die PlayFab-Ereignispipeline besteht.

    • Ein PlayStream-Ereignis ist eine JSON-formatierte Zeichenfolge, die ein Ereignis zu einem Player oder Title beschreibt.
    • PlayStream-Ereignisse haben eine maximale Größe basierend auf Ihrer Automation-Featureebene.
  • Regel: Führt zusätzliche Logik als Reaktion auf einen PlayStream-Ereignistyp in Echtzeit aus.

    • Die Summe von: Ein Ereignistrigger, eine optionale Liste von Bedingungen und eine optionale Liste von Aktionen.
  • Trigger: Der Name des Ereignisses, das diese Regel aktiviert.

  • Bedingung: Ein Inhaltsfilter für Regeln und andere PlayStream-Features.

    • Führt eine sehr einfache Auswertung des JSON-Objekts des PlayStream-Ereignisses aus und überspringt Ereignisse, die nicht den Anforderungen entsprechen.
  • Aktion: Die kontextbezogene Arbeit, die für die entsprechende Entität ausgeführt werden soll.

Eine Regel besteht aus genau einem Trigger, einer optionalen Liste von Bedingungen und in der Regel aus mindestens einer Aktion (nicht erforderlich, aber ohne sie ziemlich nutzlos).

Trigger, Bedingungen und Aktionen sind auch Teil anderer Systeme: Massenaktionen und Turnier-Bestenlisten.

Beispielfall: Zählen von benutzerdefinierten Ereignissen vom Client

Im folgenden Beispiel veröffentlichen wir das folgende benutzerdefinierte Ereignis vom Client.

public void WriteEvent() {
    PlayFabClientAPI.WritePlayerEvent(new WriteClientPlayerEventRequest {
        EventName = "ForumPostEvent",
        Body = new Dictionary<string, object> {
            { "Subject", "My First Post" },
            { "Body", "My awesome Post." }
        }
    }, LogSuccess, LogFailure);
}

In diesem Fall meldet der Client manuell einen benutzerdefinierten ForumPostEvent (dies entspricht derzeit keinem automatischen Ereignis in PlayFab oder unterstützten Partnern).

Wir verwenden eine PlayStream-Regel, um zu zählen, wie oft ein Spieler einen Forumbeitrag auf diese Weise meldet.

Anforderung: Ihr Spiel muss bereits Ereignisse dieses Typs veröffentlichen, bevor Sie über die Game Manager-GUI eine Regel erstellen können, die darauf ausgelöst wird.

Wechseln Sie zu Ihrem Game Manager:

  • Navigieren Sie zu Ihrem Titel.
  • Wählen Sie Automatisierung aus.
  • Wechseln Sie zu Regeln.
  • Wählen Sie Neue Regel aus.

Game Manager – Automatisierung – neue Regel

Lassen Sie uns die neue Regel in diesem Beispiel Stück für Stück auswerten:

  • title.6195.ForumPostEvent
    • 6195 ist der Titel, der in diesem Tutorial verwendet wird. Ihre titleId entspricht Ihrem eigenen Titel.
    • ForumPostEvent ist der Ereignisname, der im Code für diesen Beispielfall verwendet wird.
    • Diese Zeile ist nur verfügbar, wenn Sie kürzlich mindestens eine ForumPostEvent in Ihrem Titel veröffentlicht haben.
  • Die bedingungen , die speziell in diesem Beispiel verwendet werden, haben nur eine minimale Verwendung.
    • Es wird jedoch das Filtern des benutzerdefinierten Ereignisses veranschaulicht, wenn der Textschlüssel der ungültigen Zeichenfolge in unserem Textwörterbuch zugeordnet ist.
    • Filter sind optional und sollten irrelevante Spieler aus Ihrer Regel entfernen.
  • Die ausgewählten Aktionen in diesem Fall erhöhen einen Statistikzähler um eins.
    • Anforderung: Die Statistik "Forumbeiträge " muss im Game Manager unter Bestenlisten definiert werden.

Im Game Manager-PlayStream-Debugger (siehe unten) können Sie watch, wenn der Trigger wirksam wird.

Game Manager – PlayStream – Debugger – Ereignistrigger

Wie Sie sehen können, löst der benutzerdefinierte ForumPostEvent automatisch die Statistik aus, die wir unter Aktionen für unsere neue Regel festgelegt haben.

Erweitert: CloudScript-Aktionen

Viele der integrierten Aktionen in PlayFab sind ziemlich einfach und bieten Ihnen möglicherweise nicht die volle Leistung, die Sie benötigen. Aus diesem Grund können Sie die Aktionslogik mit CloudScript vollständig anpassen.

Lassen Sie uns die Regel bearbeiten.

  • Entfernen Sie die Bedingung.
  • Legen Sie die Aktion auf Ausführen von CloudScript fest.
  • Wählen Sie die Schaltfläche Aktion speichern aus.

Game Manager – Automatisierung – Regel bearbeiten

Wenn wir nun ein neues ForumPostEvent veröffentlichen, wird eine CloudScript-Ausführung angezeigt.

Game Manager – PlayStream – Debugger – CloudScript-Ausführung

Das Schreiben Ihres CloudScript für die Reaktion auf PlayStream-Regeln ist ein erweitertes Thema, das in unserem Tutorial behandelt wird: Verwenden von CloudScript-Aktionen mit PlayStream.