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

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

במאמר הטמעות של לקוחות מוסבר איך להטמיע לידרבורד את הפלטפורמה.

הסבר על הלידרבורדים

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

  1. בסיום משחק (או ברגע שקובעים זאת), המשחק מעביר את הניקוד של השחקן ללידרבורד אחד או יותר שיצרתם למשחק.
  2. שירותי המשחקים של Google Play בודקים אם התוצאה הזו טובה יותר מהדירוג הנוכחי של השחקן בלוח הניקוד היומי, השבועי או בכל הזמנים. אם כן, שירותי המשחקים של Google Play מעדכנים את לוחות הלידרבורד המתאימים עם הניקוד החדש.
  3. שירותי המשחקים של Google Play שולחים דוח תוצאות ללקוח הלקוח. דוח זה מודיע ללקוח אם התוצאה הגבוהה החדשה היא יומית, שבועית או כל הזמנים. אם לא, שירותי המשחקים של Google Play יאמרו ללקוח מהו הניקוד הגבוה ביותר היומי, השבועי או של כל הזמנים עבור השחקן הזה.
  4. כדי לאחזר את התוצאות של שחקן עבור לידרבורד, אפשר לבקש מסגרת זמן (יומית, שבועית או כל הזמן), ולציין אם המשתמש רוצה לראות Leaderboard חברתי או ציבורי. שירות המשחקים מבצע את כל הסינון הנדרש ולאחר מכן שולח את התוצאות חזרה ללקוח.
  5. במקרים שבהם יש הרבה ציונים שצריך לדווח עליהם, שירות המשחקים שולח רק את הנתונים להצגת התוצאות המובילות בלידרבורד. תוכלו גם לאחזר נתונים של דירוג גולמי של התוצאות הגבוהות ביותר, או של תוצאות קרובות לניקוד של השחקן.

מספר לוחות לידרבורד

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

מסגרות זמן לידרבורד

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

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

לוחות הלידרבורד השבועיים מתאפסים בחצות בין יום שבת ליום ראשון, באותו אזור זמן של לוחות הלידרבורד היומיים (UTC-7).

לוחות לידרבורד ציבוריים ורשתות חברתיות

ל-Play Games SDK ניתן להציג שתי גרסאות שונות של כל לידרבורד לשחקן:

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

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

המערכת מציגה Leaderboards

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

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

מאפיינים

כדי ליצור ולנהל לוחות לידרבורד, כדאי להכיר את המאפיינים הבאים:

העקרונות הבסיסיים

הרכיבים הבסיסיים הבאים משויכים לכל לידרבורד:

  • ID הוא מחרוזת ייחודית שמערכת Google Play Console תיצור עבורכם. תוכלו להשתמש במזהה הייחודי הזה כדי להתייחס ללידבורד במשחקי הלקוחות שלכם.
  • Name הוא שם מקוצר של הלידרבורד (לדוגמה, "ניקוד גבוה" או "רמה 3"). השם יכול לכלול עד 100 תווים.
  • icon הוא סמל מרובע שישויך ללידרבורד שלכם. לשיטות מומלצות בעת יצירת הסמלים של Leaderboard, עיינו בקטע הנחיות בנושא סמלים בהמשך.
  • סדר הרשימה הוא הסדר שבו הלידרבורד יופיע כאשר שחקן יראה את לוחות הלידרבורד המשויכים למשחק שלכם.
  • מגבלות הן ערכים אופציונליים שמגדירים את המגבלות העליונות והתחתונות של הציונים שמותרים בלידרבורד. כך תוכלו להימנע משליחות של ניקוד שמקורן בתרמית בבירור. תוכלו גם להשתמש ב-Players.hide כדי להסתיר שחקנים שלדעתכם השיגו תוצאות הונאה מכל לוחות הלידרבורד באפליקציה שלכם.

סידור הסרטונים

לידרבורד יכול להיות אחד משני סוגים של סידור:

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

פורמט ניקוד

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

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

  • לוחות הלידרבורד זמן מציגים את הציונים בשעות/דקות / שניות/מאות בפורמט שני. חובה לשלוח ציונים באלפיות השנייה, כך שהמערכת תפרש את 66032 בתור 1:06.03.

  • לוחות הלידרבורד Currency מציגים את הציונים בפורמט מטבע. אתם שולחים ציונים כ-1/1,000,000 מיחידת המטבע הראשית. לדוגמה, ציון של 19,950,000 יפורש כ-$19.95, בהנחה שציינתם את המטבע כדולר ארה"ב.

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

תרגומים ועיצוב פורמטים

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

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

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

פורמט ה-Leaderboard של זמן מוצג בהתאם לשפה ולאזור של הנגן. הדבר בולט בעיקר אם משתמשים בשברים של שנייה או אם הם בעלי ערך של שעות עם יותר מ-3 ספרות (לדוגמה, 4,815:16:23.42 בארה"ב ו-4.815:16:23,42 בגרמניה).

פורמט המטבע של לוחות הלידרבורד Currency יוצג בהתאם לשפה ולאזור של הנגן. עם זאת, לא ניתן לשנות את יחידת המטבע. לדוגמה, אם תגדירו את המטבע שלכם בדולר ארה"ב, המשחק יציג את $19.95 בארה"ב ואת 19,95 $ בצרפת. עם זאת, לא ניתן לציין שבמשחק מוצגים דולרים בארה"ב ובאירו בצרפת.

הנחיות בנושא סמלים

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

באותו סמל משתמשים בכל המקומות, לכן מומלץ לא לכלול סמל או תוכן מקומי בסמל.

יצירת לידרבורד

בקטע הזה נסביר איך ליצור לידרבורד עבור משחקים חדשים או קיימים.

יצירת לידרבורד עבור משחק חדש

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

הלחצן 'הוספת לידרבורד' בלוח הראשי של לוחות הלידרבורד

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

טופס מלא של טבלת ההישגים 'הסבב הטוב ביותר'.

לוחצים על Save as הטיוטה (שמירה כטיוטה), וה-Leaderboard יהיה זמין במצב "טיוטה". לאחר פרסום המשחק, כל לוחות הלידרבורד של המשחק מפורסמים בו.

יצירת לידרבורד עבור משחק שפורסם

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

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

עריכת לידרבורד

כדי לערוך לידרבורד שכבר יצרת, לחץ על ה-Leaderboard בכרטיסייה לוחות לידרבורד ב-Google Play Console. בשלב זה תראו את הטופס שבו השתמשתם כשיצרתם את ה-Leaderboard, ותוכלו לערוך את השדות בעצמכם.

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

אם המפתח פועל באופן תקין, בוחרים באפשרות Publish the changes (פרסום השינויים) מהתיבה בחלק העליון של הטופס Leaderboard, ולאחר מכן אפשר לפרסם מחדש את המשחק, כולל כל לוחות הלידרבורד המעודכנים.

ביטול עריכה

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

מחיקת לידרבורד

תוכלו למחוק Leaderboards במצב "טיוטה" או שפורסמו. כדי למחוק לידרבורד ב-Google Play Console, נכנסים לטופס של ה-Leaderboard ולוחצים על Delete Leaderboard בחלק העליון של הטופס.

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

איפוס לידרבורד

ניתן לאפס רק את נתוני ההתקדמות של השחקן ב-Leaderboards.

  • כדי לאפס לוחות לידרבורד ב-Google Play Console, לחצו על איפוס ההתקדמות בחלק העליון של הטופס עבור האירוע הזה.
  • כדי לאפס באופן פרוגרמטי את נתוני ה-Leaderboard, קראו לשיטותניהול API Scores.

הוספת תרגומים ללוחות לידרבורד

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

כדי להוסיף תרגומים משלכם ללוחות לידרבורד, פותחים את הכרטיסייה לוחות לידרבורד של המשחק ב-Google Play Console ובוחרים Leaderboard קיים. בדף פרטי הלידרבורד, לחצו על הכרטיסייה של השפה שהוספתם בעבר בכרטיסייה פרטי המשחק. בדף הפרטים של ה-Leaderboard עבור השפה הזו, ערכו את הטופס עם התרגומים שלכם בלידרבורד הזה. לוחצים על Save כדי לשמור את פרטי הלידרבורד המתורגמים.

הסתרת התוצאות בלידרבורד

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

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

  1. ב-Google Play Console, פותחים את הכרטיסייה Games Services ובוחרים את המשחק הרצוי מהרשימה.
  2. פותחים את הכרטיסייה Leaderboards ובוחרים את המכונה של הלידרבורד שבה אתם רוצים להפעיל הגנה מפני זיוף.
  3. מפעילים את האפשרות הפעלת הגנה מפני חבלה לידרבורד.
  4. לוחצים על שמירה והמשך.
  5. מפרסמים את המשחק.

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

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

הטמעות של לקוחות

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