Рубрика развивается при поддержке
Gamedev
Artyom Kaleev
4721

Космические дворфы: интервью с разработчиками Deep Rock Galactic Материал редакции

Про тонкости процедурной генерации и работы с сообществом.

В закладки
Аудио

Deep Rock Galactic — это кооперативный шутер, где матёрые дворфы добывают минералы в недрах планет, параллельно отбиваясь от волн больших жуков. Игра вышла в «раннем доступе» в Steam и Microsoft Store в начале 2018 года, и сейчас она продолжает набирать популярность. У нас на DTF был про неё материал.

Мы пообщались с создателями игры из датской студией Ghost Ship Games. Разработчики рассказали нам, откуда они черпали вдохновение, как им удалось реализовать процедурную генерацию в Unreal Engine 4 и почему коммьюнити-менеджмент — это важно.

Первым делом: почему именно дворфы?

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

Затем мы решили поместить их в космос и дать им пушки — и так всё стало ещё интереснее. Первоначально мы думали, что выбор в пользу одних лишь дворфов сильно нас ограничит, однако потом выяснилось, что очень многим игрокам нравится за них играть.Так что мы решили развить эту тему и вывести дворфо-ориентированный геймплей на новый уровень!

Ghost Ship Games основали ветераны индустрии — в том числе люди, ответственные за Hitman: Blood Money или Kane & Lynch. Насколько вам пригодился опыт создания ААА при работе над Deep Rock Galactic, которая кардинально отличается от всех этих тайтлов?

С: люди, у которых уже есть опыт разработки игр, нам сильно помогли — так что мы не тратили много времени на создание вещей, которые того совсем не стоят. Более того, Deep Rock Galactic — это по своей сути шутер, и для нас было очень важно иметь в запасе несколько человек, которые знают, как их делать.

Deep Rock Galactic использует Unreal Engine 4, при этом в самой игре вы реализовали полноценную генерацию уровней. Как вам это удалось? Вы переписывали движок или использовали его инструменты?

Хенрик, технический директор: да, это наш самописный код. Всё окружение состоит из 3D-сетки, где каждый «куб» — это BSP-дерево (Binary Space Partitioning, двоичное разделение пространства — DTF). BSP даёт объёмное представление мира с произвольной сложностью. Так у нас получается использовать операции конструктивной сплошной геометрии — для того, чтобы мир был полностью разрушаемым.

Для рендеринга же мир тесселируется из BSP каждый раз, когда с ним происходят изменения.

Как устроена система генерации мира? Какие принципы и подходы лежат в её основе?

Фран, геймдизайнер: как и в большинстве других игр с процедурной генерацией, все уровни состоят из «комнат». В нашем случае «комнаты» это пещеры, соединённые туннелями, которые также могут пересекаться — чтобы создавать большие и непредсказуемые расщелины. Однако, в отличие от остальных игр, сама форма пещер в «комнатах» у нас сделана вручную (в которых, кстати, есть множество случайных элементов, чтобы каждый раз они ощущались по-новому).

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

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

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

А что насчёт жидкостей? Планируете добавить их в игру?

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

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

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

Мы продолжаем её улучшать, и одним из последних нововведений была упрощённая симуляция физики для навигационных мешей, которую мы используем для резвых существ вроде Q'ronar Shellback, катающегося вокруг, или Nayaka Trawler, стреляющего через всю карту.

Лично для меня ваш сеттинг уж больно сильно ассоциируется с Minecraft. Вдохновлялись ли вы ей? Например, при создании генератора уровней или чего-нибудь ещё.

С: да, мы вдохновлялись Minecraft — как минимум в том плане, что в ней вы можете наткнуться на огромную сеть подземных пещер и исследовать её. Так что Minecraft была для нас скорее источником опыта, нежели каким-то набором техническим решений.

Deep Rock Galactic достаточно нетребовательна и может работать даже на относительно слабых ПК. Собираетесь ли вы использовать это преимущество, скажем, для портирования на Switch?

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

В сообществе Steam игроки столкнулись с проблемой отсутствия кроссплея, в то время как при покупке в магазине Xbox он работает. Собираетесь ли вы налаживать кроссплей между всеми платформами? Какими трудностями обусловлена эта работа?

С: на обеих платформах (Steam и Xbox/Windows 10) мы используем P2P-решение, основанное на сетях владельцев платформ — Valve и Microsoft. Мы ограничены возможностями этих сервисов, поэтому кроссплей между Steam и Xbox мы сделать не можем.

