Game Maker's Garage Forum

Game Maker's Garage => Contests => Topic started by: Charlo on December 21, 2010, 04:01:49 PM

Title: Devlog: Bricker
Post by: Charlo on December 21, 2010, 04:01:49 PM
My entry for the GMG Cup will be simple: a breakout clone made in SC, called Bricker.  I may change the name eventually, especially since the term "bricker" holds negative connotations for basketball fans such as myself.   ;D

I have actually been developing the engine for about two weeks.  Right now, the game is functional with few bugs.  It needs some polishing which it probably won't ever get.  8)

Finished features:
Scoring
Lives
Powerups
-Super ball (ball annihilates bricks without bouncing)
-Bullet paddle (clicking mouse shoots bullets from the paddle)
-Sticky paddle (ball sticks to paddle until mouse click)
-Extra Life (obvious)
Brick color/size
Semi-randomized bouncing (ball doesn't bounce at perfect right angles)
Unbreakable bricks

To-Do List
Powerups
-Long Paddle
-Multiple balls (probably not, would require a serious recode)
-Next Level
-Extra Points
Sprites instead of paint commands (maybe)
More levels
High scores
Fix collision detection with bricks (if the ball hits too close to the corner of a brick, it bounces twice, once off each edge)
Level editor (maybe)
Sounds/Music
Optimize brick detection code to reduce lag with large # of bricks

Screenshots:
(http://www.mediafire.com/imgbnc.php/5e80d9fe3674350fe195a0dd0c4cab2b092115045952eaa63d119def1e8b4d686g.jpg)
(http://www.mediafire.com/imgbnc.php/ad5c2509cb2eb51db589809a01078c444638b4feb3a51aea8a3eab82f60436916g.jpg)
Title: Re: Devlog: Bricker
Post by: Gnome on December 21, 2010, 04:41:47 PM
Reminds me that I have to find my copy of arkanoid.
Title: Re: Devlog: Bricker
Post by: Connors on December 21, 2010, 05:10:09 PM
Is the screen big enough for a level editor to make any sense?
Title: Re: Devlog: Bricker
Post by: Charlo on December 21, 2010, 05:17:26 PM
Quote
Is the screen big enough for a level editor to make any sense?
Good point.  Right now, there isn't enough screen real-estate to include a level editing interface while maintaining the size of the level.

I would probably do something where you can click to define a brick's top-left and bottom-right points and then click on it again to specify the color.  That might be too complicated to fit in before the deadline, though.
Title: Re: Devlog: Bricker
Post by: WarHampster on December 21, 2010, 09:22:29 PM
Good idea for a project, every language needs a Breakout clone!
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 22, 2010, 11:44:10 AM
Dang this was the game I was gonna make. I had already made the title screen most of the ball handling code and was just getting started on bricks. (I even made a power up)
This is what I had done. (Should I start work on something else I am wondering)
http://www.mediafire.com/?nxjm8px4n8lpzad

EDIT: power up does not work. (Note to self: fix power up)
Title: Re: Devlog: Bricker
Post by: Gan on December 22, 2010, 12:05:23 PM
Aha, have a competition. Fight to build the best brick game.
Title: Re: Devlog: Bricker
Post by: EqwanoX on December 22, 2010, 12:28:39 PM
i thought the contest was gm and sc only, this is java. otherwise you should keep working on it as long as you think you can make it better than charlo's version which would be pretty hard
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 22, 2010, 12:33:00 PM

This technically isn't java. It processing which is made with java.

Quote
- Any Gamemaker will do, but it has to be able to run on macs.

I decided to make an arkanoid (or breakout) rip off.
Title: Re: Devlog: Bricker
Post by: Charlo on December 22, 2010, 12:43:20 PM
Quote
Dang this was the game I was gonna make. I had already made the title screen most of the ball handling code and was just getting started on bricks. (I even made a power up)
This is what I had done. (Should I start work on something else I am wondering)
http://www.mediafire.com/?nxjm8px4n8lpzad

EDIT: power up does not work. (Note to self: fix power up)
Ooh, multiple balls!  I am envious.  You should definitely make something with that engine for the contest, I don't care if it's another breakout game or not.  
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 22, 2010, 02:32:49 PM
I managed to create bricks. I think it shouldn't be too hard to insert power ups. Multiple balls wasn't to difficult. Using objects makes everything a whole lot easier. I just need to figure out how to make the bouncing off the paddle work. It is extremely unstable. Quite often the ball gets inside the paddle, and can no longer move.
Title: Re: Devlog: Bricker
Post by: Charlo on December 22, 2010, 04:59:33 PM
Object-oriented programming would definitely make the process easier.  Right now I'm using parallel arrays to hold the brick information, but just simple variables to hold the ball and paddle.  

The way I handled the paddle was that the ball only bounces if it is above the paddle, not if it is in the middle of the paddle.  If the ball runs into the side of the paddle, it won't bounce.  I also think I implemented something like it can only bounce off the paddle if it has bounced off of something else (wall or brick) first.
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 23, 2010, 12:08:21 AM
Quote
 I also think I implemented something like it can only bounce off the paddle if it has bounced off of something else (wall or brick) first.
Thats Brilliant! Upgrading to object oriented programming has made me so less clever. I was far more clever when I used GM.
Title: Re: Devlog: Bricker
Post by: WarHampster on December 23, 2010, 11:01:53 AM
Working with limitations always makes one more creative... just look at the tricks NES programmers used.
Title: Re: Devlog: Bricker
Post by: Silverwind on December 23, 2010, 11:36:12 AM
Yeah, GM has made a far more cleverly person out of me.
Title: Re: Devlog: Bricker
Post by: EqwanoX on December 23, 2010, 12:13:57 PM
Quote

The way I handled the paddle was that the ball only bounces if it is above the paddle, not if it is in the middle of the paddle.
just make the balls Y location equal the top of the paddle

if this is able to determine what side the ball contacts the block i think that same mechanic be used for a platforming engine, charlo still has the source up on snet. its all done with paint commands

http://www.silvercreator.net/cgi-bin/yabb2/YaBB.pl?num=1292626862
Title: Re: Devlog: Bricker
Post by: Silverwind on December 24, 2010, 05:37:33 PM
Wow, looking good! :D It's great to see a thriving hub of developers again. I'm not too well at present, but when I recover I'll start a devlog for my game as well.
Title: Re: Devlog: Bricker
Post by: Charlo on December 27, 2010, 01:58:55 PM
Progress made!  I successfully added a second level and managed to eradicate all bugs associated with it (including powerups not disappearing).  The tedious part is going to be inputting all these levels by hand.
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 28, 2010, 12:19:36 AM
I am trying to work out an editor to create all the levels so I can make them easily.
Title: Re: Devlog: Bricker
Post by: Connors on December 29, 2010, 12:01:12 AM
A level editor? I didn't know GM or SC had a way to save files for things like that. How would you make it work?
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on December 29, 2010, 01:07:35 AM
GM has a command called FILEO WRITE I think. I am not using GM though I am using processing which is way more powerful. It has objects and multidimensional arrays.
Title: Re: Devlog: Bricker
Post by: Charlo on December 29, 2010, 11:49:36 AM
Quote
A level editor? I didn't know GM or SC had a way to save files for things like that. How would you make it work?
SC has READFILE, WRITEFILE, OPENFILE, and CLOSEFILE commands.  I used them to create a level editor in another project of mine.  It actually works out quite well.
Title: Re: Devlog: Bricker
Post by: Connors on December 30, 2010, 06:16:11 PM
That's good to know, I'll see how they work. I might want make a level editor someday.
Title: Re: Devlog: Bricker
Post by: Silverwind on December 31, 2010, 02:24:39 AM
GM has equivilants.
Title: Re: Devlog: Bricker
Post by: Charlo on January 07, 2011, 09:04:23 PM
I don't think the level editor is gonna happen, all my time between now and the contest is devoted to making levels.  Hopefully I can throw in a few more powerups before then as well.
Title: Re: Devlog: Bricker
Post by: Charlo on January 11, 2011, 03:34:15 PM
Big news.  I got an internship doing web programming at the University of Wisconsin-Madison.  It's 20 hours a week, and when you take school into account I'm not going to have very much time to work on this.  Luckily the game is perfectly playable right now.  So my main tasks now are to do five(ish) more levels and to fix bounce detection.  No crazy feature additions or anything.   ;D
Title: Re: Devlog: Bricker
Post by: Silverwind on January 11, 2011, 06:10:53 PM
Woh, awesome Charlo! :D Congratulations, and can't wait for Bricker. :)
Title: Re: Devlog: Bricker
Post by: Charlo on January 18, 2011, 09:33:38 PM
Finished the last level tonight.  It's a toughie.  Also did some menu graphics and stuff.  I've fixed bounce detection for the most part, but due to how I'm detecting corners, sometimes the ball will destroy the brick without bouncing.  It's less buggy than it was, though.  So I just need to add a winning condition, which should be easy since I already have high scores in place.  
Title: Re: Devlog: Bricker
Post by: Tireas Dragon on January 18, 2011, 10:22:40 PM
I am not having as much progress as I still don't even have a first level. I want to get the editor finished but I am still trying to finish power ups. Boy, if only I wasn't kept from working so long. I am probably not gonna have a finished game in time.
Title: Re: Devlog: Bricker
Post by: Charlo on January 20, 2011, 06:50:54 PM
In case people didn't see my post in the GMG cup thread, here's the download for the finished game:

http://www.mediafire.com/?sujnj1o1i0y705d