Перейти к основному содержимому
Tooletto

Бросок кубиков

Бросайте любое количество кубиков с любым числом граней — от стандартного d6 до d20 для настольных игр. Каждый бросок использует криптографически стойкую случайность вместо Math.random и показывает как сумму, так и результат каждого отдельного кубика.

  • Файлы никогда не покидают ваше устройство
  • Бесплатно, без регистрации
  • Без водяных знаков
  • Работает офлайн после загрузки
Loading tool…

Как пользоваться: бросок кубиков

  1. 1

    Выберите кубик

    Укажите количество граней — d4, d6, d8, d10, d12, d20 или d100.

  2. 2

    Выберите количество

    Бросьте один кубик или сразу несколько.

  3. 3

    Бросьте кубики

    Увидите результат каждого кубика и общую сумму.

Почему для броска кубиков нужна настоящая криптографическая случайность, а не Math.random

Встроенный в JavaScript `Math.random` — это псевдослучайный генератор, настроенный на скорость и статистический разброс для таких задач, как анимации или перемешивание списка в интерфейсе, а не на противостояние злоумышленнику, который хочет предсказать или восстановить его выходные значения, и в некоторых движках его внутреннее состояние можно частично вычислить по горстке наблюдаемых значений. `crypto.getRandomValues` — API, которое вместо этого использует данный инструмент, — берёт значения из криптографического источника случайности операционной системы, того же самого, что используется для генерации ключей шифрования, и специально построен и проверен на устойчивость именно к такому предсказанию. Для обычного броска кубика практическая разница редко имеет значение, но для всего, что используется, чтобы решить исход реальной ставки, — пари, соревновательной игры, решения с последствиями — по-настоящему непредвзятый и непредсказуемый источник является честным минимумом, а не излишним усложнением.

Почему каждую грань определяет отбраковка, а не простое деление по модулю

Преобразование случайного целого числа в «одну из N граней» через вычисление остатка от деления на N вносит незаметное смещение, если N не делит ровно тот диапазон, из которого было получено случайное число, — в частности, d20 не делит ровно примерно 4,29 миллиарда значений, которые может принимать 32-битное случайное целое число, поэтому наивное деление по модулю сделало бы некоторые грани выпадающими чуть чаще других. Вместо этого инструмент вытягивает случайное значение и, если оно попадает в тот небольшой неравномерно распределённый остаток, отбрасывает его и вытягивает заново, повторяя это до тех пор, пока значение не попадёт в равномерно делимую часть диапазона, — тот же подход с отбраковкой, что используют колесо решений и подбрасывание монетки на этом сайте, поэтому каждая грань каждого поддерживаемого кубика имеет вероятность выпадения, равную остальным не приблизительно, а абсолютно точно.

Как читать настольную запись бросков кубиков

Настольные игры описывают бросок в компактной записи — «2d6» означает бросить два шестигранных кубика и сложить их результаты, «1d20+5» означает бросить один двадцатигранный кубик и прибавить к результату фиксированные 5, а само название кубика (d4, d6, d8, d10, d12, d20, d100) указывает на число его граней. Разные кубики изначально служат разным целям: d20 — стандарт для разрешения действий с широким диапазоном возможных исходов в играх вроде Dungeons & Dragons, d6 обычно используется для бросков урона и простых вероятностных вопросов, а d100 (или два d10, читаемые как десятки и единицы) применяется, когда игре нужен бросок, выраженный напрямую в процентах. Бросок нескольких кубиков одного типа с подсчётом суммы — что этот инструмент поддерживает, если задать количество больше одного, — это то, как за столом фактически разрешается почти каждый бросок урона и проверка навыка.

Почему физические кубики не всегда так честны, как кажутся

Кубик по-настоящему честен лишь тогда, когда его центр масс находится точно в геометрическом центре, а у каждой грани одинаковый шанс оказаться сверху, и недорогие кубики массового производства нередко не дотягивают до этого — небольшими, но измеримыми способами: высверленные в пластике точки убирают больше материала с граней с большими числами, чем с граней с маленькими, если производитель это не компенсирует, литьевые швы и скруглённые углы редко бывают идеально симметричными, а постоянное использование неравномерно стачивает отдельные рёбра. Именно поэтому серьёзные настольщики-соревнователи и казино иногда используют кубики с лазерной гравировкой вместо высверленных точек, прецизионно обработанные для устранения швов и индивидуально проверенные на баланс веса — уровень производственного контроля, который стоит дорого именно потому, что добиться подлинной честности физического объекта сложнее, чем кажется. Криптографически случайный цифровой бросок полностью обходит весь вопрос производства, поскольку там нет физической формы, распределение массы которой могло бы быть неравномерным.

Часто задаваемые вопросы

Это действительно случайно?

Да. Каждый кубик использует `crypto.getRandomValues` вместе с отбраковкой (rejection sampling), поэтому ни одна грань кубика не является даже на долю процента более вероятной, чем другая, — это настоящая гарантия честности, а не небольшое смещение, которое внёс бы наивный подход с делением случайного числа по модулю.

Почему бросок d20 так важен для настольных игр?

Такие игры, как Dungeons & Dragons, разрешают большинство действий броском двадцатигранного кубика и сравнением результата с целевым числом, поэтому честность d20 критически важна для того, чтобы игра работала так, как задумано, — кубик со смещением в сторону высоких или низких значений незаметно сделает персонажей сильнее или слабее, чем предполагают правила.

Можно ли бросить несколько кубиков и получить сумму?

Да — установите количество больше одного, и инструмент покажет результат каждого кубика по отдельности, а также сумму. Именно так работает настольная запись вроде «2d6» (бросить два шестигранных кубика и сложить результаты) или «3d6+2».

А физические кубики действительно честны?

Не всегда. У недорогих кубиков могут быть измеримые производственные асимметрии — скруглённые рёбра, смещённые от центра высверленные точки или неровные литьевые швы, — которые заставляют определённые грани выпадать чуть чаще остальных. Именно поэтому серьёзные настольщики и игроки казино иногда платят за прецизионно изготовленные кубики «казино-класса». У криптографически случайного виртуального броска изначально нет физической формы, которая могла бы быть асимметричной.

Частые задачи: бросок кубиков