Браузерная игра для крупнейшего российского авиаперевозчика (NDA) в честь 25-летия компании


- Разработка
- DJANGO
- REACT
Задача
В 2024 году программе лояльности исполнилось 25 лет, и в честь этого авиакомпания запустила промоакцию. Её цель — привлечь внимание и громко вернуться в медиапространство.
Заказчик предоставил готовую концепцию и дизайн-систему, а наша задача заключалась в реализации и запуске проекта — браузерной игры с общим количеством 500 000 игроков.
Клиент
Российская авиакомпания и одна из крупнейших авиакомпаний мира, ведущая свою историю с прошлого века. Сегодня компания обслуживает рейсы в более чем 50 стран, активно развивает как международные, так и внутренние перевозки.
Концепция игры
В основе концепции игры — главный герой, которого зовут Андрей. Он спешит на самолёт, преодолевает препятствия и собирает подарки. Сложность игры постепенно растёт, а у героя всего 3 жизни. Игроки набирают очки и бонусы, которые сохраняются и не сгорают — даже если игру запускать заново несколько раз.
Длительность проведения игры рассчитана на один месяц, а по её завершению все очки конвертируются в бонусы. Их можно потратить на ценные призы — в том числе, на международные перелёты.

Игровые сессии
Мы разработали десктопную и мобильную версии игры с единым личным кабинетом — прогресс сохранялся на обоих устройствах, но переключиться между ними во время сессии было нельзя.
По правилам игры сессия длится до 10 минут: со временем скорость героя увеличивается, делая прохождение сложнее.
Турнирная таблица
В турнирной таблице пользователь может увидеть своё положение в общем рейтинге и количество баллов, которые он заработал в общем. Здесь же показаны промокоды, которые он собрал за все время.
Цензура
Игроки могли выбрать себе ник в игре. Чтобы соблюсти этические и законодательные нормы, мы ввели запрет на регистрацию ников с запрещёнными словами.
Подобный фильтр был установлен и для аватаров — на них не должно было быть чего‑то незаконного и неприличного.


Адаптация под разные устройства
Мы адаптировали игру для мобильных устройств и ПК — добавили динамическую регулировку скорости загрузки под мощность устройства. Это обеспечивает равные условия для всех игроков.
Без оптимизации владельцы слабых устройств столкнулись бы с низким FPS, задержками и невозможностью играть. Чтобы этого избежать, мы внедрили мониторинг FPS и автоматическую настройку графики, расчёта очков и появления объектов. Это гарантирует плавный геймплей на любом устройстве.


Борьба с читерством
У игры большой призовой фонд и множество бонусов, поэтому мы ожидали столкнуться с мошенничеством. Некоторые игроки манипулировали кодом через браузер (например, телепортировали персонажа), что искажало честность игрового процесса.
Для выявления нечестных игроков мы настроили несколько критериев:
- Отсутствие движения более 2 минут
- Игровые сессии дольше 10 минут
- Персонаж зависает в воздухе без столкновений
- Аномальная скорость игры
- Сбор бонусов сверх лимита (например, 50 вместо 10)
Все, кто попадал под эти критерии, были заблокированы.

HighLoad
Мы обнаружили, что пользователи наиболее активны утром и вечером. Чтобы система работала без сбоев в эти часы, мы заранее выделили серверные мощности, настроили кэширование (Redis) и оптимизировали Nginx, а также оптимизировали базу данных.
Например, вместо постоянных запросов данных 100 тыс. пользователей, мы кэшировали их на короткое время — это снизило нагрузку, при этом данные оставались актуальными.
Backend игры написан с использованием протокола сокета — он минимизирует переходы по страницам, что сильно увеличивает скорость работы.
Команда
- Вадим ПолькинQA
- Николай ВедмеденкоBackend developer
- Екатерина ОбщеваProject manager
- Яна ПлещееваFrontend teamlead
- Данил АртюшинQA
- Екатерина КуликоваAnalyst


Привет!
Заполните форму,
будем рады познакомиться
и помочь
Привет!
Заполните форму, будем
рады познакомиться
и помочь
Highload и лёгкий UX: обновление сайта сибирского застройщика «Страна Девелопмент»
