Добрый день, мое имя Артур. С недавних пор (почти год назад) я решил попробовать себя в области разработки игр.
Коротко про игру
Stellar State – пошаговая космическая стратегия в которой действие происходит в далеком космосе в звёздной системе похожей на нашу. Игрок может выбрать одну из четырех наций начальной планеты для завоевания звездной системы. Цель игры проста, завоевать все планеты системы и не дать сделать это остальным нациям. Ниже я оставлю ссылку на игру в Google Play, надеюсь Вы не откажетесь закачать и попробовать поиграть ее.
Коротко о себе
Мне 31 год. Я работаю руководителем низшего звена в одной из промышленных компаний нашей страны. Работа не пыльная, но меня всегда привлекало программирование.
Мои навыки на старте
До того, как я послушал вебинар по Unity и C# (в феврале или марте 2019 г.) я изучал программирование в Java по видеоурокам из YouTube автора Яков Файн (прошел полностью, спасибо автору) + по его же книге Java-programming-24-hour-trainer-2. С момента трех или четырёхдневного вебинара начал изучать исключительно Unity и C#. Переход из Java в C# дался мне почти незаметно. К тому моменту неплохо знал Autodesk Inventor ну и английский на уровне очень хорошего пользователя (английский очень важен, об этом все пишут я только подтверждаю это).
Первый этап разработки игры
Данный этап шел параллельно с интенсивным изучением Unity. Я учился в основном по книге Mike Geig — Unity 2018 Game Development in 24 Hours, по каналам YouTube, по документации Unity ну и конечно же https://stackoverflow.com/. Разработка игры изначально нужна была для укрепления знаний. Только позже я решил, что сделаю релиз игры в каком-либо сторе.
Ниже первые набросок игры в Excel и в Paint (изначально она предполагалась в 2D формате):
Следующие шаги в разработке игры
Далее я уже начал подключать свои скромные навыки в 3D моделировании создал несложные модельки и переориентировал игру в 3D. Последующие скрины игры уже выглядели лучше (как по мне).
С развитием своих навыков и соответственно игры я решил сделать шаг дальше, добавить меню и сделать полноценную игру с логическим началом и окончанием.
Далее уже пришло время и для настройки уровней, сохранения и загрузки данных игры, подключения музыки и звуков, отладки дизайна игры (чтобы она была более или менее красивой) и оптимизации кода.
К этому времени я уже работал над проектом и самообразованием около 6 месяцев. Все шло медленно т.к. я обучался и развивать проект мог только в свободное от работы и семьи время (+ конечно же отпуск и прочие отвлечения). Все оставшееся время заняла настройка внутриигровых покупок (обдумывание что продавать, создание меню продаж, интеграция функционала), рекламы c Appodeal (двух видов Interstitial и Rewarded Video), подготовка материалов для релиза в магазине (в т. ч. создание сайта и наполнение его начальным контентом, разработка политики конфиденциальности и т.п.). Параллельно примерно с ноября 2019 я вел аккаунт в Twitter, Facebook* и в Instagram*. Ну и конечно же попутно подшаманивал игру.
Ниже более или менее конечные скрины игры (которые и выложены в Google Play).
Ресурсы, которые я использовал
- Картинки конечно же я качал из Яндекса
- Звуки и музыку в основном я загружал из сайтов
- Для обрезки музыки и видео я использовал следующие сайты:
- Для создания видеоролика я использовал стандартный видеоредактор от Windows + стандартную функцию записи экрана.
- Для тестирования на смартфонах на первых этапах я использовал приложение Unity Remote затем начал собирать APK файлы для запуска на Android устройствах.
- Я вел журнал игры в https://paper.dropbox.com/ (все шаги, мини планы, баги и описание их решений, ресурсы). Cохранение резервных копий делал как на компьютере, так и в Google Drive.
- Ресурс по созданию простых и бесплатных сайтов https://www.homepage-konstruktor.ru/
Что было особенно сложно
Проблемы с кодом:
- Много времени потратил на отладку таймера для добавления юнитов и энергии. Т.е. когда у игрока заканчивается энергия и юниты для продолжения игры включается таймер и ведет обратный отчет для добавления бесплатных юнитов. При этом все это учитывает отключение игры, переход м/у сценами, смену фокуса от игры и т.п.
- Также было сложно настроить ходы компьютера. Это отладка последовательности, устранение наложений и багов, оптимизация ходов для сохранения интереса к игре.
Проблемы с надстройками и интеграцией:
- Интеграция с рекламным ресурсом Appodeal, потратил на это 3 полных дня в зимнем отпуске. Основная проблема была в том, что Google Play Services Resolver предоставляемы официальным сайтом Appodeal не подходил для моего проекта, поэтому я скачал из открытых источников наиболее последний unity-jar-resolver и игра стала собираться и все заработало. Про Appodeal могу сказать, что тех. поддержка работает быстро и все у них описано хорошо на сайте.
- Интеграция Unity IAP (т.е. внутриигровые покупки). Это была известная проблема с ошибкой невозможности подключения сервисов VR (виртуальная реальность) при попытке осуществить покупку. У всех был один вопрос, причем тут виртуальная реальность? У меня нет ее в игре!!! J Обходным решением, предлагаемым Unity была установка самого редактора Unity в папку без пробелов (т.е., например, папка с названием «Program Files» не подойдет). Это помогло многим, но не мне)). В итоге мне пришлось установить самый новый редактор Unity и обновить IAP, проблема ушла!!!
Что не сделал из того что мог бы
- Перевод на разные языки (как минимум на наш), решил, что для первой игры будет достаточно и английского, там не так много слов и надеюсь все будет интуитивно понятно любому, кто знает хоть что-то на английском. Правда добавил на сайте короткую инструкцию на русском (ниже ссылка на сайт).
- Уведомления, если честно даже и не разбирался еще, но обязательно сделаю если хоть какие-то установки пойдут.
- Сборка под IPhone и AppStore, у меня нет MacBook и покупать его за 60 тыс. р. (минимум) я не стал. Решил, что это сделать никогда не поздно если игра пойдет в Google Play. + за аккаунт разработчика если не ошибаюсь в Apple надо платить 100$.
- Оптимизация размера, игра весит 87 мб. и наверное это много, сейчас ищу пути снижение размера.
ИТОГО
В завершении напишу, что игру я запустил в Google Play 29.01.2020. То, что там никаких скачиваний, было ожидаемо. Вот и вся история про мой первый опыт разработки мобильной игры, я конечно же надеюсь на успех. И еще раз прошу Вас попробовать поиграть в мою игру, ну а если вы оцените игру и оставите отзыв по ней в Google Play моей благодарности Вам просто не будет предела. Конечно же жду Ваших комментариев по статье и игре здесь в Trashbox.
Спасибо.
С Уважением Артур.
Ссылка на игру в Google Play:
https://play.google.com/store/apps/details?id=com.ArtUR.StellarState
Ссылка на сайт игры и команду разработки на англ. (команда это я один пока что):
Ссылка на видеоролик игры в YouTube: https://www.youtube.com/watch?v=LKfyPXtgeJ8
* Деятельность Meta* (соцсети Facebook* и Instagram*) запрещена в России как экстремистская.
- Пособие для начинающих: как правильно добавить новость, статью или обзор
- Инструкция по добавлению программ и игр на Трешбокс