Чувствуете удачу? Кости-мини-игра Джекпот
Попадите на клетку Джекпот, чтобы сыграть в быструю ставку на кости — выберите несколько чисел, сделайте ставку и гонитесь за выигрышем, честным в среднем.

Простыми словами
Клетка Джекпот (поле 20) раньше ничего не делала — вы вставали на неё и просто завершали ход. Теперь она открывает быструю маленькую игру в кости, и сыграть или нет — решаете вы.
Выберите одно, два или три числа от 1 до 6, заплатите фиксированную ставку 1000 и бросьте один кубик. Если на кубике выпадет одно из ваших чисел — вы выиграли, и чем на меньшее число чисел вы ставите, тем крупнее выигрыш.
- Ставка на 1 число — попадание приносит выигрыш 6000.
- Ставка на 2 числа — попадание приносит выигрыш 3000.
- Ставка на 3 числа — попадание приносит выигрыш 2000.
- Не хочется? Откажитесь и завершите ход бесплатно — деньги списываются только когда вы крутите.
| Ваши числа | Ставка | Выигрыш при попадании | Шанс попадания |
|---|---|---|---|
| 1 число | 1000 | 6000 | 1 in 6 |
| 2 числа | 1000 | 3000 | 2 in 6 |
| 3 числа | 1000 | 2000 | 3 in 6 |
Мало денег? Окно всё равно откроется, чтобы вы увидели ставку, но крутить нельзя, пока вы не сможете покрыть ставку. Боты всегда пропускают, так что Джекпот — только ваше решение.
Для тех, кому интересны детали
Механика намеренно нейтральна по ожидаемой ценности (EV): для любого числа выборов k вероятность попадания равна k/6, а выигрыш — 6000/k, поэтому в долгосрочной перспективе изменение денег ровно нулевое.
// reduce.ts — bank-funded, fair on the distribution
const JACKPOT_STAKE = 1000;
const JACKPOT_PAYOUT = { 1: 6000, 2: 3000, 3: 2000 };
// EV per spin, for k = 1, 2, 3:
// (k / 6) * (6000 / k) - 1000 = 0Попадание на поле Джекпот теперь направляет в новую фазу pending_jackpot с двумя действиями: place_jackpot_bet (проверяет 1–3 различных числа, списывает ставку, бросает кубик и применяет итог) и skip_jackpot (без списания). Поскольку ставка гарантирует, что промах никогда не уйдёт в минус, путей оплаты или банкротства здесь нет.
Функция вышла без миграции базы данных. Фаза и ожидающее состояние живут в engine_state в формате JSON, действия не ограничены enum, а существующее событие jackpot_won переиспользуется для каждой завершённой ставки — выигрышной или проигрышной — различаясь по флагу won в полезной нагрузке.
