רשימת משימות לשיפור האיכות עבור שירותי Google Play Games

איכות המשחק שלכם משפיעה על ההצלחה ארוכת הטווח של המשחק – מבחינת התקנות, דירוג השחקנים, ביקורות, מעורבות השחקנים ושימור השחקנים. לפני פרסום המשחק, חשוב לוודא שהמשחק עומד בציפיות הבסיסיות של שחקנים. שימוש בתכונות מושכות ובממשק משתמש אינטואיטיבי ומתוכנן היטב.

המסמך הזה יעזור לכם להתמקד בהיבטים המרכזיים של האיכות, קבוצת התכונות וממשק המשתמש, שיכולים להשפיע בצורה משמעותית על הצלחת המשחק שלכם. בכל אזור התמקדות מוצגת רשימת דרישות מינימליות, שיטות מומלצות ושיפורים לשיפור. כדי לספק לשחקנים את המוצר הטוב ביותר שאפשר, כדאי ליישם את ההמלצות שברשימת המשימות עד כמה שניתן.

1. כניסה

המשימות הבאות של רשימת המשימות רלוונטיות להטמעה של כניסה לחשבון בנגן. במאמר מושגי הכניסה מוסבר בהרחבה איך כדאי להיכנס לחשבון. תוכלו לקרוא איך מטמיעים כניסה ל-Android בעזרת דוגמאות לקוד.

מזהה חשיבות תיאור
1.1 נדרש נכנסים עם שחקנים באמצעות שירותי המשחקים של Google Play.
1.1.1. כניסה אוטומטית לשחקנים לאחר השקת המשחק; שימוש בכניסה ידנית כגיבוי

משחקים צריכים לבצע כניסה שקטה כדי לעזור לשחקנים לעבור אימות ולקבל הרשאה לשימוש בקבוצה המלאה של התכונות המסופקות על ידי שירותי המשחקים של Google Play. אם הכניסה השקטה נכשלת, האפליקציה אמורה לבקש משחקנים להיכנס לחשבון באופן אינטראקטיבי. שימוש בכניסה אינטראקטיבית מאפשר לשחקנים להיכנס למשחק ו-Play Games מוודא שהפרופיל שלהם מוגדר כראוי לשימוש במשחק שלך. שילוב של כניסה שקטה ואינטראקטיבית יוצר את שיעורי הכניסה הגבוהים ביותר עם מינימום קשיים מצד המשתמש.

אם הנגן בוחר שלא להיכנס לחשבון, חשוב לזכור את הסיסמה הזו ולא לבקש שוב מהמשתמש להפעיל אותה. במקום זאת יש לספק לחצן כניסה. לחצן הכניסה צריך להיות קל לשחקנים. לדוגמה, הוא צריך להיות נגיש מהמסך הראשי או נמצא במסך ההגדרות. לא צריך להסתיר את הלחצן הזה בכמה רמות שבתפריט המשחק. ניתן להמשיך לנסות להיכנס באופן אוטומטי לשחקנים בכל פעם שהם מתחילים את המשחק – הם עשויים לשנות את ההעדפות שלהם ולהיכנס באופן אוטומטי.

1.2 נדרש אסור לבקש היקפים שאינם של Play Games כשיוצרים את לקוח הכניסה. הפעולה הזו תאפשר לשחקנים להיכנס באופן אוטומטי למשחק שלך, כי שליחת בקשות להיקפים שאינם של Play Games תאלץ את המשתמשים להשתמש בכניסה אינטראקטיבית.

אם כבר נשלחה בקשה להיקפים שאינם של Play Games, יש להסיר היקפים מיותרים מהמבנה של GoogleSignInOptions, יחד עם ממשקי API שאינם בשימוש יותר. אם אתם צריכים לבקש היקפים אחרים (לדוגמה, אם אתם רוצים לראות אימייל של משתמש למטרות שיווק, אפשר לעשות זאת בזמן רלוונטי ולא כחלק מתהליך הכניסה.

// This is the proper way to do it
GoogleSignInOptions signInOption = GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN;
1.3 נדרש השחקנים יכולים להישאר מחוברים לחשבון.

לאחר שהשחקן נכנס למשחק בהצלחה, יש לחבר אותו באופן אוטומטי בכל פעם שהמשחק מתחיל, עד שהוא יוצא באופן מפורש.

1.4 נדרש יש להציג את החלון הקופץ 'מתחבר' בזמן הכניסה.

במכשירי Android, החלון הקופץ 'מתחבר' ב-Google Play Games חייב להיות מוצג בכל פעם שמתבצע תהליך הכניסה. לשם כך, עליך לקרוא לשיטה setViewForPopups() של המחלקה GamesClient. יש לוודא שהחלון הקופץ הזה מוצג כשנכנסים לנגן באופן אוטומטי בתחילת המשחק. כך השחקנים יכולים לדעת שהם נכנסים למשחק כראוי.

בדוגמה הבאה אפשר לראות איך החלון הקופץ 'חיבור' עשוי להופיע במשחק Android במהלך הכניסה, ולאחר מכן אנימציה קצרה של הלוגו של Google Play Games Services.

ב-Creeshot מופיע החלון הקופץ 'מתחבר אל'.
1.5 נדרש לשחקנים יש אפשרות לבצע יציאה.

אחרי הכניסה לחשבון, תמיד צריכה להיות לשחקן אפשרות לצאת מהחשבון.

כדאי לשקול להוסיף לחצן יציאה במסך משחק רלוונטי באפליקציה (לדוגמה, במסך ההגדרות של הנגן).

1.6 שיטה מומלצת כדאי לזכור אם השחקנים דחו את הכניסה לחשבון.

אם השחקן מסרב להיכנס כשהמשחק מתחיל את תהליך הכניסה (למשל, אם הוא לוחץ על ביטול בממשק המשתמש של הכניסה), עדיין צריך לאפשר לשחקן להמשיך במשחק.

כשהמשחק יופעל שוב, אל תפעילו את תהליך הכניסה האינטראקטיבי באופן אוטומטי. השחקנים האלה יכולים לבחור להיכנס מאוחר יותר באמצעות לחצן הכניסה שאמור להיות במערכת ההגדרות שלך. כך השחקנים לא צריכים לסרב להיכנס שוב ושוב כשהם מתחילים את המשחק.

יוצא מן הכלל הוא אם שחקנים מנסים לגשת לפיצ'ר של מהלך משחק (gameplay) שתלוי בהתחברות לחשבון (לדוגמה, שליחת ניקוד ל-Leaderboard). במקרה כזה, צריך לבקש מהם להיכנס לחשבון לפני שיוכלו להמשיך במשחק.

1.7 שיטה מומלצת מספר השחקנים הגדול ביותר.

ככל ששחקנים רבים יותר ייכנסו לשירותי המשחקים של Google Play, הם יוענקו לשחקנים על ידי הגדלת הסיכויים למשחקים שיתופיים ותחרותיים. כדי למקסם את מספר השחקנים שנכנסים לשירותי Google Play Games, אנחנו ממליצים לך בחום לבקש משחקנים להיכנס לחשבון, כפי שמתואר למעלה.

אחרת, כדאי לכוון את השחקנים לתהליך הכניסה מוקדם ככל האפשר מאחת מהנקודות האלה (מומלץ קודם):

  • מיד לאחר תחילת המשחק.
  • מיד לאחר חוויית היכרות, כמו סצינה או מדריך.
  • כאשר השחקן לוחץ על לחצן כניסה ל-Google במקום כלשהו במשחק.
1.8 טובה לטוב חשוב לפעול לפי הנחיות המיתוג של Google.

כדי לספק לשחקנים חוויות מקצה לקצה שיהיו אטרקטיביות ועקביות, צריך ליישם את ההנחיות למיתוג בשירותי המשחקים של Google Play.

1.9 טובה לטוב הזכירו לשחקנים שהם מחוברים לחשבון.

נותנים לשחקנים שמחוברים לחשבון תזכורת או איתות מתאימים כשהמשחק מבצע פעולה מסוימת בשמם. לדוגמה, כששחקן שנכנס לחשבון מסיים רמה מסוימת, אפשר לשלוח הודעה כזו כדי לציין שהניקוד וההישגים של השחקן עולים אוטומטית: "נכנסת ל-Google. ההישגים והניקוד שלך יישמרו באופן אוטומטי."

4.40 ש"ח נדרש גיבוי ההתקדמות במשחק באמצעות מזהה Play Games Services.

כדי לוודא שהשחקנים לא יאבדו את ההתקדמות כשהם עוברים או מאפסים מכשירים, או אם הם משחקים בכמה מכשירים, עליך לוודא שההתקדמות שלהם מגובה בפתרון בענן, ולהשתמש במפתח של Play Games Services כמפתח מאובטח באמצעות שרת המשחקים בקצה העורפי שלך. כששחקנים נכנסים עם מזהה Play Games Services שלהם, צריך לבדוק אם ההתקדמות שלהם קיימת בחשבון ואם יש להם הרשאה, הם יכולים להמשיך לשחק מהמקום שבו הפסיקו. אפשר להשתמש בפתרון משלך לשמירה בענן או ב-Play Games של שירותי המשחקים.

אם המשתמש לא מחובר לחשבון, אפשר לנסות לשמור על ההתקדמות שלו באופן מקומי, ואז לסנכרן את ההתקדמות כשנכנסים לחשבון בסופו של דבר. כך נמנעים מהתקדמות של השחקן אם השחקן דוחה את הכניסה למשחק.

2. הישגים

המשימות הבאות של רשימת המשימות רלוונטיות ליישום התכונה הישגים במשחק.

מזהה חשיבות תיאור
2.1 נדרש ודאו שכל ההישגים ניתנים להשגה.

השחקנים צריכים להיות מסוגלים לבטל את הנעילה של כל ההישגים שיצרתם.

2.2 שיטה מומלצת הבלטה של הישגים.

כל התמונות, הטקסטים והתיאורים צריכים להיות ייחודיים בין ההישגים.

2.3 שיטה מומלצת שיפור הביצועים באופן יחסי.

נקודות ההישג צריכות להיות פרופורציונליות ביחס לזמן או למיומנות שנדרשים כדי לצבור את ההישג הזה.

2.4 שיטה מומלצת תכנון הישגים למגוון רמות קושי.

כדאי לכלול כמה הישגים פשוטים ששחקן יכול לצבור באמצעות משחקים נינוחים, מספר הישגים ברמת קושי בינונית שמחייבים מיומנות או הסתגלות לשחקן נוספים, והישג אחד או שניים קשים מאוד לשחקנים המסורים ביותר.

לדוגמה, בצילום המסך הבא מוצג הישג קשה לרווח, שעוזר להמריץ ולשמר את המעריצים.

קשה להרוויח הישג שדורש 5 אלף אבני חן
2.5 טובה לטוב לא לטעון מראש הישגים.

חשוב להימנע מהענקה של יותר מהישג אחד ב-5 הדקות הראשונות, כי שחקנים חדשים במשחק שלך לא ישקיעו מספיק בהשקעה.

אל תגדירו את ההישגים שלכם כך שהם יוענקו בטעות מוקדם מדי במהלך המשחק. לדוגמה, חשוב לשים לב להישגים שצפויים להצטבר באופן טריווילי בתחילת המשחק, למשל "משלימים שלב מסוים מבלי לגרום נזק".

2.6 טובה לטוב הגדרת הישגים סביב פעילויות מושכות במשחק.

יש לבחור מדדים לבנייה של משחקים שהופכים את המשחק למושך יותר ולמשחק חוזר (לדוגמה, "מספר הזומבים שנהרג" הוא מדד מעניין יותר מאשר "מספר הקילומטרים של הדמות שהלכת").

2.7 טובה לטוב השתמשו בסמלים של צבעים.

בשירותי המשחקים של Google Play נעשה שימוש בגרסאות אפורות של סמלי הישגים כדי להראות אם קיבלת או לא הרווחת כסף. אם חלה הגבלה על השימוש בכל סמלי ההישגים השחורים (או על כל הלבן), תוכלו להציג אותם על רקע צבעוני.

2.8 טובה לטוב צמצום השימוש בהישגים מוסתרים.

יש להשתמש בהישגים חבויים רק כדי להימנע מספוילרים בתוך המשחק. הם לא צריכים להיות נורמליים.

2.9 טובה לטוב יש להימנע מהישגים שמסתמכים על מזל יתר על המידה.

"איתור 100 תיבות אוצר"" הוא הישג טוב יותר מאשר "איתור פריט שיש לו סיכוי של 1% להופיע בתיבת אוצר".

2.10 טובה לטוב חושבים כמו 'הישגים'.

חלק מהשחקנים ינסו לזכות בכל הישג שתיצרו. נסו לספק הישגים שמתאימים לקטגוריה הזו של שחקנים. חשוב להימנע מיצירת הישגים שמסתמכים יותר מדי על רכיבים שלא בשליטתו של השחקן, או שלא ניתן לצבור אותם אחרי קבלת ההחלטה במשחק.

2.11 טובה לטוב מוודאים שסמל ההישגים מופיע בצורה נכונה.

כשסמל הישג מוצג בטוסט של Android, הסמל מכוסה בעיגול ופינותיו החיצוניות מוסתרות. חשוב לוודא שהסמל שלך עדיין נראה טוב בנסיבות האלה.

3. לוחות לידרבורד

המשימות הבאות של רשימת המשימות חלות על ההטמעה של התכונה Leaderboards במשחק.

מזהה חשיבות תיאור
3.1 שיטה מומלצת מציגים את לוחות הלידרבורד בתפריט הראשי ואחרי המעברים העיקריים.

לוחות הלידרבורד צריכים להיות נגישים בטעינה של המשחק. לאחר מעברים קריטיים במשחק (למשל, בסיום שלב מסוים או לאחר מותו של השחקן), השחקן צריך לראות מיד קישורים ללידרבורד הרלוונטי.

3.2 שיטה מומלצת הגדרת המגבלות העליונות לניקוד שניתן לשלוח.

אם אפשר, כדאי להוסיף מגבלות כשאתם מגדירים את לוחות הלידרבורד, כדי שיכריעו תוצאות של ציונים מזויפים.

3.3 שיטה מומלצת שימוש בסמלים מותאמים אישית.

יש ליצור סמל מותאם אישית לכל לידרבורד שמגדירים; אין להשתמש רק בסמל של המשחק, מפני שהוא יוצג באופן גרוע באפליקציית Google Play Games.

3.4 שיטה מומלצת חשוב להקפיד על תדירות השליחה של הציונים.

שליחת תוצאות לאחר מעברים קריטיים במשחק, למשל בסיום שלב מסוים או כשדמות השחקן מתה. במשחקים ללא מעברים קריטיים (לדוגמה, משחק מסוג "ריצה אינסופית"), יש להפעיל שיקול דעת לגבי תדירות השליחה של הניקוד. אין לשלוח את הציונים באופן רציף או כל שנייה.

3.5 טובה לטוב שימוש בתגי ניקוד.

תגי ציונים הם קטעי נתונים נוספים שניתן לשלוח בעת שליחת הציון. לדוגמה, אפשר להטמיע תג ניקוד כסימון כדי לוודא שהניקוד של שחקן מסוים תקף.

גם לוחות לידרבורד בהתאמה אישית יכולים לקרוא את נתוני התגים האלה. אם תג הניקוד היה מורכב ממזהה של סרטון YouTube שמכיל את מהלך המשחק של השחקן, למשל, המשחק יכול ליצור קישור לצפייה בסרטון הזה בלידרבורד.

3.6 טובה לטוב עיצוב יצירתי של ממשק המשתמש של Leaderboard

אם יש לכם את המשאבים הדרושים, צרו תצוגת Leaderboard מותאמת אישית מעל נתוני ה-Leaderboard ברשתות החברתיות. לוחות לידרבורד חברתיים בדרך כלל יוצרים חוויה מעניינת יותר מאשר לוחות לידרבורד ציבוריים. תחילה יש לבדוק אם יש כניסות ב-Leaderboard החברתי. אם לא, יש להשתמש במקום זאת ב-Leaderboard הציבורי.

17.7 טובה לטוב להראות לשחקנים מה הם עומדים לעומת המתחרים.

ה-Leaderboards API תומך בהצגת חלונות תוצאות (לדוגמה, דירוג של שחקן בתוך +/-10 נקודות). אם אתם יוצרים תצוגה בהתאמה אישית, זו יכולה להיות דרך מצוינת לעודד התעניינות. ניתן להציג זאת מיד לאחר מעבר קריטי במשחק (לדוגמה, בסיום שלב כלשהו או כאשר הדמות של השחקן מתה). חשוב להימנע מהוספת קליקים מיותרים בין השחקנים למידע על הדירוגים שלהם.

4. חברים

המשימות הבאות של רשימת המשימות חלות על הטמעת ממשקי ה-API של החברים במשחק.

מזהה חשיבות תיאור
4.1 נדרש כששחקנים מוצגים ברשימה, מוצג להם הסמל של Play Games לצד משתמשים שיש להם פרופיל ב-Play Games.

רשימה זו יכולה להיות רשימת חברים קיימת, רשימת חברים ששיחקת בהם לאחרונה או רשימה אחרת של חברים.

4.1.1. סמל המשחקים של Play חייב להיות ניתן ללחיצה.
אם המשתמש לוחץ על הסמל, המשחק צריך להתקשר אל getCompareProfileIntent() או getCompareProfileIntentWithAlternativeNameHints() כדי להציג את ממשק המשתמש שבו הוא יכול להשוות את עצמו לפרופיל של שחקן אחר.
4.1.2. תמיכה בפרופילים של שחקנים ובהזמנות מחברים בשביל שמות שחקנים בתוך המשחק שניתנים להתאמה אישית.
אם שחקן מגדיר שם אחר בתוך המשחק (ולא משתמש בשם הפרופיל שלו ב-Play Games), יש להשתמש בשם getCompareProfileIntentWithAlternativeNameHints() כדי לספק את השם החלופי הזה למשחק גם לשחקן הנוכחי וגם לשחקן שבו הוא צופה, כהקשר להצגת תמונת הפרופיל ולכל הזמנה מחבר שנשלח ממנו. יש להעביר רק שמות של שחקנים קבועים וגלובליים עבור הערכים, ולא תוכן שרירותי של משתמשים. משמעות הדרישה הזו היא שהזמנות מחברים מתוך המשחק יספקו הקשר לשני השחקנים:
  • הנמען יראה את השם של שולח ההזמנה בתוך המשחק, ואת שם המשחק.
  • בעת הצגת החברות, השולח עדיין יראה את שם הנמען במשחק ואת המשחק שממנו הוא יזם.
4.2 שיטה מומלצת אפשר להשתמש בסמלים שונים כדי לראות מי הם משתמשי Play Games, שעדיין לא חברים ב-Play Games אבל נכנסו לחשבון ב-Play Games. כדאי להשתמש בשני סמלים למשתמשי Play Games, אחד ל"חברים" ואחד ל"לא חברים" (או כשסטטוס החברות לא ידוע).
סמל החברים
סמל 'לא חברים'
4.3 שיטה מומלצת ניתן להתקשר אל loadFriends() בכל פעם שנכנסים לחשבון ולהציג את רשימת החברים כדי לוודא שרשימת החברים עדכנית. חשוב לוודא שהשחקנים רואים את הרשימה המעודכנת.
4.4 שיטה מומלצת אם המשחק שלך כבר מכיל חברים בתוך המשחק, השתמש בממשקי ה-API של החברים כדי להגדיל את רשימת החברים על ידי הוספת החברים מ-Play Games. אם שחקן מסוים מופיע ברשימת החברים במשחק והוא גם חבר ב-Play Games, יש להציג את הסמל של "חברים".
4.5 שיטה מומלצת אם נגן דחה את בקשת הגישה לרשימת החברים שלו, אין להציג שוב את תיבת הדו-שיח שבה הוא מבקש גישה, אלא אם המשתמש נקט פעולה כדי לציין שהוא רוצה להעניק גישה (לדוגמה, בלחיצה על הלחצן 'ייבוא חברים מ-Play Games').
4.6 שיטה מומלצת אם שחקן לא אישר את הגישה לרשימת החברים, אפשר לו להעניק גישה לרשימת החברים בעתיד (לדוגמה, אחרי לחיצה על הלחצן 'ייבוא חברים מ-Play Games').
4.7 שיטה מומלצת אם נעשה שימוש במזהה השחקן או ברשימת החברים עם שרת בקצה העורפי, עליך לגשת למזהה או לרשימה באופן מאובטח. בנוסף, עבור משחקים ושחקנים ישנים יותר, מזהה הנגן שהוחזר על ידי Android SDK עבור שחקן עשוי להיות שונה מהמזהה ששחקנים אחרים רואים בעת הצפייה באותו משחק. זה רלוונטי במיוחד ברשימת החברים. עם זאת, ה-player_id המוחזר ב-API ל-REST הוא תמיד עקבי, והוא תמיד המזהה שגלוי לשחקנים אחרים.

5. הגבלת מכסה וקצב

המשימות הבאות של רשימת המשימות חלות על הגבלת המכסות והקצב של המשחק. רוצים לדעת איך מנהלים את המכסות של המשחק וחורגים ממנו?

מזהה חשיבות תיאור
5.1 שיטה מומלצת שימוש בספריות הלקוח.

בספריות הלקוח של הנייד נעשה שימוש בכמה אסטרטגיות לצמצום מספר השיחות לשירות. לדוגמה, הנתונים של ההישגים וה-Leaderboards נשמרים במטמון, כך שהשחקנים יכולים לצפות בהישגים שלהם כמה פעמים שהם רוצים בלי לדרוש מהשירות לבצע קריאות מרובות.

ספריית הלקוח ב-Android לא תשלח לשרת את הניקוד של השחקן, אם הדירוג שלך לא טוב כמו זה ששלחת לאחרונה. בנוסף, בספרייה של Android משולבים באופן אוטומטי קריאות להגדלת ההישגים באופן תכוף כשהיא מזהה הגבלה על הקצב.

5.2 טובה לטוב שילוב של שיחות תכופות להישגים מצטברים.

אם יצרת משחק לחימה וקיבלת הישג של '5000 תרגילים', אל תשלח קריאה להגדלת ההישג בכל פעם שמישהו מכה. צריך לחכות עד סוף הסבב, ואז לשלוח קריאה אחת ל-increment(xxx) (כאשר xxx הוא המספר הכולל של אגרופים שנעפים בסיבוב הזה), או להמתין עד שיצטברו 50 פאנצ'ים לפני שליחת קריאה אחת ל-increment(50).

5.3 טובה לטוב יש לשים לב לשימוש.

חשוב לשים לב למספר השיחות שמגיעות לשירותי המשחקים של Google Play. גם אם נמנעים ממיצוי קצב העברת הנתונים, שיחות תכופות עלולות לגרום לתנועת גולשים רבה ברשת ולגרום להתרוקנות מהירה יותר של סוללת המכשיר. כדי להימנע מכך, ניתן להשתמש בשיטות הבאות:

  • כשמשחקים במשחקים שמורים, מומלץ לשמור את התדירות פעם בכמה דקות, ולא בכל לחיצה על לחצן.
  • ממתינים עד לסיום המשחק של השחקן לפני ששולחים ניקוד גבוה.
  • אפשר לבדוק את המכסה היומית של האפליקציה במרכז הבקרה של הפרויקט ב-Google Cloud Platform.

6. משחקים שמורים

המשימות הבאות של רשימת המשימות רלוונטיות ליישום התכונה משחקים שמורים במשחק.

מזהה חשיבות תיאור
6.1 נדרש כדאי להוסיף מטא-נתונים שיספקו הקשר נוסף למשחקים שמורים.

לכל הפחות, עליך לכלול את המטא-נתונים הבאים בעת ביצוע משחק שמור:

  • תמונת שער - צילום מסך שמתעד את ההתקדמות במשחק ומזכיר לשחקנים איפה הם יצאו מהמשחק.
  • תיאור - תיאור קצר שמספק הקשר נוסף לתמונת השער.
  • חותמת זמן – מציין כמה זמן השחקן משחק במשחק השמור הזה.
6.2 נדרש השחקנים יוכלו לטעון משחקים שמורים.

טוענים את המשחק השמור הנכון כשהשחקנים בוחרים באחת מהאפשרויות הבאות: אפליקציית Play Games או ממשק המשתמש שנבחר כברירת מחדל של 'משחקים שמורים'.