Исходный размер 2450x3500

Хаари-Манди \ Код

3D  экшен-adventure, в которой вам предстоит попробовать себя в роли шамана. Скоро настанет Хаари-Манди и вам необходимо все приготовить. Перемещайтесь между рынком и нирваной, зажигайте факела, собирайте души, но не потеряйте свою!

big
Исходный размер 1600x900

Вперед в Нирвану!

Привет, я — Маша! В проекте Хаари-Манди я была программистом. Также я немного помогла с гейм-дизайном и UI. Но основное моей работой был код и сборка системы в движке Unreal Engine  5.

big
Исходный размер 1600x500

Подход к работе

Чтобы работать было удобнее, а объем кода не пугал, я разбила весь код на 3  категории: персонаж, окружение и враги.

big
Исходный размер 1600x900

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

Исходный размер 1600x900

Помните я говорила про три блока кода? Так вот, дальше про них подробнее!

Персонаж и навыки

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

Исходный размер 3500x2480
Исходный размер 1600x600

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

Исходный размер 1600x900
Исходный размер 1600x700

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

Исходный размер 1600x900
Исходный размер 1600x600

Кто нам грозит?

В игре два врага: рыба-степлер и як. Оба имеют живую и статичную формы. Живые формы создают динамику и опасность в Нирване, статичные помогают игроку перемещаться по рынку. Обе сущности также внутри своего кода обращаются к главной переменной мира и под нее изменяют состояние.

Исходный размер 1600x900
Исходный размер 1600x700
Исходный размер 1600x900

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

Исходный размер 1600x900
Исходный размер 1600x500
Исходный размер 1600x900

Это рыбы-степлеры. Они быстрые и больно кусаются. Зато на рынке становятся батутами!

Исходный размер 1600x900

Интерактивное окружение

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

Исходный размер 1600x900
Исходный размер 1600x600

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

Исходный размер 1600x900

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

Исходный размер 1600x600
Loading...
Исходный размер 1600x500
Хаари-Манди \ Код
Проект создан 19.10.2025
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше