При создании многопользовательских игр встает вопрос про создание серверной части , способных объединить множество игроков в игровом мире.
Часто эту задачу решают в каждой игровой студии созданием своего продукта, нанимая штаб специалистов узкого профиля и способностей, либо используют готовые западные решения которые в целом ограничены их функционалом и требуют определенных навыков работы
Проект , который включает в себя само API для взаимодействие между клиентами (игроками) и авторитарным сервером, а так же систему управления игровым миром (CMS) позволяющий превратить любую offline игру (браузерную, компьютерную , для мобильных устройств Android или ios, консоли и тп ) в online
Цель проекта дать миру инструмент быстрого создания онлайн игр с возможностью менять серверные механики, управлять игровым миром.
Так же проект идеально подойдет для создания игр связанных с криптовалютой, blockchain и smart контрактами. Сервер горизонтально масштабируется и может поддерживать нагрузку ограничивающуюся лишь пределами ресурса процессоров физических серверов (имеются тесты скорости)
Продукт включает в себя сразу 2 сервера между которыми происходит взаимообмен:
Websocket сервер принимающий и отправляющий пакеты данных игроков
Дополнительно идут вспомогательные WEB приложения , основными из которых служат для редактирования и добавления новых характеристик игровым существам, игровых карт
Презентация:
Основные преимущества:
Работает с мобильными, играми на ПК, приставках и браузерных версиях (в тч и локально, в едином игровом пространстве)
Готовый пример MMO RPG игры (движение, атака, прокачка, навыки, инвентарь, магия, плагин для интеграции с сервером)
Вся физика и логика механик игры хранится и меняются на сервере (авторитарный сервер) с возможностью добавления новых на языке PHP, Java Script, Lua (на выбор в т.ч. комбинированно)
Изменение контента игры через интернет панель администратора (музыка, игровые карты, анимации, диалоги, локализация), без изменения клиенткой части игры
Возможность использовать в образовательных целях (создавать разные игры со своим наполнением и физикой игроки и существа которых могут переходить из одной в другую)
Полный список существующих и планируемых возможностей читайте в разделе Roadmap
Доступны замеры производительности игрового сервера и вспомогательных WEB приложений в разделе Производительность
В этой части серии статей про разработку сервера для реалтайм игр я расскажу вам о показателе сетевого устройства которое значительно влияет на количество запросов, которое способен обработать ваш игровой сервер.
В статье я расскажу как разработчиков вводят в заблуждение рассказывая что необходимо учесть в первую очередь при разработке серверов (и не только для игр), но умалчивая о реальных "узких местах" (проблемах).