Complete a python or a Block Based Reaction Game. I created a single-player Pong game in MakeCode.
The biggest challenge I had with this code was getting the reset to work effectively. I liked using the "game" blocks and the "Game Over" code is a nice resolution to the game, but it didn't lead to an obvious way to restart things. That was fairly easy to fix by coding a "reset" in when both buttons are pushed, but I'm still concerned that can happen accidentally during game play. If I were continuing development on this project, I would look at ways to require the A+B buttons to be pushed for a specific amount of time to reset the game.
I found coding the paddle to be challenging. In MakeCode I had to create each dot for the paddle as separate sprites and then manipulate them together. While I was able to do it, it just felt clunky and limiting. My intention was to translate all of this into MicroPython where I thought I would be able to make an icon for the paddle and control it more easily, but I haven't gotten to that yet, and frankly, I need to hand this in!
Another problem I've noticed was that in my initial game, the paddle could go offscreen and you lost that sprite. I had to create "if" statements in the button inputs for the paddles to ensure they could not go off the side of the screen by setting the maximum coordinate location for specific sprites.
Overall, I don't think micro:bit is the best platform for this game. The screen is so small that the game really isn't that challenging. I think it'd be more fun in MakeArcade on a larger OLED screen or in MicroPython using Turtle.
I did add a feature I did not originally intend, to make the game more challenging. Originally the speed of the ball's movement was static, but I decide to add a speed variable. So each time you gain a point, the ball speeds up its movement. For me, this makes the game much more fun to play. I also added sounds and used the "score" blocks to make it more exciting when you scored a point.