Skip to main content
Множитель раунда Crash определяется до закрытия ставок и не может быть изменён позже. Бэкенд публикует в блокчейне хеш SHA-256 случайного секрета до открытия ставок, программа подмешивает хеш слота Solana при старте раунда, а секрет раскрывается при расчёте, чтобы любой мог пересчитать точку краша и проверить её. На этой странице описан точный механизм каждого раунда Crash: что фиксируется коммитом, когда исход становится определённым, точная формула и честные пределы схемы. Если вы ещё не читали обзор доказуемой честности, начните с него: там схема commit-reveal объяснена простыми словами.

Что происходит в блокчейне во время раунда Crash?

Каждый раунд Crash складывается из трёх транзакций в блокчейне, в таком порядке:
  1. Коммит: до открытия ставок бэкенд генерирует случайный 32-байтовый секрет и публикует в блокчейне его хеш SHA-256 (инструкция start_new_round). Это и есть коммит: с этого момента рассчитать раунд может только этот самый секрет. Коммит публично виден в событии CrashRoundPrepared этой транзакции.
  2. Ставки: игроки делают ставки. Секрет остаётся скрытым; коммит гарантирует, что его нельзя подменить.
  3. Старт раунда / фиксация энтропии: когда раунд начинается (инструкция start_game), программа считывает самый свежий хеш слота из sysvar SlotHashes Solana и сохраняет его в раунде. В приложении это значение называется хешем блока раунда. Теперь точка краша полностью определена (это чистая функция от сохранённого хеша слота и зафиксированного секрета), но вычислить её пока не может никто, кто не знает секрета. Значение публично в событии CrashGameStarted.
  4. Раунд идёт: множитель растёт, игроки забирают выигрыш.
  5. Раскрытие: бэкенд передаёт секрет (инструкция crash). Программа проверяет в блокчейне, что sha256(secret) равен коммиту (при несовпадении транзакция не проходит), затем сама вычисляет точку краша и завершает раунд. Событие CrashRoundFinalized публикует секрет, хеш слота и итоговую точку краша.

Какова точная формула точки краша?

Точка краша вычисляется ровно так (это та самая арифметика, которую выполняет программа в блокчейне: целочисленные вычисления, без сюрпризов с округлением):
На что обратить внимание при пересчёте:
  • Порядок конкатенации: сначала blockhash, затем secret.
  • X читается в порядке big-endian из первых 4 байт результата SHA-256.
  • Все деления — целочисленные (с округлением вниз).
  • Нижняя граница max(10000, …) означает, что множитель никогда не бывает ниже 1.00x, а ограничение X не даёт знаменателю стать астрономически малым.

Пример расчёта

При X = 0xABCD1234 (2,882,343,476) и текущем преимуществе 1.5% (edge_bps = 150):

Как выглядит распределение

Формула превращает равномерно распределённый X в классическую кривую краша. Вероятность того, что раунд достигнет множителя не меньше m, примерно равна:
При текущем преимуществе 1.5%: около 49.25% раундов доходят до 2.00x, около 9.85% — до 10x, а около 1.5% раундов крашатся сразу на 1.00x (именно здесь и заложено преимущество казино). Для каждого раунда применяется значение, настроенное в блокчейне на момент раскрытия; текущее значение указано в разделе Комиссии и лимиты.

Что гарантируется, а что нет

Обеспечивается программой:
  • После того как коммит попал в блокчейн, оператор не может изменить секрет раунда: транзакция раскрытия отклоняется для любого секрета, хеш которого не совпадает.
  • Как только раунд стартовал (хеш слота сохранён), точка краша зафиксирована. Ранний кешаут, поздний или массовый ничего не меняют: исход был определён до того, как множитель начал расти.
  • Точку краша вычисляет программа, а не сообщает бэкенд. Неверное значение невозможно записать в блокчейн.
  • Всё необходимое для проверки (коммит, хеш слота, секрет, итоговая точка краша) навсегда публикуется в событиях блокчейна.
Честные оговорки (это commit-reveal, а не VRF):
  • Момент старта. Оператор знает секрет до старта раунда, и его бэкенд решает, когда отправить транзакцию старта. Поскольку недавние хеши слотов публичны, он теоретически мог бы заранее вычислить будущий множитель для слотов-кандидатов и подгадать старт, чтобы повлиять на то, какой хеш слота будет зафиксирован. Схема этому не препятствует, но делает это заметным: время старта раунда публично, и любой систематический перекос проявился бы в статистике опубликованных точек краша, которые любой может массово пересчитать.
  • Отмены. После старта раунда оператор знает исход раньше игроков и мог бы отменить невыгодный раунд вместо раскрытия. Здесь действуют два жёстких ограничения: отмена полностью возвращает каждую ставку (у программы нет способа конфискации), и каждая отмена порождает публичное событие; частота отмен — это и есть видимый в блокчейне признак. Отмена существует как способ восстановления при потере секрета (например, если бэкенд упал между коммитом и раскрытием) и, как ожидается, практически никогда не используется.

Как проверить раунд Crash?

В деталях каждого завершённого раунда в приложении показаны раскрытый секрет и хеш блока, а также ссылки на все три транзакции и инструмент проверки честности, который пересчитает множитель за вас. Полная пошаговая инструкция, включая небольшой скрипт для самостоятельного пересчёта точки краша, — в статье Проверка раунда. Как играть в саму игру (кешаут, окна ставок, лимиты) — в руководстве по Crash.