In this project, I will be exploring how to create a Flappy Bird game using p5.js.play. Flappy Bird is a popular game that is known for its simple yet challenging gameplay. The game involves controlling the player sprite through a series of gaps in between static enemy sprites (if the player doesn’t fit through the gap and hits the static sprite, they lose). The challenge of the game is the precision and timing it takes to successfully pass through each gap by hitting the space bar to fly higher or releasing to fly lower. I am interested in this project because I have enjoyed making playable games throughout this semester and Flappy Bird's simplicity and challenge make it an exciting game to recreate in p5.js.play.
I got this idea from the last project that was assigned to the class, as playing my version felt an awful lot like Flappy Bird, which gave me the idea to make it for the final. When making 12.3, I was curious how different the game mechanics would be if I kept the ability to jump whenever the payer desired. This led to Mario basically flying straight up, so when I hit the arrow key for him to move forward at the same time, it reminded me of the mechanics of Flappy Bird which gave me the idea for my final project. Even though we have not worked on a Flappy Bird style game in class, I feel like I will be able to accomplish it due to its surprising similarities to 12.3.
Throughout this project, I will be working on creating my own version of Flappy Bird, complete with unique design elements to truly make the game my own creation. I will be taking inspiration from the original Flappy Bird game in terms of gameplay, concept, etc. I will also attempt to use a character sprite similar to Mario for the character. I found a flying sprite animation of Rainbow Dash from My Little Pony that I think would be cute to use for the player to make the game more unique than using the bird sprite in the original game.
This is my task list for the time being, but I believe it will change as I progress with my project due to the inevitable coding issues that will occur here and there.
1. Create a player sprite.
2. Move the player sprite forward and up.
3. Load a player spritesheet for the flying animation.
4. Create static poles/pipes with gaps.
5. Make the poles/pipes enemies.
6. Create a key pick-up or sensor between pole/pipe.
7. Create score tally of how many gaps passed through.
8. Display startup and game over screens.
9. Create a series of rooms to go through.
10. Add sound effects potentially?
11. Add moving background potentially?