Учу ботов: теперь — летать :)

Пока не идеально, но уже кое-как пашет)

Всем привет! У меня новый горизонт - новый концепт!


Опять стратегия с возможностью контролировать одного юнита от третьего лица. Но на этот раз я решил сосредоточить своё внимание на user-friendly интерфейсе управления. Классическое выделение рамочкой уже сделал ;)


Но задача осложняется тем, что теперь все боевые единицы - физические, а также делятся на два типа: наземные и воздушные. Пост про наземные делать я не стал, там всё на порядок проще. А вот про воздушные - захотелось написать)

Учу ботов: теперь — летать :) Unreal Engine 4, Gamedev, Видео, Разработка игр, Длиннопост

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


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


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

Учу ботов: теперь — летать :) Unreal Engine 4, Gamedev, Видео, Разработка игр, Длиннопост

Дальше мне пришлось повозиться со школьной геометрией, чтобы научить вертолётик двигаться к точке, до которой можно долететь по прямой. В итоге, бот контролирует повороты, наклоны, газ и тормоз и, пользуясь всей этой системой, может долететь до любой точки на карте и даже не разбиться по пути :D

(Знали бы вы, сколько юнитов было уничтожено во время бесчисленных испытаний!)


Но, правда, в текущей версии вертолёты не видят друг друга (вернее, они видят только тех, кто находится ровно под ними), поэтому получаются весёлые столкновения :)


Может быть так и оставлю, посмотрим (исправить это - два клика - вертолёты уже умеют уклоняться от лэндскейпа и построек).


А в будущем они будут летать быстрее, чем на видео. Мне, в общем-то, осталось только подкрутить некоторые параметры. Дальше буду учить их сражаться!


Большое спасибо за внимание! А я пополз дальше в свой бункер, из которого уже месяц не вылажу и всё программирую-программирую-программирую :D


[Наконец-то я почувствовал что-то схожее с тем, что ощущал во время разработки Форматы. А это ведь уже четвертый начатый, но не законченный проект после неё!]

Учу ботов: теперь — летать :) Unreal Engine 4, Gamedev, Видео, Разработка игр, Длиннопост

Лига Разработчиков Видеоигр

6.6K постов22.1K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

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

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

7
Автор поста оценил этот комментарий

@Nezon, превет, меня завут андрей мине 12 лет. давай делать игру! Шучу.
Гх кхм.. Коротко и по делу - https://youtu.be/7qEGJlBLJSg по этой ссылке идёт хороший туториал по управлению юнитами в rts zero-k. Не буду вдаваться в перечисление плюсов этой игры, иначе это надолго.
Что я бы хотел предложить: Посмотри пару минут этого видео, обрати внимание на то как игрок отдаёт приказы юнитам и как они их выполняют. Уверен с английским у тебя всё в порядке, внимательно слушай комментарии. Эта стистема управления юнитами даёт просто запредельный контроль над полем боя, очень бы хотелось бы увидеть подобную механику в большем числе rts игр.
Подобное управление позволяет делать всё что вздумается с отрядами, отдельными юнитами, со строем из разного рода юнитов итд. Хоть черепахой по животному, хоть по военному.
Zero-k бесплатна, с открытым кодом, любой может принять участие в разработке. В дискорде игры есть разделы для модинга и помощи, комьюнити помогает всегда и всё время идут обсуждения технических проблем и идей. Думаю, если обратится туда - там объяснят и помогут разобраться как это сделано.
Удачи и терпения!

раскрыть ветку
3
DELETED
Автор поста оценил этот комментарий
Жаль, что формата умерла. Будем следить за новым твоим проектом.
раскрыть ветку
4
Автор поста оценил этот комментарий

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

раскрыть ветку
2
Автор поста оценил этот комментарий
Круто. Раньше была игра называлась incoming. Чем то напомнило
раскрыть ветку
2
Автор поста оценил этот комментарий
Тестировщики нужны?)))
раскрыть ветку