Сведения о вопросе

DED

21:23, 7th August, 2020

Теги

Проект Darkstar Реалистичен?

Просмотров: 574   Ответов: 7

Проект Darkstar был темой ежемесячной встречи JavaSIG в офисах Google в NYC прошлой ночью. Для тех, кто не знает (вероятно, все), Project Darkstar-это платформа для многопользовательских онлайн-игр, которая пытается позаботиться обо всех "hard stuff." основная идея заключается в том, что вы пишете логику своего игрового сервера таким образом, что все операции разбиваются на крошечные задачи. Вы передаете эти задачи в Project Darkstar framework, который обрабатывает их распределение на определенный узел в кластере, любые проблемы параллелизма и, наконец, сохранение данных.

По-видимому, делать такие вещи-это совсем другая проблема для видеоигр, чем для корпоративных приложений. Джим Уолдо, который читал лекцию, утверждает, что MMO игры имеют отношение DB чтения/записи 50/50,, тогда как корпоративные приложения больше похожи на 90% чтения, 10% записи. Он также утверждает, что большинство существующих MMOs хранят все в памяти exlcusively, и только сбрасывают в DB каждые 6 часов so. Это означает, что если сервер выходит из строя, вы потеряете всю работу с момента последнего дампа DB.

Теперь, сам проект звучит действительно круто,но я не думаю, что индустрия примет его. Во-первых, вы должны написать свой код сервера в Java. Клиентский код может быть написан на чем угодно (Джим утверждает, что ActionScript 3 является самым популярным, а затем C++), но серверный материал должен быть Java. Звучит хорошо для меня, но у меня действительно создается впечатление, что все в игровой индустрии ненавидят Java.

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

Итак, ребята из проекта Darkstar просто теряют свое время? Может ли общая структура, подобная этой, действительно работать для сложных игр с требуемой производительностью? Даже если это действительно работает, готовы ли игровые компании использовать его?



  Сведения об ответе

Chhiki

09:27, 21st August, 2020

Edit: это было написано до того, как Oracle купил Sun и начал буйствовать, чтобы убить все, что не приносит им миллиард долларов в день. Смотрите комментарии для OSS Fork. Я все еще придерживаюсь своего мнения, что такие вещи (MMO Middleware) реалистичны, вам просто нужна компания, которая не отстает от этого.

На рынке может доминировать несколько крупных игр, но это не означает, что нет большого пространства для более нишевых игр. Давайте посмотрим правде в глаза: Если вы хотите достичь 100.000+ игроков, вы в конечном итоге создаете свой собственный технологический стек, по крайней мере для критического ядра. Это то, что CCP сделал для EVE Online (StacklessIO), это то, что Blizzard сделала для World of Warcraft (хотя они используют много сторонних библиотек), это то, что Mythic сделал для Warhammer Online (хотя они основаны на Gamebryo).

Однако, если вы стремитесь быть маленьким, нишевым MMO (как десятки Free-to-Play/Itemshop MMOs), то получить правильный сетевой материал просто безумно трудно, согласованность данных еще сложнее, а масштабируемость-самая большая b*tch.

Но игровые технологии - это не единственная ваша проблема , вам также нужно решить Биллинг. Только кредитная карта? Тогда получайте удовольствие от продажи в Германии, люди там хотят ELV. Вот где вам нужен надежный поставщик услуг по выставлению счетов, но вам все равно нужно подключить приложение для выставления счетов с вашими учетными записями, чтобы убедиться, что учетные записи заблокированы/повторно активированы, когда не удается выставить счет.

Есть некоторые компании, уже предлагающие "MMO Infratructure Services" (например, Arvato EEIS), но суть такова: вещи вроде Project Darkstar IS реалистичны, но предположение, что вы можете построить Multi-Billion-MMO полностью на стороннем стеке, оптимистично, возможно, идеалистично.

Но опять же, полностью изобретать все эти технологии еще более глупо - использовать сторонние вещи, которые вам нужны (например, Биллинг, рендеринг шрифтов, аудиовыход...), но напишите то, что действительно делает или ломает ваш бизнес (например, сетевой стек, пользовательский интерфейс и т. д.) сам по себе. (Примечание: сообщение Джеффа может быть немного ошибочным, но общее направление является правильным IMHO.)

