Miten liigapistelaskukaavat toimivat?
Jokainen liiga jakaa pisteitä pelaajilleen jokaisesta turnaukseesta, jossa he pelaavat, käyttäen pisteytysjärjestelmää, jonka valitset luodessasi tai muokatessasi liigaa:
- Logaritminen
- Neliöjuuri
- Lineaarinen
- Kiinteä (syötät tarkat pisteet jokaiselle sijalle)
- Mukautettu (kirjoitat oman kaavasi)
Mukautetun kaavan muuttujat
Mukautettu kaava lasketaan kerran jokaiselle pelaajalle turnauksen lopussa. Jotkin sen muuttujista kuvaavat turnausta, joten niillä on sama arvo kaikille siinä, ja jotkin kuvaavat pisteytettävää pelaajaa. Sen tietäminen, mitkä ovat mitäkin, on suurin osa taidosta kaavan kirjoittamisessa.
Turnauksesta, sama kaikille pelaajille:
| p | pelaajien määrä |
| n | osallistumisten määrä (mukaan lukien re-entryt) |
| b | sisäänosto |
| z | palkintopotti |
| m | palkittavien sijojen määrä |
| t | turnausmuoto (1 standard, 2 split, 3 shootout, 4 mystery bounty) |
Pisteytettävästä pelaajasta:
| f | sijoitus |
| c | mitä he käyttivät (sisäänosto plus omat rebuyt ja add-on) |
| k | tekemänsä knockoutit |
| r | ottamansa rebuyt |
| a | ottamansa add-onit |
| x | käyttämänsä bulletsit (heidän kokonais-sisäänostot) |
| w | voitot (summa jonka he voittivat) |
| d | kierrokset finaalista shootoutissa (1 on loppukierros) |
Esimerkiksi tämä kaava antaa jokaiselle pelaajalle pisteen jokaisesta päihitetystä vastustajasta, 2 pisteen bonuksen jokaisesta knockoutista ja vähentää pisteen jokaisesta rebuystä:
(p - f + 1) + (2 * k) - r
Edistynyt: oman kaavan kirjoittaminen
Aritmetiikan lisäksi kaksi merkintätapaa tekevät suurimman osan työstä todellisissa liigakaavoissa: ehdot ja pistetaulukot. Voit myös käyttää sqrt, log, log10, exp, pow, round, floor, fix, abs, min ja max, sekä ^ potensseille.
Ehdot muodossa ? :
Ehto luetaan muodossa testi ? arvo jos tosi : arvo muuten.
f == 1 ? 50 : 10
Tämä antaa 50 pistettä voittajalle ja 10 kaikille muille. Huomaa kaksois-== merkinnässä "on yhtä suuri kuin". Käytettävissä ovat myös <, <=, >, >= ja !=, ja voit yhdistää testejä and ja or:
p >= 20 and f <= 3 ? 10 : 0
Ehdot ketjutetaan, mikä on tapa, jolla klubit kirjoittavat eri säännön jokaiselle sijoitukselle. Jokainen : siirtää seuraavaan testiin:
f == 1 ? 30 : f == 2 ? 20 : f == 3 ? 15 : 5
Pistetaulukot muodossa [ ... ][f]
Ehtojen ketjuttamisen sijaan voit luetella pisteet järjestyksessä ja valita pelaajan sijoitusta vastaavan:
[100, 85, 70][f]
Luettelo luetaan sijainnin mukaan: ensimmäinen sija saa 100, toinen 85, kolmas 70. Sijoitukset alkavat 1:stä, joten f osuu luetteloon ilman säätöä.
Suojaa pistetaulukko aina ehdolla. Jos pelaaja sijoittuu luettelon lopun jälkeen, kaava epäonnistuu ja pelaaja ei saa pisteitä lainkaan. Kolmen kohdan luettelo tarvitsee
f < 4:
f < 4 ? [100, 85, 70][f] : 0Käytä
:arvoa asettaaksesi pohjan kaikille muille, esimerkiksi: 5antaa viisi pistettä paikalle tulemisesta.
Tarkkaile sulkeita
Kertolasku ja yhteenlasku suoritetaan ennen vertailua, mikä hiljaa muuttaa sitä, mitä kaava testaa. Ilman sulkeita kirjoitettuna:
30 * k + f < p / 3 + 1 ? 100 : 1
testistä tulee "onko 30 * k + f pienempi kuin p / 3 + 1", ei "onko f ylimmän kolmanneksen sisällä". Liiga voi ajaa koko kauden väärällä säännöllä tällä tavalla. Aseta ehto tai koko ehtolause sulkeisiin:
30 * k + (f < p / 3 + 1 ? 100 : 1)
Kaavat joita klubit todella käyttävät
Nämä ovat todellisia malleja Blind Valetissa toimivista liigoista, yksinkertaistettuna vain silloin kun klubin sijoitusluettelo oli hyvin pitkä.
| Mitä klubi halusi | Kaava |
|---|---|
| Piste paikalle tulemisesta, ei muuta | 1 |
| Vain voittojen tulostaulu | f == 1 ? 1 : 0 |
| Knockoutit plus piste voitosta | k + (f == 1 ? 1 : 0) |
| Yksi piste päihitettyä vastustajaa kohden, palkintokohtabonus | p - f + 1 + (f < 4 ? [4, 2, 1][f] : 0) |
| Kiinteä taulukko, mutta kaikki muut saavat silti pisteitä | f < 10 ? [1500, 1200, 900, 700, 600, 500, 400, 300, 200][f] : 100 |
| Korkeammat panokset arvokkaampia, jokainen rebuy maksaa pisteitä | log(p + 1) / f * 10 + b - c / 4 |
| Pisteet skaalattu palkintopotin koon mukaan | sqrt(p + 1) / f * z / 500 |
| Vain ylin kolmannes saa pisteitä, skaalattu kentän koon mukaan | 30 * k + (f < p / 3 + 1 ? sqrt(p / 10) * [120, 90, 70, 60, 50, 45, 40, 30, 25, 20][f] : 1) |
| Jokainen sija prosentti perusarvosta, joka kasvaa kentän mukana | f == 1 ? round(600 + p * 10) : f == 2 ? round((600 + p * 10) * 0.82) : round((600 + p * 10) * 0.74) |
Panokset-esimerkki näyttää miksi nämä kaksi ryhmää ovat tärkeitä. Se käyttää b ja c, jotka näyttävät samanlaisilta mutta ovat vastakkaisilla puolilla: b:n lisääminen nostaa jokaista pistemäärää korkeamman sisäänoston turnauksessa, koska sisäänosto kuuluu turnaukselle, kun taas c:n vähentäminen ottaa takaisin osuuden siitä, mitä kukin pelaaja erikseen käytti. Pelaaja, joka ottaa kaksi rebuyta, saa vähemmän pisteitä kuin pelaaja, joka tuli samalle sijalle yhdellä bulletilla.
Kaavasi tarkistaminen
Liigan asetukset esikatsovat pisteet jokaiselle sijoitukselle kirjoittaessasi, joten voit nähdä jaon muodon ennen tallentamista. Jos esikatselu on tyhjä, kaava ei ole vielä pätevä: tarkista puuttuva sulkee tai pistetaulukko, jonka lopun yli alhainen sijoitus voi ylittää.