Spieler spielen auf mehreren Geräten und installieren ein Spiel mehrmals auf demselben Gerät. Daher müssen sie ihr Spiel immer mit dem letzten Fortschrittsstatus starten. Dazu müssen Sie eine Cloud-Speicherlösung in Ihr Spiel implementieren.
Damit Ihr Spiel den Richtlinien zur Nutzerfreundlichkeit für Google Play Games Level Up entspricht, muss eine Cloud-Speicherlösung implementiert werden, die aus zwei Teilen besteht:
Cloud-Speicher
Speichere den Spielstatus des Spielers in der Cloud. Rufen Sie sie ab, wenn der Nutzer das Spiel startet. Die Play-Spieldienste bieten mit Gespeicherte Spiele einen Dienst für diesen Zweck, aber Sie können auch eine beliebige andere Cloud-Speicherlösung verwenden.
Konfliktlösung für mehrere Spielstatus
Wenn ein Nutzer mehrere Konten hat oder es einen Konflikt zwischen gespeicherten Spieldaten auf seinem Gerät und in der Cloud gibt, benötigen Sie eine Richtlinie zur Konfliktlösung. Normalerweise entscheidet der Nutzer, wie diese Konflikte behoben werden sollen. Ihre Richtlinie zur Konfliktlösung sollte die folgenden wichtigen Szenarien abdecken:
- Mehrere Konten pro Nutzer:Behandeln Sie Fälle, in denen ein einzelner Nutzer mit der Anwendung über verschiedene Konten interagiert.
- Zustandskonflikte:Beheben Sie Abweichungen zwischen dem lokalen Spielstatus und dem in der Cloud gespeicherten Spielstatus.
Gespeicherte Spiele
Mit dem Dienst „Gespeicherte Spiele“ können Sie den Spielfortschritt Ihrer Spieler auf den Servern von Google speichern. Ihr Spiel kann die gespeicherten Spieldaten abrufen, damit zurückkehrende Spieler ein Spiel auf jedem Gerät an ihrem letzten Speicherpunkt fortsetzen können.
Dieser Dienst bietet sowohl Spielern als auch Entwicklern mehrere entscheidende Vorteile:
- Spieldaten auf mehreren Geräten synchronisieren: So kann ein Spieler beispielsweise ein Spiel auf einem Android-Smartphone starten und nahtlos auf einem Tablet fortsetzen, ohne dass der Fortschritt verloren geht.
- Datenpersistenz sicherstellen Spieler können ihr Spiel fortsetzen, auch wenn ihr Gerät verloren gegangen, zerstört oder gegen ein neueres Modell eingetauscht wurde.
Informationen zum Implementieren von gespeicherten Spielen auf Ihrer Plattform finden Sie unter Clientimplementierungen.
Grundlagen zu gespeicherten Spielen
Ein gespeichertes Spiel besteht aus zwei Teilen:
- Ein unstrukturierter binärer Blob – diese Daten können alles darstellen, was Sie möchten, und Ihr Spiel ist für das Parsen und Schreiben verantwortlich.
- Strukturierte Metadaten – zusätzliche Attribute, die den Binärdaten zugeordnet sind und es Google Play-Spielediensten ermöglichen, gespeicherte Spiele in der Standard-Benutzeroberfläche für gespeicherte Spiele visuell darzustellen und nützliche Informationen in der Google Play Spiele App zu präsentieren (z. B. den Zeitstempel der letzten Aktualisierung).
Ein Spiel kann beliebig viele Speicherstände für einen einzelnen Spieler schreiben, sofern die Dateigrößenbeschränkungen eingehalten werden. Es ist also nicht erforderlich, Spieler auf eine einzelne Speicherdatei zu beschränken.
Cover-Abbildungen
Der Dienst „Gespeicherte Spiele“ bietet neben den Persistenzfunktionen auch eine visuelle Benutzeroberfläche. Wir empfehlen Ihnen dringend, repräsentative Bilder mit den entsprechenden Speicherdateien zu verknüpfen. Wenn Sie die vom Play Games SDK bereitgestellte Standard-Benutzeroberfläche für die Liste der gespeicherten Spiele in Ihrem Spiel verwenden, werden diese Titelbilder in der Benutzeroberfläche angezeigt. Die Coverbilder können auch in der Google Play Spiele App angezeigt werden.
Beschreibungen
Sie können eine kurze Textbeschreibung des Inhalts eines bestimmten gespeicherten Spiels eingeben. Diese Beschreibung wird Spielern direkt angezeigt und sollte den Zustand zusammenfassen, den das gespeicherte Spiel darstellt, z. B. „Kampf gegen die Kobolde im Dunklen Wald“.
Größenbeschränkung
Für gespeicherte Spieldaten in Google Cloud fallen keine Gebühren an. Jede gespeicherte Spieldatei darf jedoch maximal 3 MB groß sein.
Offline-Support
Ihr Spiel kann weiterhin Daten in einem gespeicherten Spiel lesen und schreiben, wenn das Gerät des Spielers offline ist. Die Synchronisierung mit den Google Play-Spieldiensten ist jedoch erst möglich, wenn eine Netzwerkverbindung hergestellt wird. Sobald die Verbindung wiederhergestellt ist, werden die gespeicherten Spieldaten auf den Google-Servern asynchron aktualisiert.
Konfliktlösung
Wenn Sie den Dienst „Gespeicherte Spiele“ verwenden, kann es in Ihrem Spiel zu Konflikten kommen, wenn Sie versuchen, Daten zu speichern. Diese Konflikte können auftreten, wenn ein Nutzer mehrere Instanzen Ihrer Anwendung auf verschiedenen Geräten oder Computern ausführt. Ihre Anwendung muss diese Konflikte so lösen können, dass die Nutzerfreundlichkeit maximiert wird.
Datenkonflikte treten in der Regel auf, wenn eine Instanz Ihrer Anwendung den Dienst „Gespeicherte Spiele“ nicht erreichen kann, während sie versucht, Daten zu laden oder zu speichern. Im Allgemeinen lassen sich Datenkonflikte am besten vermeiden, indem Sie beim Starten oder Fortsetzen Ihrer Anwendung immer die neuesten Daten aus dem Dienst laden und Daten in angemessener Häufigkeit im Dienst speichern. Es ist jedoch nicht immer möglich, Datenkonflikte zu vermeiden. Ihre Anwendung sollte alles tun, um Konflikte so zu behandeln, dass die Daten Ihrer Nutzer erhalten bleiben und sie eine gute Nutzererfahrung haben.
Beschränkungen
Die Google Play-Spieledienste erzwingen Größenbeschränkungen für Binärdaten und Coverbilder von 3 MB bzw. 800 KB.
Metadaten zu gespeicherten Spielen
Die strukturierten Metadaten für ein gespeichertes Spiel enthalten die folgenden Eigenschaften:
| Attribut | Beschreibung |
|---|---|
| ID | Ein eindeutiger String, der von Google Play-Spieldienste für dieses gespeicherte Spiel generiert wird. Verwenden Sie diese ID, um in Ihren Spieleclients auf das gespeicherte Spiel zu verweisen. |
| Name | Ein vom Entwickler angegebener Kurzname für den gespeicherten Spielstand, z. B. „Speicherplatz 1“ oder „SpielerName_Speicherplatz1“. Spielern wird das nicht angezeigt. |
| Beschreibung | Eine vom Entwickler bereitgestellte Beschreibung des gespeicherten Spiels. |
| Zuletzt geändert | Zeitstempel in Millisekunden, der von den Google Play-Spieldiensten generiert wurde und angibt, wann das gespeicherte Spiel zuletzt aktualisiert wurde. |
| Spielzeit | Eine vom Entwickler angegebene Zeit (in Millisekunden), die im gespeicherten Spiel angezeigt werden soll. Dieser Wert sollte angeben, wie lange der Spieler das entsprechende gespeicherte Spiel gespielt hat. Ein Wert für die gespielte Zeit von 3.600.000 wird von den Google Play-Spielediensten beispielsweise als „1 Stunde“ angezeigt. |
| Titelbild | Dies ist eine optionale, vom Entwickler bereitgestellte Eigenschaft, die Informationen zum Titelbild enthält. |
Clientimplementierungen
Informationen zum Implementieren von gespeicherten Spielen für Ihre Plattform finden Sie in den folgenden Ressourcen: