Квантовый форсаж
Содержание
Состав
- Тимашов Даниил - генерация препятствий и бонусов, взаимодействие корабля с ними
- Милащенко Марк - создание игровой механики игры, движение корабля
- Горячева Валерия - работа с графикой, создание игрового пространства, элементов меню
Описание
2D игра-леталка на основе принципа неопределенности Гейзенберга.
Технологии достигли такого уровня, что можно уменьшить космический корабль до размеров элементарных частиц. Однако такой корабль попадает под действие законов микромира. В этих условиях вам и предстоит управлять кораблем. Он должен пролететь через квантовые джунгли препятствий и не врезаться ни во что. Сложность управления в неопределенности скорости корабля и его положения в пространстве. К счастью, есть специальные бонусы, чтобы контролировать эти величины.
Репозиторий
https://github.com/dantimashov/quantum_race.git
Презентация
https://cloud.mail.ru/public/LE21/RPmRY5pWf
Видео
https://www.youtube.com/watch?time_continue=2&v=knVTBBWr5ng
Features
Планировали и сделали
1. Через фиксированное время происходит изменение скорости и координаты корабля по определенному закону.
2. Специальные бонусы для управления неопределенностью координаты и скорости.
3. Случайная генерация препятствий сквозь которые летит корабль.
4. Подсчет очков в зависимости от того, как далеко пролетел игрок вправо.
5. 5 жизней у игрока. При столкновении с препятствием число жизней уменьшается. Когда оно становится нулем, игра заканчивается.
Не планировали, но сделали
1. Специальный бонус для увеличения числа жизней.
2. Характеристика - топливо. Позволяет увеличивать или уменьшать скорость. Также есть бонус для увеличения топлива.
3. Красивое меню.
Планировали, но не сделали
1. Вместо простого набора очков конкретное условие победы.
Bug List
1. Неправильное взаимодействие корабля с препятствием типа "прямоугольник". Ожидаемое поведение: уменьшение количества жизней при совмещении изображения корабля с краем прямоугольника. Реальное поведение: уменьшение количества жизней только при пересечении изображений на 10-20%.
2. Не учтено переполнение переменных, которые инкрементируются по ходу работы программы. Ожидаемое поведение: игра продолжается, пока у игрока не закончились жизни. Реальное поведение: Игра заканчивается, если играть больше некоторого времени (на самом деле нужно играть несколько дней подряд, чтобы это произошло).
3. Неопределенное поведение при долгом полете влево, если уже пролететь какое-то расстояние вправо. Ожидаемое поведение: Нормальное отображение препятствий и фона. Реальное поведение: пропадают все объекты, начинаются странные флуктуации отрисовки.