Comments 22
Спасибо за хорошую статью, их по unity3d не так уж много теперь.
Не думали использовать сплайны для создания тела червя? Ключевые точки все известны, можно построить Mesh используя их, а в unity3d есть удобный [AnimationCurve](https://docs.unity3d.com/ScriptReference/AnimationCurve.html, с помощью которого можно рассчитать сплайн.
О сплайнах, к сожалению, не слышал. Но буду иметь в виду, спасибо!
На момент начала разработки хотелось скорее написать рабочий прототип, поэтому был выбран первый пришедший в голову подход.
И в отдельной ветке:
Про скины к червю и их реализации. Есть более красивое решение, которое, к тому-же, аккуратнее кастомизируется и не подразумевает создание кучи объектов:
- Создаем новый класс WormSkins, наследуемый от ScriptableObject'а
- Прописываем атрибут CreateAssetMenuAttribute, чтобы его можно было в редакторе создать
- В WormSkins делаем SerializeField массивы для голов, хвостов и тд:
[SerializeField] Sprite[] heads;
- Делаем геттеры (точнее, функции-геттеры, т.к по индексу берем):
Sprite GetHead(int index)
- Создаем в ассетах экземпляр этого класса (пункт 2)
- Прописываем в нём все головы, хвосты и т.д.
- Оставляем ссылку на этот экземпляр в префабе червя, в том классе, где у вас сейчас кастомизация происходит (или как-то более красиво, тут много вариантов)
- Оставляем в черве только одну голову, один хвост и тд, без указанного спрайта
- При запуске берем индекс из пользовательских настроек, получаем спрайт из WormSkins и засовываем его в нужный SpriteRenderer
По идее, лучше использовать не индексы, а уникальные id, которые самостоятельно прописываются для спрайта (не знаю, насколько хорошо делать его текстовым или привязываться к имени самого спрайта). В этом случае скин игрока не поедет при добавлении нового элемента в начало.
А для голов проблема в том, что у них еще есть глаза как отдельный объект, которые размещены в разных местах относительно спрайта головы. Поэтому просто менять sprite у SpriteRenderer в данном случае не вариант. Приходится где-то хранить группу с головой и размещенными для нее глазами.
О сплайнах, к сожалению, не слышал. Но буду иметь в виду, спасибо!
На момент начала разработки хотелось скорее написать рабочий прототип, поэтому был выбран первый пришедший в голову подход.
Какую монетизацию используете? Покупка игровых денег за реальные? Реклама?
Что делаете для продвижения? Похоже, обычных статей на хабре, постов на форуме уже становится недостаточно.
Успехов с игрой!
Сам играю на телефоне только в простые игры с короткой сессией, пока еду в метро.
Встроили рекламу в игру + видео за монетки (rewarded video). Стандартно можно отключить рекламу или купить монет за реальные деньги. Еще можно приобрести уникальный скин для червя.
Для продвижения был скомпонован пресс-кит на английском и русском языках. Два раза разослали в игровую прессу. Только 1 сайт написал полноценный обзор, который привлек около 50 игроков. Остальные просят денюжки или игнорируют из-за огромного кол-ва писем. Сегодня про игру написали на белорусском онлайнере, будем надеятся это поможет дальнейшей раскрутке.
Попробуйте выложить игру на форуме 4pda. Мне в прошлом году это принесло чуть меньше трех сотен установок за вечер. Но там специфическая аудитория — будьте готовы к читерам и паре-тройке единиц на сотню установок. Мне тогда читеры подпортили таблицу рекордов.
И вот вижу кучу прилаг в магазе — ну херь херью, клоны, а набирают по 1млн загрузок.
Вопрос напрашивается: куда катиться
PS не в коем разе не призываю делать подделки на коленках
Игра HellWorm. История разработки