Инди Богдан Бортаков
953

Космический геноцид по правилам

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

В закладки

Всем привет! Сегодня я хотел бы рассказать об игре Star Force, созданной нами с коллегами собственными силами за две недели. В первую очередь мы хотели создать именно игру, а не способ заработка - да и дополнительный проект в портфолио никому из нас не помешает. А что из этого получилось - читайте дальше)

Предыстория

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

О боги, как давно это было

Так уж вышло, что в младшей школе у меня не было телефона - в то время, как некоторые одноклассники уже носили кнопочные (и такие ламповые) телефоны Nokia ( в основном модель 1100, а у самых богатых - даже 5210!). С них можно было не только позвонить или отправить SMS, но и поиграть в те самые три игры, которые поставлялись вместе с телефоном.

Соответственно, в силу вступали товарно-рыночные отношения. За право поиграть до одной смерти отдавали всё что угодно: от пирожка из столовой до пяти кепсов. К слову, тогда я в первый раз оформил "подписку" на игру - подарил весь набор бегемотов из Киндера (о чем не раз успел пожалеть) одному из "счастливчиков", получив за это право ежедневно играть по 3 раза вне очереди. Увы, инвестиция обернулась провалом - через месяц я перешел в другую школу.

Много лет спустя...

По пути на работу, в ленте "Рекомендации" Google Play меня ждал привет из прошлого - игра Space Squids, с очень знакомой иконкой. Установил, поиграл.. но внутри сидела мысль: можно сделать лучше. Не могу выделить для себя конкретные "проблемы" этой игры, кроме странного шейдера "как-в-старых-телефонах".

Аналоги, увы, тоже не вызвали у меня бурного восторга.

К моему сожалению, я так и не нашел "то самое". Приехав на работу, я поделился печалью с коллегами - и услышал замечательную идею: "а давай сделаем сами?". And so, it started..

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

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

Разработка

Спойлер: первый играбельный прототип был создан за два вечера

Я бы с радостью поведал о немыслимых трудностях, преодолевая которые мы смогли довести игру до релиза - но их не возникло. От слова "совсем".

Наша команда состоит из троих человек: двух программистов - Жени и Артема, и меня - гейм-дизайнера. Так как на программном уровне моя помощь не требовалась, я взял на себя графику игры.

Как я уже писал в прошлых статьях, Game Designer должен уметь выполнять разные задачи. Не всегда есть финансы на полноценные 3D модели для прототипа, 2D графику или специалиста по ASO (App Store Optimisation) - и порой случаются ситуации "надо сделать вот это, больше некому".

Так, получив заверения в том, что я могу не волноваться о коде, я приступил к созданию контента и несложной документации.

Графика

Как показала практика, пиксель-арт - это не рисунки по клеточкам (вопреки мнению отдельных личностей), а полноценный стиль рисования, со своими канонами, правилами и эстетикой.

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

Почти вся графика игры помещается на одном spritesheet

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

Этапы создания: 1) выбор референса; 2) обрисовка; 3) подстановка на тестовый уровень

Так уж вышло, что я допустил ошибку - использовал кисть размером 2*2 пикселя, в то время как вся остальная графика создана по правилу "1 квадрат в оригинальной графике = 8*8 пикселей для экрана 1920*1080".

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

Режимы игры

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

Режим, безусловно, интересный - но требующий много времени на качественное исполнение. Поэтому, для начала мы решили сделать более "современный" и простой режим - Endless Run. Если вначале этот уровень в Unity был просто сборищем тестовых механик, он настолько понравился всей команде, что мы решили выпустить первую версию именно с ним.

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

Кстати, мы не намерены останавливаться на двух режимах - всего их будет шесть:

  • Arcade (аркада): не нуждается в представлении ;-)
  • Hardcore Arcade (хардкорная аркада): аналог прошлого режима, где враги имеют в два раза больше здоровья, а жизнь - всего одна.
  • Endless (бесконечный бой): гибрид раннера (бесконечное перемещение между препятствиями) с шутером (есть разрушаемые агрессивные юниты).
  • Hardcore Endless (хардкорный аналог): условия те же - одна жизнь, более "толстые" враги
  • Endless Challenge (режим пацифиста): ни игрок, ни противники не могут атаковать. Задача - избегать столкновения как можно дольше.
  • Disco Endless... пусть это будет сюрпризом)

Реклама в игре

Да, в нашей игре есть реклама. Уверен, у многих сейчас возник вопрос: а зачем она? Поверьте, заработок - не самоцель. Посудите сами:

  • стоимость учетной записи в Google Play - 20 долларов
  • ожидаемая цена тысячи показов - 0,33 доллара
  • Если eCPM (эффективная цена за тысячу показов) не вырастет, для окупаемости вложений рекламу должны посмотреть 60 тысяч раз - в лучшем случае

Мы же будем рады даже сотне установок, и вряд ли каждый игрок посмотрит рекламу 600 раз. Хотя, как знать...

За просмотр короткого видео мы даем два вида награды:

  • 25 монет (для сравнения, убийство одного врага в среднем дает одну монету), которые можно потратить на новый внешний вид корабля
  • второй шанс - при потере всех жизней в режиме Endless игрок может воскреснуть, но только один раз

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

