C# Tutorial – Make a flappy bird game in windows form

Images and source code here – https://www.mooict.com/create-flappy-bird-game-in-visual-studio-using-c/

Get the New Flappy Bird V2 Game Tutorial on Udemy and Support MOO ICT –

This is one of the first tutorials I’ve written for MOOICT, now its on the fully explained tutorials. This video will take you through how to make the flappy bird game in visual studio with Windows form and C# programming. All of the components, images, data types, events and functions are written and explained in the video. Hope you like the video and see you on the next one.

Happy Programming

Moo Out.


  1. sotNice tutorialng in the soft roll and the soft outgrows the length of the step sequencer. it's not obvious how to "shrink" the soft rolled

  2. Hi bro if this is not working now can you plz help me thankyou.
    (flappyBird.Bounds.IntersectsWith(pipeBottom.Bounds) ||

    flappyBird.Bounds.IntersectsWith(pipeTop.Bounds) ||

    flappyBird.Bounds.IntersectsWith(ground.Bounds) || flappyBird.Top < -25


  3. I don't understand English very well, I'm a beginner in programming, but I did everything perfectly, the game is excellent, thank you very much for the nice explanation.
    Greetings from the Republic of Srpska. 😊

  4. Hello, it was great.❤😍
    It is better to add a reset button so that there is no need to close and open the program again👍👌


    Are the variables Gravity, Pipspeed and score automatically recognised by the game or wouldnt you have to specify what the variables relate to within the game?

  6. Nice tutorial, but why use windiws firms when there are extent third party cross platform libraries ? Din't get me wrong windows forms is ok but I fail to see thevreason for tying your app to be windiws onky, unkess I'm missing something

  7. Thank you very much, i was trying to make flappy bird for my final school project and ran into some problems, but thanks to your guide i managed to finish it
    Thanks a lot again 😀

  8. Great tutorial. And it leaves plenty to play around with and add to. Like instead of having an end game for flying too high, I just changed it to if the box gets above a height, it just resets to that same height.
    Some other things for others to try are to change the pipe positions (a random range for the pipes to be set. Or if you're like me and have the pipes like the original game, set one's height then the other a set distance gap), make the bird rotate while rising or falling, changing the button press to have a gradual change in gravity instead of an instant shift and a constant press no longer works, and setting up a game start screen along with a button on gameover to return to that or play again immediately.

  9. can someone explain: pipeBottom.Left < -150 why this number and how i know it and why .Left and not only pipeBottom or flappyBird without .Top ..? 🙂

  10. instead of using pipe.Left < -150, you could use Pipe.Right < 0, which means that the offset inside the if statement gives a more user friendly control for how long they are offscreen

  11. I'm grateful for your video to use as a building block, however you seem to muffle your voice now and again. It's ok, nobody can see you so don't be shy. Then again I'm a northerner and we are owt but shy 🙂 Please try not to use literals quite as much as they are bad coding practice. For instance the screen width could change so insteand of typing 800 or whatever to check something against screen width use "this.Width". Also, for gravity speed use a constant ie "const int GRAV_OFFSET = 15;" within the scope of the Form code ie where you already declare the other "int"egers and then use as for example as "gravity = -GRAV_OFFSET;" in relevant code. Hope this helps.

  12. this is amazing. great work. I'm starting now and i have a question… How do you get the images or how do you make the images that you use in your games?

Leave a Reply

© 2023 53GB