Как играют в белот

Карты и их стоимость

Козырь

Другие масти

1Сдача и торговля

Если все спасовали, во втором круге каждый может назвать другую масть или спасовать. Сдающий говорит последним и, если все остальные спасовали, обязан выбрать.

2Розыгрыш взятки

Нужно ходить в масть. Если её нет, нужно бить козырем и перебить козырем, если можете, даже когда взятку берёт партнёр. Когда ходят козырем, нужно положить козырь старше, если он есть.

3Комбинации

4Подсчёт раздачи

Это правила столов сайта; в лобби указан регламент каждого стола.

5Турниры

Турнир проходит в одном из четырёх форматов, он указан под названием турнира. Каждый турнир задаёт свои числа, например очки за победу или время на тур: нажмите на формат на странице турнира, чтобы их увидеть.

Круговой

Каждый играет с каждым один раз.

  • Всё расписание составляется до 1-го тура и не меняется.
  • При нечётном числе игроков или команд каждый пропускает один тур, и он засчитывается ему как победа.
  • Партия без победителя считается ничьей.
  • Круговой турнир за одним столом на четверых может вместо этого менять партнёров: три тура, ваш партнёр меняется каждый тур, так что с каждым из остальных вы играете один раз в паре и дважды против него.

Кто побеждает. Побеждает тот, у кого больше очков. При равенстве решает их личная встреча, затем разница набранных и пропущенных очков.

Швейцарская

Заданное число туров. В каждом туре вы встречаетесь с тем, у кого столько же очков, сколько у вас, или как можно ближе.

  • Вы никогда не встречаетесь с одним и тем же соперником дважды.
  • При нечётном числе игроков или команд тур пропускает самый низкий в таблице из тех, кто ещё не пропускал, и тур засчитывается ему как победа. Никто не пропускает дважды.
  • Партия без победителя считается ничьей.

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

На выбывание

На выбывание: выиграли — идёте дальше, проиграли — выбываете.

  • Встреча — это одна партия или до двух побед из трёх: дальше проходит тот, кто первым выиграет две.
  • Если игроки или команды не заполняют сетку (4, 8, 16…), посеянные выше всех проходят 1-й тур без игры.
  • Встреча, закончившаяся вничью, переигрывается в том же туре. Финал, закончившийся вничью, достаётся тому, кто был посеян в сетке выше.

Кто побеждает. Тот, кто выиграет финал.

Лестница

В течение заданного числа дней каждая ваша рейтинговая партия приносит очки.

  • Туров нет: играйте из лобби рейтинговые партии в игру турнира, сколько хотите.
  • Победа, ничья и поражение приносят очки, заданные турниром. Выход из партии считается поражением; партия без победителя считается ничьей.
  • Если вы выйдете из турнира, набранное останется; партии после этого не засчитываются.

Кто побеждает. Побеждает наибольшая сумма. При равенстве выше тот, у кого выше рейтинг.

Во всех форматах с турами

  • За столом на четверых вы играете в команде из двух. Команды составляются при жеребьёвке 1-го тура и остаются вместе до конца.
  • Когда ваш стол откроется, займите место в течение 3 минут, иначе вы выбываете из турнира.
  • У каждого тура есть лимит времени. Партию, не решённую к этому сроку, проигрывают оба игрока или обе команды, если только одна из сторон не явилась вовсе: тогда проигрывает только она.
  • Выйти из турнира можно в любой момент: набранное останется, а в пары вас больше не поставят.

6Честная раздача

Карты, которые вам сдают, не выбирает никто, даже Belot Club. Каждую колоду образуют три входных значения, каждое фиксируется раньше, чем становится известно следующее, а после партии любой может проверить каждую раздачу.

Как получается колода

  1. Прежде чем кто-либо пришлёт сид, сервер выбирает секретный сид для партии и показывает столу его обязательство — SHA-256-хеш сида. Обязательство позже доказывает сид, не раскрывая его сейчас.
  2. Ваш браузер берёт 16 случайных байт на вашем устройстве и отправляет их как ваш сид — так же делает браузер каждого игрока. Когда они пришли, столу показывают сид каждого места. Место, за которое играет бот, сида не присылает.
  3. Затем сервер называет раунд drand — публичного маяка случайности, который поддерживают независимые организации и который каждые 3 секунды публикует новое случайное значение: первый раунд после того, как пришли сиды, его значения ещё никто не знает.
  4. Колода каждой раздачи тасуется из всех трёх значений вместе. Сервер не мог её выбрать, потому что сиды игроков и значение drand пришли после его сида; и никто из игроков не мог, потому что сид сервера никто не видит до конца партии.

Проверка партии

Ваш браузер хранит то, что показывает ему стол, и сам проверяет партию. Когда партия заканчивается, сервер показывает свой сид в чате стола: ваш браузер сверяет его с обязательством, а карты каждой вашей раздачи — с её колодой; для партии, разданной с drand, он сам запрашивает у drand значение раунда и сравнивает его с тем, из которого раздавал сервер. О неудачной проверке стол сообщает сразу. Повтор показывает все входные данные, пересчитывает каждую колоду и сравнивает их с тем, что сохранила вкладка, в которой вы играли, включая ваши карты. Раунд ведёт на собственную страницу drand, где можно сравнить его значение.

Если drand не отвечает

Если значение drand не пришло через 5 секунд после положенного времени, партия раздаётся только из сида сервера и сидов игроков. Стол узнаёт об этом сразу, и повтор об этом говорит.

Точный рецепт

Для тех, кто проверяет своей программой. Раздача k (первая раздача — 0, пересдача тоже считается) читает поток блоков; блок b — это HMAC-SHA256 с ключом из сида сервера над таким сообщением:

Точный рецепт
ЧастьБайты
Текст belot.club/deal/v118
Номер раздачи k, с 04, big-endian
Номер блока b, с 04, big-endian
Число игроков1
Для каждого места по порядку: длина его сида (0 или 16), затем сам сид1 + 0 или 16
Раунд drand, 0 без drand8, big-endian
Значение drand, нули без drand32

32 карты начинают по порядку: трефы, бубны, черви, пики, каждая масть от 7 до туза. Для каждой позиции i от 31 вниз до 1 возьмите следующий байт потока x; пока x ≥ 256 − (256 mod (i + 1)), берите следующий, чтобы все позиции были равновероятны; затем поменяйте местами позицию i и позицию x mod (i + 1). При колоде из 24 карт семёрки и восьмёрки затем откладываются, а остальные сохраняют свой порядок.