Дополнение: кроме того, игровая индустрия очень часто лицензирует и повторно использует движки. Наиболее известными игровыми движками являются Unreal Engine , Source Engine и id Tech , которые питают десятки, если не сотни игр. Но есть и менее известные (за пределами отрасли) двигатели. Существует Gamebryo, промежуточное программное обеспечение для таких игр, как Civilization 4 и Fallout 3, было RenderWare , которое теперь только EA-in-House, но используется в таких играх, как Battlefield 2 или The Sims 3. Существует открытый исходный код Ogre3d, который использовался в некоторых коммерческих названиях . Если вы просто ищете звук, есть такие вещи, как FMOD или если вы хотите сделать рендеринг шрифта,почему бы не дать FreeType вращаться?

Я хочу сказать, что сторонние движки / промежуточное программное обеспечение действительно существуют, и они ARE успешно используются уже более десяти лет (я точно знаю, что двигатель Wolfenstein id был лицензирован другими компаниями, и это было в 1992 году), даже крупными компаниями в названиях multi-million-dollar. Самое главное-это поддержка, потому что хороший движок без помощи в случае возникновения проблемы в значительной степени бесполезен или, по крайней мере, очень дорог, если разработчику приходится тратить свои game-development-time на ненужную отладку движка.

Если людям из Darkstar удастся получить правильную сторону поддержки и 2 или 3 более высоких названия профиля, я действительно верю, что это может преуспеть в открытии рынка MMO для гораздо более мелких разработчиков и индий.


  Сведения об ответе

SILA

08:01, 20th August, 2020

Для меня это звучит как бесполезная техника. Мир MMO контролируется несколькими крупными игровыми компаниями,которые уже имеют свои собственные технологии. Разработчики инди-игр любят пытаться построить MMO-е, и иногда они это делают, но эти игры редко набирают обороты. Более крупные компании, вторгающиеся в мир MMO, вероятно, лицензируют "proven" технологию или расширяют свою собственную.

Игровые компании повторно используют огромное количество кода от игры к игре. Большинство / многие игровые компании разработали свои собственные технологии внутри компании и используют их в каждой игре, которую они производят. Иногда они будут делать что-то вроде замены своего физического кода на физический движок третьей стороны. Если их внутренняя кодовая база (игровой движок, инструменты проектирования, внутренний конвейер) начинает слишком стареть или становиться громоздкой, они могут переключиться на один из больших игровых движков, таких как Unreal. Даже тогда основные фрагменты кода будут по-прежнему использоваться повторно от игры к игре.


  Сведения об ответе

VERSUION

18:57, 1st August, 2020

Из того, что я могу сказать, компании по производству видеоигр не используют большую часть своего кода, потому что если они это делают, это означает, что их новая игра-это просто повторение старой.

Хм... если вы имеете в виду длинный хвост компаний по производству видеоигр, возможно. В компании, у которой была серия успешных игр, обычно есть некоторая доля повторного использования. Серьезные изменения в аппаратном обеспечении могут привести к потере большого количества работы, но это действительно зависит от компании.


  Сведения об ответе

lourence

17:54, 4th August, 2020

Я думаю, что это очень хороший поступок. Разработчикам не нужно беспокоиться обо всех этих вещах, о которых заботится проект darkstar, и он очень прост в использовании. Но речь идет не только о том, чтобы заставить его работать и не нужно изучать все об интернет-коммуникации, но и о производительности. Проект darkstar находится в стадии разработки уже более 2 лет,и он продолжает становиться все лучше, быстрее и надежнее.

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


  Сведения об ответе

VCe znayu

10:55, 23rd August, 2020

Это звучит как забава для дизайна и кода, но я думаю, что в конечном итоге все сводится к бесполезным абстракциям (чтобы украсть у Джоэла).


  Сведения об ответе

#hash

09:55, 19th August, 2020

Это очень распространенное явление для игр, чтобы повторно использовать "game engines," даже те из третьих сторон. Это звучит как еще один шаг в этом направлении.


  Сведения об ответе

LAST

04:10, 9th August, 2020

Я не работаю в игровой индустрии, но мне кажется, что это будет делать то же самое для видеоигр, что сделали двигатели Quake и Half-Life. То есть они будут способствовать тому, чтобы молодые разработчики заинтересовались индустрией и способствовали развитию инди-игр.

Из того, что я могу сказать, компании по производству видеоигр не используют большую часть своего кода, потому что если они это делают, это означает, что их новая игра-это просто повторение старой. Каждый хочет новый крутой физический движок, лучшую графику, новые способы играть в игру. Большинство игровых движков и фреймворков созданы для конкретного сценария и поэтому не очень гибки к другим ситуациям.

Может быть, Даркстар все же правильно поймет, но я немного сомневаюсь в этом, так как обобщение работает только для очень многого.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться