Timur Fazullin
1 605
Блоги

Мобильная игра для продвижения продукта

Команда Университета Иннополис о том, как и зачем создавалась энциклопедия современных технологий и почему вместо неё выпустили развлекательное приложение, которое набрало 300 тысяч скачиваний без вложений.

Поделиться

В избранное

В избранном

Короткое вступление

Летом 2017 года мы выпустили образовательную игру для iOS и Android. За это время её скачали 300 тысяч раз, появились 122 видео с советами по прохождению. Прежде подобных проектов мы не делали и не рассчитывали на успех этого эксперимента, так как изначально планировали анимированную ИТ-энциклопедию.

От энциклопедии к игре

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

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

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

Элементы разбиты по категориям

С каждого по способностям

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

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

2nd Chance создана по принципу «Алхимии». Мы продумали 300 элементов, связанных с наукой, информационными технологиями и культурой гиков. Каждый элемент содержит описание и характерную иконку, чтобы у игроков появилось представление о бозоне Хиггса, DDOS-атаке, теории струн, коте Шрёдингера, полиморфе, технологической сингулярности, ботнете и даже танце с бубном.

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

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

За открытие определённых элементов и категорий присуждаются бейджи: «Всезнайка» за открытие всех элементов в категории «Наука», «Первооткрыватель» за открытие всех элементов, «Разыскивается живым и мертвым» за открытие элемента «Кот Шрёдингера», «It hero» за открытие элемента «Университет Иннополис» и другие.

Научпоп и фан

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

Сейчас есть определённый спрос на популярную и развлекательную науку. Популяризаторы пробуют разные каналы доставки такого контента: от научных боёв, каналов на YouTube, подкастов до квестов и интерактивных музеев. Почему бы не попробовать игры?

Здесь нужно понимать разницу между популяризацией и просвещением: первое нужно для создания заинтересованности, а второе — для устранения досадных пробелов в знаниях.

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

С первым обновлением добавили подсказки

Немного разработки

Далее рассказывает Александр Смирнов, веб-дизайнер, отвечавший за техническую часть.

Билд собрали на Unity. Это кроссплатформенное решение, оно позволяет делает за тебя подписи, оптимизацию и так далее. Это удобно. У Unity есть свои плюсы и минусы, но, учитывая такие параметры, как время и деньги, мы не стали делать нативно.

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

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

Но с другой стороны атлас занимал больше места на жёстком диске, потому что на нём оставались пустые незаполненные области. То есть, ускоряя работу приложения, мы жертвовали его размером. К тому же, со стандартной оптимизацией Unity билд получился в 1,04 Гб на iOS, для Android в 324 Мб с учётом веса проекта в 350 Мб.

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

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

Для пользовательского интерфейса использовали библиотеку NGUI. И с такими оптимальными параметрами в итоге сжали размер для Android до 70 Мб, для iOS — до 236 Мб.

Проект затягивался в том числе из-за постоянного динамического редизайна. Изначально мы рисовали место для скрещивания элементов в виде картриджей и даже сделали анимацию.

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

Неудачный релиз

Спустя полгода 2nd Chance была готова. Далее мы создали аккаунты в мобильных магазинах и ждали подтверждений после загрузки приложений, параллельно с этим готовили релизы. Когда нас одобрили App Store и Google Play, мы написали в дружественные издания и кое-где даже вышли статьи. Но новость не бомбанула, и мы решили двигаться дальше.

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

Дальше — больше. Количество установок росло и иногда мы даже попадали в топ головоломок Google Play. 2nd Chance комментировали на форумах, появились видео с прохождениями. На момент написания текста у игры 300 тысяч установок и 122 видео с прохождением. Для нас это жирный результат, учитывая, что на проект мы не потратили ни рубля.

Мир меняется в зависимости от прогресса

Первое обновление

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

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

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

Так он узнает, куда стремиться. Это бесплатно, но подсказки доступны после просмотра короткой рекламы. Еще ввели платные функции: за 99 рублей пользователь разблокирует версию с подсказками без рекламы и увидит все тупиковые элементы, которые не участвуют в будущих реакциях.

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

Планы и идеи

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

Скачать игру 2nd Chance можно в маркетах Google Play и AppStore.

{ "author_name": "Timur Fazullin", "author_type": "self", "tags": [], "comments": 10, "likes": 9, "favorites": 7, "is_advertisement": false, "section_name": "blog", "id": "31136", "is_wide": "" }
{ "is_needs_advanced_access": false }

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Подписаться на push-уведомления
[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "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" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&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": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } } ]