EvilCoGames

EvilCoGames

На Пикабу
поставил 26 плюсов и 25 минусов
отредактировал 0 постов
проголосовал за 0 редактирований
Награды:
5 лет на Пикабу
4929 рейтинг 19 подписчиков 13 подписок 36 постов 5 в горячем

Мобы в игре TERRORHYTHM

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

Сегодня хотим познакомить с нашими мобами.

Итак:


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

Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост
Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост

Следующий субъект со стороны недоброжелателей уже пожирнее и массивнее. Ему в качестве "аргументов" нужно нанести 2 удара, или один, но с накопленной энергией)

Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост
Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост

Третий представитель конфликтной стороны. Отличается от первых двух тем, что на него нужно будет потратить 3 обычных удара, или один обычный + один с минимально накопленной энергией. Также он более ловок в отличие от своих собратьев: после каждого нанесенного ему удара, он меняет сторону своей атаки.

Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост
Мобы в игре TERRORHYTHM Trrt, Terrorhythm, Steam, Gamedev, Indiedev, Инди, Гифка, Длиннопост

Геймплейное видео можно посмотреть в предыдущем посте: https://pikabu.ru/story/pervoe_gameplay_video_igryi_terrorhy...


Будем благодарны и очень признательны за поддержку добавлением игры в вишлист в стиме:

Страница игры в Steam- http://store.steampowered.com/app/752380


С уваженеием,

EvilCoGames Team

evilcogames@gmail.com

Показать полностью 6

"Раскладная" недвижимость. Будущее настало!

Позаимствовано с

https://www.youtube.com/channel/UCHJuQZuzapBh-CuhRYxIZrg

Первое gameplay video игры TERRORHYTHM

Всем привет! Разработка нашей ритм-игры продолжается!

Представляем первое видео геймплея:

Скорость - 175 BPM


Управление:

Стрелки "вправо", "влево" - удар

Стрелка "вниз" - расширение зоны удара

Стрелка "вверх" - Накопление силы удара*


*Удар с накопленной силой наносит больше дамага (в зависимости от того, сколько силы удалось накопить). Необходим для поражения двух мобов, если они на коротком расстоянии друг от друга.

Удар с накопленной силой нельзя использовать против мобов с защитой (красного цвета), в этом случае с игрока снимается единица HP.


Страница игры в Steam: http://store.steampowered.com/app/752380


Ранние посты по теме создания игры:

https://pikabu.ru/story/komiks_po_igre_terrorhythm_str_2_558...

https://pikabu.ru/story/razrabotka_ritmigryi_terrorhythm_quo...

https://pikabu.ru/story/proekt_igryi_terrorhythm_animation_a...

https://pikabu.ru/story/razrabotka_terrorhythm_animatsiya_pr...

https://pikabu.ru/story/razrabotka_igryi_terrorhythm__music_...

https://pikabu.ru/story/terrorhythm__vtoraya_igra_ot_evilcog...


С уваженеием,

EvilCoGames Team

evilcogames@gmail.com

Показать полностью

Комикс по игре TERRORHYTHM Стр. 2

Как и обещали ранее, мы продолжаем выкладывать материалы комикса TERRORHYTHM, который наша команда выпускает в поддержку одноименной игры в Steam, разработкой которой мы занимаемся в данный момент!


Комикс TERRORHYTHM Стр. 2:

Комикс по игре TERRORHYTHM Стр. 2 Комиксы, Игры, Киберпанк, Steam, Terrorhythm, Длиннопост

Комикс TERRORHYTHM Стр. 1: https://pikabu.ru/story/komiks_po_igre_terrorhythm_5526003


Ранние посты по разработке TERRORHYTHM:

https://pikabu.ru/story/razrabotka_ritmigryi_terrorhythm_quo...

https://pikabu.ru/story/proekt_igryi_terrorhythm_animation_a...

https://pikabu.ru/story/razrabotka_terrorhythm_animatsiya_pr...

https://pikabu.ru/story/razrabotka_igryi_terrorhythm__music_...

https://pikabu.ru/story/terrorhythm__vtoraya_igra_ot_evilcog...