Мы серьёзно копались в этом всём, чтобы решить проблему — однако для хорошей реализации нам понадобятся серьёзные вложения и денег, и свободного времени. Так что кроссплей пока отложен — по крайней мере, пока игра находится в «раннем доступе». Некоторые идеи того, как его можно реализовать, есть, но их нужно адаптировать под P2P, а также подключить к хорошим серверам.

Недавно в сообществе инди-разработчиков был скандал по поводу автоматического регионального ценообразования в Steam, из-за которого авторы даже не видели, какая низкая цена стоит у их игры в некоторых регионах. Судя по тому, что на Xbox и в Steam у DRG в России стоит примерно одинаковая цена (примерно 500 рублей против 30 долларов в США), на Valve вы не полагались и выставили цену сами. Что вы об этом думаете?

С: конкретно об этом случае я не слышал, но региональное ценообразование всегда существовало — Valve его не изобрела. Вообще, это в интересах издателя и разработчика — всегда проверять цены и общаться с представителями платформы, если что-то не так. Для Deep Rock Galactic мы проверяли цены в последний раз в марте 2019 года, когда увеличили стоимость с 25 долларов до 30 в США — совместно с нашим издателем, Coffee Stain Publishing.

Цена Deep Rock Galactic основана на предложенных значениях в Valve и Microsoft — мы лишь сделали небольшую проверку тех регионов, где разница между платформами была уж слишком высока. Насколько я помню, в России эти значения от обеих компаний совпали, так что мы сошлись на этой цене.

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

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

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

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

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

Джейкоб, коммьюнити-менеджер: лично для меня срабатывает то, что я сам — часть сообщества. Я провожу много времени в нашем Discord-канале и социальных сетях, отвлекаюсь на то, чтобы ответить людям, шучу и публикую мемы с гифками. Это может показаться чем-то простым, однако на деле работы куда больше. Ты хочешь, чтобы люди отвечали тебе, реагировали на тебя, и я счастлив работать над игрой, в которой много чего подходит для моего рода занятий.

Мы получаем много фидбека, и наши дизайнеры его изучают. Что-то из этого я откапываю сам и отношу к ним, но в основном они сами следят за каналами с предложениями. Мы постоянно чиним баланс и вещи, которые могут испортить опыт игроков — фидбек про них как раз самый важный. Также иногда мы черпаем из Discord идеи для контента, однако с ними работать намного сложнее: предложения должны отвечать видению дизайнеров. Это тоже важный фидбек, потому что он может заставить нас обратить внимание на другие вещи или вдохновить на нечто совершенно иное — поэтому плохих предложений не бывает.

Какие способы и каналы продвижения оказались наиболее эффективными для вашей игры?

С: у меня была целая лекция по этому вопросу! Если кратко, то нужно приложить усилия по всем способам и каналам продвижения, которые дают прирост. Лично нам помог трейлер на Е3 2018, трансляции стримера Lirik и бесплатные выходные альфа-версии. В конечном итоге это довольно рано склонило нас к стратегии открытой разработки и построения сообщества, которое сильно помогло в распространении вестей об игре.

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

С: когда ваша игра выходит в Steam, необходимо сосредоточиться на том, чтобы как можно лучше усилить эффект от релиза. Большую часть маркетинга мы провели до даты выхода — в основном мы строили сообщество и придавали игре узнаваемость. Сейчас мы в совсем другой ситуации — платформа Steam может помочь в рекламе игры, однако это потому, что у нас был удачный запуск. В «раннем доступе» мы лишь стараемся стабильно публиковать хорошие обновления и участвовать в распродажах. Всё это нам хорошо помогает.

