Виталя делает игры – Telegram
Виталя делает игры
233 subscribers
205 photos
36 videos
154 links
Что может быть лучше, чем запах кода поутру? Только запах запёкшихся теней в Godot.

Чат: https://news.1rj.ru/str/gambala_chat
X: https://x.com/gambala_codes
Download Telegram
Я нашёл музыку к игре 🥹
🔥6🤡2
Как вы все знаете, успешный продукт в творческих сферах (фильмы, игры) строится на синергии сильных её частей.

В фильмах, берём сильного режиссера, сильнейших актёров, композитора, оператора → на выходе получаем сильнейшее авторское кино. За примерами далеко ходить не надо, это почти все фильмы Акиры Куросавы (с ключевыми ролями у Такаси Симуры и Тосиро Мифуне), фильмы Сергея Бондарчука, Никиты Михалкова (музыку к которым всегда писал Эдуард Артемьев).

В инди-играх такое тоже встречается. Весь успех игр Supergiant Games (Hades, Transistor, Bastion) строится на сотрудничестве музыканта Даррена Корба с талантливыми иллюстраторами, на глубокой интеграции музыкальных произведений Даррена с артом и нарративом в играх. И на постепенном исправлении геймдизайнерами своих кривых рук (я еще не играл в Hades, но видел некоторую прогрессию – в Bastion играть было невыносимо, в Transistor просто неприятно, в Hades я надеюсь уж ко второй хотя бы части они научились делать нормальные игры).

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

Сегодня я нашёл идеальную сильнейшую музыку.

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

И игру можно будет готовить к релизу.
🤡52🤔1
В смысле в Bastion и Transistor неприятно... Это же шедевры, особенно последнее.


По части аудио-визуального нарратива да, шедевры, но по части геймплея (а мне как игроку важно чтобы в игру было приятно играть, чтобы управление было отзывчивым, чтобы игровой процесс в моменте был интересным) эти игры слабы/недоработаны.

Я периодически упоминаю «6 слоёв» (систему, сформированную мной самим, о том на чём нужно делать упор в видеоигре, чтобы игра получилась интересной и финансово успешной), так вот

1-й и самый базовый слой: Core или «Интерес в моменте»

Ещё до того как игрок задумается, а что там в игре за сюжет, а какая у меня игрока цель, а есть ли в игре глубина – мозг задумается: «А мне интересно в это играть в моменте или нет?»

Если нет – игру можно закрывать. И большинство игроков её закроют.

И неважно как глубоко у вас прописан сюжет и персонажи. Неинтересный или отталкивающий кор – игра закрывается и удаляется.

Хороший 1-й слой достигается несколькими приёмами, всех их сейчас расписывать не буду, упомяну только один: Ассистеры/Помощники.

Это код, специальный код, который «помогает» игроку чувствовать себя в коре нормально в рамках жанра. В платформерах это койот-тайм, event-buffering, вы о них наверняка слышали.

В каждом жанре и типе кор-механики – свои устоявшиеся ассистеры.

И в Bastion/Transistor (изометрические RPG/слешеры с прямым контролем персонажа) геймдизайнерами и программистами банально не было внедрено достаточно ассистеров. Из-за чего кор-механика ощущается скудной/неудобной.

Интересно? Продолжать?) Ставьте огни если хотите узнать больше о слоях и о том как создавать игры правильно.
1🔥7🤡3👎1
This media is not supported in your browser
VIEW IN TELEGRAM
1🤡7🔥21😁1💩1🗿1
Отвечаю на ваши вопросы:

🙍‍♂️: Виталя, а ты играл в Clair Obscur Expedition 33? Вроде тоже многим не нравится боевка и тд, но за сюжет и другие вещи игру люди просто обожают


Верно, в игры можно не играть, игры можно смотреть (как CG-фильмы). Я тоже в детстве любит играть в вещи вроде Final Fantasy IX, потому что, знаете, в первый раз интересно, как будет идти сюжет, как раскроют персонажей, какая у игры будет концовка, интересно что ещё сможет предложить игра.

Но запущу ли я Final Fantasy IX сейчас? Да ни в жизнь.

Даже с синтетическими ассистерами ПК-версий (позволяющими пропускать random encounters с врагами например), приделанными к таким играм как костыли, чтобы хоть сколько то скрасить недостатки их кор-механик.

🦹‍♂️: Так щя давай по полочкам:


Давай.

🦹‍♂️: С точки зрения кор-механик для тебя бастион и транзистор хуйня, они про аудиовизуальный нарратив


Верно.

🦹‍♂️: Который, как мы узнали из твоих постов, нихуя не значит потому что на уровне кор-механик игра удаляется сразу как только мозг осознает что кор-механика неудобна


Верно, мной удаляется, я поиграл уже в достаточное количество Final Fantasy IX like игр и ценю своё время.

🦹‍♂️: Почему-то твоя логика с удалением игры сразу как мы осознали плохую кор-механику не срабатывает судя по отзывам и кассам бастиона и транзистора.


