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

Лутбоксы и рулетка

Лутбокс — товар со случайной выдачей. Игрок платит фиксированную цену и получает ОДИН случайный предмет из пула. Шанс каждого предмета определяется его весом.


Как это работает

  1. Владелец создаёт товар типа lootbox и указывает пул предметов
  2. У каждого предмета — вес (целое число, min 1, max 10 000)
  3. При покупке система случайно выбирает один предмет
  4. Шанс выпадения = вес предмета / сумма всех весов × 100%

Пример:

ПредметВесШанс
AK-47 (legendary)1010%
SAR (epic)3030%
Revolver (rare)6060%

Сумма весов = 100. AK-47 выпадает с вероятностью 10%.


Редкость (Rarity)

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

РедкостьЦветПример
commonСерыйБазовые ресурсы
uncommonЗелёныйИнструменты
rareСинийОружие
epicФиолетовыйРедкое оружие
legendaryЗолотойУникальные предметы

Настройка лутбокса

Показывать шансы (showOdds)

  • true (по умолчанию) — игрок видит проценты и полосу шансов на витрине
  • false — проценты скрыты, игрок не знает точные вероятности. Показывается только список возможных предметов

Анимация (animation)

Текущая версия поддерживает только spin (вращающаяся рулетка):

  1. Игрок нажимает «Открыть»
  2. Начинается анимация вращения — полоса предметов быстро прокручивается
  3. Через ~3 секунды анимация замедляется и останавливается
  4. Показывается результат: название, редкость, картинка

Защита от повторов (noRepeatStreak)

Если задано (например, noRepeatStreak: 3), система гарантирует что один и тот же предмет не выпадет 3 раза подряд.


Как игрок видит лутбокс

На витрине (ProductCard)

  • Название кейса + цена
  • Кнопка «Открыть» вместо «Купить»
  • Опционально: полоса шансов (OddsBar) с цветными сегментами

В quick-view (ProductQuickView)

  • Полное описание
  • Список возможных предметов с редкостью
  • Детальная таблица шансов (если showOdds: true)

В модалке рулетки (RouletteModal)

  • Полноэкранная анимация вращения
  • Звуковой эффект (в планах)
  • Результат с крупной иконкой и названием

Кулдаун лутбокса

Лутбоксы особенно важны с точки зрения кулдауна:

  • cooldownSeconds — если > 0, игрок не может открыть второй лутбокс раньше чем через N секунд
  • Это защищает от случайных повторных покупок (трясущаяся рука, двойной клик)
  • Рекомендуемое значение: 5-10 секунд для обычных кейсов, 30+ для редких

Лимиты и картинки

  • Минимум 2 предмета, максимум 50
  • Картинки предметов работают так же как в наборах
  • perPlayerLimit — ограничение на общее количество открытий

Следующие шаги

  • Товары — общий обзор каталога
  • Наборы — гарантированная выдача всех предметов