Как устроить лут: базовые и продвинутые таблицы дропа — Game Design Radar
← Вернуться к выпуску #18

Как устроить лут: базовые и продвинутые таблицы дропа

17.12.2025
Как устроить лут: базовые и продвинутые таблицы дропа

Статья систематизирует подходы к работе с таблицами лута и любыми вероятностными системами в играх.

Базовая таблица лута

Таблица лута — «ведро» предметов с весами выпадения. Каждый предмет (включая специальный null — «ничего не выпало») имеет вес 1–10 000. Для розыгрыша суммируются веса, каждому предмету задаётся диапазон, затем генерируется случайное число и выбирается попавший в диапазон предмет. Изменение весов прямо меняет шансы.

Многократный дроп — это просто несколько независимых бросков по той же таблице.

Связь с картами и кубиками

Тот же принцип можно мыслить как:

  • колоду карт: тип карты = предмет, количество карт = вес;
  • кубик: грани = предметы с равным весом; несколько кубиков = несколько бросков одной таблицы.

Вариации таблиц

Наборы предметов

Элемент таблицы может быть не одним предметом, а набором (например, щит + 2 зелья здоровья).

Обязательный дроп

Частая практика — предметы с весом -1, которые выпадают всегда (поверх остального розыгрыша).

Повторяемая случайность

Чтобы защититься от «сейв-скама» (перезагрузки ради лучшего лута), используют сид генератора случайных чисел: сохраняя сид, можно воспроизвести тот же результат.

Розыгрыш без возвращения

Проблема чистой случайности — игрок может очень долго не получить редкий предмет. Один из подходов — выбор «без замены»:

  • каждый раз при выпадении предмета его вес уменьшается на 1;
  • общий максимум диапазона тоже уменьшается;
  • модифицированная таблица хранится на игроке.

Так работает, например, Tetris: фигуры выбираются из «мешка» без повторения, пока он не опустеет.

Гарантированный редкий дроп

Если даже беззаменки недостаточно, можно гарантировать выпадение после N попыток (пример — редкие дропы у Blizzard):

  • задаём X = 100 / максимум бросков до гарантии;
  • каждый раз, когда не выпал гарантируемый предмет, уменьшаем веса всех остальных предметов на X%;
  • через заданное число бросков их вес станет 0, и целевой предмет будет иметь 100% шанс.

Иерархические таблицы

Для ограничения ресурсов используют вложенные таблицы без замены. Пример: ежедневная выдача монет. Основная таблица может вернуть «dailyCoins», которая ведёт к отдельной таблице с типами и количествами монет и флагом «noReplacement» + периодом обновления. Когда эта таблица опустеет (например, суммарно 100 монет в день), до следующего рефреша монеты больше не выдаются.

Условные дропы

В Realm of the Mad God (кооперативный онлайн-экшен с пермадетом) ценные предметы выдаются только игрокам, наносящим не менее X% урона боссу. Условные проверки можно использовать и по уровню игрока/врага, но автор предпочитает несколько небольших таблиц вместо одной сложной.

Модификаторы

Внешняя логика может менять количество или вес дропа: навык «сбор ресурсов» даёт x2 к количеству; высокий уровень персонажа может уменьшать вес лута ниже его уровня на 50% и т.п.

Другие применения

Таблицы лута удобны не только для добычи:

  • Процедурная генерация: сбор оружия, персонажей или врагов из компонент по таблицам.
  • AI: выбор атак/поведения через таблицу вероятностей как «первый грубый слой» модели.

Это «сферическая корова» геймдизайна: упрощённая, дёшевая модель, которая часто «достаточно хороша» для восприятия игрока. Автор приводит пример Dungeons & Dragons, где целые вселенные моделировались по сути через броски по таблицам.

Пример процедурной генерации врага

Подход:

  1. Составить списки частей врага (движение, атака, защита, сокровище) — каждая часть в своей таблице с «силой» (power).
  2. Создать таблицу баффов/дебаффов, которые модифицируют параметры и power.
  3. Задать целевую мощь (например, 40).
  4. Один раз бросить по каждой таблице частей, посчитать суммарный power.
  5. Если выше цели — добавить дебафф или заменить часть на более слабую; если ниже — добавить бафф или более сильную часть.
  6. Повторять до нужной точности или лимита итераций.

Дальше можно вводить исключающие комбинации и многокритериальную оценку, помня, что чем больше ограничений, тем сложнее сходимость.

Выводы

  • Базовая таблица лута с весами, null-предметом и повторными бросками покрывает большинство задач случайного дропа.
  • Ключевые расширения: беззаменочный дроп, гарантии редких предметов, иерархические таблицы и условные проверки.
  • Хранение модифицированной таблицы на игроке позволяет реализовать «жалость» (pity) и жёсткие лимиты ресурсов.
  • Таблицы лута — универсальный инструмент: ими удобно описывать AI, процедурную генерацию и другие вероятностные системы.
  • Не усложняйте модель без необходимости: для большинства игроков достаточно простого вероятностного поведения.
check_circle Факт-чекинг
Статья прошла проверку. Фактологических ошибок не выявили.
sports_esports Упомянутые игры