Uczciwe kości, uczciwa gra

Każdy gracz w backgammona, który przegrał przez dublet w ostatnim rzucie, zadał sobie to pytanie: czy te kości są uczciwe? To właściwe pytanie, które warto zadać każdej aplikacji do backgammona. Oto dokładnie, jak generowane są nasze kości, dlaczego nikt, łącznie z nami, nie może nimi manipulować, i jak reszta gry również pozostaje uczciwa.

Sprawdź dowolną zakończoną grę samodzielnie

Słowa są tanie, więc oto ta część, którą możesz uruchomić samodzielnie. Gdy partia się kończy, ujawniamy jej ziarno serwera, zobowiązanie opublikowane przed pierwszym rzutem oraz każde ogniwo, które obie strony opublikowały w trakcie gry. Wklej pakiet ujawnienia poniżej albo odszukaj partię po jej identyfikatorze: ta strona wyprowadza na nowo każdą kostkę z tego zapisu, dokładnie tym samym obliczeniem, które wykonały nasze serwery, i pokazuje rzut po rzucie, czy zapisane wartości się zgadzają. Nic z tego nie wymaga wiary w nasze słowo: rachunek jest jawny i każdy może go powtórzyć. Jedyne, czego ta strona świadomie nie robi, to przyznanie zielonej pieczątki „dowodliwie uczciwe”, bo uczciwie by na nią nie zasłużyła. Nigdy nie widzi wartości, które twoje własne urządzenie zapisało i zamknęło przed pierwszym rzutem, a zapis, w którym cały łańcuch podmieniono na staranną podróbkę, wyprowadza się tutaj równie bezbłędnie. Wyklucza to dopiero porównanie bajt po bajcie z tym, co zapisało twoje urządzenie, a te wartości ma tylko twoja aplikacja. Dlatego uczciwym sufitem tej strony jest „spójne”, a najmocniejszy werdykt daje ekran „Zweryfikuj” w aplikacji.

Pakiet ujawnia tylko dane dotyczące uczciwości: ziarna, zobowiązanie, wartości nonce i kości. Nie ma w nim żadnych nazw graczy ani kont.

lub

Sprawdzamy tylko pola uczciwości tej gry, nigdy tożsamości gracza.

Gdy link „Zweryfikuj” w aplikacji otwiera tę stronę, przynosi zobowiązanie ze sobą, żeby dało się je zestawić z tym z zapisu. Wyniku poniżej nie zmienia: kopia zamknięta przed pierwszym rzutem jest tylko na twoim urządzeniu, a porównanie z nią wykonuje weryfikacja w aplikacji.

Ziarno klienta zapisane przez twoją aplikację na początku gry, przeniesione tutaj, żeby dało się je zestawić z ziarnami z zapisu. Podobnie jak zobowiązanie nie zmienia wyniku poniżej: zamknięta kopia jest tylko na twoim urządzeniu, a dopasowanie do niej należy do weryfikacji w aplikacji.

Kości: dowodliwie uczciwe, rzucane na serwerze

Każdy rzut w zakończonej partii online powstaje na naszych serwerach gry i jest dowodliwie uczciwy, przy czym nie musisz wierzyć nam na słowo. Przed pierwszym rzutem publikujemy zobowiązanie do tajnego ziarna, z którego wyjdą kości, a aplikacje obu graczy zobowiązują się każda do własnego łańcucha; wszystko to zostaje zamrożone w jednym zapisie, zanim ktokolwiek rzuci. Potem każdy rzut zużywa po jednym świeżym ogniwie z łańcucha każdej strony: gracz, którego jest kolej, publikuje swoje na początku tury, przeciwnik zwalnia swoje dopiero wtedy, gdy tamto zostanie zamknięte, a kostka wyprowadzana jest na końcu. Ostatnie nieznane wejście każdej kostki leży więc zawsze po drugiej stronie planszy. Kostki otwarcia nie są wyjątkiem: żadna z nich nie istnieje, dopóki obie strony nie wniosą swojego udziału. Każda kostka jest zatem deterministycznym wynikiem wartości zobowiązanych z góry: nikt, my również, nie może wybrać kostki, podmienić jej na inną ani po cichu przerzucić. To twierdzenie dotyczy wartości rzutu, który już zapadł, i na tym się kończy: to, czy partia zostanie przerwana, czy wiadomość dotrze i komu skończył się czas, leży poza nim. Narzędzie powyżej wyprowadza na nowo każdą kostkę zakończonej gry z opublikowanego zapisu, a ten rachunek może powtórzyć każdy. Czego nie potrafi, to potwierdzić, że zapis to twoja partia: do tego trzeba wartości, które twoje urządzenie zamknęło przed grą, a ma je tylko twoja aplikacja, więc ten ostatni krok wykonuje się na ekranie „Zweryfikuj” w aplikacji.