Страница игры в Steam: http://store.steampowered.com/app/752380


С уважением,

EvilCoGames Team

evilcogames@gmail.com

Показать полностью 1

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста.

Первый вопрос, который задает себе разработчик, планирующий сделать ритм игру - “А будет ли реально ритм влиять на геймплей?”. Если ответ утвердительный, и разработчику мало простого визуального отклика пары эффектов на сцене, то в самое ближайшее время возникает второй вопрос - “Хочу ли я давать игроку загружать свою собственную музыку?”. Конечно, этот вопрос может возникать, даже если вы делаете просто интерактивную музыкальную сцену, но по-настоящему критичным он становится только для тех, кто привязывает геймплей к музыке. Ведь дать пользователю возможность загружать желаемые трэки - значит вложиться в разработку анализатора и генератора игрового уровня именно по этому трэку, а также проводить объемное тестирование на большом количестве различной музыки, сопровождаемое всесторонней отладкой. А переложить создание уровней на самих игроков и пользователей через Steam Workshop - идея сомнительная, если не имеешь устоявшегося сообщества.

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

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


Ритм - вот центр нашего геймплея. Тот самый пресловутый BPM (beats per minute), с частотой которого вы качаете головой, или барабаните пальцами по столу под драйвовый трэк. Но чтобы строить игру вокруг ритма, его сначала нужно добыть. Музыка для игрового движка - это по сути всего лишь пачка сэмплов, которые этот движок умеет воспроизводить своими силами, плюс немного информации о них.


Задача извлечения из музыки BPM не новая, даже если игнорировать сегмент ритм-игр, производители DJ-оборудования и программных секвенсеров музыки проделали огромную работу в этом направлении. И даже после всех этих исследований производители часто доверяют определение темпа человеку.

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

-  стучим по кнопочке CUE в ритм песни, чтобы “вертушка” поймала его


Мы изучили множество публикаций и материалов, прежде чем пришли к какому-то промежуточному решению, которое сработало для нас.


Музыка - сложная звуковая волна, колебания воздуха в вашей комнате, в клубе, или же между мембраной ваших наушников и барабанной перепонкой. Преобразование этих колебаний в нечто мелодичное и ритмичное (то, что наш мозг делает автоматически), требует определенных вычислений. В большинстве своем эти вычисления - быстрое преобразование Фурье, которое представляет комплексный звуковой сигнал в виде суммы синусоид определеных частот и громкостей. Для тех, кому сложно с ходу понять, как кривая связана со звуком, поясним: звуковая волна синусоидальной формы - это простейший музыкальный тембр, знакомый каждому, например, по телефонным гудкам. Частота этой синусоиды - это высота звука, а амплитуда - его громкость. Для наглядности приведем разложение на синусоиды простейших форм звуковой волны:

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

Конечно, для музыки спектр получаемых частот выглядит куда сложнее, практически по всему спектру есть частоты разной громкости. Хотя, если вы вспомните любой музыкальный спектроанализатор (люди часто ошибочно называют это “эквалайзер”), объяснения не потребуются - это наглядная картина того, во что превращается звук после быстрого преобразования Фурье :)

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

- громкости звучания частот от низких к высоким слева направо


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


Используя эти данные нам нужно решить несколько задач.

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


Чтобы определить BPM, нужно сначала понять, что такое бит. Обычно под битом мы понимаем начало короткого повторяющегося музыкального отрезка, зацикливание которого (с небольшими изменениями) задает основной темп песни. Классической основой ритм-секции является сочетание ударных и баса (будь то рок, металл, джаз или электронная музыка). Знание об этом дает нам примерное представление, пики громкости каких частоты мы будем искать в нашей музыке. Наша цель основная цель - диапазон до 120Гц, однако помимо него мы проанализируем еще небольшую полосу в районе 1кГц, где часто “сидят”, например, электро-гитары, поддерживающие ритм секцию.


Во-первых нам нужно понять, в каком диапазоне громкости звучат данные чистоты на протяжении песни, чтобы делать какие-то относительные выводы. Получив значения минимальной и максимальной громкостей, можно приступать к анализу. Если говорить коротко, анализ представляет собой последовательный проход по сэмплам от начала песни к ее концу, сравнивая значения частот на выбранном диапазоне с минимальными\максимальными значениями и между собой. Составив своеобразную “карту перепадов громкости низких частот”, мы стараемся выявить периодические последовательности - пики, повторяющиеся через равные промежутки времени (к счастью для меломанов и к сожалению для анализирующих звук, басовые и ударные партии могут быть сложными и разнообразными). Наиболее часто встречающееся значение такого промежутка мы берем в качестве длительности бита, от которого уже вычисляем BPM.

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

Анализатор реагирует по-разному на разные песни - разумеется, хаус-музыка, где бас-бочка отбивает четкий постоянный ритм, проще всего поддается анализу. С агрессивными жанрами металла, где барабанщики вытворяют невиданной быстроты и сложности финты, ситуация обратная. Тут как раз нам помогает дополнительная полоса частот, в которой сидят гитары и “рабочий барабан” (самый пронзительный и звонкий из барабанов установки). К тому же не стоит забывать про музыкальные жанры с плавающей размерностью, где музыкальные фразы могут быть разного размера и длины - джаз, матрок и другие.


Еще одним препятствием анализу является компрессия звука. Этот прием пост-обработки музыки сейчас применяется многими продюсерами в различных жанрах. Суть его такова, что разницу между самыми тихими и самыми громкими звуками (т.н. динамический диапазон) в песне намеренно сокращают с целью без потери качества и “перегрузки” оборудования на пиках увеличить конечную громкость записи. Очевидно, что экстремальная компрессия (которой иногда грешат поп и электро продюсеры) может значительно усложнить составление “карты перепадов громкости” и сделать конечный результат анализа слишком неточным.

Разработка ритм-игры TERRORHYTHM. "Под капотом", или заметки программиста. Инди игра, Инди-разработка, Terrorhythm, Steam, Ритм-игра, Gamedev, Длиннопост

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


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


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


Ранние посты по разработке игры:

https://pikabu.ru/story/proekt_igryi_terrorhythm_animation_a...

https://pikabu.ru/story/razrabotka_terrorhythm_animatsiya_pr...

https://pikabu.ru/story/razrabotka_igryi_terrorhythm__music_...

https://pikabu.ru/story/komiks_po_igre_terrorhythm_5526003

https://pikabu.ru/story/terrorhythm__vtoraya_igra_ot_evilcog...


Страница игры в Steam: http://store.steampowered.com/app/752380


С уважением,

EvilCoGames Team

evilcogames@gmail.com

Показать полностью 6

Проект игры TERRORHYTHM. Animation artwork

Всем привет! Создание TERRORHYTHM продолжается, активно работаем над анимацией персонажей, которой явно не хватало как по нашему, так и по мнению общественности (пикабу в том числе))). Вот, исправляемся:

Ранние посты по разработке игры:

https://pikabu.ru/story/razrabotka_terrorhythm_animatsiya_pr...

https://pikabu.ru/story/razrabotka_igryi_terrorhythm__music_...

https://pikabu.ru/story/komiks_po_igre_terrorhythm_5526003

https://pikabu.ru/story/terrorhythm__vtoraya_igra_ot_evilcog...



Страница игры в Steam: http://store.steampowered.com/app/752380


С уважением,

EvilCoGames Team

evilcogames@gmail.com

Показать полностью

Разработка TERRORHYTHM. Анимация. PROCESSING... .. .

Работа над rhythm-action игрой TERRORHYTHM в разгаре! За последнюю неделю частично была разработана анимация главного персонажа и бота. Также немного оживили фон.

Ранние посты по разработке игры. Посмотрите, отличается ли "до" и "после"?


https://pikabu.ru/story/razrabotka_igryi_terrorhythm__music_...

https://pikabu.ru/story/komiks_po_igre_terrorhythm_5526003

https://pikabu.ru/story/terrorhythm__vtoraya_igra_ot_evilcog...


Страница в Steam: http://store.steampowered.com/app/752380

Краткий обзор Star Story: The Horizon Escape от Дмитрия Юрьевича Пучкова (он же Гоблин).

Отличная работа, все прочитано!