PyBreakout Version 0.3, including POWERUPS!
Thursday October 19th 2006, 11:18 pm
Filed under: Development, Python

Downloads:

Version 0.3 Notes

I have added several cool features in this release but probably the most exciting is:
POWERUPS! I have successfully implemented both a Slowball powerup as well as a Triball powerup.

Here are all the changes in this version:

  1. Created a Triball Bonus which splits your main ball into 2 additional balls. You can get this powerup several times and have some real fun with many balls.
  2. Created a Slowball Bonus which slows all balls on the board down to the slowest speed. Very helpful on higher levels.
  3. These bonuses occur randomly when destroying bricks.
  4. Many improvements to the Mouse Control, and capture of the cursor when the game is primary focused.
  5. Added ESC key to end game at any time (because you can no longer hit the “X”)
  6. The paddle now has five zones of redirection for more control over where you will redirect the balls.
  7. Each successful level begins at a higher speed until you have reset to level 0.
  8. Now even GREY BRICKS are destructible once they have been hit 4 times. This was needed to avoid some infinite ball loops in the levels.
  9. I have used the –bundle flag in py2exe so that it has a much more organized distribution.
  10. I spent some time refactoring and improving the codebase during this period especially when I had to account for several balls instead of only one ball on the board.

Check out the PyBreakout forum topic for installation details and other notes



PyBreakout Version 0.2 is OUT!
Wednesday October 11th 2006, 10:14 am
Filed under: Development, Python

Check out the PyBreakout Forum Topic for details on how to get the latest PyBreakout files.

Here are the major differences versus Version 0.1:

Game Notes

Version 0.2 Notes

I have added several features to this release including:

  1. Mouse Control of paddle Left and Right
  2. Mouse Control - Left Click (strictly pygame’s button1) to launch the ball
  3. Mouse Control - Right Click or Middle Click (strictly pygame’s button2 or button3) to use next life
  4. Improved ball redirection based on where it hits the paddle, if the ball hits the left 10px of the paddle it is redirected up and left, middle 20 px it is reflected, right 10 px it is always reflected up and right. This improves directional control of ball.
  5. Sound Effects - for bouncing off gameboard walls, destroying blocks, bouncing off paddle, bouncing off indestructible blocks, and when you get extra lives
  6. Reset speed to 1 ( rather slow ) when you advance to next level instead of leaving it at whatever speed you passed the previous level at.

Thanks to Peter Nosgoth for trying the game out and giving me some pointers on how to improve it on the Pygame page

Check it out, and let me know what you think!



PyBreakout - a Breakout clone written in Python
Monday October 09th 2006, 8:16 pm
Filed under: Development, Python

PyBreakout - a Breakout clone written in Python using the Pygame libraries

I created this little game using Python 2.4.3, Pygame 1.7.1, and finally created the .exe distribution using py2exe 0.6.

This is my second project that I have done with the awesome Pygame Libraries and I plan to continue this project based on user feedback, so let me know what needs to be tweaked.

What’s the goal of the game?

  1. You are a paddle that can move left and right, you launch the ball from your paddle by pressing “SPACE”
  2. The goal of the game is simple, just keep the ball from falling into the abyss beneath you and hit all of the destructible blocks on the level to advance and gain points.
  3. You have 3 lives when you start the game.
  4. During the level your ball will increase in speed every 15 seconds, until it reaches a pretty quick max speed.
  5. You will be awarded a new life if you acquire 500 pts, and another at 2000 pts.

How do I control the game?

  1. Enter/Return - Reset the ball ( Looses 1 life )
  2. Spacebar- Launch the ball off the paddle
  3. Arrow Left - Move the paddle left
  4. Arrow Right - Move the paddle right

How to launch PyBreakout ( only tested on WinXP, sorry )

Checkout the latest Source Code from Google Code’s Subversion Repository

  1. Get TortoiseSVN or Eclipse with the Subclipse plugin and the PyDev plugin or a suitable Subversion client…
  2. Follow the directions on the Source Tab of the Pybreakout page

Windows XP/2000

  1. Download the pybreakout-windows.zip file
  2. Unzip this pybreakout-windows.zip to a suitable location, desktop or where ever
  3. Double-click on pybreakout.exe within that directory and it should work!

*Nix / Mac

  1. Download the pybreakout-src.zip source code file
  2. Unzip this pybreakout-src.zip to a suitable location.
  3. Assuming that you have Python 2.4 and Pygame installed correctly, simply type “python pybreakout.py” at the command prompt in the src/ directory and it should work.
  4. View and critique the source code and drop me a line on how sweet it is…

Game Notes

After some gentle poking and prodding from my boy Chryso on this here forum, I decided that Pygame was cool enough and easy enough so that I would pound out PyBreakout in about a weeks time… even being out of town all week

This project is much more ambitious and more fun than Avoidgame so I am going to keep it up and tweak it until it is pretty sweet. But this current version should be quite playable.

Check it out, and let me know what you think or…

Discuss it in the forum