Задание 1 До 25.11.2020
Задание 2 До 16.12.2020
Индивидуально:
- Выбрать один из алгоритмов: клеточный автомат, генератор комнат, random walk свой
- Реализовать класс для заполнения маски уровня: матрицы, содержащей информацию о ячейках Можно в группе
- Составить JSON, который нужен для отображения данных об уровне в массив тайлов 3а. Использовать свой или имеющийся в проекте набор тайлов
- Сделать сцену, которая строится из маcки уровня и набора тайлов (сцена обновляется при каждом запуске)
- Проверить:
- Камера следует за игроком
- Можно посчитать метрики (% заполнения, число комнат, связность, максимальный размер уровня, расстояние до цели...)
- (Опционально) Заполнять несколько уровней карты: пол, украшения, враги/NPC.
- Выполнен уровень в проекте Aurora
- Движок Phaser, язык JS
- Реализовано движение игрока и ввод с клавиатуры, мыши или геймпада
- Реализована хотя бы 1 физическая модель движения (на основе встроенных физических модулей Arcade, Matter или собственная)
- Реализована базовая модель поведения (1-2 стиринга)
- Реализована модель поведения "верхнего уровня" для NPC (выбор целей на основе одной из моделей: конечный автомат, дерево поведения, нечеткая логика, продукционная модель, blackboard, своя модель)
- Реализована процедурная генерация карты по одному из алгоритмов (комнаты, коридоры (случайные блуждания), клеточный автомат, генерация лабиринта, свой алгоритм)
- Уровень выполнен в виде отдельной сцены, код предоставлен в виде пулл-реквеста в репозиторий https://github.com/mmcs-gd/aurora2020/
cd phaser-test
npm install
npm start
cd phaser-test
npm run build
cd ./dist
-
Реализовать шаблон поведения: стиринг, своя логика по поведению (сбор объектов, разбрасывание объектов, прятки, реакция на внешние раздражители)
-
В качестве инструмента использовать конечные автоматы на основе таблиц, стиринги, поиск пути (встроенный), физический движок Phaser
-
Сдавать через pull request в отдельной сцене
- Поиск
- Бегство
- Прибытие
- Погоня
- Уклонение
- Исследование
- Обход препятствий
- Избегание стен
- Прерывание
- Прятки
- Следование по пути
- Преследование с промежутком
- Соединение
- Разделение
- Выравнивание