Пожалуй, самая необычная головоломка на Google Play

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

jtw3hzrkiv-_vfuszvxzdhv3xuo.png


Я недавно подсчитал, что уже 5 лет занимаюсь созданием игр в свободное от основной работы время. За этот период я сделал несколько игр, которые можно назвать успешными, если судить по количеству загрузок. Но по настоящему, я горжусь только последней, она изображена на картинке выше. Нет, это не игра про лутбоксы. Это набор головоломок, основная идея которого в том, чтобы объединить разноплановые головоломки одним сюжетом. Но главное, это должны быть головоломки с подвохом, такие, которые требуют от игрока нешаблонного, креативного мышления. Головоломки с простым, но при этом неожиданным решением. Под катом гифки, история создания и технические детали этой игры.

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

zxvmvdhfuxssvqcl3dowozefsyu.jpeg
Развитие UI

Но прежде чем рассказывать о разработке, хотелось бы сказать несколько слов о сеттинге игры. Процитирую, если так можно назвать, сценарий. Здесь и в самой игре вы можете заметить отсылки к «Темной башне» Стивена Кинга, да, я его большой фанат!

Механическая Коробка — один из последних осколков технологий Древних, сохранившийся в постапокалиптическом мире альтернативной Земли. Высокотехнологичное устройство, созданное с единственной целью: хранить и защищать неизвестный Объект внутри. На сегодняшний день, Коробка находится в довольно плачевном состоянии, частично повреждена, заросла мхом и другой растительностью. На одной из поверхностей все еще можно прочесть предупреждающую надпись: «СУБЪЯДЕРНЫЕ ЭЛЕМЕНТЫ ПИТАНИЯ ЗАМЕНЕ НЕ ПОДЛЕЖАТ».

cm8_z0evrxadtjag7mojsz7yl4e.jpeg
Фан-арт

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

Конечно, основное достоинство такой игры вовсе не сюжет и даже не секрет «Коробки». Главное — это сами головоломки! Я провел множество вечеров гугля запросы вроде «необычные головоломки», «загадки с подвохом», «неординарные задачи» и читая, читая… Думая, рисуя в блокноте одному мне понятные каракули. Кроме этого, в процессе поиска идеи, я часто смотрел прохождения различных квестов на YouTube (особенно мне нравятся ретро-игры). Но это вовсе не означает, что «Мех. Коробка» состоит из заимствованных откуда-то загадок. Каждую идею, которая мне казалась удачной, я переосмысливал, компилировал с другими, разбавлял своими собственными, авторскими головоломками. Впрочем, внимательный игрок найдет здесь и вариации на тему ставших классическими головоломок, таких как «Ханойская башня» или «Быки и Коровы».

1ubdtbhtepfsvt5ucphysqy3tc8.jpeg
Скетч

В результате такого «мозгового штурма», на свет появляется скетч будущего уровня + текстовое описание механики его работы. Который, после обсуждения деталей с художником, превращается в новый слой системы защиты «Механической Коробки». Примерно, такой:

dm2z1pcxhymdjzz6bs68cfu3tgm.png
Результат

Я считаю, что мне удалось собрать в этой игре по-настоящему неординарные головоломки. Вот одна из моих любимых. С использованием свойств реального мира, что само по себе круто. Повернув телефон под определенным углом, мы видим как магическим образом текст возникает там, где раньше был просто абстрактный узор. Ломаем «четвертую стену», можно сказать.

unacamcxmu9nh_tykmbc2uwnwrw.gif
Магия

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

nbkqkfxlwhdh79c5-qta36ixrdy.jpeg
Попробуйте решить самостоятельно

Надо признать, что такие загадки сложны изначально, по своей сути. Не каждый может отвлечься от того, что цифры — это цифры и взглянуть на них просто как на абстрактные формы. Вообще, я позиционирую эту игру как «Самый Сложный Квест». И это не пустые слова. Несмотря небольшую продолжительность игры, здесь для каждого найдутся головоломки, способные поставить в тупик. Это и достоинство, и проклятие «Мех. Коробки», одновременно. Достоинство в том, что в этой игре есть челлендж. Даже если вы попытаетесь открыть «Коробку» всей компанией, препятствия будут серьезными, а удовольствие от нелегкой победы — настоящим. Особенно, если вы решите не пользоваться подсказками, которые есть в игре на случай, если дальше не продвинуться ну совсем никак.

Ну, а проклятие — избалованные казуальные игроки, привыкшие, что головоломки — это match-3 игры. А здесь загадки совершенно другого сорта! Моя игра никак не помогает игроку себя пройти. Даже подсказки — это просто намеки (там, где это возможно, конечно). Все чтобы не лишать вас радости самостоятельной победы. В «Коробке» нет обучения, никто не поведет вас за руку, нет подпрыгивающих кнопок и прочей мишуры, характерной для free-to-play. В этом я решил быть последовательным до конца и делать так, как делали в те времена, когда игры еще не держали своих игроков за полных тупиц, в угоду хорошим маркетинговым показателям.

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

qwejbvnmreh8fy5__htxsxembbc.png
Страшный сон геймдизайнера

Конечно, за все приходится платить. В Сторах у игры довольно много хейтеров, так уж устроены люди… Кто-то просто не любит хардкорные пазлы, некоторые не могут понять логику загадки и сразу пишут отзывы, типа «В игре напрочь отсутствует логика! Автор хочет, чтобы мы искали пароль перебором 9999 вариантов!» Это неправда. Везде есть намеки и логичные решения, другое дело, что они бывают хорошо спрятаны. Да, нужно очень внимательно осмотреть уровень, любой элемент может иметь свой тайный смысл, надо проверять гипотезы, даже самые неожиданные. Нужно уметь взглянуть на проблему под другим углом, иногда буквально. Но ведь в этом и прелесть! С тривиальными загадками не получилось бы сложного и интересного квеста.

rnm8l4ytmw-q4t8ziycnuv1khtk.gif
Уровень вдохновлен загадками из книги »150+ Challenging Numeric & Logic Puzzles»

Зато, средняя оценка в 4.5 баллов говорит о том, что фанатов у игры все-таки больше! Это потрясающе, когда один из игроков, отец из Нидерландов, рассказывает о том, как играет в игру со своим 10-летним сыном. И что было бы круто такую игру раздавать в школах для развития логики и неформального мышления у подростков. Когда преподаватель математики из Великобритании не только разрешает использовать в игре идеи из своей книги математических загадок, но и присылает саму книгу с автографом! Когда игрок из России (извини, забыл твое имя!) пишет целый рассказ в своем блоге только потому, что игра его зацепила. Именно из-за таких моментов и стоит заниматься разработкой игр.

Говоря о технической части, игра написана на Java с использованием движка LibGDX. Главным образом, потому что с этим языком программирования я часто имею дело по работе. К тому же, меня подкупает простота и легковесность LibGDX. Этот движок позволяет собирать игру под все основные платформы. Игра уже доступна на Google Play и в App Store, что же касается ПК — есть планы сделать самостоятельное ответвление «по мотивам», на совсем другом движке (это Unity, кто бы сомневался). Но пока, это только планы. Еще web-версию можно собрать, правда, не представляю, что с ней делать, разве что выложить на тот же itch.io просто в рамках популяризации игры.

s_qnq06qvtmyqrl1bkx28bsfzrm.gif
Мой вариант «Ханойской башни»

Архитектурно, проект выглядит так: есть базовый класс игрового объекта. Он умеет выводить спрайт на экран, применять маску (когда нужно отображать только часть спрайта), отдавать свой хитбокс для проверки коллизий и т.д. Я написал собственную реализацию такого класса. Как ни странно, в LibGDX «из коробки» — этого нет. Все игровые объекты (кодовые замки, рычаги, ключи, люки и прочие механизмы) наследуются от него, затем в них добавляется специфичное для каждого конкретного элемента, поведение. С уровнями, ситуация обстоит аналогично. Базовый уровень содержит элементы UI, диалоги выхода, подсказок и тому подобное. Каждый новый слой «Коробки» — это отдельный класс, унаследованный от базового уровня, где и описывается вся логика его работы. Такой подход я выбрал потому, что все уровни практически уникальны и по механике, и по объектам. То есть каждый уровень — это «игра в игре». Конечно, трудоемкость разработки сильно возрастает, хоть я и стараюсь, по возможности, использовать хоть какие-то элементы повторно.

ybvtum0ladn8y7vqedglyti9yh4.gif
Процесс создания уровня

Механики игры — это, в основном, механики point-and-click квеста: перетяни, совмести объекты, нажми. В их реализации помогает DragListener из состава LibGDX. Вот пример перетаскивания объекта в рамках игровой области. Осталось только добавить этот listener нужному объекту с помощью addListener ().

За прошедшее время, была сделана и «выпущена в жизнь» первая часть игры, благодаря успеху которой, а у нее более 2 млн. загрузок и около 100 тыс. активных игроков, появилось продолжение. В сиквеле «Коробки» я решил полностью изменить визуальный стиль, перейти от портретной ориентации игры к ландшафтной, да много еще каких более мелких изменений. Я считаю, что продолжение не должно просто копировать удачные идеи из предыдущей части, это должно быть всегда развитием, шагом вперед. Правда, на таком подходе погорели и многие крупные тайтлы (например «Герои»), чего уж говорить о нас. Вот и «Мех. Коробка 2» пользуется заметно меньшей популярностью, хотя, лично мне, она кажется гораздо более красивой, повзрослевшей и целостной что ли. Но я не жалуюсь, я нашел свою аудиторию, пусть и не очень большую.

Популярность у игры, в основном, виральная. Я пробовал покупать рекламу в AdWords — это не принесло заметного результата. Да и сложно ожидать, чтобы для такой игры покупка установок по CPI была бы экономически целесообразной. А вот новости на 4PDA и закрепленный пост на одном известном развлекательном ресурсе — показали себя неплохо. Хотя, я сужу чисто субъективно, по отклику аудитории. К сожалению, в неразберихе подготовки материалов, я забыл добавить UTM-метки, поэтому не смогу сказать точно сколько игроков пришло и стоимость установки. А в конце прошлого года, совершенно неожиданно для меня, игру включили в обзор на немецком YouTube-канале с 700k подписчиков. В тот день, мы заработали больше 1000$ — это рекорд вообще за все время, что я занимаюсь играми! Очень круто, жаль что так мимолетно.

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

© Habrahabr.ru