Онлайновые баталии гремят в Сети уже много лет – есть куча многопользовательских игр. Но несмотря на то что MMORPG позволяют играть вместе десяткам и даже сотням людей, сложно найти игру, в которой на одном клочке земли были бы собраны (и при этом взаимодействовали бы друг с другом в режиме битвы) более нескольких десятков пользователей. Если же говорить о шутерах, то их и того меньше. Проблема, конечно, в том, что для обсчёта большого количества пользователей, совершающих действия, требующие немедленного реагирования, нужны огромные мощности. Но недавно в игре Man vs Machine на поле боя сошлось 999 пользователей.

Нетрудно представить, насколько здорово это выглядит. Да что там говорить! Посмотрите видео. Это позволяет помечтать о том, когда можно будет имитировать, скажем, массивные баталии Второй мировой, где все солдаты будут живыми игроками. Каким же образом всё это работает?

Технологию, делающую такие битвы реальностью, разрабатывает компания Pikkotekk. В основе их системы лежит один сервер, к которому подключено множество вспомогательных серверов, действующих как мобильные “соты”. Каждая “сота” отвечает за определённый участок местности, она также взаимодействует с другими сотами вокруг неё, передавая информацию о пользователях и их объектах в окрестные “соты”.

Тут, конечно, может возникнуть вопрос: чем это отличается от обычного подхода, когда один большой игровой мир делят на локации? Увы, в таком случае обычно между локациями взаимодействие невозможно. Все объекты из одной области исчезают за спиной пользователя, когда он переходит границу другой.

В случае с сотами Pikkotekk всё обстоит иначе. Прежде всего, мир выглядит абсолютно целостным для игрока, и никаких “швов” он заметить просто не может. В случае, когда игровых событий между областями происходит немного, при приближении к краю “соты” в ней создаётся временный объект с характеристиками приближающегося. После перехода границы именно этот новый объект и обсчитывается.

Если же на относительно небольшом клочке территории происходит массивная битва, то система полностью перестраивается. Множество “сот” перебазируются на эту местность, при этом работая как единый очень мощный сервер, то есть напрямую рассчитывая путь того или иного объекта между ними.

Именно с помощью подобного гибкого алгоритма система и добивается таких поразительных результатов. Интересно, что для применения его в любой из существующих игр совершенно ничего не нужно глобально переделывать. Как заявляют в самой Pikkotek, внедрение системы займёт дни, максимум недели.