Неважно, согласен я с Рафом Костером в каких-то моментах или нет, мне всегда нравилось в нём то, что он рассуждает о дизайне MMO много и на всех уровнях. Я вообще не представляю, как может быть иначе — если человек взялся делать игровой проект масштаба MMO, мне кажется, этому должны предшествовать не менее масштабные рассуждения, а не подходы, которые встречаются в жанре сейчас намного чаще: «об этом мы подумаем как-нибудь потом», «оно как-то само» и верх безответственности — «игроки сами что-нибудь придумают». Поэтому я так напрягся, когда мне показалось, будто замышляемый известным дизайнером MMO проект не столько игра, сколько аналог Roblox — платформы, на которой одни игроки пытаются создать нечто, напоминающее игры, для других игроков, думая о MMO-дизайне ещё меньше, чем профессионалы в «как-нибудь» и «что-нибудь».

Два предыдущих текста Рафа, возобновившего недавно еженедельное общение с аудиторией на страницах playableworlds.com, застали меня в отпуске. Наверное, это счастливое совпадение. Потому что у меня они вызвали в лучшем случае опасения, если не сказать разочарование. Я не успел поделиться этими не самыми лучшими эмоциями с вами, перед возвращением прочитав свежий текст Рафа «But First, the Game». Настроение улучшилось, а от прежних опасений почти ничего не осталось! Раф и его команда определённо делают игру, а все перечисленные подходы нужны им самим, но при желании могут послужить и кому-то другому. И это отличные новости.


Я, пожалуй, не буду переводить два предыдущих текста: «Online World or Metaverse?» и "Revealing our Technology", отчасти потому что давал уже ссылки на оригиналы, и многие из вас их прочитали, а ещё потому что без конкретики перевод этих текстов не имеет особой ценности.

Метавселенная — слишком далёкая мечта (да и к тому же не моя). Нам бы получить хотя бы один мир из этой вселенной, чтобы делать выводы о том, хотим ли мы следующие её части. А о технологии, думаю, мы ещё не раз поговорим в момент полноценного анонса того, что делает Раф Костер и его команда, когда появится куда больше детальной информации. Сейчас для меня важно то, что Раф в последнем тексте расставил собственные акценты и прояснил цели. Вот это, по-моему, вполне достойно детального перевода. Передаю слово Рафу Костеру.


В нескольких последних текстах я, возможно, потратил слишком много времени на популярные темы — метавселенная и технологии, стоящие за этим. Понимаю, это может сбить с толку.

Если я продолжу разбрасываться ещё более сложными техническими терминами — вроде того, как мы управляем Node.js со стороны нашего высокооптимизированного C#-бэкенда, создавая среду на основе TypeScript, чтобы код игровых механик мог меняться и загружаться без компиляции или рестартов — думаю, многие люди и вовсе уснут.

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

Фундаментальная истина
Чтобы делать более интересные игры, нам необходимо позволить разработчикам проводить итерации быстрее.

Медленные итерации означают снижение шансов на переработку геймплея. Это также приводит к повышению цены такой переработки, что в свою очередь ведёт к консервативному подходу в геймдизайне. Высокая цена новой попытки делает разработчиков намного менее склонными к риску.

Если мы окинем взглядом историю развития игр, то легко увидим периоды всплеска инноваций там, где происходило резкое снижение стоимости производства. Игры на технологии Flash, мобильные игры, распространение игровых движков Unity и Unreal: все они в итоге давали игрокам новый игровой опыт, потому что ценовой барьер производства игр резко снижался.

Что ж, в MMO этого не произошло. Барьеры только продолжили расти.

Причина, по которой мы строим платформу для метавселенной, в том, что, по своей природе, это должно привести к снижению барьеров.

Пример
Мы придерживаемся философии, которую можно описать так: «всё, что связано с игрой, это данные». Красивый способ сказать, что даже игровые правила сделаны в режиме «softcode» или «сценария», а не жёстко внедрены в тело игры. По сути, в этом нет новаторства или чего-то необычного.

