Kozlov Dev - Разработка игр – Telegram
Kozlov Dev - Разработка игр
3.35K subscribers
506 photos
160 videos
3 files
227 links
Канал о разработке игр.
Download Telegram
😎 Стартуем эвент SCREENSHOT SATURDAY!

❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делитесь своими скриншотами, рисунками, прикрепляйте ссылки на каналы и показывайте прогресс в геймдеве за неделю

P.S Эвент длится оба выходных

🙂 Всех с праздником 14 февраля!

#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍2
🔥 Продолжаю работу над мультиплеером!

Всем привет! В прошлом посте рассказывал про архитектуру Universe/Place и стриминг чанков. С тех пор добавил много нового функционала и теперь уже можно вместе с кем то побегать по миру

✔️ Профиль игрока
При подключении клиент отправляет на сервер свои профиль — никнейм, скин и радиус видимости. Сервер прокидывает всё это на сущность игрока для дальнейшей синхронизации. Теперь все игроки видят текущий ник и скин других игроков.

👀 Камера и вид отображения игроков
Разделил режимы камеры: для своего персонажа мы можем переключать вид от первого или третьего лица, но чужие игроки всегда будут отображаться в третьем лице. Сделать это было не так сложно, так как у меня уже была заложена система переключения вида для игрока

✔️ Синхронизация анимаций
Так как система анимаций у меня кастомная (без юнити аниматора), то было несколько вариантов как реализовать синхронизацию. Пока что остановился на параметрах сущности (Velocity, IsCrouch и т.д). Аниматор просто подвязывается к ним и работает как обычно, вызывая нужные стейты в зависимости от параметров. Возможно в будущем оптимизирую за счет синхронизации самих стейтов анимации, а не параметров, но пока что сойдет и такой вариант.

✔️ Физика на уровне Place
Вынес работу с физикой (различные касты) из глобальной обработки в Place. Каждый плейс теперь работает со своей физической сценой Unity — физика одного места не влияет на другое. Без этого физика в мультисценах нормально работать не будут, так что штука важная.

😏 В целом мультиплеер уже работает — можно зайти на сервер, увидеть других игроков и побегать вместе. Дальше на очереди синхронизация взаимодействия с блоками и инвентарем, после чего можно уже попробовать запустить тест с выделенным серваком.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥133👍2
😎 Стартуем эвент SCREENSHOT SATURDAY!

❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делитесь своими скриншотами, рисунками, прикрепляйте ссылки на каналы и показывайте прогресс в геймдеве за неделю

P.S Эвент длится оба выходных

#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
76
😍 Легендарная папка каналов по геймдеву "The Gamedev" возвращается!

🔥 На этот раз присоединилось еще больше крутых ребят, которые хотят делиться крутым и качественным контентом.

В папке собраны самые полезные, активные и вдохновляющие каналы индустрии, где каждый разработчик найдёт для себя что-то действительно ценное:

🧑‍💻  Помощь и практические советы по разработке игр

🆓  Бесплатные раздачи ассетов и промокоды

📣  Актуальные новости геймдева

📱  Советы по заработку на разных игровых площадках

📱  Авторские каналы по геймдизайну

📸 Личные блоги разработчиков


Подключайтесь к папке The GameDev и станьте частью сильного комьюнити!

📌 Ссылочка на папку
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥155🥰4💯1
🚀 Представляю Mirra Cloud — бэкенд для разработчиков игр

Последние 1.5 года я со своей командой работал над этим продуктом — и вот наконец можем рассказать об этом публично.

🔥 Продукт представляет из себя готовый бэкенд с кроссплатформенным SDK и поддержкой различных игровых движков, который закрывает кучу задач, чтобы разработчик мог сфокусироваться на самой игре, а не на инфраструктуре вокруг неё.

Что умеет Cloud на данный момент:

📈 Аналитика — евенты, воронки, дашборды и многое другое

✔️ Player Management — аккаунты игроков, авторизация, облачные сохранения

⚡️ LiveOps — экономика, удалённая конфигурация, структуры данных

✔️ DevOps — хостинг игр, хранилище ассетов, система развёртывания и версионирования

🌐 Social — лидерборды, турниры, друзья

Это далеко не весь функционал 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👍53🤯3
😎 Стартуем эвент SCREENSHOT SATURDAY!

❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делитесь своими скриншотами, рисунками, прикрепляйте ссылки на каналы и показывайте прогресс в геймдеве за неделю

P.S Эвент длится оба выходных

#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍73🔥3
🔥 Аутентификация и профили игрока
Начинаем разбирать функционал Cloud по порядку, и старт — с самого базового: как игрок попадает в игру и кто он вообще такой.

Вход в игру
Мы даём разработчику выбор, как именно игроки будут входить в игру. Провайдеры разбиты по группам:

✔️ Базовые — гостевой вход, по имени пользователя, email, Device ID
✔️ Веб-игры — VK Games, Yandex Games
✔️ Мобильные — Google Play, Apple Game Center
✔️ Социальные — Google, Apple, Yandex
✔️ OpenID — для кастомных провайдеров

Разработчик сам выбирает, какие провайдеры подключить. Хочешь, чтобы игрок сразу попал в игру без лишних шагов — ставишь гостевой или 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
🔥19👍5🤯3
⚡️ Синхронизация всего и вся

Всем привет! Продолжаю пилить мультиплеер. На этот раз взялся за синхронизацию игровых механик — блоки, инвентарь, хранилища и многое другое. Работы было прилично, так что погнали по порядку.

Инвентарь и предметы
Начал с инвентаря — теперь он полностью серверно-авторитарный. Все операции с предметами (перемещение, использование, выброс) проходят через сервер. Клиент только отправляет запрос, а сервер решает, можно ли это сделать, и синхронизирует результат обратно.

✔️ Предмет в руке тоже синхронизируется — другие игроки видят что ты держишь.

Блоки
Перевёл на сервер всё взаимодействие с блоками — размещение, копание и разрушение. Копание работает через сессии — сервер отслеживает кто какой блок копает и считает прогресс. Причём копать один блок могут несколько игроков одновременно — прогресс складывается и скорость копания блока возрастает.

✔️ Так же доработал систему инструментов — у блоков теперь есть требуемый уровень инструмента для добычи.

Блок-сущности
Пожалуй самая интересная часть. Сундуки, печки и другие блок сущности с интерфейсом — всё это теперь работает по сети. Когда открываешь сундук, сервер блокирует его за тобой — другой игрок не может залезть в тот же сундук одновременно. Содержимое синхронизируется, а если кто-то сломает блок пока ты его открыл, то происходит принудительно закрытие.

Серверные тики блоков
Рост посевов, течение жидкостей — всё это теперь тоже синхронизируется между игроками. Посадил морковку — другой игрок видит как она растёт, и наоборот.

🙂 Основная часть синхронизации позади, осталось доделать несколько механик и можно выпускать на тест.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍4🤯4
😎 Стартуем эвент SCREENSHOT SATURDAY!

❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делитесь своими скриншотами, рисунками, прикрепляйте ссылки на каналы и показывайте прогресс в геймдеве за неделю

P.S Эвент длится оба выходных

#скриншотник
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥52👍2
💐 С 8 марта! Поздравляю всех дам с этим праздником!

😅 Пусть в жизни будет столько же вдохновения, сколько у инди разработчика перед новым проектом, а все идеи легко превращаются в крутые релизы.

😘 Пусть каждый день вас радует, баги обходят стороной, а настроение всегда держится на уровне стабильного 60 FPS.
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍6🥰42
🔥 Облачные сохранения в Cloud
Продолжаем разбирать функционал Cloud. В прошлый раз говорили про аутентификацию и профили — сегодня про то, что идёт сразу после: как хранить данные игрока.

Два формата хранения
В Cloud сохранения работают в двух форматах:
✔️ JSON данные — key/value. Прогресс прохождения, позиция на карте, настройки и т.д
✔️ Файлы — картинки который нарисовал игрок, скриншот и т.д

Два уровня данных
✔️ Player (Игрок) — привязаны к конкретному профилю игрока. Каждый профиль хранит свои данные отдельно
✔️ Custom (Специальные) — данные по произвольному ID. Идеально для сущностей вроде боссов, комнат, матчей — всего что живёт отдельно от конкретного игрока

Система доступов
Разработчик может тонко настроить, кто и что может делать с данными:
✔️ Owner (Владелец) — игрок читает и пишет свои данные
✔️ Other (Другой) — другой игрок может получить доступ (если разрешено). Например, посмотреть прогресс друга или его постройки
✔️ Server (Сервер) — доступ с вашего собственного сервера, без ограничений

Настраивается отдельно для чтения и записи — можно разрешить игрокам читать чужие данные, но не изменять их.

Поиск по данным
Если вы делаете псевдо-мультиплеер или хотите показывать данные других игроков, возникает вопрос — как быстро найти нужных? Для этого мы сделали систему индексов.

📌 На скриншотах показан пример: сохраняем для игрока три поля — level, attack, region. Создаём индекс по полю level. Теперь одним запросом из SDK можно найти всех игроков с уровнем выше 10 — например, чтобы подобрать противника для боя.

Индексы можно делать составными — по нескольким полям сразу. Например, индекс по level + region позволит найти всех игроков выше 50 уровня из конкретного региона.

Индексы работают на всех уровнях данных — как по данным игроков, так и по кастомным данным. Например, можно искать не только игроков, но и боссов по уровню сложности.

💬 Если есть вопросы по функционалу — пишите в комментарии, буду рад ответить.

А также подписывайся на нашего тг бота — там будут приходить новости по продуктам хаба 😎

P.S Дизайн на скриншотах пока тестовый — будет ещё дорабатываться.

#cloud #game_backend
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4🥰3