?

Log in

No account? Create an account
10 фев, 2007 @ 19:19 какие нынче server-side ММО-движки рулят?
интересно с пристрелом в очень ближнее будущее, ну и в более отдалённой перспективе.

или все же верно мнение

"нет никаких серверных движков и не будет. есть только двиг, который сам себе воздвиг!"

?..

з.ы. я сейчас еще про клиента то же самое спрошу
protein, bio, testosterone, peptide
neurosurg:
From:gamedeveloper
Date:Февраль, 10, 2007 20:51 (UTC)
(Ссылка)
Что есть сервер сайд ММО движок? ММО по определению сервер сайд. Не считая теоретических китайских проработок на тему пир2пир ММО игр, которые ИМХО есть тупиковый вариант.

Не вижу смысла прыгать по сообщениям, писать дальше буду тут.
(Ответить) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 10, 2007 21:00 (UTC)
(Ссылка)
ММО движков (а только движки с наличием сервера могут считаться полноценными ММО движками) как мидлвари, в мире немного. Из платных это Хиро Енжин и БигВолдТеч, из бесплатных - Мультиверс (но там куча нюансов), Небула девайс и Невракс Енжин Лайбрари.

Правильно построенная ММО система будет состоять из нормального 3д движка (безо всяких ММО, типа Кристал Спейс\ТГЕ\Анрил3) и нормального кластера (шард или грид - зависит от целей). Протокольная часть обычно не представляет проблем для разработчика, хотя бы 2-3 года поработавшего с сетью. Она многоуровневая, с поддержкой ЮДП\ТСП и опционально - ХТТП на крайний случай.

Жду продолжения банкета, то есть адекватного общения от тех, кто "в теме". Иначе разговор быстро наскучит.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 01:37 (UTC)
(Ссылка)
а что нормальные 3д-движки не надо напильничком обходить для собственно MMO-специфики? Просто купил движок, 3Д-мир тулзой арт-дизайнеры сделали, дилоги, худы заскриптили и... -- прямо в бой?

подозреваю, что существует некоторое количество особенностей привнесённых именно засчет ММО-неприятностей. и не все движки наверное к этому полностью готовы. или?
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 13:05 (UTC)
(Ссылка)
Не напильником, мотопилой там дорабатывать придется. Наличие готового работающего 3д движка сэкономит Вам времени процентов 50. Готовый ММО движок сэкономит времени на разработку _кода_ процентов 80-90, но бесплатных их и тем более опенсорсных не встречал. BigWorldTech или Hero Engine - почти законченные ММО решения, программировать не надо (хотя надо гейм дизайнить, администрировать, рисовать арт, скриптовать, писать сценарий и так далее). Но ценник - 6-7 значный.

Все остальное надо пилить, долго и интенсивно. И протокольная часть (сетевая подсистема) 3д движка - наверное одна из самых маленьких проблем на этом пути.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 13:21 (UTC)
(Ссылка)
gamedeveloper, ваша позиция звучит противоречиво. в смежном топике о клиентах вы писали:

"2. Нет смысла говорить о клиентских ММО движках, поскольку они ничем не отличаются от простых 3д движков (безотносительно к ММО и к клиенту)."

а тут о этих же 3д движках в том же MMO-контексте пишете:

"Не напильником, мотопилой там дорабатывать придется."

вы уж определитесь пожалуйста.
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 13:27 (UTC)
(Ссылка)
Я определился лет 5 назад. Допиливать придется клиентскую часть ММО движка, как ее ни называй, 3д движком, клиентским ММО движком или просто горшком. Где Вы там умудрились найти противоречие?
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 13:41 (UTC)
(Ссылка)
"Я определился лет 5 назад. Допиливать придется клиентскую часть ММО движка, как ее ни называй, 3д движком, клиентским ММО движком или просто горшком. Где Вы там умудрились найти противоречие?"

хорошо. перефразирую ваши утверждения как они видятся мне: с одной стороны вы пишете, что любой 3д-движок подходит для ММО вполне _хорошо_, с другой стороны вы пишете что дорабатывать там надо _много_. но "подходит хорошо", и "дорабатывать много" -- это вещи не слишком совместные.

