[Dev Story] История разработки Crazy Box Fall

Нам пишет разработчик приложения Crazy Box Fall

Вкратце обо мне. Меня зовут Юра, недавно мне исполнилось 18 лет, учусь на втором курсе политехнического института на программиста. Я открыл для себя мир разработки под iOS почти год назад, в мае. Помню, тогда попал на статью, что создатель Flappy Bird по примерным подсчетам получает от рекламы 50 000 $ в день. На тот момент все, что я умел, это писать простые программы в консоле на паскале. Так что я сразу принял решение начинать копать тематическую литературу и развиваться в сторону iOS.

Crazy Box Fall

Откуда возникла идея игры? Сама идея появилась еще в конце августа. Каждый день я качаю около десятка приложений из разных категорий, которые вышли в топ, так я пытаюсь понять, что сейчас люди любят и какие необычные программки и игрушки пробиваются в топы. Рекомендую иногда делать такое разработчикам, ведь не всегда можно угадать, что именно сейчас хотят скачать пользователи. Так вот, скачал я тогда игру, где нужно было ехать квадратиком и перепрыгивать касаниями через преграды. А после 10 уровня он начинал падать с горизонтальными преградами. Приложение показалась мне довольно интересным, но я хотел убить того дизайнера, который рисовал эту игру. Она была ужасной, дизайн отвратителен, я ее удалил в тот же день. Но идея осталась в моей голове. Где-то через пару дней я прикинул, что до универа осталось 3 недели и можно успеть создать и выбросить в App Store какую-нибудь игрушку. Тогда я и вспомнил про квадратик. Решил следующее: заставить его падать с препятствиями и по ходу разработки прикрутить что-нибудь еще.

IMG_3775

В отличие от других своих «шедевров», я решил создать эту игру по всем правилам, соблюдая все шаги. Начал с модели на бумажке. Потратил буквально 15 минут (но это сэкономило мне часы разработки), получилось довольно просто и понятно. По опыту, сначала решил создать все картинки для игры, а только потом начинать писать код. Как-то спонтанно в голову пришла идея, что квадратик должен быть не одноцветным, нужно его оживить и добавить эмоции. Рисовать я не умею, поэтому открыл Pages и начал пробовать. Хотел сделать его каким-нибудь простым и веселым. Внизу фото моего лучшего варианта (их было больше 20), как мне кажется, он какой-то больной получился.
ffg

Я понял, что проще купить за пару долларов хорошие картинки, а не насиловать зря компьютер. Зато все остальные изображения сделаны полностью мной в программе Pages. После создания всех изображений начался самый долгий и нудный (местами веселый) этап: нужно писать код, просто писать очень много строк кода. Я понимал, что игрушка получится немаленькой, поэтому с первых строк пытался делать код читабельным и логичным. Где-то до 2000 строк у меня получалось. Во время разработки минимум несколько сотен раз все идет совершенно не так, как нужно, и я не преувеличиваю. И тут 2 варианта развития событий:

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

Большую часть времени я был во втором состоянии, но иногда возникали интересные ситуации, как та, что ниже на скрине:

ff

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

Отдельно пришлось уделить много внимания иконке. Ведь когда вы листаете список с приложениями, вы выбираете приложение только по иконке, потом уже читаете описание, смотрите скрины, отзывы…, но все начинается именно с иконки. Я решил не доверять своему вкусу (и правильно сделал), создал 4 прототипа и выложил голосование в ВК. Вообще я хотел изначально установить иконку под номером 4, но, как оказалось, она вообще переместилась на последнее место, поэтому итоговая иконка моей игрушки под номером 1.

01

Для айфона и айпада я использую одинаковые изображения очень высокого качества, поэтому игрушка получилась аж на 16 МБ, но я просто обожаю играть на айпаде и смотреть, как это все выглядит на Retina-дисплее.
uiactionsheet-featured

Поскольку человек всегда воспринимает цифры и картинки с большим интересом, чем текст, хочу привести вам несколько фактов в цифрах о моем приложении:

  1. Весь объем игры — 5700 строк. Плюс-минус 300 строк на комментарии к коду.
  2. Финальная версия имеет 53 предупреждения в коде. Это не ошибки, с ними программа будет работать, но это значит, что в этих местах Apple хотели от меня немного другого).
  3. На создание магазина коробочек и встроенные покупки я потратил больше двух с половиной месяцев, то есть в несколько раз больше, чем на всю остальную игру.
  4. Изначально я назвал свою игру Crazy Box, но потом оказалось, что это имя уже занято. Поэтому в самом App Store написано «Crazy Box Fall», но под иконкой старое название.
  5. Все изображения я создавал не в графическом редакторе, а в текстовом (Pages).
  6. Когда опубликовали iOS 8, мне пришлось переписать всю игру с нуля, потому что до этого я тестировал на 7 версии, а на 8 ничего даже не запускалось.
  7. Каждое яблочко появляется с вероятностью в 25%.
  8. Мой личный рекорд — 134. Ни у кого из знакомых не получалось набрать больше 117.
  9. Уже готово обновление ко дню святого Валентина с 5 новыми коробочками.
  10. Каждый месяц я буду добавлять 10-20 новых оболочек для коробочки, вас ждет много сюрпризов.

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

Название: Название: Crazy Box Fall
Издатель/разработчик: Valentina Chukhlib
Цена: Бесплатно
Встроенные покупки: Есть
Совместимость: Универсальное
Ссылка: Установить

Pages_
Если вам есть, чем поделиться с другими читателями нашего сайта, пишите на advert@appleinsider.ru и не забудьте указать свое имя или ник. Мы внимательно читаем входящие письма и публикуем ваши самые интересные истории.

Обзоры приложений для iOS и MacРазработка приложений для iOS