Hello folks! Last few days I've been working on a new game in C: Ballz. The game is pretty much done, here's some preview:



The hardest pas is collision checking, which is still very funky sometimes. For example, if the ball hits a corner, it just passes through the tile, while it should properly bounce. I'm entirely not sure how to solve that, we will see...

Also, as you can see, the game gets a bit laggy if more and more balls are in the field, but I guess that's just because I draw many sprites. State saving and highscores are implemented, and stored in an appvar.

To-Do-List
  • (100%) Drawing map
  • (100%) Animate going down
  • (100%) Ask user input
  • (100%) Draw moving balls
  • (100%) Levels
  • (100%) Highscore
  • (100%) Saving
  • (60%) Collision checking
  • (0%) Yellow balls (purchase different color balls)
  • (0%) Block explode animation
  • (0%) Some sort of main menu
It appears to be a lot of fun!! Smile, and based on my review of the GitHub repo, the code isn't too bad; just make sure it follows the toolchain coding guidelines.

I look forward to seeing how the project develops!
This looks like a fun game! Something that could probably be ported to a mobile app maybe? Looking forward to playing this Smile

Alvajoy123 wrote:
the code isn't too bad

Actually it is but I won't say anything - someone needs to read the coding guidelines. Wink
This is looking very good, it looks like you've made some very impressive progress for those few days of work. I'm not sure if there's much you can do about the game slowing down with more balls on the field, unless you wanted to implement framerate-independent movement, which probably isn't worthwhile. I also don't consider myself qualified to review the code, so I'm not going to.

One optimization that did help a lot when I was working on games like Ace Recon and HailStorm was to not use the sin and cos functions every loop to calculate the new position of the projectile, but this line suggests that you've already done that.

A few minor suggestions:
- make the font more consistent
- don't use yellow in the todo list, it's very hard to read (orange is better)

Keep up the great work!
MateoConLechuga wrote:
This looks like a fun game! Something that could probably be ported to a mobile app maybe? Looking forward to playing this Smile

There is already a mobile app for this game, that's where I was inspired Razz

epsilon5 wrote:
- make the font more consistent

Where? I use the default graphx font for displaying all text, and a special font to display the (high)score, because otherwise I had to use enlarged numbers, which look more awful than my current solution.

Meanwhile I'm busy cleaning up the code a little bit, splitting it into more functions and less externs etc. Will keep you guys updated!
Well, I managed to cleanup my code a lot, using less globals and better header files. Check it out here: https://github.com/PeterTillema/BallzCE . The functionality isn't changed at all, maybe it's a little bit slower but no idea. Now it's time to fix the collission checking, which should be done properly, rather than my current hack!
This is looking very cool! I thought about porting this to the CE a while ago, but never actually said anything, so can't take credit Wink But in any case, I love the way it looks and feels, keep up the good work!

(Also, good on you for cleaning up your code.)
Thanks to darkwater, I implemented speeding up. Pressing [WINDOW] increases the speed, and you can do it at most 255 times (lol). Collision checking won't break, it just calls the function to move the balls twice. So no GUI update, but the balls are moving twice as fast!



Also, I've speed up the process of displaying balls, which should help a little bit, although in normal mode it can still be very slow (when there are >40 balls on the screen).
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement