Шеф Code | Gamedev 👨‍🍳
208 subscribers
205 photos
7 videos
22 links
Download Telegram
Продолжаем качать интерактив!

Сегодня я плотно засел за ГДД (геймдизайн-документ) нашего «Футболоида». Постарался расписать вообще все нюансы, до которых дотянулись руки, но... игра делается для игроков, так что я готов всё перекроить, если у вас будут идеи покруче!

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

А что насчет наград за прохождение уровней?
Мы хотим сделать систему выбора улучшений между матчами (в стиле рогаликов). И вот тут мне нужен ваш брейншторм. Какие перки давать игроку на выбор?

Пока в голову приходят базовые вещи - сила удара или скорость бега.

Но это банально. Давайте накидаем фановых или даже упоротых улучшений, которые ломают механику арканоида!

Жду ваши самые дикие идеи в комментариях, давайте соберем пушечный пул перков! 👇
🔥31
Каюсь, сегодня я конкретно факаплю. Времени не хватает вообще ни на что: видео не снято, дела для него не сделаны... Но, как ни странно, этот стресс создает невероятный буст! Внутри всё зудит и буквально кричит: «СДЕЛАЙ ДЕЛО!» В такие моменты взгляд моментально очищается — ты сразу понимаешь, как выкручиваться, что придумать и куда двигаться.

Ну, а теперь по порядку.

Так вышло, что я отложил финальный день недели на изучение того, как создавать правильный Bootstrap. Днем созвонился с очень крутым разработчиком и мы несколько часов плотно разбирались в тонкостях стейт-машин (FSM), бутстрапов и геймдева в целом.

Мне не просто дали понять, где находится точка входа и какая должна быть последовательность вызовов, но и на реальном примере показали, как управлять такой машиной. К подобному опыту люди приходят годами, так что для начинающего разраба это были ценнейшие несколько часов! Правда, признаюсь честно: кода там оказалось как в настоящем энтерпрайзе.

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

Кстати, у этого крутого разработчика скоро выходит игра! Переходите по ссылке и добавляйте проект себе в вишлисты, давайте поддержим человека 🚀:

https://store.steampowered.com/app/3784360/Die_to_Play/

И ТГК
https://t.me/kvinter_games
👍5🔥21🤝1
Ну и вот он результат, не заставил себя долго ждать! Я переписал все сверху донизу, дополнил своими идеями, где то упростил где то усложнил, но в общем и целом есть фундамент, на нем можно строить дальше.

Вот что успел накодить по архитектуре и логике под капотом:

🔹 Чистый запуск через Root-сцену: Никакой магии и инициализаций «из воздуха». Всё грузится строго через аддитивные сцены, а за сборку зависимостей отвечает DI-контейнер (VContainer). Геймплей полностью изолирован от UI.

🔹 Трехуровневая стейт-машина (FSM): Разделил логику на три слояЮ, глобальное состояние приложения, навигация по менюшкам и сама логика матча на поле (от ожидания подачи до забитого гола).

🔹 Честный кинематический мяч: Отказался от стандартного Rigidbody2D и коллайдеров на мяче, чтобы избежать физического рандома Unity. Написал свой просчет отскоков, векторов и триггеров голов через CircleCast. Всё летит четко и предсказуемо.

Завтра продолжу, задач еще куча.

Кто с джемов, расскажите как вы успеваете столько сделать за 3 дня я в ужасе!
8
Каждый день семимильными шагами! Сегодня добавлял врагов, вратаря и футболистов, игра все больше и больше наполняется механиками. Плюс ко всему завез DOTween для сочных анимаций и много кусочков кода порефакторил. Главное всё успеваем.

Сегодня пост короткий, потому что много технического текста и подробностей написано прямо тут:

https://github.com/DeployChef/Futboloid

Напоминаю, что репозиторий открыт, кому интересно велком, залетайте посмотреть под капот.

Если есть идеи, что еще добавить, закидывайте их в комменты! 👇
🔥53
На экране все больше элементов и гизмосов. Я доработал механику бега противников, и я вам скажу, что это сверхсложный арканоид. Каждый старается забить мне, а наш игрок совсем неповоротливый, выиграть стало невозможно. Я каждый раз в восторге и смеюсь в голос, когда снова и снова мне клепают голы.

Походу, неповоротливость надо делать дебаффом, а таких сложных противников ставить только в конец игры, а в начале пусть стоят как обычные истуканы. Эти же противники:

🔹 Чейзят мячик в своей окружности.

🔹 Патрулируют территорию по сгенерированному пути.

🔹 Рандомно бегают.

И самое главное — все имеют режим бить не просто рефлектом, а прицельно по воротам игрока, причем с определенным шансом в зону, где игрока вообще нет. То есть буквально пытаются загнать мячик по самые штанги!

Короче, я и покодил, и поугарал. Еще много чего надо добавлять, но это уже здорово.

Есть ли у вас идеи какие еще режимы можно добавить для защитников?

Пишите в комментарии 👇
👍3🔥21
Чет меня сегодня срубило! Прям наповал, походу меня отравили конкуренты! Дописываю этот пост и иду спать.

Сегодня появилось куча всего нового: сетка футболистов, построения, особые мувменты, а также руки дошли до уровня и перков. Теперь можно получить уровень за выбивание врагов, что в свою очередь даст выбрать один бонус из трех. Визуала пока нет, но на это всё выделена вся следующая неделя.

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

Накидывайте свои идеи, самые крутые и безумные перки точно затащим в игру.

Пишите в комментарии 👇
🔥4🕊21
ГДЕ ВЗЯТЬ БЕНЗИН?! Очереди по несколько часов, это просто невозможно.

В такие моменты сразу вспоминается какой-нибудь хардкорный выживач в духе Mad Max или Frostpunk, где каждый литр топлива или горсть угля это жесточайший дефицит, ради которого приходится рисковать жизнью или часами гнать команду на рудники.

Если посмотреть на эту ситуацию через геймдизайнерскую призму, то дефицит ресурсов это гениальный инструмент для создания искусственного интереса и напряжения. Когда у игрока всего в избытке, он расслабляется и начинает скучать. Но стоит зажать его в тиски нехватки базовых вещей (будь то бензин в постапокалипсисе, патроны в survival horror или мана в RPG), как ценность каждого действия взлетает до небес. Мозг моментально включается в режим выживания, начинает просчитывать логистику, строить оптимальные маршруты и ценить каждую крупицу найденного.

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

В каких играх механика жесткого дефицита ресурсов бесила вас сильнее всего, а где, наоборот, была сделана идеально?

Пишите в комментарии 👇
❤‍🔥42👍1
Бензин я нашел! Кое-как добрался до дома и снова сел за Футболоид.

Этот проект мне прямо явно дал понять реальные объемы работы. Изначально я-то представлял, что все будет просто. Ну камон, это же арканоид, базовая механика! Но как только начинаешь накручивать фичи, всё растет тупо как на дрожжах. Сейчас там уже огромная кодовая база.

Хейтеры, ознакомьтесь и скажите, где там плохо https://github.com/DeployChef/Futboloid 😉

Завтра начну прикручивать звук, который уже подготовил один из членов команды. Анимации и визуал тоже вовсю готовятся к демонстрации. Короче, следующая неделя будет максимально насыщенной.

А еще не могу не заметить тот факт, что нас тут уже 200 человек! 200!!! Несколько месяцев назад я дико боялся, что не успею набрать даже сотню и придется выстригать ирокез на стриме, а тут уже вторая сотня пошла. Спасибо, ребят! Спасибо за поддержку, вы лучшие!

П.С. картинка отсылает к одним из первых постов в этом канале, только тогда нас всего было 20
4❤‍🔥2🔥1🤝1
Еще одна неделя подошла к концу, мвп футболоида готов! Но это считай только половина всего дела. Остался полишь и паблишь. Как и обещал, мы пройдем этот путь до конца, заодно и на итче зарегаемся и научимся там красоту наводить, как раз к джему скилл освоится. Давно я так бодро не разрабатывал, даже отдыхать не успеваю.

Следующая неделя будет полностью посвящена полишу. Для тех, кто не в курсе: полиш это когда скелет игры уже готов, и ты начинаешь наводить лоск. Причесываешь интерфейс, настраиваешь сочные анимации, докручиваешь эффекты от ударов мяча, фиксишь мелкие баги и делаешь так, чтобы играть было чисто тактильно приятно.

Обычно говорят, что 20 процентов времени это разработка игры, а 80 полиш. Ну, мы немного нарушим это правило до 50 на 25, но это только с непривычки. Плюс я считаю, что во время разработки и так уже много полиша добавил в виде доп механик и прочего.

