Breakout is a ball game where you try moving the paddle to bounce the ball to the blocks. When the ball hits a block, the block disappears. The more you bounce, the easier it starts to get since there would be less blocks. Win the game by eliminating all blocks. You will lose when the ball misses the paddle and goes below.
I used Python 3.9 because it is easy-to-use. It delivers my purpose through straight forward lines of code. I also used an IDE, PyCharm. This is because it has a great project management system and is friendly to beginners (like me)! Besides Python, I used a module called PyGame , which allowed me to make the game without a game engine.
I faced many challenges. I often confuse variables and loops. This caused many errors which I later fixed during the vigorous testing phase. It took a lot of time and debugging. However, I notice that there are still some bugs, so please open an issue if you find them.
- Description
- What does the application do?
- What technologies did I use?
- What challenges did I face?
- Installation
- Is there any installation process?
- Using the project
- How to use the project?
- Contribution
- How can you contribute to the project?
- Are there any requirements for contributors?
- What are the rules for contributing?
- Project Features
- What is the purpose of this game?
- Can you cheat?
- To-Do List
- Credits
- Who helped?
- Copyright License
Honestly, it depends. There are three ways you can download the file.
- The raw code: This enables you to see all the code. The downside is that you need a python interpreter for it to work. When you have your python interpreter installed, just copy the code and run the program.
- Base Application: If you are sure you already have Python and PyGame installed, you can just download this base application. However, if you do not have both Python and PyGame installed, then you need:
- Application with Python Files: You can download the application with all the necessary files. This means, even if your computer does not have Python or PyGame, you can just run through this simple installation process and still play the game. (It takes about 5 seconds to install - 🌩️ speed)
Again, it depends. If you chose the first option (raw code) from above, you would need a python interpreter, then just click on run. If you chose the second one (which is the simplest if you have both Python and PyGame in my opinion), just click on the application and the game runs by itself. If you chose the last one, click on the application, allow it to make changes and all that faffle, then follow the instructions. It won't take you longer than 20 seconds to do the whole installation process.
Simple. Just email me. I will have a look at your profile page and send you an invitation link.
No, of course not! Who would I be to judge whether you should be able to contribute to the project. Just politely email me and I would happily accept your help. I am determined to set everybody as equals to make this code as good as possible.
Just don't mess around with the files. Remember that you may be held responsible for sabotage of any sort.
Well, you just have to move the paddle to bounce the ball. If the ball touches a block, the block disappears and you are one step closer to winning. Eliminate all the blocks to win! Good luck!
Of course, you are free to edit the code after you downloaded another copy, where I cannot stop you from deleting the measures. If you coincidentally cheat (meaning you get a bug which helps you get away from losing), please open an issue and I will try to fix it.
- Thorough code testing. 💻
- Refactor the code. 💾
- Make the experience better. 📷
- Improve appearance. 🌻
Huge credits to Coding With Russ for inspiring the idea. A lot of the code was his idea. Check out his YouTube channel.
- Matthew Tam
- Walter Tam
- Robert Brown
I am open to people copying my code and improving it. Just link me to the project.
However, please do not just take my code and claim it's yours.
I am looking forward to making this code work better. So please be comfortable to open issues or contact me: [email protected]