Zaruri corecte, joc corect
Fiecare jucător de table care a pierdut la o dublă în ultima aruncare s-a întrebat: sunt aceste zaruri corecte? Este întrebarea potrivită pentru orice aplicație de table. Iată exact cum sunt generate zarurile noastre, de ce nimeni, inclusiv noi, nu le poate înclina, și cum este ținut cinstit și restul jocului.
Verifică singur orice joc încheiat
Vorbele sunt ieftine, așa că iată dovada pe care o poți rula chiar tu. Când o partidă se termină, dezvăluim sămânța serverului și angajamentul pe care le-am publicat înainte de prima aruncare. Lipește pachetul de dezvăluire mai jos, iar această pagină redetermină de la zero fiecare zar în parte, exact același calcul pe care l-au făcut serverele noastre, și îți spune dacă zarurile se potrivesc. Reface deschis matematica zarurilor noastre: o redeterminare curată dovedește că fiecare zar decurge din sămânța dezvăluită, deci nicio aruncare nu a fost schimbată sau reluată. Pentru rezultatul verde complet „demonstrabil corect”, adaugă sămânța clientului pe care aplicația ta a înregistrat-o la începutul jocului: asta dovedește că a fost amestecată propria ta entropie, deci zarurile nu ar fi putut fi nici alese dinainte.
Zarurile: demonstrabil corecte, aruncate pe server
Fiecare aruncare din fiecare joc este produsă de un generator de numere aleatoare care rulează pe serverele noastre de joc și este demonstrabil corectă. Înainte de prima aruncare publicăm un angajament, o amprentă criptografică a sămânței secrete din care vor proveni zarurile. Când partida se termină, dezvăluim acea sămânță, iar oricine poate redetermina din ea fiecare zar în parte și îl poate compara cu angajamentul pe care l-am blocat dinainte. Nu ne crede pe cuvânt, verifică singur: instrumentul de mai sus face exact asta. Fiindcă este amestecată și propria ta sămânță de client, zarurile nu pot fi alese, schimbate sau reluate de nimeni, nici de noi.
La fel de important este unde are loc aruncarea. Zarurile nu sunt niciodată generate pe dispozitivul tău, telefonul tău doar afișează o aruncare pe care serverul a făcut-o deja. Această singură decizie de proiectare elimină întreaga familie de trișări la zaruri: o aplicație modificată nu poate arunca din nou, un vârf de întârziere nu poate dubla o aruncare, și niciun truc din partea clientului nu poate trage cu ochiul la următorul număr, fiindcă următorul număr nu există nicăieri până când serverul nu îl creează.
Iar aruncările nu sunt niciodată ajustate. Nu există nicio „curbă de implicare”, nicio mecanică de revenire, niciun avantaj pentru jucătorii aflați pe o serie de înfrângeri. Generatorul nici nu știe, nici nu îi pasă cine câștigă.
Tabla: verificată la fiecare mutare
Zarurile corecte ar însemna puțin dacă tabla însăși ar putea aluneca sau ar putea fi alterată, așa că jocul rulează pe un model strict de autoritate a serverului. Dispozitivul tău nu-i spune niciodată serverului cum arată tabla, trimite doar intenția ta („mută această piesă de pe punctul 13 pe punctul 8”). Serverul verifică acea mutare față de regulile oficiale și tabla oficială; mutările nepermise sunt pur și simplu respinse, indiferent ce pretinde un client modificat.
Apoi vine dubla verificare: la fiecare actualizare de stare, serverul difuzează o amprentă compactă (hash) a poziției reale de pe tablă. Dispozitivul tău calculează aceeași amprentă din tabla sa locală și compară. Dacă diferă chiar și o singură piesă, clientul își aruncă propria copie și se resincronizează de la server. Astfel, ambii jucători privesc în orice moment, în mod demonstrabil, același joc, desincronizările se vindecă singure într-un singur schimb, și nu există nicio fereastră în care să se poată juca pe o tablă învechită sau manipulată.
Adversarii: potrivire Glicko-2
Corectitudinea ține și de cine înfrunți. Clasamentele folosesc aici Glicko-2, un succesor modern al lui Elo care urmărește atât forța ta de joc, cât și încrederea sistemului în această estimare, așa că jucătorii noi converg rapid către nivelul lor real, în loc să petreacă cincizeci de jocuri fiind trepte pentru alții. Potrivirea te împerechează cu adversari de clasament comparabil, iar rezultatele clasate se întorc în sistem după fiecare joc.
Rezultatul: când câștigi, ai depășit un egal. Când pierzi, este ceva real de învățat, de obicei în ghidurile de strategie.
Cum se simt de fapt zarurile corecte
Iată adevărul incomod: zarurile cu adevărat aleatoare par mai pline de serii decât se așteaptă majoritatea. Aleatorietatea reală produce patru duble la rând, dansuri de intrare împotriva unei table cu un singur punct și miracole în ultima aruncare, exact la frecvențele pe care le prezice probabilitatea. O aruncare cu șansă de 17/36 ratează de două ori la rând mai des decât într-un sfert din cazuri. Memoria păstrează scandalurile și aruncă rutina, de aceea fiecare jucător online experimentat are o poveste cu „zaruri trucate”, iar niciun audit statistic nu a confirmat vreodată una aici.
Dacă vrei să-ți calibrezi instinctele, ghidul de bazele probabilității așază numerele reale: 36 de combinații, șansele de lovire la fiecare distanță, șansele de intrare de la bară. A ști că orice număr anume apare de 11 ori din 36 transformă „ghinionul imposibil” în „o zi de marți”.
Vrei versiunea tehnică mai profundă, clasele de generatoare, cum funcționează dovada commit-reveal și psihologia seriilor „trucate”? Blogul o are: cum funcționează de fapt RNG-ul de pe server.
Angajamentul nostru
- Zaruri generate pe server, demonstrabil corecte: niciodată aruncate pe un dispozitiv, niciodată ajustate pentru vreun jucător sau vreo situație, și verificabile de oricine odată ce jocul se termină.
- Aplicarea regulilor la sursă: fiecare mutare validată de server; clienții modificați nu câștigă nimic.
- Verificare continuă a tablei: verificată prin hash la fiecare actualizare, autovindecare la orice nepotrivire.
- Împerechere bazată pe pricepere: clasamente Glicko-2 și potrivire după clasament.
Zarurile corecte înseamnă că singurul avantaj rămas la masă este priceperea, iar priceperea se poate învăța. Începe cu regulile, ascute-o cu strategie și testeaz-o live: masa de mai jos este gratuită, în browserul tău, fără instalare.