Τουρνουά

Πώς λειτουργούν οι φόρμουλες βαθμών λίγκας;

Κάθε λίγκα απονέμει πόντους στους παίκτες της για κάθε τουρνουά που παίζουν, χρησιμοποιώντας το σύστημα βαθμολογίας που επιλέγετε όταν δημιουργείτε ή επεξεργάζεστε τη λίγκα:

  • Λογαριθμικό
  • Τετραγωνική Ρίζα
  • Γραμμικό
  • Σταθερό (εισάγετε τους ακριβείς πόντους για κάθε θέση)
  • Προσαρμοσμένο (γράψτε τον δικό σας τύπο)

Μεταβλητές προσαρμοσμένου τύπου

Ένας προσαρμοσμένος τύπος υπολογίζεται μία φορά για κάθε παίκτη στο τέλος ενός τουρνουά. Ορισμένες από τις μεταβλητές του περιγράφουν το τουρνουά, οπότε έχουν την ίδια τιμή για όλους σε αυτό, και ορισμένες περιγράφουν τον παίκτη που βαθμολογείται. Το να ξέρετε ποια είναι ποια είναι το μεγαλύτερο μέρος της δεξιότητας στη συγγραφή ενός τύπου.

Σχετικά με το τουρνουά, το ίδιο για κάθε παίκτη:

pαριθμός παικτών
nαριθμός εγγραφών (συμπεριλαμβανομένων των re-entries)
bτο buy-in
zσυνολικό έπαθλο
mαριθμός πληρωμένων θέσεων
tμορφή τουρνουά (1 standard, 2 split, 3 shootout, 4 mystery bounty)

Σχετικά με τον παίκτη που βαθμολογείται:

fτελική θέση
cτι δαπάνησαν (buy-in συν τα δικά τους rebuys και add-on)
kknockouts που έκαναν
rrebuys που πήραν
aadd-ons που πήραν
xbullets που χρησιμοποίησαν (τα συνολικά buy-ins τους)
wκέρδη (το ποσό που κέρδισαν)
dγύροι από τον τελικό σε ένα shootout (1 είναι ο τελικός γύρος)

Για παράδειγμα, αυτός ο τύπος δίνει σε κάθε παίκτη έναν πόντο για κάθε αντίπαλο που ξεπέρασε, ένα μπόνους 2 πόντων για κάθε knockout, και αφαιρεί έναν πόντο για κάθε rebuy:

(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

Οι συνθήκες αλυσιδώνονται, που είναι πώς τα clubs γράφουν έναν διαφορετικό κανόνα για κάθε θέση. Κάθε : μεταβιβάζει στον επόμενο έλεγχο:

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)

Τύποι που χρησιμοποιούν πραγματικά τα clubs

Αυτά είναι πραγματικά μοτίβα από λίγκες που τρέχουν στο Blind Valet, απλοποιημένα μόνο όπου η λίστα θέσεων ενός club ήταν πολύ μεγάλη.

Τι ήθελε το clubΤύπος
Ένας πόντος για την εμφάνιση, τίποτα άλλο1
Ένας πίνακας κατάταξης μόνο νικώνf == 1 ? 1 : 0
Knockouts, συν έναν πόντο για τη νίκη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
Υψηλότερα στοιχήματα αξίζουν περισσότερα, κάθε rebuy κοστίζει πόντους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 ανεβάζει κάθε βαθμολογία σε ένα τουρνουά με υψηλότερο buy-in, επειδή το buy-in ανήκει στο τουρνουά, ενώ η αφαίρεση του c παίρνει πίσω ένα μερίδιο από αυτό που δαπάνησε κάθε παίκτης ξεχωριστά. Ένας παίκτης που πήρε δύο rebuys τελειώνει με λιγότερους πόντους από έναν παίκτη που πήρε την ίδια θέση με ένα bullet.

Έλεγχος του τύπου σας

Οι ρυθμίσεις λίγκας προεπισκοπούν τους πόντους για κάθε τελική θέση καθώς πληκτρολογείτε, ώστε να μπορείτε να δείτε τη μορφή της πληρωμής πριν αποθηκεύσετε. Αν η προεπισκόπηση είναι κενή, ο τύπος δεν είναι ακόμα έγκυρος: ελέγξτε για μια παρένθεση που λείπει, ή έναν πίνακα πόντων που μια χαμηλή τελική θέση μπορεί να φτάσει πέρα από το τέλος του.