Начнем наверное с визуала. Ребята в команде вообще не отстают, и обновленный визуал уже на мердже, так что завтра буду хвастаться.

А на что вы в первую очередь обращаете внимание в играх, на общую идею или на то, насколько круто она вылизана в деталях? Пишите в комменты 👇
❤‍🔥3🔥3👏21
ВДОХНОВЕНИЕ! Снова загорелось желание что-то снять, и за утро получился новый скетч, выложу завтра.

А пока очередной, уже 85 день врыва в геймдев уже вышел. Дизайн поля меняется, худ, меню, мячик, еще завтра добавлю анимации бега и вообще будет сказка. Потихоньку все преображается!

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

Поддержите завтра репостами и комментами, буду максимально счастлив! А пока пора выйти наконец из дома, хотя бы чуть-чуть перезагрузиться.
🔥3❤‍🔥21
Ну скетч не залетел, но я вообще не расстраиваюсь. Есть метрика намного важнее просмотров, это количество сделанных видео, которая равна опыту, который я получил с каждого видосика. В другой раз будет лучше, зато в комментах там накидали реально прикольные идеи для следующих скетчей.

По футболоиду процесс тоже идет. Сегодня не так быстро, но все же переделал генерацию футболистов на поле и добавил больше разнообразия. Теперь каждый матч разная расстановка и разный тип футболистов, плюс кривая сложности нормально так размазана на все матчи до самого конца игры.

Завтра ожидается насыщенный день на разработку, нужно подготовить еще сразу два вечерних видео. В четверг я точно буду занят весь день другой активностью, а какой именно расскажу завтра 😉
❤‍🔥73🕊1
Две новости на сегодня, и обе отличные.

Первая наконец-то дошли руки до шейдеров, и теперь у нас в футболоиде новый шейдерный мячик. Я прямо кайфанул, пока настраивал. Визуал сразу стал выглядеть интереснее, и в сегодняшнем вечернем видео как раз можно посмотреть, как это смотрится в движении. Если кому-то интересен технический подтекст, код уже залит в репозиторий, лежит пока в ветке develop, залетайте, изучайте.

Вторая новость завтра я иду на большую конференцию по игровой индустрии. Судьба подкинула крутой подарок, я выиграл билет в розыгрыше. Там будут плотно говорить про геймдев, технологии, разработку игр и все актуальные штуки в нашей сфере. Короче, отличная возможность перезагрузить голову и возможно найти новые идеи.

Так что если кто-то из вас тоже планирует там быть, обязательно пишите, заглядывайте пообщаться глаза в глаза. Буду рад поболтать! Ссылка на конфу, если кто хочет посмотреть программу: https://iiconf.ru/
❤‍🔥81
Все вернулся! Конфа была крутой, куча знакомств, крутейшие геймдизайнеры, фаундеры, разработчики, вообщем очень интересные люди. Ну и полезные лекции, где то с личными историями, где то с метриками и цифрами, а где то с невероятными результатами. Короче я кайфанул, набрался опыта, поиграл в демки, выиграл респект на одном стенде, и жаль но не победил в розыгрыше ПС5. Но даже попасть на такое мероприятие было удачей!

Щас валюсь с ног, так что завтра может расскажу по памяти какие нибудь темки которые рассказывали!
❤‍🔥101
Итак, из основного, что прям отложилось в голове это первая лекция про полезную метрику в Стиме. Речь про множитель, который вычисляется отношением вишлистов к подписчикам.

Зачем этот множитель вообще нужен? Суть простая, мы обычно не знаем точное число вишлистов у конкурентов, эта инфа скрыта. Зато мы всегда видим число их подписчиков. И вот умножая чужих фолловеров на этот средний множитель, можно прикинуть их вишлисты. Так сразу становится понятно, насколько наша игра вообще вписывается в рынок и тянет ли конкуренцию в своей нише.

Понятное дело, что ниши по жанрам имеют разные средние множители. На лекции разбирали выборку из пятиста популярных игр в Стиме, и разброс цифр там приличный в зависимости от жанра. Но в среднем по всем жанрам множитель равен 16.6. Причем эта цифра не статичная, с каждым годом среднее значение меняется, так как алгоритмы и поведение игроков тоже меняются.

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

https://docs.google.com/spreadsheets/d/14uFxPxMIKFJEOnOTKnutIHuKZlsNSDk8djODUyXgE6g/edit?usp=sharing
🔥81
90 день ребята, и уже третья неделя футболоида. Время летит просто незаметно. Разработка нашего арканоида тоже выходит на финишную прямую, по крайней мере мвп уже готово, и теперь руки сами лезут в расширение контента.

Вся следующая неделя будет отдана на стадию паблиша, но при этом немного полишить параллельно никто не запрещает. Буду добавлять перки которые мы с вами обсуждали, накину бафы и дебафы, плюс перерисуем некоторые визуальные части игры, и будет просто сказка.

Как по мне для первой игры получается очень бодро. Посмотрим что будет в результате, а вы ребят потом обязательно оцените, только максимально честно.

Ну и напоминаю что все исходники лежат тут https://github.com/DeployChef/Futboloid/tree/develop и сегодня там добавился очень стильный редми, правда пока только на ветке девелопа. Залетайте смотреть!
2❤‍🔥1🔥1
Добро пожаловать на пресс-конференцию!

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

Вообще, хоть я в видео и сказал, что кор-геймплей мвп уже готов, на самом деле это не совсем так. Там еще хватает доработок, но надеюсь, что в течение недели успею всё поправить. Например, сегодня немного поменял расположение ворот и врагов, придумали забавную механику ожирения нашего вратаря, ну и добавили еще много всего. Даже горящий мячик завезли!

Но нет предела совершенству. Завтра начинаются суровые рабочие будни, свободного времени на разработку будет совсем капля, так что по доброй традиции объявляю: это будет неделя кранча!

Жду ваши вопросы в комментариях, погнали!
👍72
Почему я решил разрабатывать игры?

Сразу скажу: это не та стандартная история про то, как я с самого детства мечтал делать игры. Тут вышло иначе — скорее, в один прекрасный день я просто четко осознал, что именно мне нужно делать дальше.

Я всегда считал, что геймдев — это одна из самых сложных дисциплин в программировании. Ну серьезно, где еще встретишь столько математики, геометрии и оптимизации? Да и если делать игру, то точно приходится выходить за рамки чистого кода: разбираться в звуке, графике, моделинге, сторителлинге и еще уйме всего. Сначала я этого побаивался. Но, как это обычно бывает, ты смотришь в темную чащу леса, а она тебя так и тянет, предлагая зайти.

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

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

Я занимаюсь этим не ради того, чтобы заработать, а ради того, чтобы творить. Та самая идея всё еще со мной, с каждым обсуждением она становится всё ярче, и благодаря этой слепой вере я готов заниматься разработкой постоянно.

P.S. И чем дальше я захожу в эту геймдев-чащу, тем больше она мне открывается: крутыми людьми, свежими идеями и новыми сферами знаний. Так что с каждым днем планы становятся всё более грандиозными!
🔥62🤝1
Как же я не люблю метрики, вернее их настраивать!

Что в бекенде не люблю, что теперь и в геймдеве. По порядку, сегодня разбирался с Unity Gaming Services, подрубил лидерборды, аналитику и авторизацию. Речь пойдет про аналитику, это те же метрики, только настраивается все непривычно.

Для тех кто не разбирается расскажу простым языком. Аналитика это по сути просто набор ключей и значений, которые мы отправляем на сервер. Например мы шлем ключ Прохождение уровня и значение 45 секунд. Все эти данные от разных игроков собираются в одну базу и потом отображаются в виде красивых и понятных графиков. В бекенде мы еще постоянно смотрим на перцентили. Например 99 перцентиль показывает время, в которое укладываются 99 процентов всех ответов сервера. Это супер полезно чтобы отлавливать самые редкие и долгие зависания, которые портят жизнь пользователям.

Так вот я совсем не любитель настраивать весь этот сбор, я скорее потребитель. Мне нравится когда все уже настроено и ты просто смотришь на графики, спидометры, чарты и чувствуешь себя мегаадмином. Но собирать это все с нуля это мучение. В UGS интерфейс и настройка сделаны сверх неудобно. Как нибудь потом попробую GameAnalytics, может там процесс приятнее.

Кстати вопрос к знающим, в бекенде есть такая тема как генерация дашбордов в Grafana по YAML разметке. Это очень быстро и удобно, подход инфраструктура как код. В GameAnalytics может тоже есть что то похожее или там все так же ручками надо кликать?
👍2🤬21