רשימת משימות לשיפור האיכות ל-Google Play Games Services

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

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

1. כניסה

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

מזהה חשיבות תיאור
1.1 חובה כניסה של השחקנים באמצעות שירותי Google Play Games
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 חייב להופיע בכל פעם שמפעילים את תהליך הכניסה. לשם כך צריך לקרוא ל-method‏ setViewForPopups() של הכיתה GamesClient. מוודאים שהחלון הקופץ הזה מוצג כשהשחקן נכנס לחשבון באופן אוטומטי בתחילת המשחק. כך השחקנים יידעו שהם נכנסים למשחק בצורה נכונה.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1.10 חובה גיבוי ההתקדמות של השחקנים באמצעות המזהה של Play Games Services

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

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

2. הישגים

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

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

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

2.2 שיטה מומלצת הישגים ייחודיים

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

2.3 שיטה מומלצת הקצאת ניקוד להישגים באופן יחסי

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

2.4 שיטה מומלצת עיצוב הישגים במגוון רמות קושי

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

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

קשה לזכות בהישג שמחייב צבירת 5,000 יהלומים
2.5 מומלץ אל תציגו את ההישגים בתחילת הסרטון.

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

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

2.6 מומלץ הגדרת הישגים שמבוססים על פעילויות מעניינות במשחק

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

2.7 מומלץ שימוש בסמלי הישגים צבעוניים

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

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

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

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

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

2.10 מומלץ חשובים כמו 'ציידים של הישגים'.

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

2.11 מומלץ לוודא שסמל ההישג מוצג בצורה תקינה.

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

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

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

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

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

3.2 שיטה מומלצת הגדרת מגבלות עליון על ציונים שאפשר לשלוח

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

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

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

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

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

3.5 מומלץ שימוש בתגי דירוג

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

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

3.6 מומלץ עיצוב יצירתי של ממשק המשתמש של הלידבורד

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

3.7 מומלץ להראות לשחקנים איך הם משתווים למתחרים.

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

4. חברים

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

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

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

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

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

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

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

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

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

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

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

5.3 מומלץ חשוב להיות מודעים לשימוש שלכם.

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

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

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

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

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

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

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

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