Tabele wyników

Tabele wyników mogą być świetnym sposobem na zachęcenie graczy do rywalizacji – zarówno tych najbardziej zaangażowanych (którzy będą walczyć o pierwsze miejsce w publicznej tabeli wyników), jak i tych grających bardziej okazjonalnie (którzy będą chcieli porównywać swoje postępy z postępami znajomych).

Aby dowiedzieć się, jak wdrożyć tablice wyników na swojej platformie, zapoznaj się z sekcją Implementacje klienta.

Informacje o tablicach wyników

Gdy utworzysz tabelę wyników, Usługi gier Play zajmą się zarządzaniem większością jej aspektów. Typowy proces wygląda tak:

  1. Po zakończeniu gry (lub w odpowiednim momencie, który określisz) gra przesyła wynik gracza do co najmniej 1 tabeli wyników utworzonej przez Ciebie na potrzeby gry.
  2. Usługi gier Play sprawdzają, czy ten wynik jest lepszy od bieżącego wpisu gracza w tabeli wyników dziennych, tygodniowych lub wszech czasów. Jeśli tak jest, usługi gier Play zaktualizują odpowiednie tabele wyników o nowy wynik.
  3. Usługi gier Play wysyłają raport z wynikami z powrotem do klienta gry. Ten raport informuje klienta, czy jest to nowy rekord dzienny, tygodniowy czy wszech czasów. Jeśli nie, Usługi gier Play poinformują klienta o aktualnym dziennym, tygodniowym lub ogólnym najlepszym wyniku tego gracza.
  4. Aby pobrać wyniki gracza z tablicy wyników, możesz poprosić o określony przedział czasu (dzienny, tygodniowy lub ogólny) i określić, czy użytkownik chce zobaczyć tablicę wyników społecznościową czy publiczną. Usługi gier Play przeprowadzają wszystkie niezbędne filtrowania, a następnie odsyłają wyniki do klienta.
  5. Jeśli jest dużo wyników do zgłoszenia, Usługi gier Play wysyłają tylko dane dotyczące najlepszych wyników w tabeli wyników. Możesz też pobrać dane o surowych wynikach w przypadku najlepszych wyników lub wyników sąsiadujących z wynikami gracza.

Wiele tabel wyników

Gry mogą mieć wiele tabel wyników, maksymalnie 70. Na przykład gra wielopoziomowa może udostępniać inną tablicę wyników dla każdego poziomu, a gra wyścigowa może mieć osobną tablicę wyników dla każdego toru.

Przedziały czasu w tabeli wyników

Pakiet SDK Usług Google Play Games automatycznie tworzy dzienne, tygodniowe i całościowe wersje każdej utworzonej przez Ciebie tablicy wyników. Nie musisz tworzyć osobnych tabel wyników dla każdego okresu.

Codzienne tabele wyników są resetowane o godzinie 7:00 UTC (czyli o północy czasu pacyficznego letniego) przez cały rok.

Cotygodniowe tabele wyników resetują się o północy z soboty na niedzielę w tej samej strefie czasowej co tabele dzienne (UTC-7).

Publiczne i społeczne tabele wyników

Pakiet SDK Usług Google Play może wyświetlać graczowi 2 różne wersje każdej tablicy wyników:

Tablica wyników społecznościowa to tablica wyników, na której znajdują się osoby z kręgów użytkownika (lub, dokładniej, członkowie kręgów, które użytkownik wybrał do udostępniania w Twojej aplikacji), które zdecydowały się udostępniać użytkownikowi informacje o swojej aktywności w grze.

Publiczna tabela wyników to tabela wyników, która zawiera graczy, którzy zdecydowali się publicznie udostępniać swoją aktywność w grze. Jeśli gracz nie zdecyduje się udostępniać publicznie swojej aktywności w grze, nie pojawi się w tej tabeli wyników.

Wyświetlanie tabel wyników

W mobilnych bibliotekach klienta biblioteki zajmują się formatowaniem i wyświetlaniem tablic wyników. Możesz określić, czy gracz może zobaczyć konkretną tabelę wyników, czy listę wszystkich tabel wyników, z których może wybrać jedną.

Możesz też wdrożyć własne wersje tablic wyników, uzyskując dostęp do danych bezpośrednio z bibliotek klienta.