Оглядываясь назад

Мы это сделали! Пусть впереди еще много работы, мы рады, что смогли вернуть кусочек своего детства - и будем рады, если результат нашего труда будет кому-то интересен.

Ну и то, чего все ожидали: скачать игру можно здесь.

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

Всем приятных выходных!

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

#инди #ностальгия #ретро #игры

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Богдан Бортаков", "author_type": "self", "tags": ["\u043d\u043e\u0441\u0442\u0430\u043b\u044c\u0433\u0438\u044f","\u0440\u0435\u0442\u0440\u043e","\u0438\u043d\u0434\u0438","\u0438\u0433\u0440\u044b"], "comments": 19, "likes": 25, "favorites": 6, "is_advertisement": false, "subsite_label": "indie", "id": 15847, "is_wide": false, "is_ugc": true, "date": "Fri, 09 Feb 2018 19:03:03 +0300" }
{ "id": 15847, "author_id": 39163, "diff_limit": 1000, "urls": {"diff":"\/comments\/15847\/get","add":"\/comments\/15847\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/15847"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64960 }

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

Популярные

По порядку

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

Игру ещё не пробовал, но статья понравилась. Всё разложено по полочкам и даже про рекламу в игре всё отлично расписано. От статьи веет честностью что ли))) Нет этого всего драматизма, мол "делали месяцами и не для заработка, не спали ночами и ели один доширак, что бы игрок почувствовал всю нашу любовь". Потом заходишь в игру, а там уже после логотипа разработчиков реклама на пол минуты, реклама после выхода из опций, после смерти и т.д. Встречалась реклама даже два раза подряд, без пауз. Ну и сама игра выглядит словно на гейм мейкере за ночь сделали. Тут же всё вроде по чесноку. Делали не долго и как бы для себя. Реклама нужна для того и того. Надеюсь она там всё же не задалбывает. Самый нормальный на мой взгляд показ рекламы это за какие-то плюшки и раз в пол часа можно глянуть самостоятельно выскакивающую рекламу. Если вы с таким подходом ещё и заработаете, то ващпе огонь)))

Ответить
0

Спасибо за отзыв! Рад, что статья понравилась)

Ответить
0

Эээ. Что за дела? Я ждал больше рекламы, но смог за монетки глянуть только одну и больше не дают. Дайте хотя бы три))) К тому же реклама ещё и супер короткой оказалась. Это вообще не привычно)))

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

Ответить
0

Вероятно, реклама просто не успела загрузиться - мы не ставили никаких ограничений на просмотр для заработка монет)
Музыку в полете решили пока не ставить - достаточно много звуков от стрельбы, боялись сделать кашу на уровне)
Размер аналога и крестовины - можете уточнить? Не совсем понял

Ответить
0

Музыку тихонечко на фон полюбому надо, а то тишина и пиу-пиу только.

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

Ответить
0

Попробуем исправить)

Ответить
1

Это в первой же игровой сессии. :D

Ответить
1

Можно подробности?
При каких обстоятельствах произошла ошибка?

Ответить
1

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

Ответить
1

Спасибо, сейчас проверим!

Ответить
1

Увы, не вышло воспроизвести. Завтра потестирую на разных устройствах, постараемся починить)

Ответить
1

Чёрт, а я любил эту игру...ну и игру про чувака что блоки таскал. Две первые:')
Красавцы что взялись.

Небольшое имхо: С режимами можно ещё покумекать. Выбор хоть и есть, но по сути как-то тесновато. Можно режим где игрок управляет кораблём босса и разносит тех же инопланетян, или же корабли людей. При этом у него хп до чёртиков но и туша огромная, сложнее увернутся. Так же можно режим где ограниченная видимость, и игрокам тяжелее сообразить. И те режимы где просто game+, можно добавить несколько кораблей самоубийц.
Так же рекламу можно немного пересмотреть в сторону не монеток, а именно "Просмотрите 3-5 реклам и получите скин". Хоть если монетки достаются легко, то упор делать тоже смысл маленький. Можно поставить на самые лучшие модели. Или просто что бы открыть новый режим.

А хотя можете забить. Так, мысли в слух:)

Ответить
0

Спасибо, идеи и вправду интересные)
Посмотрим, как пройдет первая неделя - а там уже будет ясно :-)

Ответить
1

Once this game was the best we had on our old mobile phones

Прочитал это с акцентом и рассмеялся. Авторам удачи.

Ответить
0

Спасибо!) Долго думал, как сделать отсылку к старой игре)

Ответить
0

вообще в хорошем пиксельарте есть правило, не делать пиксели разных размеров и в разной сетке :\

Ответить
1

Спасибо, учтем - в дальнейших версиях сделаем корректную сетку)

Ответить
0

Когда версия для IOS?

Ответить
0

Версию для iOS пока не планируем - слишком дорого..(

Ответить
0

Прямой эфир

[ { "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" } } } ]
Уве Болл вернулся в кино
и начал экранизировать flash-игры
Подписаться на push-уведомления