Цитата Сообщение от Nehno Посмотреть сообщение
Вообще от коллизий между игроками в ММО отказываются вовсе не из-за сложности реализации, а потому что один-два игрока могут загородить проход к какому-либо месту и остальные будут курить бамбук...
Не только. Хотя, конечно, одних гей-плейных заморочек достаточно, чтобы отказаться от идеи.

Есть и технические проблемы:

1. Большинство народу здесь играло в ИЛ-2, вспомните проблемы с "непонятными" столкновениями и т.д. Это даже при игре на сервере где 4 человека и пинг _сильно_ меньше 100. Онлайн игра - это всегда "бой с тенью", и современные технологии не позволяют укоротить эту тень до уровня, которым можно пренебречь. Вы попробуйте поиграть в любую массовую онлайн игру, хоть СВГ, хоть ВоВ хоть что угодно с двух компов рядом (наверняка многие это хоть раз делали). Ни о какой синхронности действий речи не идет. Начинаешь бежать на своем экране - на экране соседа стоишь секунду-две (в лучшем случае) и только потом бежишь. О каком "честном" коллижн детекшне может идти речь, если каждый юзер видит свою версию мира (кто где находится) и эти версии реально различаются. В ИЛ-2 сделали коллижн детекшн, основанный на "серверной версии мира". Решение наиболее честное, но все-равно проблемное.

2. А теперь почему это хоть как-то работало в ИЛ-2 и не может работать в ММОРПГ. Причина - кол-во участнегов. Сервер становится узким местом, все упирается в "логический пинг" (пакет от клиента надо не только принять и переслать, но еще обработать и сохранить). Обсуждалось уже вроде и здесь тоже, с ростом кол-ва игроков кол-во "условно-рилтайм" информации растет в геометрической прогрессии. В случае честного коллижн детекшна время ее доставки и обработки становится еще более критично. Современные платформы, используемые для серверов ММОРПГ, пока не тянут (я думаю, если бы кто-то начал писать игровой сервер под QNX, оная инфа была бы общедоступна, но вроде не слыхать про такое). ВоВ вот, например, сильно воевал с Ораклом в течении первого года жизни (лут-лаг я думаю многие помнят) пока более-менее улеглись проблемы.

Логичное развитие идеи - переход на peer-to-peer архитектуру. Но тут надо очень много думать и решать другие проблемы (как не дать сломать клиент и что делать с точками массового пересечения народа - примеры того что видно невооруженным взглядом). Если бы кто-то поднялся на такое, думаю было бы слышно. Пока же все решают проблему уходом в инстансы, нарезая мир на море маленьких отдельных песочниц. Может оно, конечно, и сработает для АоК, если будет жесткое ограничение на макс. кол-во игроков в зоне. Но это не будет миром для массовых баталий (хотя бы 100х100).

Вобщем, рассказы про "там все будет замечательно и не так как раньше, технологии не стоят на месте" - это конечно хорошо, но ММОРПГ - классическая 3х-уровневое система. Каковые еще не поставили на конвеер так, чтобы время отклика стабильно укладывалось в доли секунды при хотя бы десятках тысяч конкурирующих юзеров (и тем более при интернет-коннекте клиентов). И когда маркетинг пишет "у нас будет!", очень хочется взглянуть в глаза их программерам, и переспросить - что, правда будет?

ЗЫ: Естественно, все вышеописанное - мое ИМХО, ни в коей мере не претендующее на истину в последней инстанции. Просто тема очень близко пересекается с профессиональной деятельностью и мне бывает очень тяжело заткнуться при подобных обсуждениях.