{ "author_name": "Artyom Kaleev", "author_type": "editor", "tags": ["\u043e\u043f\u044b\u0442","\u0431\u0435\u0441\u0435\u0434\u0430","deeprockgalactic"], "comments": 23, "likes": 79, "favorites": 74, "is_advertisement": false, "subsite_label": "gamedev", "id": 62775, "is_wide": true, "is_ugc": false, "date": "Wed, 07 Aug 2019 17:14:48 +0300", "is_special": false }
0
{ "id": 62775, "author_id": 17412, "diff_limit": 1000, "urls": {"diff":"\/comments\/62775\/get","add":"\/comments\/62775\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/62775"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }
23 комментария
Популярные
По порядку
Написать комментарий...
28

Офигенная игра. Уже больше года играю, ни разу не встречал грубых игроков, посылов нахуй и прочего негатива. Всегда, когда присоединяешься к кому-то, тебя приветствуют дружными криками "ROCK AND STONE!" и в этом духе. Буквально на днях лампово отыграл с парой болгаров, добавились в друзья, порой приглашают играть.

В общем, рекомендую игру. Коммьюнити заебись, да и однообразное копательство не надоедает никак, не пойму сам, в чём секрет.

Ответить
0

Хмммс, я только пиратку пробовал на "посмотреть" крутой движок, но как-то не увидел потенциала. Неужели прям хорошо всё или народ просто пересел с одной однообразной игры в другую?
p.s. онлайн чет как-то слабоват -_- https://steamcharts.com/search/?q=Deep+Rock+Galactic
з.ы.ы. почему никто не сделает такую штуку во вселенной Alien'ов??!!! оно ж раньше то было, ещё в старых частях >_<

Ответить
6

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

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

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

Ответить
1

Недавно приобрел и мне понравилось, даже с рандомами играть приятно, пати ищется достаточно быстро.

Ответить
0

Не знаю насчет потенцевала, но эта игра забрала 30 часов моей жизни за 2 выходных и даже не надоела. Генерация уровней, множество различных ситуаций, позиционных задач, вот это вот все просто топ.

Ответить
0

Неужели прям хорошо всё или народ просто пересел с одной однообразной игры в другую?

Классы, биомы, типы миссий, уровни сложности, модификаторы и прокачка. Пока базовую половину освоишь несколько десятков часов незаметно пролетают.
p.s. онлайн чет как-то слабоват -_- https://steamcharts.com/search/?q=Deep+Rock+Galactic

Игроков правда не много, но это незаметно т.к. нет задержек при поиске пати.

Ответить
0

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

Ответить
0

А чего так, на мелкомягкой? Там оказывается игры есть?

Ответить
0

Там есть кроссплей с боксом например, да и раньше, как минимум, можно было в дрг по подписке играть. Есть свои плюсы

Ответить
0

Эээ, а как бы приобрести его в Microsoft Store? Там вообще только по карточке, которой нет -_- а есть только вэбмани без аттестата

Ответить
8

Надо короче свою бригаду гномов собирать, вона уже сколько нас)

Ответить
0

ребят, если найдёте продажу ключей для снг в пределе 700-800 руб маякуйте

Ответить
6

Разработчики и правда молодцы.
Во-первых, это правильный early acces с регулярным апдейтами.
Во-вторых, они действительно слушают игроков. Люди жалуются на поломанный баланс оружия или врагов, спустя неделю-две выходит патч, который это фиксит, а ведь речь о PVE игре.
Тот же упомянутый Jacob, вроде со стороны его слова про работу с сообществом звучат довольно стандартно, но он и правда очень активен в твиттере и сабреддите игры. Постоянно от него какие-то шуточки и намеки/гифки предстоящего апдейта, пару раз выкладывал видосы, как он с девбилдом дурачится.
Каждый день пишет: https://www.reddit.com/user/GSG_Jacob/

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

Ответить
2

А вот и очередное баловство с девбилдом от Джейкоба.
https://www.youtube.com/watch?v=jjGfYMuV2dE

Ответить
3

Топ игра
Оч нрав
Но быстро надоедает

Ответить
2

используем для резвых существ вроде Q'ronar Shellback, катающегося вокруг, или Nayaka Trawler, стреляющего через всю карту

Не знаю чья именно, но ошибочка. Nayaka Trawler - это местный мини-аналог ШаиХулудов, они не стреляют, а таранят или хватают дворфов и тягают их по карте. Стреляют через всю карту Glyphid Menace.
https://www.youtube.com/watch?v=nNdTzqiQqxo

Ответить
1

Когда думаю о дворфах, добывающих золото в глубоких, опасных шахтах, на ум приходит это: https://www.youtube.com/watch?v=34CZjsEI1yU

Ответить
0

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

Ответить
0

170 часов с мая наиграл, игра радует. Ждёмс обновления в сентябре)

Ответить
0

Почитал комментарии, походу надо брать. Давно ищем с друзьями во что поиграть помимо радуги.

Ответить
0

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

Ответить
0

Топовая игра для любителей ко-опа за смешные деньги.

Ответить
–1

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

Ответить

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovz", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]