Ваша группа делится на несколько команд по три-четыре человека для разработки своего проекта по вариантам. Разработка ведется с использованием системы контроля версий git. Каждый участник команды ведет разработки в своей ветке (или ветках), либо команды использует любую методологию ветвления (github-flow, git-flow, или что-то своё). Весь проект должен быть покрыт unit-тестами и на защите нужно быть готовым продемострировать прохождение всех тестов.
- Весь проект должен быть написан с использованием парадигмы ООП.
- Предпочитаемые языки: C++, C#, Python, Java/Kotlin.
- Покрытие тестами всей игровой логики. Вывод на дисплей и все служебные методы покрываются тестами по желанию.
- Для покрытия тестами допустимо использовать любую известную библиотеку unit тестирования для выбранного языка.
- Кроме написания проекта по выданному варианту от вашей команды необходим репозиторий git, размещенный где угодно (гитхаб, битбукет или их аналоги). Помимо код-ревью будет проверятся, КАК вы разрабатывали свой проект (бранчи репозитория, коммиты и т.п.).
- Все проекты должны обладать меню, системой сохранения и загрузки, экраном выбора уровня (если это подрузомевается игрой)
- Визуальное и аудио оформление приложения выполняется по желанию
Запрещены к использованию всякие инструменты для создания игр: GameMaker Studio, Unity, Godot, GDevelop, Unreal Engine и т.п.
Их применение возможно только по согласованию с двумя преподавателями (шансы минимальны :) ).
- 2048
- Блэкджек + ИИ для игры с компьютером
- Сетевой морской бой + режим наблюдателя для неограниченного числа зрителей
- Аналог Gravity Defied (достаточно пары уровней)
- Простейшая rogue-like игра
- Raytracing шутер
- Платформер, аля Митбой
- Платформер, аля Марио
- Змейка с конструктором уровней (реализовать в виде пункта меню без запуска дополнительных окон)
- Свой вариант (нужно согласование)