LMU ☀️ CMSI 1010
COMPUTER PROGRAMMING LABORATORY
HOMEWORK #5 Due: 2025-12-05

Learning Objectives

With this assignment you will demonstrate:

You will demonstrate these objectives by writing a Flappy Bird game, for which, at the end of each game, you will write the score to a file and display a random quote fetched from a public API.

flappy_bird.jpg

Readings and Videos

This homework assignment covers the material learned in Labs 16–18. Please go through all of the referenced readings and videos that you will find in the Further Study sections.

Instructions

Unless you get a waiver, this assignment is to be done in a team of 2–3 students.

Create a fresh GitHub repository and name the project something fun, but bird-themed. Be creative. The owner of the project will need to invite classmates as collaborators.

Write your game as a Pygame application. The graphics can be extremely rudimentary if you like, with the bird being a circle and the pipes being simple rectangles. Navigate with the keyboard up and down arrows. Keep “score” by counting the number of pipes successfully passed.

When the bird finally crashes into a pipe, you should display a game over screen that shows the final score and a random quote fetched from the free and public Quotes API. Then append a single line of text to the file scores.txt that contains the current datetime and the score.

Teams are required to show multiple commits per team member.

That’s it. There are no further technical requirements. But there will be a 3-minute demo on the last day of class for you to show off your work to your peers. You do not have to prepare any slides. Just show off what you got!

You will “submit” your solutions via BrightSpace but you won’t actually upload any code: all you will submit is the url of your GitHub repository, along with any other messages about the submission that I or the grading assistants need to know.

Grading

Grades will take into account the following criteria: