Разработка мобильной trivia/quiz-игры
Quiz-игры — жанр с минимальными требованиями к графике, но высокими к качеству контента и серверной части. Основной продукт здесь — база вопросов и система матчмейкинга, а не движок.
База вопросов: структура и обновление
Хранить вопросы в бандле приложения — путь к быстрому устареванию контента. Правильная архитектура: вопросы на сервере, клиент загружает пакеты по категориям через Addressables Remote Content или REST API.
Схема вопроса: { id, category, difficulty (1-5), question_text, answers[4], correct_index, explanation, added_date }. Difficulty влияет на выбор вопросов в матче: начинаем с 2–3, повышаем при правильных ответах — адаптивная сложность без сложного алгоритма.
Локализация вопросов: Unity Localization Package с LocalizedString не подходит для динамического контента. Используем собственную систему: вопросы на сервере хранятся с language_code, клиент запрашивает нужную локаль.
Реалтайм PvP: синхронизация таймера
Главная техническая сложность quiz PvP — синхронизированный таймер. Если таймер считается на клиенте, разница в системных часах даёт нечестное преимущество. Решение: сервер публикует questionStartTimestamp (Unix ms), клиенты вычисляют оставшееся время как deadline - serverTime. Серверное время синхронизируется через NTP-подобный механизм при подключении.
Firebase Realtime Database для матча из 2 игроков работает хорошо: match/{matchId}/answers/{userId} — каждый игрок пишет свой ответ + timestamp. Сервер (Cloud Function) определяет победителя по правильности и скорости ответа.
Для большего контроля — Photon Realtime с кастомными Room Properties для состояния вопроса.
Ежедневные челленджи и retention
Daily challenge с глобальным leaderboard — стандартный retention механизм. Все игроки получают одни и те же вопросы в один день (seed зависит от даты). Firebase Functions генерирует сет вопросов ежедневно в 00:00 UTC и публикует в Firestore.
Сроки: quiz-игра с одним режимом, категориями вопросов, базовым PvP — 2–3 месяца. С ежедневными заданиями, турнирами, системой прокачки профиля — 4–6 месяцев.







