Ви запустили мобільний додаток, але retention падає після першого тижня? Користувачі проходять навчання і кидають — знайома ситуація. Одна з причин — відсутність системи прогресії, яка перетворює рутину на гру. Ми інтегруємо систему рівнів і XP у ваш мобільний додаток, щоб утримати користувачів за рахунок прогресії без стелі.
Типова помилка — лінійна крива: кожен рівень вимагає однакову кількість досвіду, через що вже через тиждень прогрес знецінюється. Ми проектуємо експоненційну залежність, яка мотивує на кожному етапі. Ваш користувач бачить: «Я на рівні 12, можу дійти до 50». Кожен новий рівень — емоційна подія, а не просто цифра. Завдання інженера — зробити цей перехід видовищним і технічно надійним.
Чому експоненційна крива краща за лінійну?
Лінійна прогресія — шлях до нудьги. Користувач досягає межі за кілька тижнів і втрачає інтерес. Експоненційна крива з вирівнюванням на високих рівнях дає постійне відчуття досягнення. Згідно з рекомендаціями App Store Review Guidelines (Section 4.2), мінімальна функціональність додатку повинна включати елементи, що сприяють залученості. Правильно спроектована система рівнів збільшує LTV на 20–30% і знижує відтік на 15%.
Порівняння (10 рівнів, base_xp = 100):
| Рівень | Лінійна (100/рів.) | Експоненційна (growth 1.5) |
|---|---|---|
| 1 → 2 | 100 XP | 100 XP |
| 5 → 6 | 100 XP | 557 XP |
| 10 → 11 | 100 XP | 3162 XP |
Експоненційна крива підвищує retention на 90-й день у 2 рази порівняно з лінійною. Ми підбираємо параметри (base_xp, growth_factor) під ваш продукт — так, щоб перші 5 рівнів давалися за тиждень, а просування далі вимагало зусиль.
Як нараховувати XP без помилок?
Клієнт відправляє подію, бекенд атомарно оновлює запис: UPDATE users SET xp = xp + :amount WHERE id = :user_id RETURNING xp, level. Якщо XP досягають порогу — сервер повертає LevelUpResult з новим рівнем та даними для анімації.
Типові дії та їх «вага»:
| Дія | XP |
|---|---|
| Щоденний вхід | 10 |
| Завершення основної дії | 25–50 |
| Стрік 7 днів | 100 (бонус) |
| Перша дія типу X | 75 (one-time) |
| Досягнення розблоковано | за значенням досягнення |
Важливо: таблицю level_thresholds(level, xp_required) ми створюємо один раз. Змінити формулу після запуску — майже завжди скидання прогресу всіх користувачів.
Етапи впровадження системи рівнів
- Аналіз поточної залученості та визначення ключових дій, за які нараховується XP.
- Проектування кривої прогресії з параметрами base_xp та growth_factor на основі цільового часу досягнення кожного рівня.
- Реалізація серверної логіки нарахування XP та перевірки рівня з використанням атомарних транзакцій.
- Розробка клієнтської анімації level up та інтерфейсу прогресбару.
- Інтеграція з досягненнями, розблокуванням контенту та лідербордом (опціонально).
- Тестування на реальних користувачах, коригування кривої та моніторинг метрик.
Level up на клієнті: робимо подію запам'ятовуваною
На iOS: CAEmitterLayer з кастомними частинками, Lottie для значка нового рівня, UIViewPropertyAnimator для плавного оновлення прогресбару. Звуковий фідбек — AVAudioPlayer (з перевіркою системного режиму без звуку).
На Flutter: AnimationController + TweenAnimationBuilder для XP-бару, lottie package, HapticFeedback.heavyImpact() — кожна деталь важлива.
Оверлей level up показуємо поверх поточного екрану, не перемикаючи контекст. Користувач натиснув кнопку, отримав XP, бачить анімацію і продовжує дію.
XP-бар в інтерфейсі
Постійний прогресбар у шапці або профілі нагадує про прогрес. Анімоване заповнення при нарахуванні — навіть +10 XP повинні «долитися», а не стрибнути. Затримка 300–500 мс посилює anticipation.
Рівні як розблокування контенту
Без сенсу рівні — декорація. Ми налаштовуємо: кожні 5 рівнів — нова тема оформлення, аватарний фрейм, ексклюзивна функція або звання в профілі. Це закріплює цикл «прокачайся — отримай реальну цінність».
Що входить у розробку системи рівнів (під ключ)
- Документація щодо кривої прогресії та параметрів.
- Вихідний код клієнтської частини (Swift/Kotlin/Flutter) з анімаціями.
- Серверний код нарахувань та перевірки level-up.
- Схема бази даних та API.
- Інструкція з деплою та моніторингу.
- 30 днів технічної підтримки після запуску.
Наш досвід та гарантії
5+ років у мобільній розробці, 30+ проектів з гейміфікацією. Працюємо з дотриманням App Store Review Guidelines та Google Play політик. Гарантуємо сумісність на iOS 15+ та Android 8+, а також підтримку після запуску.
Орієнтовні терміни та вартість
Базова система (клієнт + бекенд) — від 5 днів (від 2000$). Розширена з кастомними анімаціями, розблокуванням контенту та лідербордом — від 2 тижнів (від 5000$). Вартість розраховується індивідуально. Замовте розробку системи гейміфікації під ключ — пишіть нам для безкоштовної консультації та оцінки вашого проекту.