вообще, вы вполне хорошо дали понять, что фокус вашего внимания сегодня принадлежит серверной части, но проблема значительных доработок нынешних 3д-движков, чтобы превратить их в полноценную "клиентскую часть ММО движка" видимо-таки существует? или?
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 20:01 (UTC)
(Ссылка)
Большинство 3д движков одинаково подходит (или одинаково не подходит) к ММО. Впрочем сделать его минимально подходящим - не очень большая проблема для любого движка (тут на первый план выходят именно 3д качества движков, а никак не ММО-ready).
Наверное пора разобрать, какие вообще 3д движки бывают и какие из них подходят для ММО игр.
Итак
Ни один автнономный 3д движок (то есть не входящий в состав клиент-серверного ММО движка) в чистом виде не подойдет для ММО игры. Для этого ему как минимум нужно уметь перехватывать ввод от юзера (мышь\клавиатура\джойстик\речевой ввод\какой-там-еще-придумают), обрабатывать (транслировать в систему команд протокола) и отправлять на сервер. А потом с сервера принимать команды на изменения состояний объектов и отрисовывать их. Этим занимается сетевая подсистема. Замечу, что движки с поддерожкой мультиплеера (типа Анрил\Квейк) для этого тоже не годятся - они общаются с сетью в терминах, удобных для локальной сети, но никак не для интернета.

Кроме сетевой подсистемы клиентскому движку нужны как минимум:
- интерфейс к рендеру (обычно D3D, опционально OpenGL\Glide\далее везде)
- система автообновления при запуске
- система динамического обновления контента
- отрисовка больших пространств\склейка локаций

Можно добавить еще много дополнительных (необязательных, но крайне желательных) модулей:
- пасфайндинг
- скриптинг
- рендеринг террейна
- отрисовка среды (трава\деревья)
- физика
- работа с аватарами (чарген\фейсген)
- подсистема анимаций, эффектов
и так далее.

Ни один автономный (и тем более опенсорсный) 3д движок не обладает всеми перечисленными качествами. Соответственно даже самый последний Анрил3 все равно придется дописывать, много и нудно. Поэтому говорить о готовности или неготовности движка для ММО смысла нет - не готовы все. Пилить придется тоже все. Вопрос в количестве надпилов. А главный вывод по требованиям к 3д движку - он должен быть модульный. Монолиты практически нежизнеспособны.

PS: Вот пишу и пытаюсь понять - зачем оно мне надо? :) Написал 1% от того, что стоит написать по клиентской части и 0.1% - по серверной и протокольной. Возьму паузу и посмотрю, перейдет ли монолог в диалог, взаимнополезный (и для меня тоже)? Если да, наверное продолжу ;)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 20:18 (UTC)
(Ссылка)
(с меня вам прямой пользы не будет, но) прочитал с большим интересом и удовольствием. большое спасибо.

З.Ы. вспоминается одна старая басня. если профессиональный музыкант вредничает и не хочет на вечеринке ничего сыграть, то подойдите к его любимому инструменту и начните одним пальцем наигрывать "чижик-пыжик где ты был."
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 20:23 (UTC)
(Ссылка)
Да я собственно пока только прописные истины начал писать. На какой-нибудь гамасутре или по материалам АДКОК конференции инфы на 3 порядка больше.

Тут дело не во вредности. У музыканта задача такая - творить и сеять разумное-доброе-вечное. В том числе вероятно среди коллег. Мне же интересен обмен мнениями. Поэтому на чижиков-пыжиков буду реагировать вполне нейтрально. Можно попробовать ;)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 20:30 (UTC)
(Ссылка)
"Да я собственно пока только прописные истины начал писать. На какой-нибудь гамасутре или по материалам АДКОК конференции инфы на 3 порядка больше."

мне (слава всевышним) не нужны детали коих и на 6 порядков больше быть может.


"Тут дело не во вредности. У музыканта задача такая - творить и сеять разумное-доброе-вечное. В том числе вероятно среди коллег. Мне же интересен обмен мнениями. Поэтому на чижиков-пыжиков буду реагировать вполне нейтрально. Можно попробовать ;)"

а давайте смотреть на вещи именно так как _вы_ любите, то есть прагматично: если не будет площадки с контентом то люди не будут задерживаться. если не будет высказываться серьезных профессиональных выпадов-мнений, то и не будут приходить другие профессионалы отвечать.

в этом ключе спрошу:

а какой из опенсорсовых 3д-движков наиболее перспективен в смысле допиливания под ММО? и есть ли вообще такие?

(если возможно, ответьте в соседнем топике про 3д-движки, а то глубоко закопанную кашу далеко не все любят)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 11, 2007 01:28 (UTC)
(Ссылка)
"Что есть сервер сайд ММО движок? ММО по определению сервер сайд"

?..


"Не считая теоретических китайских проработок на тему пир2пир ММО игр, которые ИМХО есть тупиковый вариант."

если часть ММО удовольствий превратится в повседневные сервисы, то однажды это будет не сотни тысяч пользователей, и даже не сотни миллионов. p2p будет. вопрос лишь времени. моя ставка -- не пройдёт и 15 лет. пришлите мне ящик хорошего красного сухого вина, если я окажусь прав. актуальный адрес я сообщу дополнительно :)

(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 20:29 (UTC)
(Ссылка)
Еще допишу немного про состав типовой серверной части ММО движка:

- сервис регистрации
- сервис авторизации
- БД
- сервис кеширования БД
- сервис логирования
- собственно гейм сервер
- опционально сервис АИ\НПЦ\мобов

Тут нет ни слова о кластеризации. Функионально ее можно делать прямо по сервисам (хотя они слишком неравнозначные по нагрузке). А вот при увеличении игрового мира\населения рано или поздно встанет вопрос о кластеризации сначала гейм сервера (шард, либо грид), а позже и базы данных. Вот эти вещи как раз и есть самое интересное для реализации ;)
(Ответить) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 11, 2007 20:30 (UTC)
(Ссылка)
Сверху разумеется живут всякие мониторилки, оповещалки, админки, бекапилки и резервилки, но они все же вторичны.
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:(Анонимно)
Date:Февраль, 12, 2007 17:20 (UTC)
(Ссылка)
Поскольку, тоже потихоньку приобщаюсь к миру ММО девелоперов, позволю и себе внести свои 5 коп.

1. А как насчёт сервер-сайд физики? ;)
2. Или, сервиса администрирования, который физически есть отдельной частью, но фактически вынужден несколько прирости к серверу?
3. Я бы также предложил выделить в качестве отдельного сервиса, сервис аудита действий пользователя (авто-детекция читов).

Кстати, сервис регистрации, насколько я себе представляю, реализуется либо в составе сервиса авторизации, либо в виде отдельной подсистемы, которая работает напрямую с БД через вэб-интерфейс (т.е. регистрация на сайте).
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 12, 2007 20:30 (UTC)
(Ссылка)
Тут анонимно тоже можно писать? Как-то не хочется общаться с анонимом. Вы может откроете личико? Я тогда и отвечу :)
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 12, 2007 21:13 (UTC)
(Ссылка)
"Вы может откроете личико?"

блин, ну кто ж после такого выпада откроется? убили оратора!..
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:(Анонимно)
Date:Февраль, 13, 2007 16:47 (UTC)
(Ссылка)
Нас так просто не запугаешь :)

У меня на жж личика нету - так открыл бы.
Регистриться ломает на самом деле.

По своему опыту, если человек не хамит, то ответить не гнушаюсь даже и анониму ;)

Для частичного обличения подпишусь всё-таки.

Алекс.
(Ответить) (Уровень выше) (Ветвь дискуссии)
[User Picture Icon]
From:neurosurg
Date:Февраль, 13, 2007 17:13 (UTC)
(Ссылка)
ну смею заверить регистрилка тут на 1-2-3.
"нет минуты как вы тута"
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:(Анонимно)
Date:Февраль, 13, 2007 18:43 (UTC)
(Ссылка)
Конечно! Как и на тысячах других сайтов ;)

Вообще, не вижу проблемы, если есть общая тема и есть нормальные собеседники.

З.Ы. Если отсутствие аккаунта есть проблема - то могу исчезнуть, что бы не отвлекать.
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:_zerg
Date:Февраль, 14, 2007 16:50 (UTC)
(Ссылка)
К этому списку могу добавить систему обмена сообщениями
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:_zerg
Date:Февраль, 14, 2007 16:52 (UTC)
(Ссылка)
Вы можете пояснить, что такое "гейм сервер" в данном списке, и почему нпц/мобы вынесены в отдельный сервис. И отдельный сервис это что?
(Ответить) (Уровень выше) (Ветвь дискуссии)
From:gamedeveloper
Date:Февраль, 14, 2007 17:21 (UTC)
(Ссылка)
Гейм сервер в игровом продукте - примерно то же самое, что application сервер в обычном неигровом софте. Собственно та часть, которая выполняет целевую задачу. НПЦ\мобы вынесены в отдельный сервис как существенная часть проекта с отдельным функционалом. При этом они могут входить составной частью например в гейм сервер.
(Ответить) (Уровень выше) (Ветвь дискуссии)