Но давайте посмотрим, что это означает для разработчиков.

  • Нет необходимости компилировать код и создавать обновления. Напомню, что компиляция игрового клиента на Unreal может занимать многие часы.

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

  • На самом деле, даже несколько специалистов могут одновременно работать с живым сервером, наблюдая, как изменения внедряются в реальном времени, что ведёт к лучшему взаимодействию и итерации.

  • Это повышает шансы для нас нащупать интересный геймплей в игровых механиках.

  • Что менее очевидно, это даёт возможность A/B-тестирования. Традиционно его крайне сложно реализовать на уровне игровых механик в MMO (в то время как в секторе мобильных игр эта возможность широко применяется). А ведь такой подход драматически увеличивает балансирование и улучшение игры.

  • Наша технология предполагает множество маленьких кусочков кода. Если в одном из них появится ошибка, только эта маленькая часть прекратит работу. Остальная игра продолжит функционировать. Такой подход намного более мягок к возможным ошибкам, что ведёт к меньшему количеству падений или полностью сломанных механик.

Смысл в том, чтобы дать свободу творчества дизайнеру, сняв оковы традиционных утомительных и трудоемких итераций.

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

  • Нам не нужно обновлять программу установки, чтобы добавить что-то в игру; обновления появятся только тогда, когда нам действительно нужно будет внести изменения именно в клиентскую часть. Представьте, что было бы, если бы сайт Amazon требовал обновить ваш браузер каждый раз, когда добавляется новый товар в свой магазин. Звучит смешно, да? Но именно так действуют игры сегодня.

  • Новые визуальные части могут добавляться постоянно, а не только большими порциями.

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

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

Но даже перечисленное — лишь то, что лежит на поверхности.

Когда-то у нас была возможность легко поддерживать специальные наборы правил для разных игровых миров. Сегодня делать это намного сложнее. Времена, когда можно было иметь параллельные миры с различными правилами или даже с разным игровым окружением могут снова вернуться. (Кто-нибудь помнит Siege Perilous в Ultima Online?)

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

Мы можем создать «карманные» миры для арен, мини-игр или любого другого уникального игрового опыта. Мы можем предложить намного больше инструментов для организации специальных событий силами игроков: концертов, спортивных состязаний или конкурсов красоты.

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

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

Мир теперь не должен быть набором неизменных картонных декораций.

Динамический контент может меняться. Игроки могут воздействовать на него. Они могут оставлять свои следы в игровом мире.

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

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

Взгляд в будущее
Всё, о чём я говорил выше, даёт возможность нам, разработчикам, делать лучшие игры для вас, игроков.

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

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

  • Так как мы используем загружаемый контент, мы также можем дать возможность игрокам добавлять какой-то свой контент.
  • Так как миры загружаются и меняются на лету, мы можем дать возможность игрокам редактировать миры.
  • Скрипт, который мы используем, основан на широко применяемом языке, так что мы в какой-то момент сможет дать возможность игрокам добавлять собственные скрипты.
  • Вся платформа изначально разрабатывается как сеть миров, что даёт нам возможность сегментировать некоторые части без угрозы повредить основную игру, или вызвав проблему «TTP» (погуглите это (прим. переводчика: я сделал это за вас)), с которой сталкиваются многие игры.

Делаем ли мы что-то из перечисленного в списке «планов на будущее» сейчас? Нет. Мы создаём игру, используя эту технологию, а не просим, чтобы вы сделали игру вместо нас.

Почему? Потому что просить такое — явный перебор! Большинство людей не эксперты в дизайне MMO, или не готовы создавать целый MMO-проект с нуля!

У нас есть совершенно конкретный план:

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

  2. Построить на основе этой технологии игру. Доказав тем самым, что то, о чём мы говорим, реально.

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

Но нет смысла уделять всему этому много внимания, пока мы сами не сделаем отличную игру. Всё сказанное будет иметь значение, только если игроки будут в восторге. И это именно то, над чем мы будем работать в первую очередь. Крутой игровой опыт — наша главная цель.

Оригинал: www.playableworlds.com/news/riffs-by-raph:-but-first-the-game/

Автор:

Автор и основатель проекта «ММОзговед». Наш сайт сделан для того, чтобы все мы могли делиться своими впечатлениями о любимых MMO и мыслями по поводу важных для нас тем. У нас нет открытой или скрытой рекламы, мы принципиально работаем исключительно в интересах игроков. Если вы тоже считаете это важным, поддержите нас через Patreon. Вместе мы сможем больше.

