Реализация системы квестов/миссий для геймификации мобильного приложения

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Реализация системы квестов/миссий для геймификации мобильного приложения
Средний
~3-5 дней
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Реализация системы квестов/миссий для геймификации мобильного приложения

Квесты — это достижения с нарративом и последовательностью. «Выполни 3 тренировки на этой неделе» — достижение. «Пройди путь новичка: первая тренировка → 3 тренировки за неделю → 7-дневный стрик → первый личный рекорд» — квест с прогрессией. Разница в удержании: квест создаёт сюжет, в котором пользователь — главный герой.

Структура квеста

Квест состоит из шагов (QuestStep), выполняемых последовательно или параллельно. Каждый шаг — это условие над событиями пользователя:

Quest:
  id, title, description, icon
  type: ENUM(linear, parallel, branching)
  is_repeatable: BOOL  -- ежедневные/еженедельные миссии
  expires_at: nullable TIMESTAMP
  xp_reward, badge_id

QuestStep:
  id, quest_id, step_order
  title, description
  trigger_event: VARCHAR  -- "workout_completed"
  trigger_condition: JSON  -- {"count": 3, "period": "week"}
  is_optional: BOOL  -- для branch-квестов
  xp_partial_reward

UserQuestProgress:
  user_id, quest_id, current_step, status: ENUM(not_started, in_progress, completed)
  started_at, completed_at
  step_progress: JSON  -- {"step_1": {"completed": true}, "step_2": {"count": 2}}

step_progress как JSON позволяет хранить гетерогенный прогресс по шагам без нормализации. На Postgres JSONB с GIN-индексом — эффективно для поиска.

Типы квестов для разных сценариев

Onboarding квесты — направляют нового пользователя по ключевым шагам продукта. «Настрой профиль → добавь первую запись → пригласи друга → установи цель». Выполняются один раз. Критически важны для activation rate.

Ежедневные/еженедельные миссии (is_repeatable = true) — регулярный повод возвращаться. Каждый понедельник три новые миссии на неделю. Рандомизация из пула, но с учётом поведения пользователя: новичку — простые, ветерану — посложнее. Нужен mission_pool с весами и логикой выбора.

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

Branch квесты — пользователь выбирает путь на развилке. «Тебе ближе кардио или силовые?» — выбор определяет следующие шаги. Реализуется через QuestStep.is_optional + логика выбора в UserQuestProgress.step_progress.

Обновление прогресса

Event-driven, синхронно с остальной gamification логикой. При получении события workout_completed:

  1. Начисляем XP пользователю
  2. Обновляем прогресс достижений
  3. Обновляем прогресс активных квестов с matching trigger_event
  4. Проверяем завершение шагов и самого квеста
  5. Возвращаем клиенту GamificationUpdate { xp_gained, level_up, achievements_unlocked, quest_step_completed, quest_completed }

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

UX квестов

Карточка квеста: прогрессбар с шагами, описание текущего шага, награда. Не показывай все шаги сразу для сюжетных квестов — открывай следующий при завершении текущего (mystery мотивирует).

При завершении шага — inline celebration: зелёная галочка с анимацией check, brief haptic, + XP toast. При завершении квеста — full-screen или bottom sheet с анимацией, награда, CTA «Начать следующий квест».

Список квестов разделён на вкладки: «Активные», «Доступные», «Завершённые». Завершённые квесты видимы — пользователь должен видеть свой путь.

Ежедневные миссии как retention механика

Три случайные миссии каждый день, сгенерированные утром (cron job 00:00 по локальному времени пользователя). Простая, средняя и сложная по сложности. Completion rate первых двух — высокий. Третья — стрetch цель, но достижимая.

Серверный push в 10:00 «Новые миссии готовы» — мягкое напоминание. Не каждый день — через день, если пользователь заходил вчера.

Ориентиры по срокам

Базовые onboarding квесты + ежедневные миссии — 3–5 дней (клиент) + 5–7 дней (бэкенд). Полная система с сюжетными квестами, ветвлением, рандомизацией миссий и аналитикой completion rate — 3–4 недели. Стоимость рассчитывается индивидуально.