Доброго дня, Пикабу! Хочу поделиться с вами историей разработки своей достаточно простой игры Bacterias Are Angry про уничтожение бактерий под OS Android (скорее, аркада, чем кликер!) и об истории её появления на просторах Google Play. Пост от новичка геймдева, и - сразу предупреждаю - некоторые моменты могут вас шокировать :) В конце будет ссылка на страницу игры в магазине, а в комментариях - 50 промо-кодов для бесплатного скачивания. Игра весит всего 7мб, доступна на устройствах с Android 4.4+ и имеет рейтинг 3+ - подойдет для развития моторики детям. Приятного чтения! :)
P.S. Прежде, чем получать минусы - поясню. Я не разобрался, как встроить рекламу (да и сам ее ненавижу), поэтому игра платная. Да. Но дочитайте до конца и негатив развеется сам собой!
Начнём, пожалуй, с описания игры из GP:
Бактерии - они такие. То появляются, то исчезают... Что нужно сделать тебе? Уничтожить их всех!
На протяжении всей кампании ты будешь чувствовать себя в напряжении, которое - от уровня к уровню - будет лишь нарастать...
- 93 уникальных уровня с подробным описанием действий;
- Чем дальше - тем сложнее!
- Успевай уничтожать Бактерии, пока они не исчезли!
- Даже не думай промахнуться!
- Используй 8 различных бонусов!
- Сразись с 8 сложными боссами - ДНК!
- Зарабатывай очки Лекарства - чем точнее и быстрее ты будешь, тем больше очков ты получишь!
- Изучи 12 умений, которые помогут тебе в сражениях.
- Поддержка русского и английского языков.
- Никакой рекламы!
А теперь - из предыстории. Я ни разу не программист, не художник, обладаю отвратительным вкусом и вообще, обычый директор магазина... И много еще чего, что, в принципе, мешает самореализации (думаю, многим будет знакомо). Еще четыре года назад я разрабатывал в одиночку игру в жанре стратегия (кому интересно - вот тут). И именно непонимание всех аспектов в целом - как, например, гигантское количество времени, которое необходимо потратить на полировку проекта - привело к закономерному итогу - проект был выброшен на свалку истории, а я получил бесценный опыт.
В октябре 2019 года я, будучи в настроении что-нибудь сваять (мой бэкграунд подразумевает под собой начальные знания JavaScript), набросал демку небольшой мобильной игры - как мне казалось)) Кто не в курсе - HTML+CSS+JS+ компиляция через Adobe PhoneGap. Комбинация позволяет, кстати, любому мало-мальски начинающему разработчику загадить Google Play своими поделками). Так вот: полчаса обдумывания, полчаса, кхъм, проектирования, и на свет родилось ЭТО (билд от 20.10.19):
Простейшая, на самом деле, задумка. Есть вы - игрок, есть враг - оранжевый кругляш, который периодически появляется, и периодически исчезает в рандомном экранном месте. Что нужно сделать вам, как игроку? Вовремя (пока он живет) по этому кругляшу тапнуть. Всё. Промахнетесь или промажете - ну, такова судьба, ваше внутриигровое Здоровьице просядет на N пунктов. Эдакая игра на реакцию (эта идея останется в игре и вокруг неё будет выстроен весь геймплей). В общем, сделал - и забил: подготовка к рождению ребенка, бесконечные авралы на работе, и иже с ними...
Март 2020 года. Увольнение с основной работы и - спасибо! - карантин на ближайшее время сделали невозможными моё трудоустройство. Появилась куча "свободного" времени, а созданный в октябре проект, о котором я уже успел позабыть, всплыл (SARCASM) на поверхность.
Я снова подумал - что я в итоге хочу видеть от игры? Будет ли это бесконечный кликер или аркада? Какие механики я хочу видеть? Ведь без постоянного вливания новизны в геймеплей игроку будет крайне скучно (примерно в это время идея публичного доступа к игре через GP становилась всё более желанной и осязаемой). Да и не каждый "клюнет" на сеттинг про зеленое игровое поле и оранжевый круг.
Возникала мысль и перенести проект на какой-то удобоваримый движок. Из всех, которые я знал, и в которых разбирался (RPG Maker и Serious Editor) ни один не подходил. Эдитор не приспособлен под мобильные платформы, а Мейкер... В общем, я уже с ним намучился. Поэтому, проект в итоге так и останется написанным полностью на "ванильном" JavaScript (простите меня).
Знаете, немного отойдя от темы, эта игра была важна именно для меня, как для личности. Я тот человек, который получает кайф от того, что доводит дело до конца. В случае с предыдущим(-и), канувшим в лету проектами, завершенности не было. А здесь - она есть. Я пересилил сам себя. Это ОЧЕНЬ кайфово, поверьте.)
Итак, продолжим. Остановились мы на сеттинге - новые механики обтачивались отдельно, о них расскажу чуть попозже. Пара дней дум открыла для меня наиочевиднейшую идею - это будет игра про уничтожение ВИРУСОВ. Да-да, хайпанём немножечко!
На картинке ниже - главное меню в билде 01.05.20:
Вирусы, так вирусы. Идём искать бесплатную графику (как уже упоминал - не художник ни разу, и вкус отвратительный).
Графика найдена, окей. Нас должен встречать вот такой вот замечательный персонаж (позднее окажется, что он нифига не бесплатный, поэтому, вскоре, будет заменён):
Выглядит, вроде, мило, подумал я. Окей, теперь пройдемся по механикам.
Что интересного можно придумать в игре, написанной на JS в связке с HTML + CSS? Конечно же, использование различных стилевых штук для усложнения! Так в игре впервые возникает первая десятка УРОВНЕЙ с разными усложнениями, при этом, включающая в себя эдакую систему обучения. Ну, знаете - "органично встроенное в геймплей ведение за руку" с подробным описанием перед каждым уровнем, для полного понимания, что сейчас с игроком и вирусом будет происходить (этот уровень не включён в финальный релиз, а описания всё ещё были шаблонно-изначальные):
Появились и бонусы. Мой мозг подумал, что кликать одного лишь врага будет неинтересно. Поэтому, ровно по той же механике, что и вирусы, появляются различные бонусы (забегая чуть вперед, скажу, что их всего 8 штук). Как играется? Да неплохо, особенно если постоянно тестировать и подкручивать время появления и исчезновения этого самого вируса.
Так, один за другим, начали появляться и последующие уровни. Невидимость, тряска, движение, уменьшение в размере и прочее-прочее-прочее... Подбираясь к третьему десятку уровней, я снова задумался. А достаточно ли этого для того, чтобы затянуть игрока на приличное количество времени? Тесты показывали, что на один уровень тратится чуть меньше минуты, значит, 30 уровней обеспечат полчаса геймплея. Непорядок. Как вы думаете, какое решение проблемы оказалось идеальным?
Верно. ДВА вируса (всё тот же билд от 01.05.20):
Забегая вперед, скажу, что и три, и четыре (самый хардкор, как по мне). И, знаете, с каждым уровнем даже мне, как создателю, становилось всё интереснее и интереснее; конечно, игра не избежала всяких вырезанных моментов и уровней десятками, но я постарался усложнять процесс по нарастающей.
Итак, прекрасно. Уровни копятся и копятся, врагов уже двое, введен босс в виде цепочки ДНК, который с каждым разом всё сложнее и сложнее (билд от 01.05.20):
Но всё равно чего-то не хватало.
Я снова приуныл из-за графики: мультяшный стиль показался мне каким-то несерьёзным в контексте тематики вирусов. Оллрайт, гугл, где там новая бесплатная графика? (билд от 19.05.20):
Внимательный читатель заметит, что между двумя картинками - 18 дней, и спросит - ленивый автор две с половиной недели искал картинки? Нет, мой уважаемый любознательный дружок. Что было сделано за это время?
- Переписан код основных механик (предыдущий код был "заплаточным" и приводил к огромным проблемам при генерации более 2-х врагов);
- Введено окно паузы (знающие люди подскажут, что в JS не существуют понятия паузы в коде - если только не установить какой-нибудь огромный цикл из, к примеру, миллиона элементов - но это маразм, поэтому, пришлось выкручиваться);
- Добавлены звуки и музыка (тоже бесплатные);
- Систематизирован список уровней (который, правда, будет редактироваться аккурат до релиза);
- Был найден старенький телефон МТС с OS Android 5.0, на котором проходило тестирование (Гугл после проверки приложения посчитал, что оно сможет работать с Android версии 4.4. И правда - памяти почти не кушает).
- Был реализован режим под планшеты и landscape-режим;
- Игра была переведена на английский язык со всеми текстами;
- СОК! Введены награды за уровень! Сейчас поподробнее.
Игрок, как водится, может как выиграть, так и проиграть. Это основа основ, начало начал, ты в сердце моём надё... Ах, да. Продолжим. Если игрок внезапно проигрывает - ну, что ж, награждать мы его не будем. Не заслужил. А вот если выиграет - можно и наградить. Очками Лекарства, которые можно потратить на изучение Умений, которые, в свою очередь, помогут в сражениях с вирусами.
И, поверьте мне, именно введение вот этого, кхм, супермаркета помогло мне ощутить, что игра и её концепт (и реализация в принципе) не такая уж безнадёжная :)
Вот такой экран вы увидите после победы на уровне. При поражении он будет точно таким же, но уже можно будет переиграть уровень:
-
Итак, 21 числа я, удовлетворённый проделанной работой, запускаю игру в GP и... получаю страйк.
Это звучит забавно, но первоначальный план провалился. Гугл не допускает до магазина всё, что связано с COVID-19, - только от официальных организаций. Хм, грусть-печаль-тоска.
Что ж... Покумекав над новой стилистикой (возникали самые неожиданные варианты), принял решение снова искупаться в бассейне бесплатной графики и сменить ВИРУСЫ на БАКТЕРИИ.
Параллельно подкрутил такой важный, как мне показалось, элемент, как полоска жизни бактерии. Над каждой из них теперь возникает своя так называемая "шкала времени", которая начинает опустошаться сразу после появления этой самой бактерии, что вносит в игру определенную напряженность.
В общем, вуаля! Финальный вид!
Накапливаемая при прохождении статистика (доступна из главного меню):
Прикручена "всплывающая" анимация при попадании, промахе или опоздании:
Ну, и для затравочки: 4 бактерии, по которым надо попасть, пока они существуют (рядом виднеется бонус Маска, +1 HP. Итого надо сделать 5 тапов по экрану меньше, чем за полторы секунды. Не думайте, что это просто):
Итак, что в итоге?
- Проект сделан за 32 дня, неоднократно переделывался, частично писался с нуля;
- Написан на простых технологиях (хотя - кому как);
- Потрачено много нервов;
- Получено море кайфа от процесса;
- Изучены некоторые новые штуки (может, теперь меня возьмут, наконец, на работу в IT? Хотя бы тестировщиком...);
- Повышенная самооценка - уж точно;
- Ну, два кило лишнего веса, да...
Релизный трейлер:
Что я хотел сказать своим постом?
- Не бойтесь самореализации через простые проекты.
- Не бойтесь экспериментов;
- Творите на здоровье)))
Какие дальнейшие планы?
Поддержка игры, правка багов и всё такое. Думаю добавить уровни сложности, расширить игру еще на 20 уровней (максимально сейчас - 4 бактерии, будет 5). Сначала надо посмотреть, нужна ли игра кому-нибудь.
В комментариях, повторюсь, оставлю 50 бесплатных ключей.
Игра стоит 39 рублей для Российский Федерации, но я очень хочу поделиться своей радостью от первого серьёзного проекта, поэтому прошу не пинать тапками за размещение поста платного проекта. Может, кто и поделится куском масла на хлеб для начинающего разработчика))
Страница игры в магазине Google Play: Bacterias Are Angry - Злые Бактерии
Ссылка на пока что тихую группу VK: Злые Бактерии VK
Спасибо, что дочитали до конца! Надеюсь, вам понравится!