SpyDrop использует алгоритм Provably Fair, чтобы любой игрок мог проверить честность игры. Результат кейса или апгрейда определяется заранее зафиксированным серверным сидом, вашим client seed и номером игры, поэтому подтасовать его после начала игры нельзя.
До игры вы видите хеш серверного сида. Поэтому сервер уже не может незаметно подменить исходные данные.
Ваш сид и номер игры участвуют в расчёте, поэтому результат не формирует один сервер.
Подставьте данные игры. Расчёт идёт в вашем браузере, на сервер ничего не отправляется.
Подставьте данные игры и нажмите «Проверить» — здесь появится выпавшее число и предмет.
Серверный сид + Ваш сид + Номер игры = Честный результат
Сервер выбирает случайный серверный сид и показывает только его хеш SHA-256. Подменить сид после этого нельзя: хеш перестанет совпадать.
Для каждой игры считается HMAC-SHA256. Ключ — серверный сид в виде 64-символьной hex-строки как есть, без перевода в байты. Сообщение собирается из вида игры, игры, вашего client seed и номера игры.
Первые 8 hex-символов хеша дают число от 0 до 4 294 967 295. Из него получается тикет от 1 до 100 000 000: floor(число × 100 000 000 / 2^32) + 1.
У каждого предмета в таблице шансов на момент игры есть свой диапазон тикетов. Выпадает предмет, в чей диапазон попал тикет.
Порог равен floor(шанс × 100 000 000). Апгрейд выигрывает, если тикет не больше порога.
Серверный сид раскрывается, когда вы меняете сиды. После этого любую игру пары можно пересчитать в браузере на этой странице или своим кодом.
Ключ — это hex-строка серверного сида как есть (64 символа), а не декодированные из неё байты. Именно здесь чаще всего ошибаются при самостоятельной проверке.
Сыгранную игру можно проверить кнопкой «Проверить» в истории кейсов и апгрейдов.