Пока готов только первый уровень. Дальнейшая разработка вероятна, но пока хочется перевести дух и оценить результат :)
Началось все с того, что захотелось поиграть на телефоне в качественный платформер, что-нибудь типа мегамена, метройда, кастелвании и т.п. Несколько неплохих игр я таки нашел, но полного удовлетворения не получил. И тут пришла гениальная идея – «ё,надо самому сделать, я же знаю какая должна быть хорошая игра, а платформер вроде дело не сложное. Правда ведь?»
Делать решил на юнити, в 2D, спрайты рисовать в фотошопе. Придумал какая должна быть механика, сюжет, набросал общий дизайн уровней, систему прокачки персонажа и начал творить, сверяясь с мануалами по юнити. Руководствовался следующими принципами:
- Не пытаться создать «уникальную прорывную игру-откровение», но в тоже время не делать шлак. Просто платформер, в который интересно играть.
- Только сингл.
- Никаких покупок игровой валюты за реальные деньги.
- Не использовать стандартные ассеты из бесплатных библиотек. Лично мне надоело начинать игру, после чего обнаруживать что она сляпана из материалов к видео-урокам unity или gamemaker.
В итоге все создавал сам, кроме музыки. После нескольких безрезультатных часов залипания в простейших музыкальных редакторах, я понял, что музыка это просто не мое :)
В начале дело пошло очень даже бодро. Спрайты рисовались, скрипты писались, сцены э… сценились. По сюжету девочка из нашего мира попадает в волшебный, прокачивает магические навыки, крошит врагов в капусту, спасает/захватывает волшебное королевство, вот несколько гифок с процессом:
Проблемы появились чуть позже. Оказалось, что самому рисовать, кодить, подбирать звуки и музыку все-таки долго. Вместо нескольких месяцев разработка грозила растянуться на год другой. Решения, которые хорошо смотрелись в туториалах, оказалось не очень удобно использовать в большом проекте. Навыки и уровень персонажа, магазин и различные виды магии, справочники с описанием оружия и врагов – получился довольно монструозный, переплетенный кусок из PlayerPrefs’ов,который было очень тяжело поддерживать. Но самый главный косяк – производительность. Оказывается, не лучшей идеей было засовывать всю логику в Update, Rigidbody на каждый объект пихать не надо, а Animator и Instantiate это вообще запретные штуки (но я все равно частенько использую, удобные заразы). Т.е. чтобы игра заработала, необходимо было переделать примерно все.
Что и пришлось сделать. Главная моя ошибка – не имея достаточного опыта, я решил сделать довольно сложный продукт. Проблема в том, что в начале пути, из-за отсутствия этого опыта продукт не кажется сложным =).
В новом проекте я отказался от опыта и инвентаря (прощай метрования), добавил разовые улучшения, когда берешь определенный предмет (привет мегамен!). Упростил GUI, систему диалогов (сделал в стиле кирандии, может кто помнит), сюжет попроще (и диалогов меньше получается, ога). Сейчас готов только первый уровень, но вся механика уже сделана – остается только рисовать спрайты и собирать сцены, с минимальным скриптописанием (разве что только катсцены и боссов не смог загнать в общую логику, но это штуки уникальные, наверное, так и не получится). И хотя сил и времени на это дело все равно тратится много, теперь есть уверенность что, если продолжать херачить, работа будет завершена (в отличие от моей первой попытки, когда в один момент у меня появилось чувство, что это бесконечный, бессмысленный труд).
Отдельно порадовал гугл плей – иногда проверки обновлений занимали по 2-3 дня, upload key и signing key (вот эта была подстава – локально ачивки работали, после публикации нет, а публикации я ждал по 2-3 дня, ага) и милые вопросы типа «содержит ли игра пропаганду, направленную против законного правительства Корейской Республики» (я кстати так и не понял, это они про южную или про северную?). А еще ужасная русификация консоли, учитывая, что все мануалы на английском. В общем теперь я понял зачем в компаниях есть должность релиз-менеджера :)
Ну, в общем, если кто хочет заценить, ссылка на игру в Google Play:
https://play.google.com/store/apps/details?id=com.Postman.gl...
Комментарии, замечания приветствуются!
Спасибо за внимание :)