Привет, разработчик! Помнишь как начинался твой путь? Как ты сделал свою первую игру? С какими проблемами столкнулся?
Недавно я решил попробовать свои силы в разработке игр и сегодня я хочу рассказать всему нашему сообществу о всех ямах, которые ждут новичков на длинной дороге в мир разработки видеоигр.
Опишу максимально полно свой путь и постараюсь на ходу дать советы новичкам, по недопущению моих ошибок.
Надеюсь это статья принесет немного ностальгии для бывалых разработчиков и даст ценный опыт начинающим. Ну что, поехали!
С чего все начиналось?
Все было банально просто: я заскучал, посмотрел пару мотивирующих видео в стиле "игра за 45 минут" и твердо решил что-то создать.
Опыт в программировании у меня имелся и оставалось только найти среду разработки. Выбор пал на Unity3d, хотя в самом начале во все тонкости я не вникал и выбрал только из-за постоянного мелькания во всяких обучающих видео и c#. По итогу могу сказать, что о выборе не пожалел.
Первые шаги в unity
Священный Грааль - официальные туториалы. Я применил старинный русский метод Авось(); и у меня не прокатило, позже пришлось изучать пользовательский интерфейс и порядок работы. Советую с этого начинать.
Где взять идею?
Когда со средой разработки все стало более менее ясно и вы готовы писать, то пора родить идею.
Я решил, что новичку будет сложно написать, что-то своё, поэтому было принято решение делать ремейк, какой-нибудь известной игры.
Это легко объяснить тем, что в начале бывает трудно рационально оценить свои силы и ставить перед собой посильные задачи. Хочешь дописать игру до конца? Начни с простого.
Мой выбор пал на Stack attack.
Все же помнят эту игру на старых кнопочных телефонах про сортировку ящиков? Вот её я и попробовал повторить и улучшить
Написание игры
Тут бы я не хотел останавливаться долго. Этот процесс индивидуален у каждого разработчика, но для новичков я дам 2 совета:
1. Читайте официальную документацию
2. Не задерживайте выход игры. Дайте себе установку выпустить ее, когда будет готов определенный геймплей или свет она не увидит очень долго.
Где брать графику?
Это самый больной вопрос для меня, как и для многих инди разработчиков. Попробуйте нарисовать сами - отлично подойдёт вектор.
Я рисовал свою игру сам на 95%. Смотрел на готовые арты и пытался нарисовать похоже, а там где не смог, то заплатил деньги для художника.
Можно использовать готовую графику, но не забывайте о разных лицензиях - придется упоминать каждого автора в своей игре.
Игры готова. Пора делать 💰!
Это обязательный пункт для новичка. Нет - ты не заработаешь денег, но научиться использовать эти инструменты ты обязан.
Сейчас самая популярная модель - бесплатная игра с рекламой и внутриигровыми покупками.
В своей игре я использовал рекламу от unity ads, ее же внутриигровые покупки.
Все из-за простоты. Разработка на unity , значит на мой взгляд легче всего использовать их сервисы.
Подключается легко, есть документация и много инфы на форумах.
В своей игре я старался встроить минимум рекламы и вам советую.
Основной упор делаем на рекламу с наградой, а остальной по минимуму.
Кстати, ценный совет: не забывай про Advertisement.RemoveListener(this);
Я забыл и долгое время не мог понять, почему реклама не даёт бонусы, не повторяйте моих ошибок.
Вперёд в маркет!
После того, как игра написана, то мы бежим платить корпорации добра 25$ за аккаунт разработчика и выкладывает свою игру.
И опять совет: не забывайте добавить id своих встроенных покупок из unity в гугл консоль.
Совет номер два: не нужно использовать для локализации страницы в маркете google translate, не можете перевести сами, то просите знакомых. Нет знакомых? В мире полно инди разработчиков, попросите их перевести описание с английского на их родной язык. Многие вам не откажут.
Ура! Игра опубликована. Теперь добавим в игру google play game services. Можно приделать свои решения, но мы новички и не просто так платили 25$.
Вот тут многие и застревают. Я лично застрял на 6 часов. Аутентификация не проходит, сервисы не работают. Как решить?
Мои советы:
1. Попробуйте более старый плагин
2. Проверьте java_path в дополнительных настройках своего компьютера, там должен быть путь к вашему jdk.
3. Проверяйте работу на эмуляторах, я использую Nox. Так вам не нужно заливать игру в маркет. Для этого добавьте оба ключа (загрузки и подписи) sha1 в google api.
Когда вы победите, вам откроется прекрасная соревновательная часть вашей игры: achievements и таблица лидеров.
Давайте подведем итог разработки:
1. Игра написана
2. Опубликована в Google play (самый важный шаг)
3. В игру добавлена монетизация
4. В игру добавлены play game services
5. Потрачено 1.5 месяца вечеров после работы
Хоть обычно первый блин комом, но в данном случае я считаю это успехом. Особых надежд на игру не было, тем не менее она получилась очень бодрой и вполне может составить конкуренцию аналогам.
Попытался донести максимум информации о своем первом опыте именно в разработке игр, текста получилось конечно много, но надеюсь читабельно.
Задавайте свои вопросы в комментарии, а если столкнулись с какой-то проблемой в своей первой игре, то пишите на почту: say.pls.wis@gmail.com
Ну и оставлю ссылку на страницу игры в Google Play, буду рад конструктивной критике - https://play.google.com/store/apps/details?id=com.MG.TC