Kuidas tulemus jõuab edetabelisse
Ekraanil nähtav skoor annab mängijale kohese tagasiside. Avalik tulemus tekib alles siis, kui server seob selle kehtiva sessiooniga ja kordab salvestatud mängu.
Plokisaju skoor
Plokisajus annavad põhiosa skoorist eemaldatud read. Ühe, kahe ja kolme rea puhastused kasvavad astmeliselt; neli rida korraga annab suurema baasi. Järjestikused puhastused kasvatavad kombinatsiooniboonust ning järjestikused neljarealised puhastused võivad saada lisaväärtuse. Pehme langetus lisab ühe punkti läbitud rea kohta ja kohene langetus kaks punkti rea kohta.
Teekonna erireeglid võivad lisada takistusi, tõusvaid ridu või ajastatud eesmärke, kuid konkreetne sessioon salvestab alati täpse reeglistiku. Edetabelis võrreldakse ainult selle režiimi kehtivaid kinnitatud tulemusi.
Värvisaju skoor
Värvisaju Classicus annab iga eemaldatud klots põhipunkte. Esimene eemalduslaine kasutab baaskordajat ning sama käigu järgmised kaskaadilained suuremat kordajat. Seetõttu võib üks hästi ettevalmistatud käik olla väärtuslikum kui mitu isoleeritud kolmest ühendust.
Teekond kasutab uuemat mootorit, kus eriklotsid, takistused, taseme sihid ja tähepiirid kuuluvad konkreetse taseme revision’i. HUD näitab jooksvat skoori ja täheprogressi, kuid taseme läbimine võib lisaks skoorile nõuda kõigi eesmärkide täitmist.
Sessioon ja mängusalvestis
Mängu alustamisel loob server unikaalse sessiooni, tunnuse, algväärtuse, mootori versiooni, reeglistiku versiooni ja reeglite räsi. Brauser salvestab mängija sisendid koos mängu ajajoonega. Pikema mängu ajal saadetakse taastatavaid vahepunkte, et lehe sulgumine või võrgu paus ei hävitaks kohe kogu katset.
Vahepunkt ei ole uus tulemus ega luba ajalugu ümber kirjutada. Lõplik sisendijada peab jätkama serveris hoitud algusosa. Üks sessioon saab lõpptulemuse esitada ainult ühe korra; korduspäring ei tohi anda teist auhinda ega teist edetabelikirjet.
Serveripoolne kordus
Esitamisel kontrollib server sessioonitunnust, kasutajat, sessiooni olekut, tähtaega, mootoriversiooni, reeglite räsi, sisendite kuju, ajatemplite järjestust ja lubatud kestust. Seejärel käivitab server sama mängumootori sama algväärtusega ja rakendab sisendid samas järjekorras.
Kliendi väidetud skoor võib diagnostikas olemas olla, kuid kinnitatud skoor võetakse serveri kordusest. Võistlusmäng peab jõudma lubatud lõppseisuni: mäng läbi või fikseeritud ajapiir täis. Pooleli olekut ei saa esitada lõpliku rekordina.
Kinnitatud, tagasilükatud ja taastatav
VERIFIED tähendab, et kordus sobis sessiooniga ning server sai arvutada tulemuse. REJECTED tähendab, et kontroll ei saanud sisendijada kehtivaks lugeda; see ei jõua edetabelisse. Võrgu- või serveritõrke korral võib tulemus jääda taastatavaks, et sama korrektset andmepaketti uuesti saata.
Kui tulemus ebaõnnestub, ei tohiks rakendus anda kasutajale tehnilist JSON-i ega teeselda edu. Kasutajaliides pakub uuesti salvestamist või turvalist tagasiteed. Varasem kinnitatud parim tulemus jääb alles ka siis, kui uus katse saab väiksema skoori või lükatakse tagasi.
Edetabeli kirje seob tulemuse režiimi, mängija ja võistlusperioodiga. See väldib näiteks Classicu skoori sattumist nädalamängu või ühe turniiri tulemuse kandumist teise. Tulemuse esitamise kordamine peab olema idempotentne: sama sessiooni uuesti saatmine võib taastada vastuse, kuid ei tohi luua topeltkirjet, topeltpreemiat ega uut juhuslikku lõppseisu. Kontrollitav ajalugu on osa skoorist sama palju kui ekraanil nähtav number.
Korduma kippuvad küsimused
Kas leaderboard kasutab viimast või parimat tulemust?
Classic ja nädalamäng kuvavad režiimi reegli järgi parima kinnitatud tulemuse. Tagasilükatud katse seda ei asenda.
Miks server mängu uuesti läbi teeb?
Nii ei sõltu avalik tulemus brauseri saadetud numbrist. Iga punkt peab tekkima lubatud sisendite ja sama mängumootori kaudu.
Kas katkestatud internet tähendab automaatselt kaotatud tulemust?
Mitte tingimata. Checkpoint ja taastatav esitamine aitavad korrektse sessiooni jätkata, kuid lõpptulemus peab lõpuks serveris kontrolli läbima.
