Lista kontrolna jakości usług gier Google Play

Jakość gry wpływa na jej długoterminowy sukces – w zakresie liczby instalacji, ocen i opinii graczy oraz zaangażowania i utrzymania graczy. Przed opublikowaniem gry upewnij się, że spełnia ona podstawowe oczekiwania graczy dzięki atrakcyjnym funkcjom i intuicyjnemu, dobrze zaprojektowanemu interfejsowi.

Ten dokument pomoże Ci skupić się na kluczowych aspektach jakości, zestawu funkcji i interfejsu użytkownika, które mogą mieć znaczący wpływ na sukces gry. Każdy obszar jest prezentowany wraz z listą kontrolną wymagań minimalnych, sprawdzonych metod i zalecanych ulepszeń. Aby zapewnić graczom jak najlepszy produkt, postępuj zgodnie z zaleceniami w checkliście.

1. Zaloguj się

Poniższe czynności z listy kontrolnej dotyczą implementowania funkcji logowania w grze. Więcej informacji o tym, jak działa logowanie i jak je zaimplementować, znajdziesz w artykule Koncepcje logowania. Przykłady kodu służące do implementowania logowania w grach mobilnych znajdziesz w artykule Implementowanie logowania na Androidzie.

ID Ważność Opis
1,1 Wymagane Zaloguj graczy w usługach gier Google Play.
1.1.1. automatycznie logować graczy po uruchomieniu gry; korzystać z logowania ręcznego jako opcji zapasowej;

Gry powinny implementować logowanie bez potwierdzenia, aby gracze mogli szybko uwierzytelnić się i uzyskać uprawnienia do korzystania z pełnego zestawu funkcji oferowanych przez usługi gier Google Play. Jeśli milczące logowanie się nie powiedzie, aplikacja powinna poprosić graczy o logowanie się w interaktywny sposób. Dzięki interaktywnemu logowaniu gracze mogą logować się w grze, a Gry Play dbają o to, aby ich profil był prawidłowo skonfigurowany do użycia w Twojej grze. Połączenie logowania cichego i interaktywnego daje najwyższe wskaźniki logowania przy minimalnym wysiłku użytkownika.

Jeśli gracz zdecyduje się nie logować, zapamiętaj to i nie proś go ponownie. Zamiast tego umieść przycisk logowania. Przycisk logowania powinien być łatwy do znalezienia. Może na przykład znajdować się na ekranie głównym lub na ekranie ustawień. Ten przycisk nie powinien być ukryty głęboko w menu gry. Nadal staraj się automatycznie logować graczy za każdym razem, gdy uruchamiają grę – mogą zmienić swoje ustawienia i logować się automatycznie.

1.2 Wymagane Podczas tworzenia klienta logowania się nie proś o uprawnienia inne niż w Grach Play. Dzięki temu gracze będą mogli automatycznie logować się w grze, ponieważ żądanie uprawnień innych niż w Google Play spowoduje, że użytkownicy będą musieli używać interaktywnego logowania.

Jeśli już prosisz o zakresy inne niż Games, usuń z konstrukcji GoogleSignInOptions wszystkie niepotrzebne zakresy oraz interfejsy API, których już nie używasz. Jeśli chcesz poprosić o inne zakresy (np. jeśli chcesz zobaczyć adres e-mail użytkownika na potrzeby marketingu), zrób to w odpowiednim momencie, a nie w ramach procesu logowania.

// This is the proper way to do it
GoogleSignInOptions signInOption = GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN;
1.3 Wymagane Zezwalaj graczom na pozostanie zalogowanych.

Gdy gracz zaloguje się w grze, automatycznie połączysz go z nią za każdym razem, gdy uruchomisz grę, dopóki gracz nie wyloguje się z niej.

1,4 Wymagane Wyświetlaj odpowiednie wyskakujące okienko „Łączenie” podczas logowania.

Na urządzeniach z Androidem, gdy wywoływana jest procedura logowania, musi się wyświetlać wyskakujące okienko „Łączenie” w Grach Google Play. Wymaga to wywołania metody setViewForPopups() klasy GamesClient. Sprawdź, czy to wyskakujące okienko wyświetla się podczas automatycznego logowania gracza na początku gry. Dzięki temu gracze wiedzą, że logują się do gry prawidłowo.

W tym przykładzie pokazujemy, jak w grze na Androida podczas logowania może pojawić się wyskakujące okienko „Łączenie”, a potem krótka animacja z logo Usług Google Play Games.

Zrzut ekranu pokazujący wyskakujące okienko „Łączenie z…”
1,5 Wymagane Zapewnij graczom możliwość wylogowania się.

Po zalogowaniu się gracz musi mieć zawsze możliwość wylogowania się.

Zastanów się nad umieszczeniem przycisku wylogowania na odpowiednim ekranie gry w aplikacji (np. na ekranie ustawień gracza).

1,6 Sprawdzona metoda Pamiętaj, że gracze mogą odrzucić prośbę o logowanie.

Jeśli gracz odmówi zalogowania się, gdy gra rozpocznie proces logowania (np. kliknie Anuluj w interfejsie logowania), powinieneś umożliwić mu kontynuowanie gry.

Gdy gracz ponownie uruchomi grę, nie uruchamiaj automatycznie interaktywnego procesu logowania. Gracze mogą zalogować się później, korzystając z przycisku logowania, który powinien znajdować się w systemie ustawień. Dzięki temu gracze nie będą musieli wielokrotnie odrzucać logowania, gdy uruchamiają grę.

Jedynym wyjątkiem jest sytuacja, gdy gracze próbują uzyskać dostęp do funkcji rozgrywki, która wymaga zalogowania się (np. przesyłanie wyników na listę wyników). W takim przypadku poproś o zalogowanie się przed kontynuowaniem gry.

1.7 Sprawdzona metoda Maksymalizuj liczbę zalogowanych graczy.

Więcej graczy logujących się w Usługach Google Play Games to korzyść dla Twoich graczy, ponieważ zwiększa możliwości współpracy i rywalizacji. Aby zmaksymalizować liczbę graczy zalogowanych w Usługach Gier Play, zdecydowanie zalecamy automatyczne wyświetlanie graczom prośby o logowanie, jak opisano powyżej.

W przeciwnym razie kieruj graczy do procesu logowania tak szybko, jak to możliwe, za pomocą jednej z tych opcji (najpierw zalecana):

  • Natychmiast po rozpoczęciu gry.
  • bezpośrednio po wprowadzeniu, takim jak scena lub samouczek.
  • gdy gracz kliknie przycisk logowania w Google w dowolnym miejscu w grze.
1,8 Przydatne Przestrzegaj wskazówek Google dotyczących promowania marki.

Aby zapewnić graczom atrakcyjne i spójne wrażenia, zastosuj wytyczne dotyczące marki Usług Google Play Games.

1,9 Przydatne Przypominaj graczom, że są zalogowani.

Wyświetl odpowiednie przypomnienie lub podpowiedź, gdy gra wykona jakieś działanie w imieniu zalogowanego gracza. Gdy na przykład zalogowany gracz ukończy poziom, możesz wyświetlić komunikat informujący, że jego wynik i osiągnięcia są automatycznie przesyłane: "Jesteś zalogowany w Google. Twoje osiągnięcia i wyniki zostaną zapisane automatycznie”.

1.10 Wymagane Tworzenie kopii zapasowej postępów gracza za pomocą identyfikatora usług gier Play.

Aby gracze nie tracili postępów podczas przełączania lub resetowania urządzeń albo korzystania z kilku urządzeń, zadbaj o to, aby ich postępy były zapisywane w chmurze. Jeśli używasz własnego serwera gier, bezpiecznie używaj identyfikatora Usług Gier Play jako klucza. Gdy gracze logują się za pomocą swojego identyfikatora usług gier Play, sprawdź, czy istnieją postępy na tym koncie. Jeśli tak, pozwól graczowi kontynuować od tego samego miejsca. Możesz użyć własnego rozwiązania do zapisywania w chmurze lub zapisanych gier w Usługach gier Play.

Jeśli użytkownik nie jest zalogowany, spróbuj zachować jego postępy lokalnie, a następnie zsynchronizuj je, gdy zaloguje się na konto. Pomoże to zapobiec utracie postępów gracza, jeśli zdecyduje się on odłożyć na później zalogowanie się w grze.

2. Osiągnięcia

Poniższe zadania na liście kontrolnej dotyczą implementacji funkcji Osiągnięcia w grze.

ID Ważność Opis
2.1 Wymagane Upewnij się, że wszystkie osiągnięcia są osiągalne.

Gracze muszą mieć możliwość odblokowania wszystkich stworzonych przez Ciebie osiągnięć.

2.2 Sprawdzona metoda Upewnij się, że osiągnięcia są różne.

Wszystkie obrazy, teksty i opisy powinny być unikalne w przypadku wszystkich osiągnięć.

2.3 Sprawdzona metoda Zdobywać osiągnięcia proporcjonalnie.

Punkty za osiągnięcia powinny być proporcjonalne do czasu lub umiejętności wymaganych do zdobycia danego osiągnięcia.

2.4 Sprawdzona metoda Zaprojektuj osiągnięcia na różne poziomy trudności.

Dodaj kilka łatwych osiągnięć, które gracz może zdobyć podczas zwykłej rozgrywki, kilka osiągnięć o średnim stopniu trudności, które wymagają większej zręczności lub zaangażowania, oraz 1–2 bardzo trudne osiągnięcia dla najbardziej oddanych graczy.

Na przykład na poniższym zrzucie ekranu widać osiągnięcie, które trudno zdobyć, ale pomaga zachęcić graczy do dalszej gry i zatrzymać ich przy niej.

trudne do zdobycia osiągnięcie, które wymaga zdobycia 5 tys. klejnotów
2.5 Przydatne Nie umieszczaj osiągnięć na początku.

Nie przyznawaj więcej niż 1 osiągnięcia w ciągu pierwszych 5 minut rozgrywki, ponieważ nowi gracze nie będą jeszcze wystarczająco zaangażowani, by to zauważyć.

Nie definiuj osiągnięć w taki sposób, aby były przyznawane niezamierzenie zbyt wcześnie w trakcie rozgrywki. Uważaj na osiągnięcia, które można łatwo zdobyć na początku gry, np. „Ukończ poziom bez otrzymania obrażeń”.

2.6 Przydatne Zdefiniuj osiągnięcia związane z ciekawymi działaniami w grze.

Wybierz dane, aby tworzyć osiągnięcia, które sprawią, że Twoja gra będzie bardziej wciągająca i warta powtórzeń (np. „liczba zabitych zombie” to bardziej interesujące dane niż „liczba kilometrów przebytych przez postać”).

2.7 Przydatne Używaj kolorowych ikon osiągnięć.

Usługi gier w Google Play używają wersji ikon osiągnięć w szarości, aby pokazać, czy zostały one zdobyte czy nie. Jeśli możesz używać tylko czarnych (lub białych) ikon osiągnięć, wyświetlaj je na kolorowym tle.

2.8 Przydatne Ogranicz użycie ukrytych osiągnięć.

Ukryte osiągnięcia powinny być używane tylko po to, aby uniknąć spoilerów w grze. Nie powinny być normą.

2.9 Przydatne Unikaj osiągnięć, które są zbyt zależne od przypadku.

"Znajdź 100 skrzyń skarbów" to osiągnięcie lepsze niż "Znajdź przedmiot, który ma 1% szansa na pojawienie się w skrzyni skarbów".

2.10 Przydatne Myśl jak „Łowca osiągnięć”.

Niektórzy gracze będą chcieli zdobyć wszystkie osiągnięcia, które utworzysz. Postaraj się udostępnić osiągnięcia, które będą pasować do tej kategorii graczy. Unikaj tworzenia osiągnięć, które są zbyt zależne od elementów niezależnych od gracza lub których nie można zdobyć po podjęciu przez gracza decyzji w grze.

2.11 Przydatne Sprawdź, czy ikona osiągnięcia wyświetla się prawidłowo.

Gdy ikona osiągnięcia jest wyświetlana na Androidzie w toastzie, jest nałożona na okrąg, a jej zewnętrzne rogi są ukryte. Upewnij się, że ikona nadal wygląda dobrze w takich warunkach.

3. Tabele wyników

Poniższe zadania na liście kontrolnej dotyczą implementacji funkcji tabel wyników w grze.

ID Ważność Opis
3.1 Sprawdzona metoda Ustaw widoczność tabel wyników w menu głównym i po kluczowych przejściach.

Tabele wyników powinny być łatwo dostępne po załadowaniu gry. Po przejściach między ważnymi elementami gry (np. po zakończeniu poziomu lub po śmierci gracza) użytkownicy powinni natychmiast zobaczyć linki do odpowiednich tabel wyników.

3.2 Sprawdzona metoda Określ górne limity wyników, które można przesłać.

W miarę możliwości dodaj limity podczas definiowania tabel wyników, aby wykluczyć wyraźnie fałszywe wyniki.

3.3 Sprawdzona metoda Używaj ikon niestandardowych.

Utwórz niestandardową ikonę dla każdej zdefiniowanej przez siebie tablicy liderów. Nie używaj tylko ikony gry, ponieważ będzie ona źle wyświetlana w aplikacji Google Play Games.

3.4 Sprawdzona metoda Zadbaj o odpowiednią częstotliwość przesyłania wyników.

Przesyłaj wyniki po ważnych przejściach w grze, np. po zakończeniu poziomu lub gdy postać gracza zginie. W przypadku gier bez kluczowych przejść (np. gier typu „endless runner”) należy samodzielnie zdecydować, jak często przesyłać wyniki. Wyniki nie powinny być przesyłane ciągle ani co sekundę.

3.5 Przydatne Używaj tagów wyników.

Tagi wyników to dodatkowe dane, które mogą być wysyłane wraz z przesłanymi wynikami. Możesz na przykład zaimplementować tag wyniku jako flagę, aby potwierdzić, że przesłany przez gracza wynik jest prawidłowy.

Te dane mogą też odczytywać tablice wyników niestandardowych. Jeśli tag wyniku zawierał identyfikator filmu w YouTube z zawartą w nim rozgrywką, gra mogła utworzyć link do tego filmu na tablicy wyników.

3.6 Przydatne Twórczo zaprojektuj interfejs tabeli wyników

Jeśli masz odpowiednie zasoby, możesz utworzyć własny widok tablicy liderów na podstawie danych z tablicy liderów w mediach społecznościowych. Tablice liderów w mediach społecznościowych są zazwyczaj bardziej angażujące niż publiczne tablice liderów. Najpierw sprawdź, czy w tablicy wyników społeczności są jakieś pozycje. Jeśli nie, użyj publicznej tabeli wyników.

3,7 Przydatne Pokaż graczom, jak wypadają na tle konkurencji.

Interfejs API tablic wyników obsługuje wyświetlanie okien wyników (np. pozycji gracza w zakresie +/- 10 miejsc). Jeśli tworzysz widok niestandardowy, może to być skuteczny sposób na zwiększenie zaangażowania. Może ona być wyświetlana bezpośrednio po kluczowym przejściu w grze (np. pod koniec poziomu lub gdy postać gracza zginie). Unikaj umieszczania zbędnich kliknięć między graczami a informacjami o ich rankingu.

4. Znajomi

Poniższe zadania na liście kontrolnej dotyczą implementacji interfejsów Friends API w grze.

ID Ważność Opis
4.1 Wymagane Gdy gracze są wyświetlani na liście, pokaż ikonę Gier Play obok użytkowników, którzy mają profil w Grach Play.

Może to być lista znajomych, którzy ostatnio grali z Tobą lub inna lista znajomych.

4.1.1. Ikona Gier Play musi być klikalna.
Jeśli użytkownik naciśnie ikonę, gra powinna wywołać funkcję getCompareProfileIntent()lub getCompareProfileIntentWithAlternativeNameHints(), aby wyświetlić interfejs, w którym użytkownik może porównać swój profil z profilem innego gracza.
4.1.2. Profile graczy i propozycje dodawania znajomych, aby umożliwić dostosowanie nazw graczy w grze.
Jeśli gracz ustawi inną nazwę w grze (i nie używa nazwy swojego profilu w Grach Play), użyj getCompareProfileIntentWithAlternativeNameHints(), aby podać tę alternatywną nazwę w grze zarówno dla bieżącego gracza, jak i gracza, którego profil wyświetla, jako kontekstu widoku profilu i wysłanych z niego zaproszeń do dodania znajomego. Przekazuj jako wartości tylko trwałe, globalne nazwy graczy, a nie dowolne treści użytkownika. To wymaganie oznacza, że zaproszenia do znajomych wysyłane z poziomu gry będą zawierać kontekst dla obu graczy:
  • Odbiorca zobaczy nazwę gracza nadawcy zaproszenia oraz nazwę gry.
  • Gdy nadawca wyświetla znajomość, nadal będzie widzieć nazwę gracza odbiorcy oraz grę, w której została nawiązana.
4,2 Sprawdzona metoda Użyj różnych ikon, aby pokazać, którzy użytkownicy Gier Play są już znajomymi, a którzy nie są jeszcze znajomymi w Gierach Play, ale zalogowali się w tej usłudze. Użyj 2 ikon: jednej dla „znajomych” i jednej dla „nieznajomych” (lub gdy stan znajomości jest nieznany).
Ikona znajomych
Ikona Nieznajomi
4,3 Sprawdzona metoda Za każdym razem, gdy się logujesz i wyświetlasz listę znajomych, dzwoń loadFriends(), aby mieć pewność, że lista jest aktualna. Upewnij się, że gracze widzą zaktualizowaną listę.
4.4 Sprawdzona metoda Jeśli w Twojej grze są już znajomi, użyj interfejsów API znajomych, aby dodać do listy znajomych znajomych z Gier Play. Jeśli gracz jest na liście znajomych w grze i jest też znajomym w Grach Play, wyświetl ikonę „Znajomi”.
4,5 Sprawdzona metoda Jeśli gracz odrzuci prośbę o dostęp do listy znajomych, nie wyświetlaj okna z prośbą o dostęp ponownie, chyba że użytkownik wykona działanie wskazujące, że chce przyznać dostęp (np. naciśnie przycisk „Importuj znajomych z Gier Play”).
4.6 Sprawdzona metoda Jeśli gracz odmówił przyznania dostępu do listy znajomych, daj mu możliwość przyznania dostępu do listy znajomych w przyszłości (np. po naciśnięciu przycisku „Importuj znajomych z Gier Play”).
4,7 Sprawdzona metoda Jeśli używasz identyfikatora gracza lub listy znajomych z serwerem zaplecza, musisz uzyskać bezpieczny dostęp do identyfikatora lub listy. Ponadto w przypadku niektórych starszych gier i graczy identyfikator gracza zwracany przez pakiet SDK Androida może nie być taki sam jak identyfikator widoczny dla innych graczy, którzy wyświetlają tego gracza w tej samej grze. Jest to szczególnie istotne w przypadku listy znajomych. Jednak player_id zwracany w interfejsie REST API jest zawsze spójny i zawsze jest to identyfikator widoczny dla innych graczy.

5. Limity i ograniczenia szybkości

Poniższe czynności z listy kontrolnej dotyczą zarządzania limitami i ograniczeń szybkości w grze. Aby dowiedzieć się, jak zarządzać limitem i jak wykrywać przekroczenie limitu szybkości, zapoznaj się z artykułem Zarządzanie limitem i ograniczaniem szybkości.

ID Ważność Opis
5.1 Sprawdzona metoda Używaj bibliotek klienta.

Biblioteki klienta na urządzenia mobilne stosują wiele strategii, aby ograniczyć liczbę połączeń z usługą. Na przykład dane o osiągnięciach i tabelach wyników są przechowywane w pamięci podręcznej, dzięki czemu gracze mogą wyświetlać swoje osiągnięcia tak często, jak chcą, bez konieczności wielokrotnego wywoływania usługi.

Biblioteka klienta na Androida nie wyśle wyniku gracza do serwera, jeśli nie jest on tak dobry jak ostatnio przesłany. Biblioteka Androida automatycznie łączy również częste wywołania metody zwiększania liczby osiągnięć, gdy wykryje, że masz ograniczoną częstotliwość.

5.2 Przydatne Połącz częste wezwania do działania z osiągnięciami stopniowymi.

Jeśli tworzysz grę walki i masz osiągnięcie „Zadaj 5000 ciosów”, nie wysyłaj wywołania zwiększania osiągnięcia za każdym razem, gdy ktoś zada cios. Poczekaj do końca rundy, a potem wyślij jedno wywołanie increment(xxx) (gdzie xxx to łączna liczba zadanych ciosów w tej rundzie) lub poczekaj, aż zostanie zadanych 50 ciosów, a potem wyślij jedno wywołanie increment(50).

5.3 Przydatne Zastanów się, jak często z niego korzystasz.

Zwróć uwagę na liczbę wywołań do Usług gier Google Play. Nawet jeśli unikniesz przekroczenia limitów szybkości, częste wywoływanie połączeń może spowodować duży ruch w sieci i szybsze wyczerpywanie się baterii urządzenia. Aby tego uniknąć, możesz użyć tych technik:

  • Podczas uruchamiania zapisanych gier zachowaj częstotliwość raz na kilka minut, a nie po każdym kliknięciu przycisku.
  • Zanim prześlesz wynik, poczekaj, aż gra się zakończy.
  • Aby sprawdzić dzienny limit aplikacji, otwórz panel projektu w Google Cloud Platform.

6. Zapisane gry

Poniższe zadania z listy kontrolnej dotyczą implementacji funkcji zapisanych gier w Twojej grze.

ID Ważność Opis
6.1 Wymagane Dodaj metadane, aby zapewnić dodatkowy kontekst dla zapisanych gier.

Podczas zatwierdzania zapisu stanu gry musisz uwzględnić co najmniej te metadane:

  • Obraz okładki – zrzut ekranu przedstawiający postępy w grze i przypominający graczom, w którym miejscu przerwali rozgrywkę.
  • Opis – krótki opis, który zapewnia dodatkowy kontekst dla zdjęcia okładki.
  • Znak czasowy – wskazuje, jak długo gracz grał w zapisanej grze.
6.2 Wymagane Zezwalaj graczom na wczytywanie zapisanych gier.

Ładowanie prawidłowej zapisanej gry, gdy gracze dokonają wyboru w aplikacji Google Play Games lub w domyślnym interfejsie wyboru zapisanych gier.