Skip to content

Idle Miner — Геймдизайн-документ

1. Введение

Общее описание

Ивент "Сокровища бездны" — упрощённая версия Zombie Miner без меты, мёрджа рабочих и перетаскивания. Игрок направляет до трёх рабочих на расчистку руды и сундуков на вертикальном поле, получая ресурсы и углубляясь вниз. Основной цикл: выбрал объект → отправил рабочего → подождал → собрал награду → улучшил рабочего → повторил.

Фича в игровом цикле

  • Заменяет LuckyBoard в ротации ивентов. LuckyBoard убирается из ротации, но не выпиливается из игры — будет переделан и использован по-другому.
  • Ротация остаётся как сейчас, просто вместо LuckyBoard появляется IdleMiner (AbyssTreasures или ещё как назовём в Unity).
  • Открывается как все остальные события.
  • Валюта зарабатывается через OrderBoard (как у других ивентов) + покупки в магазине через паки (баланс аналогичен другим ивентам).

2. Логика работы фичи

Ввод фичи

  • Событие появляется в ротации вместо LuckyBoard.
  • Открывается как все остальные события (по расписанию ротации).
  • Туториал: экран-подсказка по кнопке "i".

Поле

Вертикальная сетка шириной 10–12 клеток (точное число не определено) с прокруткой вверх или вниз (зависит от настройки Direction в конфиге арены). Клетки должны влезать в экран на узких устройствах.

В каждой клетке может находиться:

Тип Размеры Интерактивность
Непроходимое препятствие / декорация 1x1, 1x2, 2x1, 2x2 Нельзя расчистить
Руда по пресету (1x1, 2x2, 3x3) Расчищаемый объект, дроп по пресету
Сундук 1x1, 2x2, 3x3 Расчищаемый объект, может содержать несколько предметов

У расчищаемых объектов есть уровень. Чем выше уровень — тем больше времени на добычу.

Крайний случай: На широких экранах видно больше клеток — лишние заполняются декоративным мусором без функционала.

Типы руды (пресеты)

Пресет задаётся один раз в конфиге события на каждый тип руды:

Параметр Описание
Иконка Визуальное представление
Размер 1x1, 2x2 или 3x3
Мин. уровень рабочего Ниже этого уровня рабочий не может расчищать объект
Базовое время расчистки Время на 1-м уровне объекта рабочим минимального уровня
% роста времени за уровень объекта Каждый уровень увеличивает время
% снижения времени за доп. уровень рабочего Считается аналогично росту за уровень объекта
Минимальное время расчистки Нижний порог — даже сильный рабочий не расчищает за 0 сек
Пресет дропа (RewardByWeight) Список наград с весами

Формула времени расчистки (из черновика): если на 1-м уровне объект расчищается за 1 минуту, а процент роста 10%, то на 3-м уровне расчистка будет занимать 1 × 1.2 = 1.2 минуты. Снижение за уровень рабочего считается аналогично. Округление до 10 сек.

Крайний случай: Минимальное время расчистки не даёт даже сильным рабочим расчищать мгновенно.

Дроп-система

Используется общая система наград RewardByWeight. Каждая запись в Rewards[]:

  • Weight (float) — вес (определяет вероятность выпадения)
  • Reward (IReward) — любой тип награды из общей системы: ResourceReward (золото, гемы, энергия и т.д.), ChestReward, и другие. Тип и количество задаются внутри Reward.

При расчистке из всего списка выбирается ровно одна награда случайно по весам.

Возможные типы наград:

Награда Описание
Золото Основная валюта
Гемы (алмазы) Премиум валюта
Случайные блупринты Чертежи предметов
PetEgg Яйцо питомца
PetBone Кости питомца
Инструменты шахты Лопата / бур / ТНТ
Energy (бургеры) Энергия

Пример: 5000 Золото (вес 2), 50 Гемы (вес 1), 1 ItemKey (вес 0.5) — мы закончили расчищать и, согласно весам, выпало что-то одно.

Крайний случай: Дроп не зависит от уровня руды, только от типа пресета.

Экземпляр объекта на арене

Задаётся в префабе на арене:

  • Тип руды — ссылка на пресет
  • Уровень руды

Рабочие

Максимум 3 рабочих:

Рабочий Доступность
1-й Есть всегда
2-й Покупается за спец. валюту
3-й Покупается за спец. валюту

Доступность клеток: - Рабочий расчищает только клетку, соседнюю с уже расчищенной зоной - У недоступных объектов вместо уровня рисуем замочек

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

Крайний случай: Если свободных клеток нет — добыча не начинается.

Анимации:

Анимация Описание
Работает (3 ракурса) Расчищает предмет выше, ниже себя и сбоку (зеркалим для лево/право)
Ничего не делает Всегда лицом к нам
  • На поле у рабочего рисуется его уровень (как у всех предметов)
  • При апгрейде рабочего камера переводится к рабочему

Апгрейд рабочих

Стоимость задаётся вручную для каждого уровня в Unity. Максимального уровня нет — как заданные значения закончились, стоимость каждого следующего апа дороже на последний заданный шаг.

Пример из черновика: стоимость для первых 5 уровней: 1, 3, 7, 15, 25. Последний шаг = 25 − 15 = 10. Дальше: 35, 45, 55, ...

Связи с другими системами: Уровень рабочего — главная метрика лидерборда. Также определяет, какие объекты рабочий может расчищать и скорость расчистки.

Расчистка клетки — жизненный цикл

Начало: 1. Игрок тапает по доступному нерасчищенному объекту 2. Появляется панель расчистки (см. раздел «Интерфейс») 3. Нажимает "Начать добычу" → рабочий телепортируется к объекту, начинается добыча

Работа: - Рабочий рисуется рядом с объектом, который расчищает - Уровень объекта отображается - Под кругом уровня — таймер (формат: всегда одна единица — или часы, или минуты, или секунды) - У рабочего на поле тоже рисуется его уровень

Завершение: - Рабочий стоит рядом с расчищенным объектом, отдыхает - Если расчищали кристаллы — вместо кристалла рисуем добытый ресурс - Если расчищали сундук — открытый сундук - По тапу собираем награду, соседние объекты после этого становятся доступны для расчистки

Сбор предметов с поля

  • Ресурс и его количество всплывают вверх (эффект как в MazeArena)
  • Без экрана награды и эффекта полёта ресурса в зону
  • Исключение: сбор награды из сундука — может быть несколько предметов (также как в MazeArena)

3. Интерфейс

Основной интерфейс события

Элемент Описание
Таймер Как обычно
Лидерборд Игроки соревнуются по макс. уровню рабочего. Формат: <иконка рабочего> Ур N
Кнопка "i" Типовой туториал: "зарабатывай валюту — трать на рабочих" (Вова сверстает экран)
Кнопки рабочих (×3) Кнопки прокачки рабочих
Кнопка магазина Как обычно
Кнопка "Закрыть" Как обычно

При входе камера фокусируется на свободном рабочем самого высокого уровня.

Тап по недоступной клетке (замочек)

Панель не появляется, ничего не происходит.

Тап по доступной нерасчищенной клетке → Панель расчистки

По тапу на нерасчищенную доступную клетку показываем панель расчистки. В ней показываем объект и его уровень, требуемый уровень рабочего. Далее одно из трёх состояний:

  • Есть свободный рабочий нужного уровня:
  • Текст над уровнем рабочего: "Отправить работать"
  • <иконка рабочего> уровень N — пишем уровень самого прокачанного свободного рабочего, именно он пойдёт расчищать
  • Время на расчистку. Определяется уровнем указанного выше рабочего
  • Кнопка "Начать добычу" — закрывает панель, начинаем добычу
  • Есть рабочий нужного уровня, но он занят:
  • Текст над уровнем рабочего: "Можем ускорить"
  • <иконка рабочего> уровень N — пишем уровень рабочего, которого дешевле всего ускорить
  • Время на расчистку. Определяется уровнем указанного выше рабочего
  • Кнопка "Ускорить рабочего" — открывает панель ускорения нужного рабочего
  • Нет рабочего нужного уровня:
  • Текст над уровнем рабочего: "Требуется рабочий"
  • <иконка рабочего> уровень N — пишем минимально требуемый уровень для этого объекта
  • Время на расчистку. Определяется минимальным требуемым уровнем рабочего
  • Кнопка "Улучшить рабочего" — закрывает панель (кнопки улучшения в основном интерфейсе)

Тап по клетке в процессе расчистки → Панель ускорения

  • Уровень объекта
  • Уровень рабочего, который тут занят
  • Анимация рабочего на объекте (слева от объекта, долбит объект)
  • Объект в панели совпадает с тем, что расчищается на уровне
  • Время до конца расчистки
  • Кнопка "Ускорить <спец. ресурс> N"

Отображение процесса на поле

  • Рабочий рисуется рядом с объектом, который расчищает
  • Уровень объекта отображается
  • Под кругом уровня — таймер. Формат времени: всегда пишем что-то одно — или часы, или минуты, или секунды
  • У рабочего на поле тоже рисуется его уровень

4. Конфижные настройки

Пресет типа руды (на каждый тип):

Имя Описание
Иконка Визуальное представление
Размер 1x1, 2x2, 3x3
Мин. уровень рабочего Кто может расчищать
Базовое время расчистки На 1-м уровне объекта минимальным рабочим
% роста времени за уровень объекта Увеличение времени за каждый уровень
% снижения времени за доп. уровень рабочего Уменьшение времени за уровень выше минимального
Минимальное время расчистки Нижний порог
Пресет дропа (RewardByWeight) Список наград с весами

Экземпляр руды (на префабе на арене):

Имя Описание
Тип руды Ссылка на пресет
Уровень руды Уровень конкретного экземпляра

Рабочие:

Имя Описание
Стоимость апгрейда по уровням Задаётся вручную, далее линейный рост с последним шагом
Стоимость покупки 2-го рабочего Спец. валюта
Стоимость покупки 3-го рабочего Спец. валюта

5. Экономика и баланс

Валюта

Источник Сток
OrderBoard (как у других ивентов) Покупка 2-го рабочего
Паки в магазине (баланс как у других ивентов) Покупка 3-го рабочего
Апгрейд рабочих
Ускорение добычи

Лидерборд

Соревнование по максимальному уровню рабочего. Формат: <иконка рабочего> Ур N.


6. Аналитика

[нет данных]


7. Читы

[нет данных]