Turnering

Hvordan fungerer ligapoengformler?

Hver liga tildeler poeng til sine spillere for hver turnering de spiller, ved hjelp av poengsystemet du velger når du oppretter eller redigerer ligaen:

  • Logaritmisk
  • Kvadratrot
  • Lineær
  • Fast (du skriver inn de eksakte poengene for hver plassering)
  • Tilpasset (skriv din egen formel)

Variabler for tilpasset formel

En tilpasset formel regnes ut én gang for hver spiller på slutten av en turnering. Noen av variablene beskriver turneringen, så de har samme verdi for alle i den, og noen beskriver spilleren som får poeng. Å vite hvilken som er hvilken er det meste av ferdigheten i å skrive en formel.

Om turneringen, det samme for alle spillere:

pantall spillere
nantall påmeldinger (inkludert re-entries)
bbuy-in
zpremiepott
mantall premieplasser
tturneringsformat (1 standard, 2 split, 3 shootout, 4 mystery bounty)

Om spilleren som får poeng:

fsluttplassering
chva de brukte (buy-in pluss egne rebuys og add-on)
kknockouts de gjorde
rrebuys de tok
aadd-ons de tok
xbullets de brukte (totale buy-ins)
wgevinst (beløpet de vant)
drunder fra finalen i en shootout (1 er finalerunden)

For eksempel gir denne formelen hver spiller ett poeng for hver motstander de utkonkurrerte, en 2-poengs bonus for hver knockout, og trekker fra ett poeng for hver rebuy:

(p - f + 1) + (2 * k) - r

Avansert: skrive din egen formel

Utover aritmetikk gjør to notasjonstyper mesteparten av arbeidet i virkelige ligaformler: betingelser og poengtabeller. Du kan også bruke sqrt, log, log10, exp, pow, round, floor, fix, abs, min og max, og ^ for potenser.

Betingelser med ? :

En betingelse leses som test ? verdi hvis sann : verdi ellers.

f == 1 ? 50 : 10

Det tildeler 50 poeng til vinneren og 10 til alle andre. Merk dobbel == for "er lik". Du har også <, <=, >, >= og !=, og du kan kombinere tester med and og or:

p >= 20 and f <= 3 ? 10 : 0

Betingelser kan lenkes sammen, som er hvordan klubber skriver en annen regel for hver plassering. Hver : overfører til neste test:

f == 1 ? 30 : f == 2 ? 20 : f == 3 ? 15 : 5

Poengtabeller med [ ... ][f]

I stedet for å lenke betingelser kan du liste opp poengene i rekkefølge og velge den for spillerens sluttplassering:

[100, 85, 70][f]

Listen leses etter posisjon: førsteplass får 100, andreplass 85, tredjeplass 70. Plasseringer starter på 1, så f stemmer overens med listen uten noen justering.

Beskytt alltid en poengtabell med en betingelse. Hvis en spiller plasserer seg under slutten av listen, feiler formelen og den spilleren får ingen poeng i det hele tatt. En liste med tre oppføringer trenger f < 4:

f < 4 ? [100, 85, 70][f] : 0

Bruk :-verdien til å sette et gulv for alle andre, for eksempel : 5 for å gi fem poeng for å møte opp.

Pass på parentesene

Multiplikasjon og addisjon anvendes før en sammenligning, noe som stille endrer hva en formel tester. Skrevet uten parenteser:

30 * k + f < p / 3 + 1 ? 100 : 1

blir testen "er 30 * k + f mindre enn p / 3 + 1", ikke "er f innenfor topp tredjedel". En liga kan kjøre en hel sesong med feil regel på denne måten. Pakk inn betingelsen, eller hele det betingede uttrykket, i parenteser:

30 * k + (f < p / 3 + 1 ? 100 : 1)

Formler klubber faktisk bruker

Dette er virkelige mønstre fra ligaer som kjører på Blind Valet, forenklet bare der en klubbs liste over plasser var veldig lang.

Hva klubben ønsketFormel
Ett poeng for å møte opp, ingenting annet1
En toppliste over bare seiref == 1 ? 1 : 0
Knockouts, pluss ett poeng for seierenk + (f == 1 ? 1 : 0)
Ett poeng per motstander utkonkurrert, med pallplass-bonusp - f + 1 + (f < 4 ? [4, 2, 1][f] : 0)
En fast tabell, men alle andre får fortsatt poengf < 10 ? [1500, 1200, 900, 700, 600, 500, 400, 300, 200][f] : 100
Høyere innsatser verdt mer, hver rebuy koster poenglog(p + 1) / f * 10 + b - c / 4
Poeng skalert etter størrelsen på premiepottensqrt(p + 1) / f * z / 500
Bare topp tredjedel får poeng, skalert etter feltets størrelse30 * k + (f < p / 3 + 1 ? sqrt(p / 10) * [120, 90, 70, 60, 50, 45, 40, 30, 25, 20][f] : 1)
Hver plassering en prosentandel av en base som vokser med feltetf == 1 ? round(600 + p * 10) : f == 2 ? round((600 + p * 10) * 0.82) : round((600 + p * 10) * 0.74)

Innsatseksemplet viser hvorfor de to gruppene har betydning. Det bruker b og c, som ser like ut men befinner seg på motsatte sider: å legge til b løfter hver poengsum i en turnering med høyere buy-in, fordi buy-in tilhører turneringen, mens fradrag av c tar tilbake en andel av hva hver spiller individuelt brukte. En spiller som tar to rebuys ender opp med færre poeng enn en spiller som tok samme plassering på én bullet.

Sjekke formelen din

Ligainnstillingene forhåndsviser poengene for hver sluttplassering mens du skriver, slik at du kan se formen på utbetalingen før du lagrer. Hvis forhåndsvisningen er tom, er formelen ikke gyldig ennå: sjekk for en manglende parentes, eller en poengtabell som en lav plassering kan løpe av slutten av.