Atrybuty

Aby tworzyć tabele wyników i nimi zarządzać, musisz znać te atrybuty tabeli wyników:

Podstawy

Z każdą tablicą wyników są powiązane te podstawowe elementy:

  • Identyfikator to unikalny ciąg znaków, który wygeneruje dla Ciebie Konsola Google Play. Ten niepowtarzalny identyfikator służy do odwoływania się do tabeli wyników w klientach gry.
  • Nazwa to krótka nazwa tablicy wyników (np. „Najwyższe wyniki” lub „Poziom 3”). Może zawierać do 100 znaków.
  • Ikona to kwadratowa ikona, która będzie powiązana z Twoją tablicą wyników. Wskazówki dotyczące tworzenia ikon tablicy wyników znajdziesz w wytycznych dotyczących ikon.
  • Kolejność na liście to kolejność, w jakiej tabela wyników będzie wyświetlana, gdy gracz wyświetli tabele wyników powiązane z Twoją grą.
  • Limity to opcjonalne wartości, które określają dolne i górne granice wyników dopuszczalnych w tabeli. Może to pomóc w odrzucaniu zgłoszeń wyników, które są ewidentnie sfałszowane. Możesz też użyć Players.hide, aby ukryć graczy, którzy Twoim zdaniem przesłali fałszywe wyniki, we wszystkich tabelach wyników w aplikacji.

Określanie kolejności tabel wyników

Tabele wyników mogą mieć jeden z 2 rodzajów kolejności:

  • Domyślnie wyświetlane są tablice wyników Im większa liczba, tym lepiej. Zwykle tak to wygląda w większości gier, w których gracze zdobywają punkty.
  • Tabele wyników mniejsze jest lepsze są czasami używane w przypadkach, gdy mniejszy wynik jest lepszy. Najczęstsze przykłady tego typu rankingów można znaleźć w grach wyścigowych, w których wynik reprezentuje czas ukończenia wyścigu przez gracza.

Format wyniku

Wszystkie wyniki są przesyłane do tabel wyników i przechowywane wewnętrznie jako liczby całkowite długiego formatu, ale usługi gier Play mogą wyświetlać je użytkownikowi w różnych formatach:

  • Numeryczne tabele wyników przedstawiają wyniki w postaci liczb. Mogą być wyświetlane jako liczby całkowite lub rzeczywiste z określoną liczbą miejsc po przecinku. Przesyłasz wynik jako liczbę całkowitą, a separator dziesiętny jest wstawiany w określonym miejscu. Wynik 314159 będzie wyświetlany jako 3.14159, 3141.59 lub 314159 w zależności od określonego miejsca po przecinku.

  • Tablice wyników Czas przedstawiają wyniki w formacie godziny / minuty / sekundy / setne sekundy. Wyniki musisz przesyłać w milisekundach, więc 66032 zostanie zinterpretowane jako 1:06.03.

  • Tabele wyników walut przedstawiają wyniki w formacie waluty. Przesyłasz wyniki jako 1/1 000 000 jednostki głównej waluty. Na przykład wynik 19950000 zostanie zinterpretowany jako $19.95, jeśli walutą jest USD.

Tablice wyników z wartościami liczbowymi obsługują też jednostki niestandardowe. Jeśli na przykład w Twojej grze najlepsze wyniki są mierzone w metrach, możesz określić „metry” jako domyślną jednostkę w tabeli wyników.

Tłumaczenia i formatowanie wyników

Gdy biblioteki klienta mobilnego wysyłają do Usług Gier Play żądanie danych tabeli wyników, określają język i ustawienia regionalne, w których mają być wyświetlane te wyniki. Interfejs REST API umożliwia też określenie języka na podstawie ustawień regionalnych. Usługi gier Play zwracają sformatowane wyniki w tabeli wyników odpowiednie dla danego języka i ustawień regionalnych. Te sformatowane wyniki będą wyświetlane niezależnie od tego, czy dodasz tłumaczenia do swojej tablicy wyników.

W przypadku tablic wyników numerycznych format liczb jest wyświetlany inaczej w zależności od języka. (np. 12,345.78 w Stanach Zjednoczonych i 12 345,78 we Francji). Jeśli używasz jednostek niestandardowych i masz dodane tłumaczenia do gry, musisz podać przetłumaczone jednostki dla każdego dodanego języka. Usługa wyświetla przetłumaczone jednostki w odpowiednich miejscach.

