Business Tour
О проекте
Business Tour — это онлайн-стратегия, созданная на основе одной из самых популярных настольных игр в мире. Ежемесячно в неё играют более 340 тысяч пользователей. Компания 8floor обратилась к нам с просьбой поддерживать, расширять и портировать это приложение на различные платформы.
Вызов
Команда разработчиков столкнулась с серьёзными вызовами при работе над проектом, основная из которых - сильно связанный исходный код, требовавший очень аккуратного обращения. Добавление нового функционала и исправление ошибок требовало вдумчивости, чтобы не нарушить работу других частей системы.
До передачи проекта к нам в оперирование им занимались несколько команд, так что в проекте встречалось дублирование функционала, параллельные иерархии классов, которые делают одну и ту же работу.
Переданный проект не имеет собственного сервера, а использует несколько готовых пакетных серверных решений: peer-to-peer realtime мультиплеер на Photon и Playfab. Это делает приложение уязвимым для мошенников.
На начальном этапе в проекте полностью отсутствовал CI, а сборка билдов осуществлялась вручную, что занимало много времени и сил.
Проект унаследовал устаревшие и не поддерживаемые более GAF-анимации, которые были не оптимальны и существенно увеличивали размер конечной сборки.
Результаты
Благодаря широкому опыту в рефакторинге, команда разработки научилась точно и быстро определять нужные места для внесения изменений в сильно запутанном коде.
С проблемой мошенников в игре команда разработчиков успешно борется, используя проверенные античитерские библиотеки и лучшие практики борьбы с мошенниками в играх.
Сейчас мы используем проверенное CI/CD решение, с помощью которого в настроены регулярные прогоны Unit-тестов, валидаций данных и сборки актуальных билдов для нескольких платформ: Steam, AppStore и GooglePlay.
Благодаря высоким компетенциям художников в проекте были заменены устаревшие GAF-анимации на плавные и приятные для глаз скелетные анимации Spine, что также позволила существенно оптимизировать размер конечного билда.
Со стороны команды разработки были предприняты существенные усилия, среди которых:
- переписывание особо сложные и запутанные участков исходного кода
- unit-тесты и валидации игровых данных
- поставка нового контента и билдов теперь происходит с минимальным участием разработчиков
Для оптимизации бюджета команда разработки уменьшила количество запросов к серверу, а также объем хранимых данных.
Итог
Благодаря нашему опыту, ответственности и бережному отношению к унаследованному коду проект может развиваться и приносить прибыль, а игроки могут наслаждаться постоянными обновлениями игровых скинов, переработанным и более удобным UI.
Проект выпущен на 5 платформах: Android, iOS, Steam Windows, Steam MacOS, Nintendo Switch, где имеет стабильно хорошие оценки.
Ежемесячный онлайн составляет 340 тыс. пользователей.