Ретроспектива - Технологический стек. Часть 1
Привет, друзья. Мы прекратили поддержку нашего Slash Polygon’a, поэтому самое время начать рассказ об опыте, который был приобретен в процессе работы над проектом.
Прежде всего хотелось бы рассказать вам, на каких технологических рельсах работает наша игра, действительно ли в игре есть мультиплеер, боты и другие интересные вещи. Краткий синопсис Наш проект представляет собой экспериментальную механику 3D-person action, которая представлена в виде следующих вещей:
- Управление персонажем при помощи стика
- Удары, которые зависят от того, каким оружием вооружен персонаж
- Блок. Продолжительное состояние, которое тратит стамину и защищает от вражеской атаки
- Уворот. Самая спорная механика, которая делает персонажа неуязвимым на момент исполнения.
Игра базируется на нескольких технологических китах: игровом движке Unity, сетевом решении Microsoft - Foton Cloud, игровой базе данных Playfab и формате хранения и передачи JSON. Все используемые решения у нас на бесплатном тарифе, а это значит, что сетевой трафик, количество данных и вызовов API довольно сильно ограничено.
Unity как игровой движок
Так уж получилось, что Unity мы с ребятами знаем лучше, чем, например Unreal Engine или тот же Game Maker Studio. В качестве графического стиля мы выбрали low poly art, но не потому, что горячо любим его, а скорее потому что купленные в Unity Asset Store ассеты от студии Synty сделаны именно в таком стиле. Анимации были также куплены у KUBOLD’а - это неплохие паки, содержащие одноручное фехтование, взмахи однородного оружия и щита, а также анимации с двуручным оружием.
Если кому-то интересно, могу скинуть ссылки на ассеты.Аниматор (их 3) в игре довольно простой, хотя местами и замороченный. Три их потому что анимационных наборов ровно столько же и соответствуют они купленным наборам. В каждом аниматоре есть стандартный набор:
- Block Layer в котором живет Block - стейт, когда персонаж держит блок.
- Movement Layer- слой передвижения персонажа, который меняет анимацию передвижения в зависимости от того, какое значение получает со стика. Стоит отметить, что передвижение сделано в игре именно анимацией (motion), откуда растет его излишняя сложность с точки зрения мобильных игр.
- Attack Layer - слой отвечающий за атаки. В нем находятся по 3 стейта, каждый из которых соответствуют уникальному набору из 4-х последовательных анимаций, образующих непрерывное комбо (если игрок успевает нажимать быстро кнопки и тратить выносливость, персонаж наносит последовательность связанных ударов)
PlayFab как хранилище игровых данных
PlayFab это фреймворк, который мы использовали как базу игровых данных - игровые профили и инвентари, валюта, данные лутбоксов, параметры оружия, рейтинги и даже инапы - все хранится там.
Интерфейс плейфаба прост и удобен Он содержит большое количество функциональностей, которые работают прямо из коробки лишь с небольшим количеством необходимых доработок, чтобы все заработало на клиентской части.
Подробнее о Playfab расскажем в следующей части статьи.
Смотрите также:
Комментарии
Если кому-то интересно, могу рассказать в одной из статей о дизайне мобильной игры.
Есть много подводных камней, связанных с управлением и заблуждениями вроде "удобно на PC, значит будет удобно Mobile"
Прекратили поддержку - в плане вообще закрыли проект, или просто больше не будет обновлений?
Прекратили поддержку - в плане вообще закрыли проект, или просто больше не будет обновлений?
Закрыли. Есть большое переосмысление, которое мы хотим реализовать после Vikings Survival'а.
В целом по отзывам игра некоторым людям понравилась (были даже донаты, что для мелкого проекта вообще странно), но мы ее не доделали, не завезли адекватную привязку к учетке Google Play, вызова конкретного человека на дуэль и всякой мелочи, что создавала бы минимальное удержание.
А были ли наезды (или брезгливые "фу") что юзаются ассеты?
А были ли наезды (или брезгливые "фу") что юзаются ассеты?
Все ассеты куплены + это только графическая часть (анимации и модели). UI собственный, сделан, кстати by longbowman.
Внутренности самописные, да и игрокам вообще по барабану на это, лишь бы игралось адекватно и приятно.
или брезгливые "фу"
С графической точки зрения подобный стиль в такой камере всегда мной лично воспринимался как fu. Потому что я фанат детализированных лиц, а не нулевой детализации и пары точек в виде глаз.
Вот примеры отзывов:
CollectableItemData.cs
[CreateMenuItem(fileName = "newItem", menuName = "Data/Items/Collectable", order = 51]