W zależności od wybranego języka może być konieczne podanie różnych wersji nazw jednostek. W języku angielskim potrzebujesz wersji dla jednego elementu i wersji dla wszystkich pozostałych (np. „metr” i „metry”). W języku polskim musisz podać wersję dla jednej jednostki, kilku jednostek, wielu jednostek i wszystkiego innego. Więcej informacji o regułach liczby mnogiej znajdziesz w artykule Ciągi znaków określające liczbę(liczba mnoga).

W przypadku tablic wyników Czas format czasu jest wyświetlany zgodnie z językiem i ustawieniami regionalnymi gracza. Będzie to widoczne głównie wtedy, gdy używasz ułamków sekundy lub wartości godzinowej z więcej niż 3 cyframi (np. 4,815:16:23.42 w Stanach Zjednoczonych i 4.815:16:23,42 w Niemczech).

W przypadku tablic wyników waluty format waluty będzie wyświetlany zgodnie z językiem i lokalizacją gracza. Nie możesz jednak zmienić jednostki waluty. Jeśli na przykład podasz walutę USD, gra będzie wyświetlać $19.95 w Stanach Zjednoczonych i 19,95 $ we Francji. Nie możesz jednak określić, że w Stanach Zjednoczonych gra ma wyświetlać dolary, a we Francji – euro.

Wskazówki dotyczące ikon

Ikony powinny mieć wymiary 512 x 512 pikseli i format PNG lub JPEG. W większości klientów gier ikony będą pomniejszane, więc unikaj tworzenia ikon z zbyt dużą liczbą drobnych szczegółów. Możesz przesyłać ikony z kanałem alfa, a przezroczystość zostanie zachowana. Na urządzeniach z Androidem ikona tablicy wyników będzie wyświetlana na ciemniejszym szarym tle, więc wybierz ikonę, która będzie dobrze wyglądać w takiej sytuacji.

We wszystkich wersjach językowych używana jest ta sama ikona, dlatego nie zalecamy umieszczania na niej tekstu ani treści zlokalizowanych.

Tworzenie tabeli wyników

Z tej sekcji dowiesz się, jak tworzyć tabele wyników w przypadku nowych i dotychczasowych gier.

Tworzenie tabeli wyników dla nowej gry

Aby utworzyć tabelę wyników dla nowej, nieopublikowanej gry, otwórz w Konsoli Google Play stronę swojej gry i kliknij Rozwój > Usługi gier Play > Konfiguracja i zarządzanie > Tabele wyników, a potem kliknij przycisk Utwórz tabelę wyników.

Przycisk „Dodaj tabelę wyników” w głównym panelu tabel wyników
Przycisk „Dodaj tabelę wyników” w głównym panelu tabel wyników

Następnie po prostu wypełnij wymagane informacje dotyczące tej tabeli wyników.

Wypełniony formularz na tablicy wyników „Najlepsza runda”.
Wypełniony formularz tablicy wyników „Najlepsza runda”.

Kliknij Zapisz jako wersję roboczą, aby tabela wyników była dostępna w stanie „Wersja robocza”. Gdy opublikujesz grę, wszystkie tabele wyników tej gry zostaną opublikowane razem z nią.

Tworzenie tabeli wyników dla opublikowanej gry

Aby utworzyć dodatkową tabelę wyników dla gry, która została już opublikowana, wykonaj te same czynności. Więcej informacji o testowaniu zaktualizowanej wersji gry znajdziesz w artykule Publikowanie zmian w grze.

Gdy przetestujesz tabelę wyników i uznasz, że jest w porządku, możesz ponownie opublikować grę z nowymi tabelami wyników, które zostaną udostępnione wszystkim graczom.

Edytowanie tabeli wyników

Aby edytować już utworzoną tabelę wyników, kliknij ją na karcie Tabele wyników w Konsoli Google Play. Wyświetli się formularz użyty do utworzenia tabeli wyników. Będziesz mieć możliwość edytowania dowolnego pola.