Równie ważne jest to, gdzie odbywa się rzut. Kości nigdy nie są generowane na twoim urządzeniu, twój telefon jedynie wyświetla rzut, który serwer już wykonał. Ta jedna decyzja projektowa eliminuje całą rodzinę oszustw z kośćmi: zmodyfikowana aplikacja nie przerzuci kości, skok opóźnienia nie zduplikuje rzutu, a żadna sztuczka po stronie klienta nie podejrzy następnej liczby, ponieważ następnej liczby nie ma na twoim telefonie do odczytania: jest wyprowadzana na serwerze, i dopiero gdy obie strony zwolnią swoje ogniwo na tę turę.

A rzuty nigdy nie są korygowane. Nie ma żadnej „krzywej zaangażowania”, żadnej mechaniki powrotu, żadnego wsparcia dla graczy na serii porażek. Generator ani nie wie, ani nie dba o to, kto wygrywa.

Plansza: weryfikowana przy każdym ruchu

Uczciwe kości niewiele by znaczyły, gdyby sama plansza mogła się zmieniać lub zostać naruszona, dlatego gra działa w rygorystycznym modelu autorytetu serwera. Twoje urządzenie nigdy nie mówi serwerowi, jak wygląda plansza, wysyła tylko twój zamiar („przesuń ten pionek z pola 13 na pole 8”). Serwer sprawdza ten ruch według oficjalnych zasad i oficjalnej planszy; niedozwolone ruchy są po prostu odrzucane, niezależnie od tego, co twierdzi zmodyfikowany klient.

Potem następuje podwójne sprawdzenie: przy każdej aktualizacji stanu serwer rozsyła zwięzły odcisk (hash) prawdziwej pozycji na planszy. Twoje urządzenie oblicza ten sam odcisk ze swojej lokalnej planszy i porównuje. Jeśli różni się choćby jeden pionek, klient odrzuca swoją kopię i ponownie synchronizuje się z serwerem. Dzięki temu obaj gracze w każdej chwili w sposób dowodliwy patrzą na tę samą grę, rozsynchronizowania same się leczą w jednym cyklu, i nie ma okna, w którym można by grać na nieaktualnej lub zmanipulowanej planszy.

Przeciwnicy: dobieranie w systemie Glicko-2

Uczciwość dotyczy też tego, z kim grasz. Rankingi korzystają tutaj z Glicko-2, nowoczesnego następcy Elo, który śledzi zarówno twoją siłę gry, jak i pewność systemu co do tej oceny, więc nowi gracze szybko zbliżają się do swojego prawdziwego poziomu, zamiast przez pięćdziesiąt gier być stopniami dla innych. Dobieranie łączy cię z przeciwnikami o zbliżonym rankingu, a wyniki rankingowe wracają do systemu po każdej grze.

Efekt: gdy wygrywasz, przechytrzyłeś równego sobie. Gdy przegrywasz, jest coś realnego do nauczenia się, zwykle w poradnikach strategicznych.

Jak naprawdę odczuwa się uczciwe kości

Oto niewygodna prawda: naprawdę losowe kości sprawiają wrażenie bardziej seryjnych, niż większość ludzi się spodziewa. Prawdziwa losowość daje cztery dublety z rzędu, tańce wejścia na planszę z jednym zajętym punktem i cuda w ostatnim rzucie, dokładnie z częstotliwościami, które przewiduje rachunek prawdopodobieństwa. Rzut o szansie 17/36 chybia dwa razy z rzędu częściej niż w jednej czwartej przypadków. Pamięć zachowuje skandale i odrzuca rutynę, dlatego każdy doświadczony gracz online ma swoją historię o „ustawionych kościach”, a żaden audyt statystyczny nigdy jej tutaj nie potwierdził.

Jeśli chcesz skalibrować swoje instynkty, poradnik podstaw prawdopodobieństwa przedstawia prawdziwe liczby: 36 kombinacji, szanse trafienia na każdym dystansie, szanse wejścia z bandy. Świadomość, że dowolna konkretna liczba pojawia się 11 razy na 36, zamienia „niemożliwego pecha” we „wtorek”.

Chcesz głębszej wersji technicznej, klas generatorów, tego jak działa dowód typu commit-reveal i psychologii „ustawionych” serii? Znajdziesz to na blogu: jak naprawdę działa RNG po stronie serwera.

Nasze zobowiązanie

  • Kości generowane na serwerze, dowodliwie uczciwe: nigdy nie są rzucane na urządzeniu, nigdy nie są dopasowywane do gracza ani sytuacji i wyprowadza się je z danych, do których obie strony zobowiązują się przed pierwszym rzutem; po zakończeniu gry każdą kostkę można wyprowadzić na nowo z opublikowanego zapisu, a aplikacja potwierdza, że partia była twoja.
  • Egzekwowanie zasad u źródła: każdy ruch weryfikowany przez serwer; zmodyfikowani klienci nic nie zyskują.
  • Ciągła weryfikacja planszy: sprawdzana hashem przy każdej aktualizacji, samonaprawiająca się przy każdej niezgodności.
  • Dobieranie oparte na umiejętnościach: rankingi Glicko-2 i dobieranie według rankingu.

Uczciwe kości oznaczają, że jedyną przewagą, jaka zostaje przy stole, jest umiejętność, a umiejętności można się nauczyć. Zacznij od zasad, wyostrz je strategią i przetestuj na żywo: stół poniżej jest darmowy, w twojej przeglądarce, bez instalacji.

Najczęściej zadawane pytania

Czy kości w tryktraku online są ustawione?

Nie, i nie musisz wierzyć nam na słowo. W zakończonej partii online każdy rzut pochodzi z danych zobowiązanych przed grą: publikujemy zobowiązanie do naszego tajnego ziarna, aplikacje obu graczy zobowiązują się każda do własnego łańcucha, a potem każdy rzut zużywa po jednym świeżym ogniwie z obu stron; ten, którego jest kolej, publikuje pierwszy, a przeciwnik zwalnia swoje dopiero wtedy, gdy tamto zostanie zamknięte. Żadna kostka nie istnieje, dopóki obie strony nie wniosą swojego udziału, więc nikt, my również, nie może wybrać kostki, podmienić jej ani po cichu przerzucić; dotyczy to wartości rzutu, który już zapadł, i nic ponadto: przerwana partia, wiadomość, która nie dotarła, i to, komu skończył się czas, leżą poza tym dowodem. Każdy może wyprowadzić na nowo każdy rzut zakończonej gry z opublikowanego zapisu na tej stronie, a potwierdzenie, że ten zapis to twoja własna partia, należy do aplikacji, która ma wartości zamknięte przez twoje urządzenie przed grą. Kości nigdy nie powstają w twoim telefonie i nigdy nie są dopasowywane, by pomóc graczowi lub mu zaszkodzić, sterować partiami czy wpływać na wyniki.

Dlaczego wydaje mi się, że dostaję gorsze kości niż przeciwnik?

Ponieważ ludzka pamięć jest stronnicza: bolesne trafienia się pamięta, zwykłe rzuty zapomina. W jednej partii szczęście w kościach naprawdę się waha, taki jest tryktrak. W wielu partiach wyrównuje się jednak dokładnie, a ci, którzy wygrywają konsekwentnie, to ci, którzy przy tym samym rozkładzie rzutów podejmują lepsze decyzje. Nasz przewodnik po prawdopodobieństwach pokazuje, jak wyglądają prawdziwe szanse.

Czy mój przeciwnik może oszukiwać lub manipulować planszą?

Nie. Serwer jest jedyną władzą w partii: to on generuje kości, sprawdza, czy każdy próbowany ruch jest zgodny z zasadami, i nanosi go na oficjalną planszę. Zmodyfikowany klient nie może wysłać niedozwolonego ruchu, serwer po prostu odrzuca wszystko, na co zasady nie pozwalają, a plansze obu graczy są przy każdej aktualizacji nieustannie weryfikowane względem planszy serwera za pomocą skrótu kryptograficznego.

Jak dobór graczy pozostaje uczciwy?

Rankingi korzystają z systemu Glicko-2, nowoczesnego udoskonalenia Elo, które śledzi nie tylko Twoją siłę, ale i to, jak bardzo system jest jej pewny. Dobór graczy łączy Cię z przeciwnikami o porównywalnym rankingu, aby zwycięstwa brały się z pokonywania równych sobie, a nie z żerowania na nowicjuszach.

Zastosuj wiedzę w praktyce

Najszybszym sposobem na naukę tryktraka jest granie. Zmierz się z prawdziwymi graczami prosto w przeglądarce: za darmo, bez instalacji i bez rejestracji.

Zagraj w tryktraka za darmoW przeglądarce · bez instalacji