Google Play Games Leaderboard

  • 14 Antworten
  • Letztes Antwortdatum
E

erli2909

Fortgeschrittenes Mitglied
50
Hallo Leute.

Ich will in mein neues Game ein Leaderboard einbauen, einfachheitshalber gleich das über Google Play Games.
Allerdings hab ich das Problem, dass ich den Score IMMER in das Leaderboard übertragen will, der Score soll sich also nach oben und nach unten verändern lassen.

Mit submitScore() wird der Wert allerdings nur aktualisiert, wenn der neue Wert besser ist als der alte..

Ist das überhaupt möglich? Denn ich finde einfach nichts dazu, weder in der Android Doku, noch über Google..

Danke schon mal für die Hilfe.
 
Noch nie damit gearbeitet. Aber was workaround kannst du vielleicht den user "löschen" und einfach neu eintragen. So geht es ja auch hoch/runter.. Weil es ja quasi immer ein neuer user ist...

Gruß
 
An diese Lösung hab ich auch schon gedacht, allerdings ist auch das nicht möglich bzw finde ich auch diese Funktion nicht..

EDIT: Ich befürchte, Google unterstützt das einfach nicht. Darum eine andere Frage an euch: Kennt jemand eine (möglichst einfache) Lösung um einem Spiel eine "Rangliste" zu verpassen?
 
Zuletzt bearbeitet:
Server? :o

Eigene Datenbank..
 
SQL ist nicht meine Stärke :)
Aber gut, es wird sich nicht anders lösen lassen..
 
Naja, irgendwo musst du es speichern.
Du kannst es natürlich auch in eine Datei speichern, aber das ist nun wirklich nicht mehr zeitgemäß xD

Gruß
 
Ich lass die Rangliste jetzt erstmal weg. Ich finde es schade, dass es sich nicht über Google lösen lässt, da sonst auch alles darüber läuft. Google+ Login, Multiplayer, Cloud Save, Achievments.. Naja gut. Danke trotzdem^^
 
Kannst dir doch was eigenes über Googles App Engine erstellen... Keine Ahnung was du vorhast. Aber wenn du das alles eingebaut hast, dann sollte es doch ein kinderspiel für dich sein eine Online-Datenbank zu ertellen...

Gruß
 
  • Danke
Reaktionen: erli2909
Wenn ich ehrlich bin, höre ich zum ersten Mal von der Google App Engine. Habs mir kurz angeschaut und ist wohl genau das richtige. Ich lese mich dort mal ein, wird wohl kein großes Problem sein.. Danke!

Zu "keine Ahnung was du vorhast":
Ganz einfach, es gibt in dem Game einen Multiplayermodus in dem man mit 1000 Münzen beginnt, durch Duelle erhält/verliert man Münzen und das ganze soll sich in einer Rangliste aller Spieler vergleichen lassen. So wie in vielen Spielen eben (zB Quizduell).
 
Ich hatte auch vor meine Game-App mit dem loudbasierten Leaderboards (ggf. auch Achivements) von Google zu versehen. Aber die Integration ist ein Alptraum. Es gibt einige Tutorials, aber funktionieren tut keines.

Die ersten Schritte (Aktivierung des Service bei Google) etc. geht noch alles. Dann wirds schon haarig, allein mit dem Verständnis weil da von verschiedenen Ids (incl. Test-Ids) die Rede ist.

Grösstes Problem ist den Code (BaseGameUtils) von Google, der die Kommunikation mit den Google-Servern übernimmt (z.B. das Einloggen, ...) in seine App in Eclipse zu bringen. Das funktioniert irgendwie nicht. Der Compiler meckert, dass da etwas fehlt.

Weiteres Problem ist auch die Kompatibilität seiner App mit mindestens Android 4.x zu erreichen, wenn man seine App auch für Android 2.3 freigeben möchte. Da muss man dann Kompatibilitäts-Bibliotheken mit hinzufügen. Nicht davon zu sprechen, wie oft (incl. Deinstallation) ich den AndroidSdk-Manager updaten musste, bis alle Komponenten die beschrieben sind, da waren.

Ich habe deshalb die Integration erstmal zurück gestellt, werde aber das Thema nach einiger Zeit wieder aufnehmen. Es muss irgendwie zu schaffen sein, da viele Apps diese Game-Services auch verwenden. Und was besseres gibts nicht, die Highscores etc. cloudbasiert und mit 'social media' (G+) verknüpft ablegen und wieder abfragen zu können.
 
nach unten verändern lassen.
Ist von google (noch) nicht vorgesehen. Gibt es aber nen Ticket bei google zu -> bitte voten^^

Aber die Integration ist ein Alptraum. Es gibt einige Tutorials, aber funktionieren tut keines.
Die Integration war eigentlich recht einfach und gut bei Google dokumentiert...