Написал выше: Есть люди что не играют в игры, а смотрят их. Таким людям достаточно дать посредственный кор, и они всё равно будут довольны. За примерами далеко ходить не надо. В Expedition 33 ещё не играл, за неё не могу сказать. Но Bastion да, Transistor да. To the Moon, прости господи, одно большое да 🤢

В своих играх я предпочту не жертвовать кором ради аудиовизуального нарратива. Не нужно быть кем-то исключительным, чтобы мочь и в то и в другое. Гляньте игры Хидео Кодзимы, начиная с самого первого Metal Gear (тот который на MSX/NES), все они обладают отличным аудиовизуальным нарративом (особенно начиная с первой Metal Gear Solid на PSX, где стала возможной полноценная режиссура с озвучкой персонажей), и таким же отличным интересным кором.

И я тоже, выбираю создавать ИГРЫ, а не ролики на движке.
🤡4👍31
Media is too big
VIEW IN TELEGRAM
День 28

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

Закрыто фич 🏀 116 из 179
Игра готова на 65%
🔥3🤡3👍1
Виталя делает игры
Отвечаю на ваши вопросы: 🙍‍♂️: Виталя, а ты играл в Clair Obscur Expedition 33? Вроде тоже многим не нравится боевка и тд, но за сюжет и другие вещи игру люди просто обожают Верно, в игры можно не играть, игры можно смотреть (как CG-фильмы). Я тоже в детстве…
А ещё, обратите внимание, для игры с запоминающимся сильным нарративом, необязательно делать упор на графику, режиссуру и озвучку.

Bastion и Transistor красивые, факт.

Undertale нарисована в пейнте. Но при этом: (1) она вся выдержана в этом стиле, что способствует погружению, (2) там всё ещё сильный нарратив, (3) там хороший приятный кор.

Или гляньте скрин. Это An Unnoscriptd Story. Она вся такая, с paint-like графикой, midi-like музыкой. Но кор и прогрессия там прекрасны, и нарратив хорошо прописан, к главным персонажам проникаешься и сопереживаешь им. Всё это было сделано одним человеком и на выходе получилась прекрасная игра (не первая и не последняя у этого разработчика, позже он объединится с талантливыми художниками и композитором и разовьёт один из своих PICO-8 прототипов до полноценной игры, так выйдет Celeste).
🤡5🤔2
Пробовал ли ты https://github.com/csprance/gecs/ и видишь ли смысл в ECS в Godot?


Посмотрел API этого GECS. И нет, он того не стоит. Сильно больше лишних действий в сравнении с ООП подходом (с той же композицией через компоненты для нод). Усложнение на пустом месте, ради иллюзорного перфоманс буста.

Запомните, с точки зрения кода, главный принцип это:
1) Делай чтоб работало
2) Делай чтоб было красиво
3) Делай чтоб было быстро

Под красотой понимается лаконичность кода и, как цель, простота его чтения/изменения. Это важно. И внедрение ECS в готовый движок неизбежно ухудшит лаконичность и простоту чтения/поддержки.

В теории ECS мог бы дать перфоманс буст за счёт уменьшения random-memory-access операций, но в Godot я уверен весь такой выигрыш сожрут component queries.

Если в вашей игре тысячи объектов на экране, я бы пошёл:
1) Сперва банально в сокращение draw-calls
2) Потом в пулинг
3) Потом в низкоуровневое Godot-API – PhysicsServer2D / RenderingServer (на самом деле уже их использую в своей игре)
4) Потом в изменение концепции игры (ну не подходит движок для симуляции каждого атома в игре, сорри)
5) Если концепцию не поменять – переходите в другой движок
👍4🥰2
У кого есть тви – подпишитесь на меня

Совсем скоро я начну сбор аудитории игроков для игры, твиттер это один из каналов, и ваши лайки и реакции там дадут мне необходимый начальный буст 🙏

https://x.com/gambala_pro

Всем рад
🤡2😁1
Виталя делает игры
Пробовал ли ты https://github.com/csprance/gecs/ и видишь ли смысл в ECS в Godot? Посмотрел API этого GECS. И нет, он того не стоит. Сильно больше лишних действий в сравнении с ООП подходом (с той же композицией через компоненты для нод). Усложнение на пустом…
Как вы тогда делаете в Godot компонентный подход? Через чисто код или ноды как компоненты воспринимаете?


Ноды как компоненты. Вон они, розовенькие. У каждой свой скрипт и class_name, и там свойства и код, нужные компоненту, связь с другими компонентами через @export переменные.

И все компоненты наследуются от одного базового класса.

Через него любой компонент получает свойство enabled – можно в Godot'е отключать и включать компоненты (полезно для тестов и динамики в поведении).

И parent – это ссылка на ноду, в которой лежат компоненты. Можно было бы использовать стандартную годотовскую owner, но она ссылается на рут-ноду, а я хочу вешать компоненты не только на рут-ноду сцены, но и на подноды.
👍1
Есть может какой практический пример? Желательно с кодом. Чет я туплю и не могу въехать.


Вот например компонент Pause.

Когда он в сцене и включен (enabled), он сам ловит инпут, сам по инпуту (Esc) включает паузу. Добавив его в редакторе в сцену, нужно указать UI-ноду паузы в pause_menu – и компонент будет её показывать/скрывать при паузе.

Больше этот компонент ничего не заботит.

И неважно в какой сцене я нахожусь, и какой это жанр игры. Добавил в ноду компонент Паузы – значит в этой части игры будет возможна пауза.
👍1
Или такой пример

Вешаем этот компонент на объект (врага, главгероя, NPC, неважно) – задаём при спавне объекта через этот компонент свойства (векторы вращения и движения). И всё остальное компонент делает сам – считает и меняет позицию и вращение у объекта.

А хотим чтобы NPC/враг/босс/герой двигался иначе? Не прямо а по синусоиде, или ходил кругами. Кидаем в него другой компонент с другим кодом и вероятно другими свойствами.
👍1🔥1
Если бы транзистор и бастион были провальны (не недостаточно хороши, а вот прямо провальны) с точки зрения механик, они бы не взлетели только за счёт музыки и картинки. То есть, по факту вполне они неплохи с точки зрения геймплея, просто визуал и музыка вместе с тем принесли успех.


Да, всё так, твердая тройка из 5 это в целом вменяемый уровень. Игроки могут такое съесть и играть в игру ради других вещей.

Я даже больше скажу – в моей игре, которую я сейчас делаю, кор-механика тоже реализована на 3+, и полировкой я максимум добьюсь 4-, не больше. Я отдаю себе в этом отчёт и осознанно продолжаю делать игру именно такой (т.к. цель сейчас выпустить игру супер-быстро, а не собрать кассу).

Поэтому я и пишу что потенциал у игры не $150к, а лишь $15-20к. Вы ведь не думали что я эти цифры с потолка беру? 😏
🤡4😁2👍1
А у нас на канале ещё одна круглая цифра – мои дорогие подпищики вы оставили на постах уже 150 клоунов 🤡 люблю вас. Пусть в новом году их будет ещё больше 🥂
🤡9🥰6👍2😁1
А как ты смотришь на то, чтобы ориентироваться на что-то вроде The Binding of Isaac? Как на идею успеха.
Он сам прост, буквально парой человек + композитор (одна из special составляющих) на простом движке был сделан.


Нереально будет выпустить игру (первой по счёту) с такой кор-механикой за 1-2 месяца и рассчитывать на что-то большее, чем пачка сухариков.

The Binding of Isaac прекрасна, в ней из шести слоёв блестяще реализованы 5 с половиной, отсюда и такие доходы. НО
– У Эдмунда уже были с десяток игр до этого
– Включая несколько коммерческих
– Включая одну супер успешную (Super Meat Boy)

Из этого следует ещё одна неочевидная со стороны игроков, но очень критически важная в таких случаях со стороны разработчиков вещь – у него были ТОННЫ наработок и отточенных на боевых проектах техник, которые он переиспользовал в Айзеке. И которые переиспользует до сих пор даже для своей свежей Mewgenics (да, они там всё ещё используют Flash).

Мои первые 5 игр которые я выпущу в течение 2026 года – для меня будут буквально боевыми проектами для оттачивания техник и создания наработок. Я не скрываю этого.
– Все 5 игр будут на готовых ассетах.
– Все 5 в ходовых жанрах, где у игроков есть голод.
– На этом голоде я сделаю себе небольшой доход – порядка $300-500к суммарно к концу 2026-го.
– В процессе обзаведусь знакомствами и начну подбирать себе команду.

И лишь когда все эти приготовления будут завершены, через год, под конец 2026-го – я смогу наконец заняться действительно амбициозными и сильными идеями, с потенциалами получить $1-10млн в продажах на проект.
👍5🤡3
Очередная круглая цифра – коммитов по личным проектам за этот год ровно четыре триста.

Как думаете, смогу добить остаток года так чтобы не было ни одного пропуска в этом году?
🤡5🔥3
День 29

Наворотил кучу UI элементов на движке, из которых буду собирать HUD, меню и все интерфейсы в игре. И подобрал игре шрифт, с ним повезло, поддерживает 100+ языков.

Закрыто фич 🏀 121 из 184
Игра готова на 66%
👍4🤡4🔥2
Блин чат а что делать если кор-механика в игре не «работает»?..

Как-то вот, не играется. Неинтересно, скучно. Одним словом отталкивает, не знаю...
🤡11😨2😁1
Странно...

Я вроде пишу нейросетке «Проводи глубокий анализ. Используй лучшие практики. Не допускай ошибок»

А всё равно вон сколько ошибок... Каждый раз...
🤡4😁2