15
  • Спасибо за вашу оценку!
    Узнайте, на что она влияет.

Опубликовать для всех!

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

Необходимо импульсов: 0   Ваш запас импульсов: 0

Материал издан и доступен всем!

Благодарим наших подписчиков за публикацию этого платного материала.

Kayf
1
Kayf
William_Godwin
2
William_Godwin
Ba_ke
3
Ba_ke
laugan
2
laugan
Dekadara
2
Dekadara

18 комментариев

avatar
В году этак 81-м, в нашем городе приступили к строительству метрополитена. В выпускном классе я радовался, что смогу, быть может, хоть пару курсов поездить в институт на метро… А потом развал СССР, независимость. Метро построили через 18 лет после окончания института, да и ветку к нему тянуть не стали.
К чему бы это я всё? :)
  • +3
avatar
«всё, что связано с игрой, это данные».
Всё, что вы увидите и услышите в нашей игре, будет загружаться на лету из облака, когда вам это потребуется.
Кажется, кто-то начал изучать не только прямых конкурентов, но и другие виртуальные миры типа Second Life.
  • +1
avatar
Тем более, что этот кто-то был здесь задолго до появления всех этих миров. ;)
Комментарий отредактирован 2021-09-20 17:25:28 пользователем Atron
  • 0
avatar
Звучит круто. Атрон, уже собираешься делать свою ММО на движке Рафа?

Всё, что вы увидите и услышите в нашей игре, будет загружаться на лету из облака, когда вам это потребуется
Забыли перечислить минусы такого подхода (передаю привет Эко):
* Игра долго запускается, так как при каждом запуске нужно загрузить мир с сервера
* Непрогружаемые игроки, станки и склады
* Бежишь или едешь по дороге — а она ещё не прогрузилась, падаешь в пропасть
* Нужно больше оперативной и видеопамяти, старые компы не тянут
  • 0
avatar
да и инет нужен неплохой будет
  • 0
avatar
Честно говоря статья оставляет ощущение как будто ее лет 20 назад написали.
  • +2
avatar
именно такое же впечатление, он что изобрел клиент-серверную технологию и яву?
  • 0
avatar
Это же надо в 2021 году грезить о централизованном, зависимом от каждого чиха Playable Worlds, сервере для метавселенной. Ну а пока Раф изобретает велосипед, я погуляю (в своём браузере, не скачивая обновлений, хаха):

Гм-гм. И что же мне сделать…
Сходить на концерт? Поиграть в одну из игр? Сделать свою? Продать может скинчик для персонажей на аукционе?
Комментарий отредактирован 2021-09-21 00:20:38 пользователем laugan
  • +2
avatar
Оп-па, а я и не догадался погуглить аналоги. Получается, технология не такая уж новая?
  • 0
avatar
Кажется, кто-то хочет перейти на DevOps! Давно пора =)
  • 0
avatar
В комментариях много снисхождения к «отставшему от поезда» Рафу Костеру, хотя напомню, что именно этот человек делал казавшиеся невозможными с технической точки зрения штуки в UO и SWG, когда практически все из нас даже не представляли, что такое MMO вообще. Окей, я не эксперт в технических вопросах и не буду спорить, но вот вам навскидку три свежих примера из 2021 года.

1. Уже месяц на нашем Eco-сервере люди не только не могут нормально ездить по дорогам, но и копать не могут тяжёлой техникой. Всё это довольно сильно деморализует, но разработчики ничего не могут сделать. Почему? Потому что с глюками на дороге довольно сложная проблема, делают патч, но делают долго, сложно исправить. Соответственно, другие исправления тоже откладываются, потому что всё это ведь надо скомпилировать в единое обновление и оттестировать, а малые патчи делать, как я понимаю, не спешат, потому что всё влияет на всё и лучше выкатывать единый патч.

2. Каждое обновление в Elite: Dangerous к вам приезжает шесть с лишним гигабайт. Если на следующий день будет обновление, будут те же шесть гигабайт. Я не знаю, что там во внутренней кухне, но не думаю, что каждое обновление содержит контента на шесть гигабайт. Вернее, я знаю, что не содержит. Просто вас проще заставить их качать снова и снова.

