כיצד פועלות נוסחאות נקודות הליגה?
כל ליגה מעניקה נקודות לשחקנים שלה עבור כל טורניר שהם משחקים, באמצעות מערכת הניקוד שאתה בוחר כשאתה יוצר או עורך את הליגה:
- לוגריתמית
- שורש ריבועי
- לינארית
- קבועה (אתה מזין את הנקודות המדויקות לכל מקום)
- מותאמת אישית (כתוב נוסחה משלך)
משתנים בנוסחה מותאמת אישית
נוסחה מותאמת אישית מחושבת פעם אחת לכל שחקן בסוף הטורניר. חלק מהמשתנים שלה מתארים את הטורניר, כך שהם מחזיקים את אותו ערך לכולם בו, וחלק מתארים את השח קן שמקבל ניקוד. לדעת מי הוא מי זה רוב המיומנות בכתיבת נוסחה.
אודות הטורניר, זהה לכל שחקן:
| p | מספר שחקנים |
| n | מספר הכניסות (כולל כניסות מחדש) |
| b | הבאיי-אין |
| z | קופת פרסים |
| m | מספר מקומות מזכים |
| t | פורמט הטורניר (1 רגיל, 2 ספליט, 3 שוטאאוט, 4 מיסטרי באונטי) |
אודות השחקן שמקבל ניקוד:
| f | מיקום סיום |
| c | מה הם הוציאו (באיי-אין בתוספת הריבייים והאדאונים שלהם) |
| k | נוקאאוטים שעשו |
| r | ריבייים שלקחו |
| a | אדאונים שלקחו |
| x | בולטים שהשתמשו בהם (סך הבאיי-אינים שלהם) |
| w | זכיות (הסכום שזכו) |
| d | סיבובים מהפיינל בשוטאאוט (1 הוא סיבוב הפיינל) |
לדוגמה, הנוסחה הזו נותנת לכל שחקן נקודה עבור כל יריב שהם עברו, בונוס של 2 נקודות עבור כל נוקאאוט, ומחסירה נקודה עבור כל ריביי:
(p - f + 1) + (2 * k) - r
מתקדם: כתיבת נוסחה משלך
מעבר לחשבון, שני אלמנטים עושים את רוב העבודה בנוסחאות ליגה אמיתיות: תנאים וטבלאות נקודות. אתה יכול גם להשתמש ב-sqrt, log, log10, exp, pow, round, floor, fix, abs, min ו-max, ו-^ לחזקות.
תנאים עם ? :
תנאי נקרא כ-בדיקה ? ערך אם נכון : ערך אחרת.
f == 1 ? 50 : 10
זה מעניק 50 נקודות למנצח ו-10 לכל השאר. שים לב ל-== הכפול עבור "שווה ל". יש לך גם <, <=, >, >= ו-!=, ואתה יכול לחבר בדיקות עם and ו-or:
p >= 20 and f <= 3 ? 10 : 0
תנאים משתלשלים, וזו הדרך שבה מועדונים כותבים כלל שונה לכל מיקום. כל : מעביר לבדיקה הבאה:
f == 1 ? 30 : f == 2 ? 20 : f == 3 ? 15 : 5
טבלאות נקודות עם [ ... ][f]
במקום לשרשר תנאים, אתה יכול לרשום את הנקודות לפי סדר ולבחור את זו למיקום הסיום של השחקן:
[100, 85, 70][f]
הרשימה נקראת לפי מיקום: מקום ראשון מקבל 100, שני 85, שלישי 70. המיקומים מתחילים ב-1, אז f מתיישר עם הרשימה ללא כל התאמה.
תמיד הגן על טבלת נקודות עם תנאי. אם שחקן מסיים מתחת לסוף הרשימה, הנוסחה נכשלת והשחקן הזה לא מקבל נקודות בכלל. רשימה של שלוש ערכים צריכה
f < 4:
f < 4 ? [100, 85, 70][f] : 0השתמש בערך
:כדי להגדיר רצפה לכל השאר, למשל: 5כדי לתת חמש נקודות על הגעה.
שים לב לסוגריים
כפל וחיבור מבוצעים לפני השוואה, מה ששקטות משנה את מה שנוסחה בודקת. כשכתוב ללא סוגריים:
30 * k + f < p / 3 + 1 ? 100 : 1
הבדיקה הופכת ל-"האם 30 * k + f קטן מ-p / 3 + 1", ולא "האם f בתוך השליש העליון". ליגה יכולה לרוץ עונה שלמה על הכלל הלא נכון ככה. עטוף את התנאי, או את כל התנאי, בסוגריים:
30 * k + (f < p / 3 + 1 ? 100 : 1)
נוסחאות שמועדונים בפועל משתמשים בהן
אלו דפוסים אמיתיים מליגות שפועלות ב-Blind Valet, מפושטים רק במקומות שבהם רשימת המקומות של מועדון הייתה ארוכה מאוד.
| מה המועדון רצה | נוסחה |
|---|---|
| נקודה על הגעה, שום דבר אחר | 1 |
| לוח תוצאות של ניצחונות בלבד | f == 1 ? 1 : 0 |
| נוקאאוטים, בתוספת נקודה על הניצחון | k + (f == 1 ? 1 : 0) |
| נקודה אחת ליריב שעברו, עם בונוס פודיום | p - f + 1 + (f < 4 ? [4, 2, 1][f] : 0) |
| טבלה קבועה, אבל כל השאר עדיין מקבלים ניקוד | f < 10 ? [1500, 1200, 900, 700, 600, 500, 400, 300, 200][f] : 100 |
| גבהים גבוהים יותר שווים יותר, כל ריביי עולה נקודות | log(p + 1) / f * 10 + b - c / 4 |
| נקו דות מותאמות לגודל קופת הפרסים | sqrt(p + 1) / f * z / 500 |
| רק השליש העליון מקבל ניקוד, מותאם לגודל המגרש | 30 * k + (f < p / 3 + 1 ? sqrt(p / 10) * [120, 90, 70, 60, 50, 45, 40, 30, 25, 20][f] : 1) |
| כל מקום אחוז מבסיס שגדל עם המגרש | f == 1 ? round(600 + p * 10) : f == 2 ? round((600 + p * 10) * 0.82) : round((600 + p * 10) * 0.74) |
דוגמת הגבהים מראה למה שתי הקבוצות חשובות. היא משתמשת ב-b ו-c, שנראים דומים אבל יושבים בצדדים מנוגדים: הוספת b מעלה כל ניקוד בטורניר באיי-אין גבוה יותר, כי הבאיי-אין שייך לטורניר, בעוד החסרת c לוקחת בחזרה חלק ממה שכל שחקן בנפרד הוציא. שחקן שלוקח ריביי פעמיים מסיים עם פחות נקודות משחקן שלקח את אותו מקום על בוליט אחד.
בדיקת הנוסחה שלך
הגדרות הליגה מציגות תצוגה מקדימה של הנקודות לכל מיקום סיום בזמן שאתה מקליד, כך שאתה יכול לראות את צורת התשלום לפני שאתה שומר. אם התצוגה המקדימה ריקה, הנוסחה עדיין לא תקפה: בדוק סוגר חסר, או טבלת נקודות שסיום נמוך יכול לרוץ מעבר לקצה שלה.