Grösstes Problem ist den Code (BaseGameUtils) von Google, der die Kommunikation mit den Google-Servern übernimmt (z.B. das Einloggen, ...) in seine App in Eclipse zu bringen. Das funktioniert irgendwie nicht. Der Compiler meckert, dass da etwas fehlt.

Weiteres Problem ist auch die Kompatibilität seiner App mit mindestens Android 4.x zu erreichen, wenn man seine App auch für Android 2.3 freigeben möchte. Da muss man dann Kompatibilitäts-Bibliotheken mit hinzufügen. Nicht davon zu sprechen, wie oft (incl. Deinstallation) ich den AndroidSdk-Manager updaten musste, bis alle Komponenten die beschrieben sind, da waren.

Das kann man aber nicht auf die BaseGamesUtil schieben oO Einmal eingebunden... nötige dependencies hinzugefügt... keine 2 Minuten dauert das oO

lg. Dagobert
 
Meine Meinung:
Das Leaderbord einzubinden ist wirklich keine allzu große Sache. Die Doku ist erste Sahne - jedenfalls fand ich die Funktionalität von in-app-billings bei weitem schlechter dokumentiert, obwohl Play Games insgesamt doch deutlich komplexer ist.
Ob es deswegen in 2 Minuten wirklich implementiert ist, wage ich dennoch zu bezweifeln. :)
Einen Abend sollte man sich auf jeden Fall Zeit und Ruhe nehmen um sich im Vorfeld über die Themen zu informieren (wie gesagt: Meine Meinung)

Kontra: Google macht es einem an ein paar Stellen nicht gerade einfach. Die "Participanten" haben die ungünstige Eigenschaft, dass sie ihre ID bei jedem Raumwechsel ändern. Auch eine Trennung der Spieler im Raum ist meines Wissens nur nach vorherigem Sortieren möglich.
Das Beispiel für den RTM ist schon suuuuper simpel, ein zweites komplexeres Beispiel (bei dem mehr Daten versendet werden) wäre mir auf jeden Fall eine große Hilfe gewesen.
Derzeit habe ich noch ein paar Bugs in der Übertragung was unsinnvolle Zustände im Spiel hervorruft. Auf diese Problematik geht Google überhaupt nicht ein (nur dass beim Button klicker 2000 der "finale Datensatz" als reliable übertragen wird).
Ansonsten ist dieses Prinzip, dass sobald die activity verlassen der Raum mitgeschlossen wird, für manches Spielprinzip uU hinderlich.
Das in Spielen sonst so einfache und nützliche Erstellen von Zufallszahlen stellt beim p2p multiplayer schon größere Probleme dar. Hier wäre es extrem praktisch wenn Google zB über den Raum noch die ein oder andere Funktionalität anbieten würde.
Mich interessiert derzeit wie die Einbindung in Unity abläuft. Ist ja die einzige Engine, die vollen Support hat. Hat jemand mit Unity und Play Games Erfahrungen?
 
Ich bin erleichtert, dass es doch Leute gibt, die die GooglePlay Services ohne grössere Probleme integrieren konnten. Da hab ich zumindest die Hoffnung, in einem 2.Anlauf mit mehr Zeit, dass Ganze auch hin zu bekommen:)
 
Ist machbar, wie gesagt, plane dir vorher etwas Zeit ein und lese dir die Doku in aller Ruhe durch und versuche nicht gleich irgendwas "auszuprobieren", das könnte schief gehen.
 
Ich bin das Thema wieder angegangen. Nach viel Konfusion ging es diesmal aber irgendwie besser.

Von der Google Play Developer Console bin ich "ready for testing".

Wenn ich die App ausführe, dann bekomme ich keine Fehler oder gar Abstürze. Aber ich frage mich, was "ready for testing" bedeutet? Kann ich denn irgendwo nachschauen, wie das 'Test'-Leaderboard nach oder gar während der Nutzung der App gefüllt ist?

Was soll das für ein 'Test' sein, wenn ich nicht prüfen kann, ob das Leaderboard korrekt gefüllt wird. Die submitScore() Methode hat ja noch nicht einmal einen Rückgabewert anhand dessen man evtl. etwas sehen könnte.

Edit:
Hat sich im Übrigen geklärt. Man kann das Leaderboard nicht im Web anschauen, aber von der App heraus indem man einfach eine entsprechend vorgesehene Activity startet:
startActivityForResult(Games.Leaderboards.getLeaderboardIntent( <ApiClient>, <leaderboardID>, <beliebigerInteger> ));

Die braucht man ja eh früher oder später, wenn man dem User aus der App heraus, z.B. per Klick auf ein Pokal-Symbol, die Rangliste einsehen lassen will.
 
Zuletzt bearbeitet:

Ähnliche Themen

numanoid
Antworten
4
Aufrufe
1.719
numanoid
numanoid
CrazyC
Antworten
0
Aufrufe
1.494
CrazyC
CrazyC
K
Antworten
0
Aufrufe
1.247
knuppel
K
Zurück
Oben Unten