Sign in to follow this  

Needs ideas for making Breakout clone

This topic is 4686 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm trying to make a Breakout clone but need some ideas. So far I have the following powerups added to my game or in the process of being added: + Paddle magnetism - balls cling to paddle. + Number of balls multiplied + Lasers + Invincible balls - balls can break through blocks + Allow early level exiting + Shrink paddle + Expand paddle + Normalize paddle size + Level bomb: Destroy all blocks + 1-up Are there any I left out?

Share this post


Link to post
Share on other sites




Guns will always make things more interesting.

1.) GUNS
I was gonna have a power up in mine where you get guns on the sides of the paddle and then you can shoot the bricks, while actually still having to keep the ball in motion.

While we're at this, i got a question:
When you make breakout, does the way you move the paddle affect the ways the ball is deflected when it hits it?
Cuz the last time i made it, i just reversed the balls direction and that was that, but this would mean that the ball would always travel a set path no matter when or how you play since you cant tilt the paddle.
How does paddle movement affect ball direction? (or does it)
IF it does, how do you code for this?

2.) PADDLE TILTING
just got this from my question above. If you could tilt the paddle a bit so you can deflect the ball at a different angle, that might add some strategy to things.

Share this post


Link to post
Share on other sites
Quote:
Original post by Access



While we're at this, i got a question:
When you make breakout, does the way you move the paddle affect the ways the ball is deflected when it hits it?
Cuz the last time i made it, i just reversed the balls direction and that was that, but this would mean that the ball would always travel a set path no matter when or how you play since you cant tilt the paddle.
How does paddle movement affect ball direction? (or does it)
IF it does, how do you code for this?


ball_vx = -ball_vx+rand()%5;
ball_vy = -ball_vy+rand()%5;

now, 5 might not be the best random number to add, or you might want to minus instead, but the idea is sound, i think...

Share this post


Link to post
Share on other sites




CJWR: so now you've just made the deflection random.
The whole point of my question is to get the game a little more dependent on the player's skill with the paddle.

Share this post


Link to post
Share on other sites
Quote:
Original post by Access
While we're at this, i got a question:
When you make breakout, does the way you move the paddle affect the ways the ball is deflected when it hits it?
Cuz the last time i made it, i just reversed the balls direction and that was that, but this would mean that the ball would always travel a set path no matter when or how you play since you cant tilt the paddle.
How does paddle movement affect ball direction? (or does it)
IF it does, how do you code for this?

2.) PADDLE TILTING
just got this from my question above. If you could tilt the paddle a bit so you can deflect the ball at a different angle, that might add some strategy to things.


I am making one of these too. However I do not have any paddle tilting yet, this is something that was in Atari's 3D Breakout game released in 2000 (AU site, not avail in US?). The only reason I do not have it in yet, is it would require me to use OBBs insted of my AABBs that are simple. I use AABB for the blocks, I want to use OBB for just the paddle so the tilting could be done. I like tilting better than 'random' or the also common, 'ball hits paddle on the left side of center, the ball travels left, not reflecting'.

Share this post


Link to post
Share on other sites
Quote:
Original post by Access




CJWR: so now you've just made the deflection random.
The whole point of my question is to get the game a little more dependent on the player's skill with the paddle.


oh... *must learn to read more carefully* i thought you just didn't want to always traveling the same line.

hmm...
i cant think of any good system to do that, i've only ever seen it done as i've shown it. thinking it over though, five is a bit big.

Share this post


Link to post
Share on other sites
I haven't done it yet, but here's what I might do for paddle deflection.

Deflection would be based on where the ball hits the paddle and which direction the ball is going.

Assume the ball is moving right.
If the ball hits the paddle's left edge, I would make the ball move left and up, but |vx| > |vy|. As the point of impact nears the center, the ball will continue to go right without a loss of speed in x and y -- perfect deflection. If the ball hits the right side, the ball continues going right but vx increases and |vy| decreases as the point of impact nears the paddle's right edge. I don't know if it sounds reasonable, but I was thinking as if the collision made the paddle tilt slightly and the ball would behave this way after hitting the paddle.

Share this post


Link to post
Share on other sites
Quote:
Original post by Rob Loach
Don't plan too much before you actually start the project or you'll be swamped and overblown by the amount of work that it entails.


It's not so much as that, but rather thinking about how you can make a system so you could easily addd in *anything* you want. I'd say start thinking about a design of which you just had one special feature. Make this class interact with the game. Now extend it into something more generic, so you can simply override and dervive additional classes for the desired effects. Basically you are making a special FX manager.

So recap -

1. Make Boring Breakout First
- Make it data driven, so you can easily change the behaviors of *anything* simply by editing a file
- You may want to use a script system as well, but that tends to get rather complicated

2. Make your Special FX class manager
- It should be able to load 'scripts' that change the behavior of the game in real time.
- You should be able to easily modify anything that goes on in the game this way - ie ball speed, paddle movement, etc...

Just a few ideas! A little complicated, but if you use this appraoch you will be able t odo all of what you have said in your first post about the powerups.

- Drew

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Hi there take a look at this break out game, personally for me its the best break out clone I've ever4 played.

http://www.sharewareorder.com/Takamaru-downloads-2739.htm

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
um yeah as someone said, start with "boring breakout" first, thats ok though because breakout might be one of easier games to make better once you do have the basic framework down.

There was a breakout clone I liked once which also mixed in a bit of space invaders,- right at the top of the screen behind some blocks a mothership would go over every now and then and drop little homing missile type things, that was quite a good idea.

Share this post


Link to post
Share on other sites
What about team-play. Top and bottom vs left and right for example. The team that gets the most blocks wins.

Here's some ideas for powerups...
+ A powerup which makes your ball act a little 'drunk'.
+ High-intertia mode, where your paddle acts like it sticks to the ground and you have to move it abruptly to get it to come unstuck.
+ Suicide bomber mode. At your command (mouse click) the ball explodes and takes out any nearby blocks. A new ball reappears stuck to your paddle. (Maybe you can blow your paddle up too, by mistake!)


How about when you get a multi-ball powerup, your current ball first grows bigger and bigger and then pops into lots of little balls.

I hope you have pixel-perfect collision detection and response. None of that "ball goes through the corner of a block" crap. Also make balls collide with each other.

btw most clones I've played rebound the ball off the paddle as if the paddle's top surface is curved upwards. You could draw it curved upwards in the middle. Also, some powerup could make it draw and act concave instead of convex, and it would rebound the ball in the opposite manner, just to confuse them.

[Edited by - iMalc on February 12, 2005 10:41:18 PM]

Share this post


Link to post
Share on other sites
For more realistic ball deflection:

If the ball collides with the paddle, find the x coord of the center of the paddle. Then compute the distance between the ball's x coord and the center of the paddle. Then either add or subtract this value from the ball's x velocity depending on the direction it's travelling.

Share this post


Link to post
Share on other sites
btw, don't have the powerup's on each level just randomly selected from the whole bunch. Instead, introduce new kinds of powerups (good and bad) into the mix, only as you reach certain levels.
Seeing each new level design itself isn't always enough to keep someone interested.

Share this post


Link to post
Share on other sites
Quote:
Original post by iMalc
btw, don't have the powerup's on each level just randomly selected from the whole bunch. Instead, introduce new kinds of powerups (good and bad) into the mix, only as you reach certain levels.
Seeing each new level design itself isn't always enough to keep someone interested.


Agreed! Any one remember Bomberman? Remember the 'poision'? It did a variety of things such as reverse the controls, made you slow like mollasses, made you switch places with another player, etc... That would be fun to see in a breakout game. I'd say take a look at Atomic Bomberman on the PC for some ideas.

- Drew

Share this post


Link to post
Share on other sites
I just got done playinga Breakout clone on Linux! It's pretty cool too. I had lots of pwerups like the ones you talking about. It also had guns, but the bullets were really slow. It had sticky balls so the ball would stick to the paddle. It also used the mouse; sometihng I think you should use in your game because it makes it a lot more funner to play.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I remember coding a breakout clone way way way back.

Here were some things I had:

1. Force Field-A laser shot out from both sides of the paddle and the ball could bounce off of it. If the paddle moves, the laser disappeared. If the ball hit it, the laser disappeared.

2. "Shadow Push"-Basically, the user could reflect the ball no matter where it was.

3. "Pause"-It would pause the ball momentarily.

Share this post


Link to post
Share on other sites

This topic is 4686 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this