שילוב של Play Games Services עם פתרון קיים לניהול זהויות

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

שחזור מצב הנגן

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

תהליך העבודה של מזהה מרובה ב-Play Games Services

כששחקן מתחבר באמצעות Play Games Services, צריך להמשיך באופן הבא:

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

צריך להוסיף למשחק שני תרחישים חדשים עיקריים:

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

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

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

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

פתרונות לדוגמה

הפתרונות לדוגמה כוללים פתרונות של קשירה והחזרה.

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

תהליך חזק של קישור

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

החזרת תהליך עבודה תרשים זרימה של זכירת המודעה

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

שיוך חשבון

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

תהליך העבודה לטיפול בחשבון בעל מאפיינים זהים לחשבון פעיל ב-Play Games Services

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

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

ביטול ההגדרה כספק

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

דוגמאות נוספות לקישור חשבונות

תהליך חזק של קישור

בדוגמה הראשית הזו אפשר לראות שמזהה שחקן מסוים ב-Play Games Services‏ (1) משויך לחשבון הראשון במשחק שמוצג (A), ולא משויך מחדש כשיוצאים מהמשחק כדי לשחק בחשבון אחר.

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

החלפת חשבונות במכשיר

תהליך מעבר בין חשבונות עם קישור חזק

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

חשבון קיים שמקושר למזהה אחר

זרימת קישור חזק לחשבון קיים

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

שחזור חשבונות שהיו פעילים לאחרונה

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

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

תרשים זרימה של זכירת המודעה

בדוגמה הזו, שחקן מחזיק בשלושה חשבונות במשחק, ואז עובר למכשיר חדש:

Recall Flow 2

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

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

דוגמאות נוספות לזיכרון

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

טלפונים שאין בהם מערכת Android

Recall Non-Android Flow

כאן אנחנו מדגימים איך לאחזר חשבונות שכבר קיימים (חשבון של צד שלישי שמקושר), או חשבונות שנוצרו ממכשיר אחר שלא מחובר ל-Play Games Services.

תרחיש נפוץ יותר הוא התחלה בטלפון שאינו Android ומעבר אל Google Play Games במחשב.

Recall Non-Android Flow 2

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

כמה פרופילים ב-Play Games Services לחשבון אחד

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

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

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

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