tgindex

Kozlov Dev - Разработка игр

описание

Канал о разработке игр.

4 148
подписчиков
Охват к подписчикам
16,5%
ERR
Реакции к просмотрам
1,66%
752 на 47 постов
Пересылки к просмотрам
0,84%
380
Постов в день
1,1
всего 50

Где отзываются чаще

доля реакций к просмотрам
  • 16:18⚡️ Вот и настал долгожданный момент, когда наш продукт выходим на тест! Станьте одним из первых тестировщиков Mirra Cloud Мы открываем набор в первую группу тестирования Mirra Cloud - для разработчиков, которые хотят попробовать сервис в работе и поделиться обратной связью. Mirra Cloud - это облачный backend для игровых проектов. Сейчас нам особенно важно проверить ключевые сценарии: интеграцию через SDK, систему игроков и авторизации, облачные сохранения, Live Ops, внутриигровую экономику, лидерборды и соревновательные механики, деплоймент и аналитику. Как будет проходить тестирование: ✔️ Сбор заявок до 23 августа; ✔️ 24 августа - общий чат и стартовый созвон; ✔️ 2 недели самостоятельного тестирования; ✔️ Общий созвон и индивидуальные интервью. На первой итерации сосредоточимся на поиске багов и проверке критичных сценариев. Так же в общем чате будем отвечать на вопросы и помогать с решением проблем Для участия не обязательно иметь опубликованную игру - ждём разработчиков как с готовыми проектами, так и без них! Участие бесплатное 👉 Подать заявку можно в Mirra Hub → Каталог → Mirra Cloud Если хотите не просто посмотреть на новый инструмент, а попробовать его одним из первых и повлиять на дальнейшее развитие Cloud - присоединяйтесь! #news #cloud #game_backend4,69%
  • 24 июл.⚡️ Новая система частиц в Blockworld! Сделали свою кастомную систему частиц. Работает она, как и всё остальное, на JSON, и использует наш собственный язык выражений — про него я рассказывал в прошлом посте. Почему не Unity-партиклы, а свое решение? Причин несколько, вот главные: ✔️ Своя физика — физика в игре у нас тоже кастомная (воксельная), и стандартные Unity-партиклы с ней никак не смогли бы взаимодействовать. А это куча эффектов, которые иначе просто потерялись бы: частицы, отскакивающие от блоков, оседающие на землю и т.д. ✔️ Моддинг — игра обрастает им с ног до головы, так что закладываем поддержку и тут тоже. ✔️ Архитектура — Unity-партиклы завязаны на MonoBehaviour, и в наших задачах это неудобно. Наша система целиком построена на чистых C#-классах, а отрисовка идёт через низкоуровневые API Unity. ✔️ Оптимизация — нам не нужны все навороты Unity партиклов. Достаточно небольшой части функционала (например, из форм — только куб и плоскость), за счёт чего расчёты становятся заметно проще и дешевле. ✔️ Тестируемость — мы не завязаны на Unity, поэтому всю симуляцию можно прогонять отдельно, без запуска игры. Результат детерминированный (один и тот же сид → один и тот же результат). ✔️ Дружит с нейронкой — формат простой и понятный, так что нейронка отлично собирает и правит эффекты сама. А проверять её работу легко благодаря той же тестируемости выше. Что уже готово по функционалу? ✔️ JSON-формат — всё настраивается в нём. Легко перенести на бэкенд, зашить в мод-паки и т.д. ✔️ Симуляция и рендер — свой движок частиц с пулингом, без лишних аллокаций; отрисовка через низкоуровневый API, эффекты режутся по дальности и попаданию в кадр (благодаря системе чанков). ✔️ Столкновения с миром — частицы взаимодействуют с физикой: отскакивают, оседают, гаснут при контакте. ✔️ Язык выражений — поведение частиц можно задавать формулами (скорость, размер, цвет, время жизни и т.д.), а не только константами. ✔️ События и последовательности — эффекты могут запускать другие эффекты, разворачиваться по сценарию. ✔️ Привязка к сущностям и анимациям — частицы крепятся к сущностям (игроку, мобам, снарядам и т.д), а также проигрываются прямо с кадров анимаций по тригеру. ✔️ Редактор-лаборатория — проверяем результат, а заодно она заточена под работу с нейронкой, сделать скриншот, логи и т.д. #blockworld #devlog #gamedev4,46%
  • 14 янв. 2025 г.без подписи4,02%
  • 4 авг.Объединённая система сущностей в Blockworld! Раньше у нас в игре было 2 отдельных сущности, это игрок и моб. Теперь же у нас идет 1 сущность это Living Entity (живая сущность) — это может быть как моб, игрок, технический контроллер (например для размещения построек в мире, фото режим и т.д). Благодаря объединению все модули (инвентарь, статы, мувемент и т.д) стали общими и настраиваемыми через json конфиг сущности. Что дает возможность надевать на мобов ту же косметику, что и на игрока (броню, шапки и т.д), использовать все предметы (лук, меч и т.д). Это открывает множество новых механик в игре, например: ✔️ Моб скелета носит броню, у него появляется стата брони, из за чего скелет становится намного прочнее и убить его уже не так просто ✔️ Оружие в руках моба, тот же скелет может быть вооружен мечом, из за чего наносит больше урона, а если дать им лук, то тогда начинается настоящая перестрелка ✔️ Еда для восстановления, жители могут брать подбирать еду и питаться ею чтобы восстановить свое здоровье после переделки с врагом ✔️ Лут с мобов становится более интересным, если мы находим скелета с мечом, то мы можем его устранить и забрать его меч себе. 🤯 Так же в будущем это позволяет сделать крутую фичу переселение, когда мы берем магический предмет, подходим к какому то мобу и при клике вселяемся в него и можем играть за него. Пд.с отдельно можно делать режимы где ты играешь именно за моба, напримре режим инфекции (управляешь зомби чтобы заразить других) 📌 Прикрепил видосик где мы сражаемся с экипированым скелетом, убиваем его и забираем меч. Это режим креатива, игрока убить нельзя, так что у скелета не было шансов 😄 #blockworld #devlog #gamedev4,01%
  • 28 мая 2025 г.🔥 Всем привет! Делюсь свежими метриками по Blockworld 📈 Рейтинг Рейтинг в СНГ держится в среднем 82 - 85 процентов, в разное время бывает рост зарубежной части до 90, но потом может снова откатиться на 86 🎮 Число игроков в день На данный момент средний показатель это 26к игроков в день, в выходные бывают скачки до 30к-35к 📊 Плейтайм Показатель держится в пределах 15–18 минут. Тут все так же стабильно, как и раньше ⏱ Общее время игроков в день Показатель чуть вврос, в среденм сейчас игроки проводят в день 400 тысяч минут, в выходные до 500 тысяч минут в день. ⚡️Распределение по платформам Пк бояре начинают набирать обороты, их доля выросла с 20% до 39%. Мобилки все еще лидируют, занимая 61% 🗺 География игроков Доля США выросла с 10% до 16% процентов, большинство остается за Россией - 64%. Остальные доли распределены по другим странам ⭐️Оценки Перешел порог в 10 тысяч оценок от игроков, это все чисто от желания игрока, в самой игре нет плашки оставить оценку, ее думаю добавить ради интереса в обнове и посмотреть насколько вырастет рост комментариев к игре #отчеты3,71%
  • 12 авг.🔥 Девлог по Blockworld! Готовимся к релизу полным ходом, фиксим баги и дорабатываем механики. Новое управление Многие из игроков и разработчиков спрашивали почему у нас перепутаны левая и правая кнопка мыши, так как многие уже привыкли к управлению из других игр, поэтому мы решили прислушаться и переделать его, чтобы игрокам было комфортнее осваиваться в игре. Так же было доработано мобильное управление, а именно появились варианты ввода: ✔️ тачи — более интересный вид, размешать блоки, ломать и т.д можно простым касанием в любом месте, как по мне это самый удобный вариант, он идет у нас по дефолту ✔️ кнопки — базовый вариант из любой игры, каждое действие отдельное кнопка, для тех кому не понриавится вариант с тачем Доработана система размещения построек Ранее котроллер размещения построек был не очень удобен, особенно на мобилках. Сейчас же система стала интуитивно понятной, при размещении постройки мы переселяемся в технический котроллер, оставляя тело нашего игрока в мире, с помощью котроллера мы можем летать по миру (управление идет как у игрока от 1 лица - разобраться очень просто), мы можем лочить постройку если хотим облететь ее и посмотреть с разных сторон. Поверхности и физика блоков Появились физические свойства блоков: трение (лед - персонаж скользит), прыгучесть (эффект батута), выталкивание (вода) и т.д. Это делает мир более живым, плюс дает возможности на будущее для различных режимов, где можно использовать разные свойства блоков для разных механик. Доработка анимации Были добавлены недостающие анимации вскарабкивайся по лестнице, плаванья и конечно же крутого приземлении 😎 P.S видео получилось большим по размеру, видимо слетели настройки записи ( #blockworld #devlog #gamedev3,60%
  • 8 мая🫳 Девлог по Blockworld Было проделано много работы над миром и генерацией для удобного расширения под разные режимы, далее по порядку. ✔️ Система спавна игроков Появилась отдельная система спавна игроков, раньше она была простая и зашита в пайплайн генерации (так было проще для синглплеера). Сейчас же с приходом мультиплеера и различных режимов нужно было перелопатить систему. Теперь спавнер отдельный сервис, он не зашит в генерацию, работает самостоятельно. С помощью новой системы можно реализовывать различные виды спавнеров, например спавнер который размещает игроков в разных хабах на сервере или же спавнер который распределяет игроков по сетке или в абсолютно рандомном месте. ✔️ Спавн мобов Была переделана система под мультиплеер, теперь она работает со всеми игроками и старается заспавнить мобов рядом с каждым, чтобы игроку было интересно и он не скучал. 🧊 Генерация ландшафта Была проделана большая работа по этой части, теперь мир выглядит разнообразным (по сравнению с предыдущей версией). Реализовано это за счет новой системы биомов, плюс добавлением новых биомов (в сумме их сейчас 55). Так же был переработан алгоритм генерации высоты 🌿 Генерация фичей Система нужна для размещения на терейне различных деталей (кактусы, трава и т.д). Она была доработана и прокачена новыми правилами. Теперь в болоте появляются кувшинки, в джунглях лозы на стенах, в океане водоросли с карелами, лавовые озера в пустыне и много чего еще. ✔️ Цвет в биомах У каждого биома появились параметры цвета, они могут использоваться блоками для того чтобы менять свой вид в зависимости от биома. Например это цвет воды: в реке она светло синяя, в море чуть темнее, а в болоте мутная. Тоже самое с цветом травы и растений. 💦 Жидкость в блоках Добавил для теста механику, которая позволяет блокам находиться в какой то жидкости. Например блок забора, теперь может находиться в воде, у него не будет пустоты, как это сделано в том же майнкрафт, точно так же блоки водорослей, ворот и т.д #blockworld #devlog3,59%
  • 28 июл.Первый UGC в Blockworld! 🧐 Кто не знает UGC — это user generated content, контент, который создают сами игроки, а не разработчики. Мы же со своей стороны делаем систему, которая это позволяет. Подобным образом устроен Roblox, куда игроки загружают собственные скины, плейсы (игровые локации) и многое другое. Пресеты игрового персонажа Начать мы решили с небольшой базы под гардероб, а именно добавили возможность создавать различные пресеты персонажей. Это довольно удобная фича — с её помощью можно сделать образы под разные нужды: повседневный, для новогодних праздников, для Хэллоуина. Не нужно каждый раз одевать и снимать косметику под конкретный случай — достаточно быстро выбрать уже готовый пресет и идти играть. Публикуем и делимся Готовый пресет не обязательно оставлять только себе — его можно опубликовать в общий каталог, и тогда его увидит любой игрок. Другие смогут оценить образ лайком или дизлайком, добавить в избранное, а если он правда понравится — забрать себе: образ сразу появится в собственной коллекции и будет готов к использованию. ✍️ Это первая, самая простая форма UGC в игре — но именно с таких вещей мы и планируем начинать. Дальше будет больше мест, где игроки смогут создавать контент и делиться им друг с другом. p.s дизайн экрана пока формируем под функционал, не финальная верстка #blockworld #devlog #gamedev3,36%
  • 20 июл.🧠 Система выражений (Expressions) в Blockworld! Была реализована новая крутая фича для проекта — собственный язык выражений. Что это? Это маленький скриптовый язык, который живёт прямо в JSON-конфигах и позволяет нам описывать поведение анимаций, частиц, рендер-контроллеров формулами: "если игрок в воде — согни ему руки", "поворачивай голову моба на угол между текущим и целевым по y" и т.д. Зачем это нужно? ✔️ Системы нужна для нескольких важных вещей: Быстрое создание контента и проверка его через нейронку — нейронки намного проще работать с таким форматом, по сути тут все строится на выражениях и математике, сам формат очень хорошо читаем и предсказуем, за счет чего нейронка может выдать крутые результаты (которые я покажу в следующих постах) ✔️ Моддинг — с помощью данной системы легко расширять функциноал, все описывается в файлах, не требует не единой строчки кода, это дает большие возможности для модификаций и подгрузки контента удаленно Как устроен язык В основе — неймспейсы (обращение к данным через точку): 1 - query.* (короткая форма q.*) — читает состояние игры/сущности: query.is_sprinting, query.is_walk, query.target_distance 2 - variable.* (короткая форма v.*) — переменные, которые можно менять и объявлять прямо в формулах: variable.zombie_pose = 0 3 - math.* — математика: math.sin, math.cos, math.clamp, math.lerp, math.pow, math.random_integer и т.д. 4 - this — ссылка на себя же в некоторых контекстах дополнительно: 5 - арифметика: + - * / 6 - сравнения: == != < > <= >= 7 - логика: && || ! 8 - тернарник: условие ? тогда : иначе Где уже используется и будет использоваться ✔️ Анимации — вся система стейт-машин анимаций построена на выражениях: условия переходов между стейтами, присваивания переменных, блендинг между клипами ✔️ Частицы — планируем полностью формат частиц, где через выражения описывается всё: скорость, цвет со временем, форма эмиттера, коллизии с воксельным миром ✔️ Условия в behavior tree мобов — вместо жёстко захардкоженных C#-условий ("здоровье < 20%", "враг ближе 5 блоков") — гибкие выражения прямо в JSON дерева поведения 📌 Прикрепил примеры из анимации, в них хорошо видно что переходы идут по условию (идем, бежим и т.д), так же видна работа переменных, когда мы выбираем клип по значению переменной, а сама переменная при входе в состояние, присваивает рандомное значение. Это дает эффект проигрывание рандомного клипа каждый раз при входе в состояние #blockworld #devlog #gamedev3,17%
  • 17 июн.🎨 Новая декларативная система интерфейса в Blockworld! Полностью переписали UI в игре. Старый интерфейс в Blockworld жил на «классическом» Unity UI (uGUI). Каждый экран — отдельный префаб, всё расставлено руками. Долго, неудобно, а переход на новый дизайн растягивается на немалый срок. 😭 Отдельная боль — адаптив. Из коробки Unity почти не умеет подстраиваться под разные экраны: якоря и стандартные лайауты не вывозят, и под нормальную вёрстку всё равно приходится писать кучу своих компонентов. Можно было взять UI Toolkit от Unity, но для рантайма он нормально заработал только в Unity 6 — а мы сидим на 2022-й версии движка. Там он ещё сырой. Поэтому сделали свой движок интерфейса 😏. Новый подход В новой системе интерфейс описывается текстом (JSON), а не собирается в редакторе. Вёрстка, логика и внешний вид разнесены по разным местам. Это позволяет быстро собирать интерфейс и стилизовать его, описывая правила как в том же css. Что уже умеет движок: ✔️ Свой layout-движок — flex/grid как в вебе, адаптив из коробки ✔️ MVVM и реактивные привязки — пишешь "Text": "@PlayerName" в JSON, и текст сам обновляется при смене значения. Двусторонние привязки для слайдеров и тумблеров — из коробки. ✔️ Темы — все цвета, пресеты описываются в одном месте, при желании можно сделать разные темы для ui ✔️ Анимации — система твинов, задаются прямо в JSON, без кода ✔️ Виджеты — заготовки элементов интерфейса: слайдеры, тумблеры, прогресс-бары, счетчик валют и т.д. Описал один раз и испольуещь где угодно ✔️ Safe-area — встроенная поддержка безопасной зоны, ui всегда располагается в ней, не будет проблем с вырезами и чёлкой на телефонах и планшетах 🔥 Hot-reload — правим вёрстку прямо во время игры, экран пересобирается на лету. ✔️ Редактор инструменты — превью в редакторе, без захода в Play Mode. Итерации с нейронкой стали в разы быстрее, она сама может быстро смотреть результат и делать скриншоты для анализа. 🤖 Нейронка наш верный друг Так же удобно создавать интерфейсы через нейронку, экономя кучу времени и сил. С json нейронка работает намного лучше, чем с префабами юнити. Просто говорим нейронке что хотим и она собирает это. Специально для этого был создан отдельный скилл, в котором описаны правила и лучшие практики по дизайну и работе с новой системой, так чтчо нейронка сразу понимает какие есть стили, готовы виджеты и т.д, плюс может предложить что то новое, чего еще нет. 🧩 База под моддинг Blockworld идёт к кастомным режимам и пользовательским мини-играм. Новая система открываем крутые возможности для этого. Игроки и мы разработчики в частности, сможем делать интерфейс прям в игре (в режиме создания кастомного лобби). Все сохраняется в json и легко хранится в базе данных и передается по сети. 📌 Прикрепил видосы с демонстрацией адаптива, плюс в коменты выложил пример как это выглядит в json. #blockworld #devlog #gamedev2,97%
  • 22 мая🔥 Девлог по Blockworld! Мы приближаемся к релизу, думаю в ближайший месяц игра точно выйдет на площадки. На данный момент яндекс уже одобрил нам хосты для серверов и можно уже спокойно тестировать игру на самой площадке яндекс игр. По предварительным тестам выявлено не мало багов, часть их них уже пофикшена, а именно: ✔️ Дроп в мп не подбирался ✔️ Не все блоки выдавали дроп (добавлялись новые блоки 80 штук и им забыли прописать дроп) ✔️ Не работала система построек в мп ✔️ Добавлены 60 недостающих рецептов крафта Из нового: ✔️ Добавлены объёмные облака, ранее был плоский вариант. С ними визуал сильно преобразился. ✔️ Появилось предсказание для размещения блоков в постройке, за счет него визуальная часть отрабатывает быстрее, даже при большом пинге. ✔️ Переписана система локализации проекта, ранее использовался плагин I2 Localization — скажу честно, плагин полная хрень и лучше его не юзать, большое количество плохого кода, неудобная работа в редакторе, плюс баги. ❗️ Постараемся до следующей недели закрыть все критические баги и недоработки, после чего уже скину ссылку на тестирования игры сюда #blockworld #devlog2,96%
  • 25 дек. 2024 г.без подписи2,81%