Uczciwa gra (Provably Fair)

3-102-969694 SOCIEDAD DE RESPONSABILIDAD LIMITADA. PROVINCIA 01 SAN JOSE, CANTON 01 SAN JOSE, DISTRITO CARMEN, BARRIO ESCALANTE, AVENIDA SIETE, CALLE VEINTINUEVE, EDIFICIO DOS MIL NOVECIENTOS DIEZ, CENTRO CORPORATIVO AG

SkrzynieUlepszenie
Ekwipunek

Uczciwa gra

SpyDota korzysta z algorytmu Provably Fair, aby każdy gracz mógł sprawdzić uczciwość gry. Wynik skrzyni lub ulepszenia zależy od ustalonego wcześniej seeda serwera, Twojego seeda klienta i numeru gry, więc nie da się go zmanipulować po rozpoczęciu gry.

Jak sprawdzić swoją grę

Seed serwera to tajna wartość, z której liczony jest wynik gry. Aby przeliczyć grę, seed trzeba ujawnić — karta gry zrobi to za Ciebie.

  1. Historia
    SkinSkrzynia
    Night Terrors HatShadow Shaman
    Belt of the Forlorn MazeShadow Shaman

    Otwórz historię

    Kliknij swój awatar w nagłówku, otwórz kartę „Historia” i wybierz „Skrzynie” lub „Ulepszenia”.

  2. Data
    22 października 2026 11:32
    22 października 2026 11:32
    22 października 2026 11:32

    Kliknij „Sprawdź”

    Przycisk jest na końcu wiersza gry (na telefonie przewiń tabelę w prawo). W otwartej karcie kliknij „Sprawdź” jeszcze raz.

  3. Gra nr 2 w parze seedów
    Wylosowana liczba37 847 706 z 100 000 000

    Aby sprawdzić grę, trzeba ujawnić seed serwera. Utworzymy nową parę seedów: obecny seed zostanie ujawniony i od razu wstawiony do sprawdzenia, a numery gier zaczną się od nowa.

    Ujawnij seed

    Jeśli seed jest jeszcze tajny, karta zaproponuje „Zmień seedy i sprawdź”. Stary seed zostanie ujawniony — potem można sprawdzić wszystkie gry z nim rozegrane. Nowe gry liczą się od 1, rozegrane się nie zmienią. Jeśli seed jest już ujawniony, tego kroku nie będzie.

  4. Zgadza się

    Przeglądarka przeliczyła grę z ujawnionego seeda, a wynik zgadza się z zapisem serwera.

    Wylosowana liczba37 847 706
    • Belt of the Forlorn MazeBelt of the Forlorn Maze29 376 71035 693 291
    • Night Terrors HatNight Terrors Hatwypadł35 693 29241 180 434
    • Censer of GlissCenser of Gliss41 180 43547 096 768
    Szczegóły obliczenia
    Wiadomośćcase:dota2:e784b35edb9c33afec77526dac3faa49:2
    HMAC-SHA25660e3df4be0729100…0cc8
    Liczba z hasha1 625 546 571
    sha256 seeda serweraa6d071c29474dfc7…b787

    Porównaj wynik

    Otworzy się strona sprawdzenia. „Zgadza się” oznacza, że Twoja przeglądarka przeliczyła grę i otrzymała to samo, co zapisał serwer. Przedmiot oznaczony jako „wypadł” porównaj z wierszem w historii, a przy ulepszeniu — „Wygrana” lub „Przegrana”.

Przycisku „Sprawdź” nie mają gry rozegrane przed uruchomieniem Provably Fair, prezenty i przydziały. Jeśli przedmiot wymieniono, sprawdzenie dotyczy pierwotnego dropu. Widzisz „Nie zgadza się” — zapisz seed serwera i napisz do wsparcia.

Wynik jest ustalony z góry

Przed grą widzisz hash seeda serwera, więc serwer nie może już niezauważenie podmienić danych wejściowych.

Twoje dane biorą udział w obliczeniu

Twój seed i numer gry biorą udział w obliczeniu, więc wyniku nie tworzy sam serwer.

Dane gry

Wpisz dane gry. Obliczenia odbywają się w Twojej przeglądarce, na serwer nic nie jest wysyłane.

Tablica wierszy z polami itemId, start, end, name i phase (faza CS2 lub null). Skopiuj ją z karty gry.

Wynik sprawdzenia

Wpisz dane gry i naciśnij „Sprawdź” — tutaj pojawi się wylosowana liczba i przedmiot.

Jak powstaje wynik

Seed serwera + Twój seed + Numer gry = Uczciwy wynik

Jak liczony jest wynik

  1. Zobowiązanie serwera

    Serwer wybiera losowy seed serwera i pokazuje tylko jego hash SHA-256. Później nie można go podmienić: hash przestałby się zgadzać.

  2. Hash gry

    Dla każdej gry liczony jest HMAC-SHA256. Kluczem jest seed serwera jako 64-znakowy ciąg hex, dokładnie taki, jaki jest, bez dekodowania na bajty. Wiadomość składa się z rodzaju gry, gry, Twojego seeda klienta i numeru gry.

  3. Bilet

    Pierwsze 8 znaków hex hasha daje liczbę od 0 do 4 294 967 295. Z niej powstaje bilet od 1 do 100 000 000: floor(liczba × 100 000 000 / 2^32) + 1.

  4. Skrzynia

    W tabeli szans z momentu gry każdy przedmiot ma własny zakres biletów. Wypada przedmiot, w którego zakres trafił bilet.

  5. Ulepszenie

    Próg to floor(szansa × 100 000 000). Ulepszenie wygrywa, jeśli bilet nie jest większy od progu.

  6. Ujawnienie

    Seed serwera jest ujawniany, gdy zmieniasz seedy. Potem każdą grę pary można przeliczyć w przeglądarce na tej stronie albo własnym kodem.

Wzór

Wiadomość
kind:game:clientSeed:nonce
Klucz HMAC
HMAC-SHA256(serverSeed, message)

Kluczem jest ciąg hex seeda serwera taki, jaki jest (64 znaki), a nie zdekodowane z niego bajty. Tu najczęściej mylą się przy samodzielnej weryfikacji.