Gdy skończysz edytowanie tabeli wyników, kliknij przycisk Zapisz jako wersję roboczą. Nowo zmodyfikowana tabela wyników będzie miała stan „Wersja robocza”, co pozwoli Ci ją przetestować.

Jeśli wszystko działa prawidłowo, w polu u góry formularza tabeli wyników kliknij Opublikuj zmiany. Dzięki temu będziesz mieć możliwość ponownego opublikowania gry wraz ze wszystkimi zaktualizowanymi tabelami wyników.

Cofanie zmian

Jeśli nowo zmodyfikowana tabela wyników nie będzie Ci się podobać i postanowisz wrócić do poprzedniej wersji, w polu u góry formularza tabeli wyników kliknij Przywróć. Tabela wyników zostanie przywrócona do już opublikowanej wersji.

Usuwanie tabeli wyników

Możesz usunąć tabele wyników, które są w stanie „Wersja robocza” lub zostały opublikowane. Aby usunąć tabelę wyników w Konsoli Google Play, otwórz formularz tabeli i u góry kliknij Usuń tabelę wyników.

Możesz też wywołać Players.hide, aby ukryć w aplikacji tabelę wyników gracza.

Resetowanie tabeli wyników

Dane o postępach graczy możesz resetować tylko w wersjach roboczych tabel wyników.

  • Aby zresetować tabele wyników w Konsoli Google Play, kliknij Zresetuj postęp u góry formularza danego zdarzenia.
  • Aby zresetować dane tabeli wyników w sposób zautomatyzowany, wywołaj metody Scoresinterfejsu Management API.

Dodawanie tłumaczeń tabel wyników

Możesz podać własne tłumaczenia tabel wyników powiązanych z Twoją grą. Zanim to zrobisz, wykonaj czynności opisane w sekcji Dodawanie tłumaczeń gry. W swojej grze musisz też utworzyć co najmniej 1 tabelę wyników.

Aby dodać własne tłumaczenia tabel wyników, w Konsoli Google Play otwórz kartę Tabele wyników dla swojej gry, a następnie wybierz istniejącą tabelę wyników. Na stronie z informacjami o tabeli wyników kliknij kartę języka, który został wcześniej dodany na karcie Szczegóły gry. Na stronie z informacjami o tabeli wyników dla danego języka edytuj formularz, korzystając ze swoich tłumaczeń dla tej tabeli. Aby zapisać przetłumaczone informacje dotyczące tabeli wyników, kliknij Zapisz.

Ukrywanie wyników w tabeli wyników

Usługi gier Google Play oferują funkcję ochrony tabeli wyników przed nieuprawnionymi modyfikacjami, która sprawdza wyniki pod kątem podejrzenia o modyfikację i automatycznie je ukrywa. Ta funkcja jest dostępna tylko w przypadku gier na Androida.

Ochrona przed nieuprawnionymi modyfikacjami jest domyślnie włączona w przypadku nowych tabel wyników utworzonych dla gry na Androida, ale jest wyłączona w przypadku istniejących tabel wyników. Aby włączyć ochronę przed nieuprawnionymi modyfikacjami w tabelach wyników, które zostały już opublikowane:

  1. W Konsoli Google Play otwórz kartę Usługi gier, a następnie wybierz grę z listy.
  2. Otwórz kartę Tabele wyników, a potem wybierz instancję tabeli wyników, dla której chcesz włączyć ochronę przed nieuprawnionymi modyfikacjami.
  3. WŁĄCZ opcję Włącz ochronę tabeli wyników przed nieuprawnionymi modyfikacjami.
  4. Kliknij Zapisz i kontynuuj.
  5. Opublikuj swoją grę.

Po włączeniu w Konsoli Google Play ochrony tabeli wyników przed nieuprawnionymi modyfikacjami może minąć do 24 godzin, zanim ta funkcja zacznie działać. Wyniki przesłane przed włączeniem ochrony przed nieuprawnionymi modyfikacjami nie zostaną ukryte.

W niektórych sytuacjach ochronę przed nieuprawnionymi modyfikacjami warto wyłączyć (na przykład jeśli gra działa nie tylko na Androidzie, ale też w przeglądarce i udostępnia tabele wyników na obu platformach).

Implementacje klienta

Aby dowiedzieć się, jak zaimplementować tablice wyników na swojej platformie, zapoznaj się z tymi materiałami: