Sumo Tatami X Serverspace
Представьте себе мир, где борцы сумо соревнуются не на традиционных дохьо, а в захватывающих аркадных гонках с множеством препятствий и веселых испытаний. Именно такую вселенную создала команда под руководством Константина Кондюкова в проекте Sumo Tatami. Стартап уже завоевал признание в сообществе разработчиков и получил значительную поддержку, став резидентом Сколково и обеспечив себе грант на 7 миллионов рублей. Давайте разберемся с какими техническими вызовами пришлось столкнуться команде и как облачный провайдер Serverspace внес свой вклад в реализацию этого многообещающего проекта.
История создания
Константин Кондюков, программист с 10-летним стажем и преподаватель ИТМО (Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики), посвятил последние четыре года разработке Sumo Tatami. Всё началось с увлечения стартапами, которое переросло в амбициозный проект. Игра, основанная на идее объединения аркадных гонок и традиций сумо, быстро привлекла внимание общественности. В Sumo Tatami игроки управляют борцами сумо, преодолевающими различные препятствия в соревновательных режимах. Гонки, дуэли, боулинг и даже футбол – всё это лишь часть захватывающего игрового процесса.
Для каких задач понадобились облачные серверы?
Создание мультиплеерной игры требует не только творческого подхода, но и решения сложных технических задач. Одной из главных проблем стала необходимость обеспечения стабильной работы серверов, способных выдержать высокую нагрузку во время пикового онлайна. Этот показатель отражает максимальное количество игроков на сервере одновременно: чем больше игроков – тем выше нагрузка. Sumo Tatami нуждался в мощностях для нескольких тысяч пользователей на начальном этапе запуска и бета-тестировании игры.
«Sumo Tatami» – это международный проект, то есть игроки рассредоточены буквально по всему миру. Именно по этой причине, помимо высокой производительности виртуальных серверов, для команды разработчиков был важен фактор наличия у облачного провайдера геораспределенной сети дата-центров. Возможность развернуть серверы в разных частях света позволяет обеспечить качественный процесс игрового взаимодействия для широкой мировой аудитории геймеров.
Скорость развертывания инфраструктуры – также значимый параметр для проекта, который требует динамичного развития, а разработка и запуск онлайн-игры тем более относится к этому случаю. Создателям игры необходимо быстро создавать виртуальные серверы, наращивать или, наоборот, понижать мощности в процессе тестирования, устранения ошибок в сжатые сроки.
Стоит отметить, что ценообразование и качественная техническая поддержка стали еще одним важным критерием при выборе поставщика облачных услуг. Сам проект является стартапом, а это значит, что финансовые и человеческие ресурсы ограничены по сравнению с большими геймдев-студиями. Соответственно, работы по настройке инфраструктуры и обеспечения ее функционирования – это дополнительные статьи расходов для сравнительно небольшого бюджета Sumo Tatami.
Команда испытала различные облачные решения, включая МТС Cloud и Яндекс. Однако в некоторых случаях цены были слишком высокие, а в других возникали трудности с технической поддержкой, а именно вопросы построения безопасной инфраструктуры для сервисов. В контексте отказоустойчивой и оснащенной средствами защиты информации технологией виртуализации, а так же сетевого взаимодействия пользователей с ресурсами инфраструктуры. В поисках подходящей облачной платформы Sumo Tatami обратились к Serverspace.
Как использовали серверы Serverspace?
Для разработки команда Sumo Tatami развернула более десяти облачных Windows-серверов на базе гиперконвергентной платформы виртуализации vStack. Система отечественной платформы vStack не только не уступает по своим качественных характеристикам западным аналогам, таким как VMware, но и является более выгодным решением для создания мощной инфраструктуры, Так, данный фактор в совокупности с удобной моделью оплаты Pay-As-You-Go оптимально подошли для требований проекта.
На начальном этапе разработки специалисты Sumo Tatami использовали небольшие мощности для серверов: 4 ядра, 8 гб оперативной памяти и 50 гб на жестком диске. Основной мультиплеерный сервер разместили на виртуальном VPS-сервере Serverspace в Турции. Это позволило игрокам из разных регионов подключаться к игре через глобальную сеть. Для более широкого покрытия гео команда развернула виртуальные серверы еще и в других локациях: США, Канада и Нидерланды.
Пиковая нагрузка от пользователей поставила задачи вертикального и горизонтального расширения для инфраструктуры проекта. Были увеличены мощности основного сегмента практически без простоя, изменение конфигурации заняло считанные минуты. А возможности использовать дата-центры в других странах, географически расширило диапазон и снизило задержки для пользователей.
Какие результаты?
На качество игрового процесса влияют несколько важных параметров: пинг, отсутствие задержек (Low latency) и быстрая синхронизация действий между игроками. Каждый из них напрямую зависит от производительности серверов, на которых строится техническая инфраструктура.
В геймдеве пинг (ping) — это мера времени, необходимого для отправки и получения данных между клиентом (устройством игрока) и сервером. Пинг измеряется в миллисекундах (мс) и является важным показателем сетевой производительности в многопользовательских онлайн-играх. Низкий пинг означает быструю связь с сервером, что приводит к меньшим задержкам и более плавному игровому процессу. Высокий пинг, напротив, может вызвать значительные задержки (лаг), что ухудшает игровой опыт.
Пинг важен в следующих аспектах:
- Время реакции: В играх, где важна быстрая реакция (например, шутеры от первого лица или файтинги), высокий пинг может негативно сказаться на эффективности игрока.
- Синхронизация: Низкий пинг помогает лучше синхронизировать действия всех игроков, что особенно важно в командных играх.
- Качество сети: Высокий пинг может быть признаком проблем с интернет-соединением или перегруженностью сервера, что может привести к разрывам соединения и другим техническим проблемам.
Чтобы снизить пинг, рекомендуется использовать более стабильные и быстрые интернет-соединения и выбирать серверы, которые находятся ближе к географическому расположению целевой аудитории.
Использование высокопроизводительных VPS-серверов Serverspace в разных географических локациях позволило команде уже на начальном этапе запуска игры добиться достаточно низкого показателя пинга – чуть более 30 мс. В дальнейшем специалисты планируют нарастить производственные мощности и в других странах, что позволит повысить стабильность сетевого соединения и доступность игры для пользователей разных стран
Термин "Low Latency" (низкая задержка) обозначает минимальное время задержки между вводом игрока и соответствующим откликом игры. Низкая задержка важна для обеспечения плавного и отзывчивого игрового процесса, особенно в многопользовательских онлайн-играх и играх, требующих быстрого реагирования, таких как шутеры от первого лица, файтинги и гонки.
Важные аспекты Low Latency в геймдеве включают:
- Входная задержка (Input Lag): Время между моментом, когда игрок совершает действие (например, нажимает кнопку), и моментом, когда это действие отображается на экране. Низкая входная задержка важна для точного и отзывчивого управления.
- Задержка сети (Network Latency): Время, необходимое для отправки данных от клиента (устройства игрока) к серверу и обратно. Снижение сетевой задержки помогает уменьшить лаги и улучшить синхронизацию между игроками в онлайн-играх.
- Задержка рендеринга (Rendering Latency): Время, необходимое для обработки и отображения графики на экране. Оптимизация рендеринга помогает сократить задержку и улучшить качество изображения.
- Задержка обработки (Processing Latency): Время, затрачиваемое на обработку игровых данных (физика, логика, ИИ и т.д.) до их отображения. Эффективные алгоритмы и оптимизация кода могут помочь снизить эту задержку.
Для достижения низкой задержки разработчики Sumo Tatami применили различные методы:
- Оптимизация сетевого кода: Использование более эффективных протоколов передачи данных и снижение количества передаваемых данных.
- Использование мощного и быстрого оборудования Serverspace: Обновление серверов и игровых устройств для обеспечения высокой производительности.
- Выбор близко расположенных серверов: Распределение серверов по различным регионам для уменьшения физического расстояния между игроком и сервером.
- Использование технологий предсказания и компенсации лагов: Применение алгоритмов, которые предсказывают действия игрока и компенсируют возможные задержки.
Так, с помощью этих действий во время бета-тестирования игры команде удалось добиться практически полного отсутствия каких-либо задержек.
Какие преимущества Serverspace для разработки игр?
Разработчики Sumo Tatami выделили несколько существенных плюсов, которые помогли с успешной реализацией проекта. Во-первых, интуитивно понятный интерфейс позволил команде быстро настроить и запустить серверы без необходимости в сложных конфигурациях, которые требуются у других провайдеров. Это дало возможность программистам Sumo Tatami самостоятельно настроить серверы без привлечения отдельного DevOps-инженера, что сэкономило время и ресурсы.
Во-вторых, высокая стабильность серверов Serverspace проявлялась на протяжении всего периода тестирования. Этот показатель особенно важен для многопользовательских игр, так как даже кратковременные простои могут испортить пользовательский опыт.
Третьим важным аспектом стала экономия времени. Быстрое развертывание облачных серверов и отсутствие необходимости в постоянной технической поддержке позволили команде сосредоточиться на разработке игры и внедрении новых функций. В условиях стартапа, где каждый час на счету, эта экономия времени значительно ускорила процесс реализации проекта.
Кроме того, высокая производительность серверов обеспечивала быструю обработку данных и плавный игровой процесс, что критически важно для качественного пользовательского опыта. Быстрое масштабирование дало команде возможность адаптировать серверные мощности в зависимости от меняющихся потребностей проекта, что особенно полезно при увеличении числа пользователей. Качество технической поддержки также сыграло важную роль: оперативная и профессиональная помощь позволила быстро решать возникающие вопросы и проблемы. И, наконец, удобное ценообразование по модели Pay-As-You-Go позволило контролировать расходы и эффективно управлять бюджетом проекта, оплачивая только те ресурсы, которые реально использовались.
Все эти факторы сделали Serverspace подходящим выбором для команды Sumo Tatami, помогая им развивать стартап.
Что дальше?
Sumo Tatami только начинает свой путь. В ближайшее время команда планирует запустить открытое тестирование, а полноценный релиз игры ожидается к концу года. В дальнейшем команда планирует привлекать частные инвестиции, расширять географический охват серверов, улучшать игровой процесс и масштабировать инфраструктуру.
Sumo Tatami – яркий пример того, как страсть к разработке и правильно выбранная облачная платформа могут привести к созданию уникального продукта. Serverspace стал оптимальным решением, позволившим команде сосредоточиться на креативной части проекта и не беспокоиться о технических сложностях. Впереди еще много работы, но Sumo Tatami уже завоевала сердца первых поклонников и готова покорять мир гейминга. И в этом им, несомненно, готова помогать команда специалистов Serverspace.