Gamedev Глеб Диденко
2 277

История разработки «Dead Shell: подземелья мёртвых»

Продюсер HeroCraft Андрей Суров рассказал DTF, как создавался мобильный инди-рогалик.

В закладки
Андрей Суров

HeroCraft издал игру студии Negatone — маленькой команды из Ульяновска, в которой работают всего два человека: художник Антон Парамонов и программист Александр Ломакин.

Dead Shell

Антон долго горел желанием сделать ретро-игру: рисовал наброски и искал единомышленника. Им стал Александр, как и Антон любивший Doom, ретро-шутеры и рогалики.

Самый первый прототип состоял только из плашек, таких падающих SMS-ок, и назывался Dead Shell: Message Roguelike. Придумывая его, Антон и Александр задавали себе вопрос: «Как бы выглядела RPG для ленивых?». Идея была в том, что мобильная RPG не должна заставлять игрока совершать скучные действия. Всё необходимое должно быть на экране, чтобы пользователю оставалось только тапнуть в нужное место.

Предполагалось, что игрок не захочет читать объёмный текст. Решили использовать что-то вроде баннеров, красивые панельки с иконкой действия: быстро и понятно. Они выводились поочерёдно, чтобы не захламлять весь экран.

Первый прототип Dead Shell

Улучшая и упрощая дизайн, они пришли к следующему варианту:

Второй прототип Dead Shell

Примерно за две недели они сделали прототип с элементами геймплея:

С ним они пришли издаваться к нам, в HeroCraft. Игра понравилась экспертному совету, мы пообщались с Антоном и Александром и решили её развивать.

Александр нашёл любопытный алгоритм внедрения процедурно-генерируемого лабиринта на одном из геймдев-форумов и примерно за две недели реализовал его в игре.

{ "items": [{"title":"\u0420\u0430\u043d\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f Dead Shell","image":{"type":"image","data":{"uuid":"df817584-bfbc-4b04-956f-7d6a4d6ce729","width":960,"height":480,"size":102692,"type":"png","color":"","external_service":[]}}},{"title":"\u0420\u0430\u043d\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f Dead Shell","image":{"type":"image","data":{"uuid":"704c4aa9-f0e7-4ab8-b121-ebec8eddc841","width":960,"height":480,"size":151606,"type":"png","color":"","external_service":[]}}}] }

Визуальным стилем выбрали пиксель-арт, от которого фанатеет один из авторов (второй любит олдскул). Когда мы предложили сделать лабиринт красивее, Антон взялся перерисовать всю графику. Он работал над артом до тех пор, пока игра не стала выглядеть так, как сейчас. На самых ранних этапах разработки картинка была в духе DOS-игр, что по-своему неплохо, но к финальной итерации графика стала современнее и привлекательнее.

Dead Shell

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

Эскиз новой иконки я сделал сам, вдохновляясь оригинальной иконкой и Lost soul из Doom, а реализовал его один из наших художников.

Референсы для иконки
Эскиз иконки
{ "items": [{"title":"\u042d\u0442\u0430\u043f\u044b \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0438\u043a\u043e\u043d\u043a\u0438","image":{"type":"image","data":{"uuid":"c60a6695-c316-45ec-9fe0-6b9eecc562ab","width":814,"height":550,"size":94609,"type":"jpg","color":"","external_service":[]}}},{"title":"\u042d\u0442\u0430\u043f\u044b \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0438\u043a\u043e\u043d\u043a\u0438","image":{"type":"image","data":{"uuid":"fbef1054-a757-4cb1-a47e-57bf63823965","width":542,"height":557,"size":66756,"type":"jpg","color":"","external_service":[]}}},{"title":"\u042d\u0442\u0430\u043f\u044b \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0438\u043a\u043e\u043d\u043a\u0438","image":{"type":"image","data":{"uuid":"4a877319-60b2-45e9-ac7f-7498d5bf3918","width":593,"height":572,"size":73921,"type":"jpg","color":"","external_service":[]}}},{"title":"\u0424\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0438\u043a\u043e\u043d\u043a\u0438","image":{"type":"image","data":{"uuid":"2ea328c6-3b4b-4db8-abab-bae7337515cf","width":512,"height":512,"size":503279,"type":"png","color":"","external_service":[]}}}] }

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

Около года игра была «в софте» на Google Play. Непростой период — Александр был на грани отчаяния, Антон начал терять веру в светлое будущее, а я, как мог, поддерживал их моральный дух. На всех этапах мягкого запуска мы изучали метрики: людям игра нравилась, но они довольно быстро переставали играть.

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

Одной из предложенных идей стали выпадающие сундуки. Из них можно было получить новых случайных наёмников, оружие и внутриигровые ресурсы (по принципу gacha-механики). Изменения помогли увеличить ARPU и retention седьмого дня в два раза.

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

Наконец, летом 2016 года игра ушла в релиз на iOS и Android.

О планах

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

Кроме того, сейчас мы смотрим в сторону запуска в Steam. PC-версией также будет заниматься HeroCraft. Стоит ли говорить, что адаптация мобильной игры под платформу предстоит серьезная, но мы считаем, что Steam-аудитория оценит Dead Shell по достоинству.

#опыт

{ "author_name": "Глеб Диденко", "author_type": "self", "tags": ["\u043e\u043f\u044b\u0442"], "comments": 18, "likes": 26, "favorites": 1, "is_advertisement": false, "subsite_label": "gamedev", "id": 3299, "is_wide": false }
{ "id": 3299, "author_id": 5399, "diff_limit": 1000, "urls": {"diff":"\/comments\/3299\/get","add":"\/comments\/3299\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/3299"}, "attach_limit": 2, "max_comment_text_length": 5000 }

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

Популярные

По порядку

Написать комментарий...

Andrew Arbuzov

4

Вот все нравится только пару прям мест которые явно вызывают вопросы.

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

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

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

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

Ответить

Андрей Хроможенков

2

Почему поменяли изначальный дизайн иконки?

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

Новый и итоговый дизайн - слишком детальный: если иконка отображается мелко - все сливается. Стиль игры вообще не передает. Подходит скорее к олдскул рпг на пк.

Ответить

Владимир Иванов

Андрей
3

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

Ответить

Денис Шевченко

2

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

Ответить

Vladimir Korshunov

2

"Изменения помогли увеличить ARPU и retention седьмого дня в два раза."

Сложно без конкретных цифр оценить эффективность внесенных изменений. Если 7-day был 10% а стал 20%, то хорошо, а если был 1% стал 2%, то не очень. Формально увеличился в два раза, но во втором случае явно нужно было делать что-то другое.

У меня одну игру 4 человека в Австралии скачало, и трое из них заплатило. Эффектно было бы написать, что в некоторых странах конверсия доходила до 75%, но о реальных метриках игры такая фраза говорит так же мало, как и "увеличение в два раза".

Ответить

Alexander Shakun

2

Скачал, поиграл, игра производит приятное впечатление, оставил и буду играть дальше, но есть некоторые вопросы:
1. Индикация здоровья во время боя/нахождения на уровне. Какое-то представление об уровне здоровья имею только глядя на число, по бару непонятно.
2. Не понял как покупать патроны патроны для оружия.
3. Переход к следующему уровню по нажатию на персонажа? Мне это показалось не очень понятным.
4. Почему при клике на иконку корзины я попадаю на поиск в гуглоплее игр издателя? Я не против самой фичи, но почему она висит именно на этой иконке?
5. Зачем при переходе на страницу покупки сундуков каждый раз говорить что любая покупка отключает рекламу?
6. Не понял как просто посмотреть экран с "линией уровней" чтобы например переиграть один из прошлых уровней.

И еще вопрос к разработчику и/илт издателю: игра год была в софтлонче, а сколько времени заняла разработка до того как был подписан договор с издателем? И как было организовано время создателей, работали ли парттайм до контракта с издателем а после фуллтайм? Было бы очень интересно все это узнать, если это возможно. Спасибо!

Ответить

Alexander Shakun

Alexander
0

UPD:
1. Небольшое уточнение. Поверх красного бара HP иногда появляется зеленый, вот его назначение я не понял.
2. Судя по всему перезарядка оружия происходит сама по себе с течением времени, когда боезапас подходит к концу надо поменять оружие и тогда лежащее "на складе" восполнит боезапас.
6. Подумалось что возможно это ограничение жанра.

Ответить

Alexander Shakun

Alexander
0

UPD 2:
1. В общем я понял что непонятый мой зеленый бар поверх красного это отравление.

Копаем дальше.

Ответить

Дмитрий Духнич

1

Год в софте - это жестко :) как разрабы не послали всё нах;))

Ответить

Николай Костоправ

Дмитрий
0

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

Ответить

Эл Хэлфрид

0

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

Ответить

Олег Железцов

Эл
0

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

Ответить

Sergey Kopov

Эл
0

Пост на этом сайте никакого отношения к продвижению игры не имеет.

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

Фичер в App Store был. К сожалению, сейчас, для подобных игр, это единственный эффективный способ продвижения

Ответить

Эл Хэлфрид

Sergey
0

А как же ютуб, твич и прочее в этом духе?

Ответить

Sergey Kopov

Эл
0

Я не слышал про рабочие кейсы

Ответить

Sergey Babaev

Sergey
0

Ну какже, а Punch Club или вы про что-то другое с Элом?

Ответить

Sergey Kopov

Sergey
0

"К сожалению, сейчас, для ПОДОБНЫХ ИГР, это единственный эффективный способ продвижения" - эта вот часть моего утверждения важна. Для проекта уровня Punch Club стримеры могут сработать, для скромного мобильного рогалика-кликкера - нет

Ответить

Игорь Коршунов

0

Мне кажется DS надо переделать в жанр RPG, да, пусть все будет как игре Aurum или SOL, тем не менее, наброски моделей есть, классные саундтреки есть, осталось только допилить движок. Если бы данный проект вышел в таком виде - я бы не пожалел денег на покупку да и на донат.

Ответить
0

Прямой эфир

Подписаться на push-уведомления
[ { "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": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "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, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "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" } } } ]