P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤6🔥5🥰4
Всем привет! Сегодня хочу рассказать о переходе на новую структуру игры.
Старые миры
В первой части игры структура была довольно простой и строилась вокруг сущности мира. Игрок мог создать мир и играть в нём. При этом не существовало никаких измерений — вроде ада, небесных островов и т.д.
Новые вселенные
Новый подход строится уже на двух сущностях:
— сущность вселенной
— сущность места (place)
Что это даёт
В будущем можно прикрутить систему разблокировки места, чтобы в него попасть нужно выполнить какой то квест или скрафтить какой то ключ
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥20❤2🥰2
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥8❤3🥰1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10🥰6❤4
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
6🥰7🔥2
Не стал долго тянуть с этой темой и решил сразу внедрить его в новую часть (ранее планировал добавлять позже, уже после релиза).
Сетевые решения
Для мультиплеера выбрал PurrNet — у него есть всё, что мне нужно. Среди других решений (FishNet, Mirror, Netcode) у него лучшая производительность.
Из минусов — пока очень мало документации, но спасает то, что я уже работал с FishNet и база у меня есть, так что разобраться несложно.
Также интегрировал VContainer в PurrNet, чтобы при создании сетевых объектов в них автоматически внедрялись зависимости.
Режимы работы
Планирую сделать 3 режима:
Архитектура
Так как есть 3 режима работы, из них вытекают 2 версии приложения:
Для этого я сделал 2 входные сцены: Client Bootstrap и Server Bootstrap, а также кастомный инструмент сборки.
В первом варианте собирается билд клиента (WebGL, Android и т.д.) со стартовой сценой Client Bootstrap,
во втором — билд для Dedicated Linux Server со стартовой сценой Server Bootstrap.
При старте выделенного сервера сразу создаётся нужная вселенная, после чего запускается сцена с ней — и далее клиенты могут к ней подключаться.
P.S.
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥37❤4🥰2👍1
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤6👍3🔥3
Всем привет! Сегодня расскажу про систему мультисцен и разделение игрока на два уровня.
Система Universe и Place на мультисценах
Для реализации вселенных использовал мультисцены Unity. При старте сервера запускается главная сцена Universe — это общее пространство вселенной. Когда игрок хочет зайти в конкретный Place — подгружается дополнительная сцена.
Два уровня игрока
Разделил сущность игрока на два уровня.
Спавн, синхронизация чанков и игроков
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍4🥰1
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍2
Всем привет! В прошлом посте рассказывал про архитектуру Universe/Place и стриминг чанков. С тех пор добавил много нового функционала и теперь уже можно вместе с кем то побегать по миру
При подключении клиент отправляет на сервер свои профиль — никнейм, скин и радиус видимости. Сервер прокидывает всё это на сущность игрока для дальнейшей синхронизации. Теперь все игроки видят текущий ник и скин других игроков.
Разделил режимы камеры: для своего персонажа мы можем переключать вид от первого или третьего лица, но чужие игроки всегда будут отображаться в третьем лице. Сделать это было не так сложно, так как у меня уже была заложена система переключения вида для игрока
Так как система анимаций у меня кастомная (без юнити аниматора), то было несколько вариантов как реализовать синхронизацию. Пока что остановился на параметрах сущности (Velocity, IsCrouch и т.д). Аниматор просто подвязывается к ним и работает как обычно, вызывая нужные стейты в зависимости от параметров. Возможно в будущем оптимизирую за счет синхронизации самих стейтов анимации, а не параметров, но пока что сойдет и такой вариант.
Вынес работу с физикой (различные касты) из глобальной обработки в Place. Каждый плейс теперь работает со своей физической сценой Unity — физика одного места не влияет на другое. Без этого физика в мультисценах нормально работать не будут, так что штука важная.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤3👍2
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
7❤6
В папке собраны самые полезные, активные и вдохновляющие каналы индустрии, где каждый разработчик найдёт для себя что-то действительно ценное:
🧑💻 Помощь и практические советы по разработке игр🆓 Бесплатные раздачи ассетов и промокоды📣 Актуальные новости геймдева📱 Советы по заработку на разных игровых площадках📱 Авторские каналы по геймдизайну📸 Личные блоги разработчиков
Подключайтесь к папке The GameDev и станьте частью сильного комьюнити!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15❤5🥰4💯1
Последние 1.5 года я со своей командой работал над этим продуктом — и вот наконец можем рассказать об этом публично.
Что умеет Cloud на данный момент:
Это далеко не весь функционал Cloud — у нас ещё много крутых фишек, которые вам понравятся.
Cloud мы делаем в партнёрстве с ребятами из Mirra Hub — если хотите узнать подробнее про хаб и остальные продукты, подписывайтесь на канал Дани. А так же в свежем видео он как раз затронул тему Cloud, кому интересно, бегите смотреть)
#cloud #game_backend
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥21👍5❤3🤯3
P.S Эвент длится оба выходных
#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍7❤3🔥3
Начинаем разбирать функционал Cloud по порядку, и старт — с самого базового: как игрок попадает в игру и кто он вообще такой.
Вход в игру
Мы даём разработчику выбор, как именно игроки будут входить в игру. Провайдеры разбиты по группам:
Разработчик сам выбирает, какие провайдеры подключить. Хочешь, чтобы игрок сразу попал в игру без лишних шагов — ставишь гостевой или Device ID. Хочешь кроссплатформенный вход — добавляешь Google, Apple или что нужно. Провайдеры можно комбинировать — быстрый вход на старте, привязка соцсети или почты позже для переноса прогресса между устройствами.
Аккаунт и профиль
В Cloud мы разделили игрока на два уровня — и это одна из ключевых фишек платформы.
Несколько профилей на один аккаунт
В Cloud аккаунт не привязан к одному прогрессу. Разработчик может дать игрокам возможность создавать несколько профилей и свободно переключаться между ними — всё это работает из коробки.
Зачем это нужно:
Похожую систему можно встретить в игре Rise of Kingdoms — один аккаунт, несколько персонажей, у каждого свой прогресс, своя цивилизация, свои ресурсы.
А также подписывайся на нашего тг бота — там будут приходить новости по продуктам хаба
#cloud #game_backend
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍5🤯3