Как я уволился, освоил Unity и сделал небольшую математическую головоломку на мобильные платформы
Всем привет,
Хотел рассказать о своей первой игре и немного о том, как дошел до жизни такой.
Итак, весной, в разгар карантина, я решил уволиться с работы, вопреки советам повременить. Рынок труда был довольно вялым, я давно хотел попробовать сделать что-то свое, и, после некоторых раздумий, остановился на мобильной игре, как на наиболее легко реализуемом варианте.
Спустя 10 дней я закончил курс “C# Survival Guide” на Unity Learning (Если интересно, вот ссылка, с недавних пор весь ресурс стал бесплатным: https://learn.unity.com/course/unity-c-survival-guide), и приступил к делу. Идея уже довольно давно была на уме, оставалась реализация. Базовый геймплей занял около пары-тройки недель, дизайн UI примерно столько же, а вот интеграция всяческой инфраструктуры (облачные сохранения, реклама с медиацией, внутриигровые покупки) вкупе с временами буйствующей прокрастинацией существенно сдвинули мой график. Суммарно разработка заняла около полугода, хотя игра, наверное, выглядит, будто ее сколотили за выходные. Мое оправдание в том, что для меня это в новинку, и это в целом мой первый реальный опыт программирования и остальных этапов разработки, работал я до этого не в IT.
Предыстория закончена, позвольте представить саму игру: 8-ка – это динамичная математическая головоломка, в которой задача игрока – за ограниченное время выбрать вариант ответа, который приведет данное число к 8. Т.е., к примеру, дается число 0, правильным вариантом будет “+8”. Вопросы бесконечные, генерируются на ходу и по мере игры становятся сложнее. После определенного этапа начинают появляться двухэтапные вопросы, в которых нужно использовать два варианта, или один и тот же дважды. Пример – дан тот же 0, для приведения к 8 нужно выбрать “+4”, затем “×2”.
В ходе игры также можно использовать бонусы. Активируются они посредством свайпа внутри круглой зоны таймера и стоят один жетон (внутриигровая валюта), использовать можно только один на вопрос. Свайп вправо убирает два неверных ответа, вверх – восполняет половину времени, влево отменяет первый выбранный вариант ответа в двухэтапном вопросе.
Число 8 также является частью игры не только в ее названии: минимальное количество очков за правильный ответ – 8, иконка жетонов – восьмиугольник, на ответ дается 8 секунд (по мере усложнения время увеличивается), количество вопросов, на которые нужно ответить для повышения уровня сложности – тоже 8 (его можно сократить, отвечая достаточно быстро и без ошибок), самый маленький доступный пак жетонов состоит из 8, стоимость одной темы составляет 8 жетонов и др.
Еще одна имплементированная мной игровая механика – ежедневные задания. Как уже упоминалось, в 8-ке есть внутриигровая валюта, и задания являются способом ее бесплатного получения. Каждый день можно выполнить три задания, выбираются они случайно, каждое при этом сложнее предыдущего, а упростить/пройти задание также можно, посмотрев рекламу. Также до трех жетонов можно получить, поделившись своим результатом, оставив отзыв в магазинах и посетив мою страницу в Facebook с помощью внутриигровых кнопок, рядом с которыми отображается восьмиугольный значок уведомления.
С точки зрения дизайна, целью были простота и минимализм. В игре всего три экрана - основной, меню с опциями и магазин с внутриигровыми покупками и темами оформления, переход между которыми осуществляется с помощью верхних кнопок (восьмиугольник кликабелен). Игру можно поставить на паузу, выйдя в один из двух боковых экранов или свернув приложение, при этом при продолжении игры будет сгенерирован новый вопрос.
Буду рад, если поделитесь своими впечатлениями от игры. Ниже короткий трейлер, фидбек также приветствуется.
Мало кто знает, но это первоначальный вариант дизайна баннера...
1. Зачем уволился-то?
2. Когда обратно на работу?
1. Да зарплаты урезали и персонал сокращали, ковид же
2. Как только игра провалится, и деньги кончатся
Дизайн мне нравится. Успехов тебе человек, который не сидит на месте!
Думаешь, что он создавал игру стоя?
Благодарю)
Комментарий недоступен
Думаю, цель, как и у всех подобного рода постов, - рассказать о себе и своей игре. А цель комментария-то какая, вбросить без конструктива?
После травмы головы со считалкой время от времени туговато
Подобные короткие рандомные задачки хорошо мозг разминают
Надеюсь, что травма несерьезная) Рад, что понравилось
Идея хорошая, дизайн хороший, молодец! Круто, что не замахнулся на игру мечты, а довёл простую идею до релиза!
Там в обучении, когда рассказывают про два этапа, нужно в начале нажать +4, а потом обязательно ×2, но я, например, захотел нажать снова +4. Тоже ведь законно, но заскриптовано так, что неверно. Думаю, надо либо поставить несколько вариантов правильных, либо никогда не допускать нескольких правильных. Игрок часто будет злиться на такую несправедливость, типа "ты чо игра умнее меня?"
О а ещё в вариантах с отрицательным числами лучше все таки поставить скоблчки. --1- > - (-1)
Благодарю за отзыв)
Про обучение отдельное спасибо, вообще упустил из виду. Заскриптован при этом только туториал, в самой игре прописан в т.ч. вариант генерации двухэтапного вопроса, где для прохождения нужно выбрать один вариант дважды, и часто генерируется несколько путей к 8 (Там, умножить и разделить на 1, и оба варианта засчитываются). Поправлю в ближайшем апдейте.
Насчет скобочек я тоже думал, но, чтобы их добавить и уместить все в рамках кнопки, приходится делать довольно маленький шрифт. Но предложение также возьму на заметку.
Задумка - огонь. Скачал, но пощупать руками не вышло - игра вылетает при запуске. OnePlus 6t, Android 10. Фидбек отправил. Надеюсь, получится выловить баг, с удовольствием бы потестил игру. :)
Спасибо за отзыв, на 10 андроиде тестировал, и проблем не было. Постараюсь в ближайшее время исправить, и по готовности напишу в ЛС.
Комментарий недоступен
Спасибо!
Скажу честно игра была сделана с душой.
И это видно, сам хотел пойти на обучение но из-за лени и отсутствием денег, не могу себе позволить.
Вообще я думаю на что ещё пойти учиться.
На JavaScript или на C#.
Ибо хочу сделать свою песочницу(нет не майнкрафт, а именно свою песочницу)
Не думаю, что обладаю достаточной компетенцией, чтобы советовать по выбору языка программирования, C# я выбрал только потому, что на нем пишутся скрипты в Unity.
По поводу песочницы желаю удачи, единственное, полагаю, что для первого проекта стоит поставить не такую масштабную задачу. У меня самого полно идей для гораздо более крупных игр, но я сознательно решил начать с восьмерки из-за реалистичности завершения проекта во вменяемые сроки (и то все безбожно затянулось).
Успехов! Выглядит симпатично.
Благодарю)
С первого раза зашёл в топ-20 этой игры. Я бы исправил анимацию при нажатии на число. Уж больно она бьет по глазам, когда сильно сконцентрирован на игре.
А так игра крутая, особенно как для новичка!
Благодарю за фидбэк) Имеется в виду белая вспышка при правильном ответе? Подумаю, чем можно заменить.
Так и задумано?
Могу поинтересоваться, какая у Вас версия андроида? На 11 может вылетать из-за бага с il2cpp в самом юнити, который они обещают исправить в одной из ближайших версий. Также буду благодарен, если нажмете "отправить отзыв".
Дизайн гуд 👍успехов
Молодец. Дело рискованно, но хорошее. А что делать - мир треснул.
Не работает. Mi8, miui12, android 10
Просьба отправить отчет, буду исправлять, уже несколько таких случаев
Выпустил обновление, которое должно устранить вылеты, буду рад, если опробуете.
Странно, но в google play игру не удалось найти
Обращал на это внимание, думаю написать в саппорт, тк уже прошло некоторое время, и в апп сторе все давно ищется
50+ установок. Как собираешься игру рекламить?
ASO, мб небольшую кампанию в соцсетях или в других играх (на большую денег не хватит), попробую разослать некоторым обзорщикам, если совсем не будет идти, попробую попитчить издателям. Ну и посты вроде этого тоже не вредят.
Не туда написал ответ, не обращайте внимания.
Слишком много рекламы.