3. В закулисных откровениях вокруг New World от Джейсона Шрайера авторы New World признавались, что, по их мнению, «Lumberyard прикончит эту компанию». Потому что он невероятно медленно компилируется. Настолько медленно, что люди уходят смотреть сериалы на много часов, даже внеся небольшое изменение, или вынуждены ждать, когда изменения войдут в какой-то пакет для компиляции за один раз.

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

В сути, по-моему, он прав — чем проще вносить изменения, тем меньше консерватизма в геймдизайне, тем больше попыток «изобрести фан». Обновления без профилактик и перезагрузок — крутота, по-моему. Принципиально изолированные друг от друга части кода механик, чтобы не получать эффект домино, правя одно и ломая другое, или вообще всё, тоже очень круто. Да, я принимаю на веру слова Рафа. Но, простите, у него ведь есть заслуженная репутация. В техническом плане и UO и SWG уделывали своих современников не только в геймплее, но и чисто технически. Собственно, когда выходил Archeage, там ведь были обещания «мы дадим возможности UO». Дали где-то процентов сорок, но даже это было круто.
Комментарий отредактирован 2021-09-21 18:35:34 пользователем Atron
  • +3
avatar
Сказать действительно проще, чем сделать. В больших ММО такой подход по-прежнему никто не использует. Будем надеяться, что Раф и правда делает именно такую игру. И что дополнительные трудозатраты на реализацию этой идеи её не похоронят…
  • +1
avatar
Думаю, снисхождение связано со слишком общим описанием картины без конкретики. Под это описание подходит и Роблокс, и упомянутая выше ДецентраЛенд, и большой сервер Эко. Невозможно определить, действительно ли там есть что-то крутое, или это всё громкие слова, как «В нашей ММО вы можете быть кем угодно, у нас будет живой мир».

как мы управляем Node.js со стороны нашего высокооптимизированного C#-бэкенда, создавая среду на основе TypeScript, чтобы код игровых механик мог меняться и загружаться без компиляции или рестартов
Это, подкреплённое результатами тестов производительности и конкретными примерами багфиксов на лету, вызвало бы куда больше доверия.

На самом деле, если он круто сделает даже не новую концепцию — это уже будет прорыв. А то я вот зашёл по ссылке на ДецентраЛенд, там всё так тормозит, долго грузится, а вместо контента объявления игроков «продаю то, пишите в Дис», «продаю это, пишите в Дис». Где там игра — неясно.
  • +2
avatar
2. Каждое обновление в Elite: Dangerous к вам приезжает шесть с лишним гигабайт. Если на следующий день будет обновление, будут те же шесть гигабайт…

3. В закулисных откровениях вокруг New World от Джейсона Шрайера авторы New World признавались, что, по их мнению, «Lumberyard прикончит эту компанию»...

В SC тоже долгое время существовала проблема больших обновлений — небольшой хотфикс получался на несколько гигов, а при большом обновлении приходилось считай заново скачивать всю игру. В итоге разрабы решили данную проблему изменив структуру файлов игры. Почему разрабы NW не могут решить данную проблему в родственном Lumberyard — вопрос открытый.
  • 0
avatar
«Джекичанить» не будем. Вообще, всерьёз критиковать не вышедшую технологию — это что-то из Дон Кихота.

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

Вот что ответил г-н Костер:
This is actually a far more complex topic than most realize. «Centralized server» oversimplifies the question of real time sync interaction vs data sources vs data schema source vs rules vs data ownership. All of those are different, and all of those can be centralized or not.
Т. е. (если это не отписка) планируется нечто смешанное. Посмотрим.
Комментарий отредактирован 2021-09-22 21:53:44 пользователем laugan
  • +3
avatar
  • 0
avatar
Получается, он делает что-то типа браузера игр с определёнными стандартами 3Д-моделей?
  • 0
avatar
Добавлю и своё фи. Статья — детский лепет. Рассуждения о таких технических проблемах в наше время ждёшь от хорошего мидла, иногда даже от студента, а не от глвного идиолога разработки. А следовательно:

— либо он не консультировался с собственными разработчиками;
— либо у него такие разработчики;
— либо он просто транслирует текущий стек задач от разрабов, считая «раз они раньше делаются, значит они приоритетнее».

Все варианты плохи.
  • 0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.