Flappy Bird
High Level Design Hardware Design Software Design Results Conclusions Appendix
Background

Appendix

Appendix A: Permissions

The group approves this report for inclusion on the course website.

The group approves the video for inclusion on the course youtube channel.

Appendix B: Code

The code for our project is on https://github.com/hn347/flappybird.git.

Appendix C: Schematics

Hardware Design page.

Appendix D: Work Distribution

Selena:

  • Wired breadboard and hardware connections.
  • Researched and ordered additional hardware needed.
  • Implemented "flapping" and gravity logic for bird.
  • Developed code and logic for the button play mode.
  • Developed code and logic for the microphone play mode.
  • Developed code and logic for the IMU play mode.
  • Researched how to play sound effects from .wav files and using the DMA.
  • Found sound effects and developed code to play sound effects when necessary.
  • Designed layout of start and end screens and its logic.
  • Modified website template to Flappy Bird theme with Helen.
Helen:
  • Researched logic for creating and drawing sprites.
  • Developed code to draw a bird sprite and change its angle on flaps and falls.
  • Coded logic for switching between game play modes using the button.
  • Developed set of notes for background music.
  • Developed code for playing background music and logic for it to play simultaneously with sound effects.
  • Designed the box for the arcade button, handle for the mic, and paddle for the IMU in Autodesk Fusion.
  • Implemented logic for counting the score and high score.
  • Optimized collision logic to only check the closest pipe approaching the bird.
  • Modified website template to Flappy Bird theme with Selena.
Matthew:
  • Drew versions of pixelated flappy bird pipe.
  • Researched logic for creating and drawing sprites.
  • Worked on randomized pipe gap height logic and debugged physics updates.
  • Worked on pipe sprite drawing logic.
  • Implemented bird-pipe collision logic.
  • Prototyped initial paddle design in Autodesk.
  • Debugged processing user inputs in the appropriate gameplay mode.
  • Found template for website on W3Schools and modified to fit the project needs.