Данная работа посвящена изучению возможности использования генетических алгоритмов в стратегиях для адаптации строя юнитов под предпочитаему тактику игрока с учётом типа местности.
Проект является частью магистерской выпускной квалификационной работы по образовательной программе "Технологии разработки компьютерных игр" Школы разработки видеоигр Университета ИТМО. Работа выполнена на игровом движке Unreal Engine 5.2 с использованием системы визуального программирования Blueprint и C++.
Для запуска проекта требуется Unreal Engine 5. Запустить проект можно просто с помощью файла Wargame.uproject. После каждого боя статистика об эффективности всех отделений сохраняется в csv-файле по пути C\Wargame\Save1.csv. Часть кода, ответственная за оптимизацию строя, реализована в объекте класса GameInstance и находится по пути Wargame\Source\Wargame\Public\Game_Instance_Wargame Для игрока доступно две карты: с равнинной местностью и с плотной городской застройкой. Управление камерой осуществляется с помощью мыши и клавиш WASD. Изменять масштаб можно с помощью прокрутки колёсика мыши. Для изменения наклона камеры нужно удерживать колёсико мыши и переместить курсор вверх или вниз. Выделение юнитов осуществляется левой кнопкой мыши. Правой кнопкой мыши можно отдать юниту команду следовать в указанную точку, войти в здание (для пехоты) или атаковать выбранного противника. Пауза на Esc. Счётчик сверху посередине экрана показывает сколько времени осталось до конца раунда.Все юниты сбалансированы следующим образом:
- Танки - броня - высоко, урон - высокий, обзор и маскировка - низкие;
- БТР - броня - средняя, урон - средний, обзор и маскировка - средние;
- Машина - броня - низкая, урон - низкий, обзор и маскировка - высокие;
- Пехота - броня - низкая, урон - низкий по пехоте и высокий по техники вблизи, обзор и маскировка - отличные.