СОЗДАТЕЛЬ ГОЛОСА

Как я создал свою первую видеоигру

Создание Bug Hop

Решать проблемы - это весело! Это было предпосылкой, с которой я начал разрабатывать свою игру Bug Hop. Как разработчик программного обеспечения с опытом работы в различных отраслях, я искал новый проект, что-то более вдохновляющее, чем мой повседневный вклад в финансовую индустрию Лондона… и идея начала формироваться. Я всегда любил логику и решение проблем. Могу я создать пазл? Что-то простое и веселое, но в то же время сложное? В нем должны быть персонажи и история. Мне, как человеку, который зарабатывает на жизнь написанием кода и пишет художественную литературу, это показалось мне лучшим из обоих миров.

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

Большинство программистов регулярно используют логическую логику, в то время как люди, не работающие в сфере STEM, обычно с ней не знакомы. Итак, в качестве краткого примера: логический элемент И, получающий 0 и 1, испускает 0 (низкий заряд). Логический элемент ИЛИ, получивший 0 и 1, испускает 1 (высокий заряд). Элемент НЕ получает 0 или 1 и инвертирует его. Я подумал, что если эти ворота будут организованы в матрицу связанных ворот, и значение, испускаемое из одного элемента, станет входным для другого ворот, это могло бы стать основой игры.

Скажем, например, значения были представлены чем-то вроде шариков: фиолетовый шарик представляет 0, а желтый шарик - 1. Каждый раз, когда фиолетовый шарик выходит из ворот, он перемещается к воротам справа на один ряд вверх. Когда вылетает желтый шарик, он перемещается к воротам слева на один ряд вверх. Игрок начинал со смеси шариков и пытался найти правильный путь, чтобы вытащить шарик из вершины.

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

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

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

Но что это был за аватар? Почему он хотел попасть в топ? А что означают логические ворота? Были ли они персонажами или неодушевленными предметами? Они пытались помешать аватару достичь вершины или пытались помочь? Добавлять рассказ не было необходимости. Я мог бы сохранить это как чистую головоломку. Но со склонностью придумывать персонажей я не удержался.

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

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

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

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

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

Для изображения биокопса я сосредоточился на требованиях: биобаг должен перемещаться через матрицу, когда игрок выбирает следующий нанозубок. Я хотел, чтобы он выделялся, но не отвлекал сложной анимацией. Так получился ярко-розовый жук-гусеница с простым скользящим движением.

Соединив все вместе: сюжет, анимацию и правила игры, я выпустил раннюю версию приложения для тестирования и получения отзывов.

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

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

Наконец, я создал всплывающие демо. В любое время игрок может нажать + удерживать любой объект, чтобы увидеть анимацию его взаимодействия с другими объектами. Я предполагал, что этот инструмент будет часто использоваться вначале, а позже - в качестве напоминания на протяжении всей игры.

Я работал над этой функциональностью после бета-версии и добавил больше матриц, начиная от простых макетов с четким путем к вершине, до сложных комбинаций нанобайтов, которые имеют только один возможный путь и требуют знания более тонких правил. Я разделил эти матрицы на три группы: Начальный уровень (с функциями обучения); Промежуточный уровень (несколько сложных путей к вершине, с некоторой всплывающей подсказкой); Продвинутый уровень (сложные пути к вершине). Я надеялся, что предоставление различных уровней сложности создаст положительный опыт для тех, кто просто хочет простую, веселую головоломку, для тех, кто любит застревать в умственных проблемах.

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

Затем пришло время для еще одной анимации: когда игрок прокладывает путь к вершине, биобаг достигает клумбы и выходит из игрового поля, рискуя отправиться в мир, чтобы его обнаружили ученые. Я подумал, было бы весело, если бы биобаг вылез по-разному. Например, когда он попадает на землю, он превращается в бабочку и улетает. Или он достает реактивный ранец и взлетает! В другой раз он танцует за кадром. Я ввел разные процедуры выхода на разных уровнях игры, чтобы на каждом уровне было что-то новое.

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

Например, на полпути к начальному уровню биобаг наконец вступает в контакт с человеком!

В конце среднего уровня ваши биологические жуки наконец попадают в научную лабораторию.

Но будет ли создана биовакцина? Чтобы увидеть всю историю, вам нужно пройти продвинутый уровень!

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

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

После завершения игры я обратился к изобразительному искусству, которое публикуется в Google Play и Apple Store. Фактически, на обеих платформах процесс довольно прост. Выяснить, КАК это сделать, и выяснить, какие варианты подходят вам, - это сложная часть. На протяжении всего процесса, от разработки игры до публикации, я был благодарен форумам, поддерживающим Unity, консоль Google Play и Программу разработчиков Apple. Эти сообщества, созданные годами, где программисты делятся вопросами и знаниями, позволяют людям с небольшим опытом участвовать в разработке игр.

Следующей темой моего исследования будет маркетинг! Но пока вот некоторые обзоры, в которых все это стоит того:

Взято из магазина Google Play

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

Моя дочь любит эту игру! Ее энтузиазм по этому поводу почти сразу разгорелся.

Взято из Twitter

По-настоящему любить Bug Hop […] Это действительно заставляет ваш разум работать в хорошо продуманной, расслабленной, несвоевременной и свободной от стресса игровой среде.