Balls of Reaction

by Super Saiyan X
Balls of Reaction
These balls react more than your average balls, I'm sure.
ID:1180033
 
The balls, they're reacting. The balls are not inert.

Controls:

p - Pause
r - Restart / Reboot
+ (PLUS) and - (MINUS) - Zoom in and out, respectively.
Left mouse button - Click once to activate a blue ball, when the others hit, it'll start a chain reaction and transform them to blue balls as well.
Releases:


February 27, 2013 - Version 1.2
March 27, 2013 - Version 1.3
March 30, 2013 - Version 1.4
April 09, 2013 - Version 1.7:
Every time balls collide, sparkles will shoot off from the newly reacted ball - unreacted balls may collide with these and cause more reactions. There is also a concept of an 'endgame' now. 25 is the max level. Once you've finished that, that's it! It'll give you some more information about how well you did.



Report any bugs!
Special thanks to DarkCampainger and Kaiochao who helped me with physics, cause, I fail at physics.
I need some players to test this.

Around how many balls spawned does the game start to lag? The red counter in the right corner is how many balls are on the map.

I need to know, so I can like, either limit the amount of balls at something lower than 100, or improve the movement.

Does the Pause (p) function work properly?
The pause works as expected, nothing more or less. It actually pauses the game properly, no delay, no nothing, just pausing :)

I didn't experience lag, most likely it just a bit jumpy movement sometimes when going up 70 balls. I guess 100 is fine, but probably you could want to decrease the ratio at wich balls appear, i think it is 10 per second, probably decrease it by half, or 25%.

It looks great so far to be a proof of what can be done, I want to see this game in later realeases!
Oh cool, you finally released it. Pause seems to work fine here, too. It starts to slow down a little around 70 balls for me as well, but just slightly. If you wanted to optimize it more, you could look into quadtrees to minimize the collision searching, but it's probably fine so long as you don't want to go over 100 (plus, it could just be the drawing that's slowing it down).

My best is 16 balls left :D
I don't think the slowing down is from the collision, since it slows down before it has even a reason to do collision checking. I'm pretty sure it's just from the drawing, the actual window itself gets slow and responds badly while the map sometimes remains visually flawless.

(Did you ever report that bug with obounds?)
In response to Super Saiyan X
Hah, no, I forgot :P

I'll leave a sticky note on my desk to get to it this weekend, unless you want to. All I remember about it was how annoying it was to pin down...
All I remember was that deleting things while in a for() loop with obounds led to garbage collection errors, or something.
Alright, I've updated.
----------------------------------
February 27, 2013
Levels implemented.
Yellow value in parenthesis is the total number of balls.
Red is how many you've destroyed.
Blue is the amount you need to to advance.
Green value in the left corner is the level.
It'll advance after the last big circle goes poof.
If you didn't react with enough of the small circles, it'll go back to level 1, and you'll have to start over. This might be changed based on user feedback.

The circles all random colors now.

The background color was changed to a light pink. I found the other color to be too blinding. This can also change based on user feedback. I might provide a settings option, to eliminate random colors and choose both the background and ball color.
-------------------------------

There's no sense of end game right now. I think it's virtually unlimited...I'll add more stuff for that later. Mostly bug testing with the level stuff right now.
Oh, I've also unintentionally made the balls faster. This may or not be kept in. (Depending on user feedback).

Do you guys like the balls when they're faster?


Edit: Seems I also broke the formula for calculating the needed bawls. I'll fix that with a patch tomorrow.
This is a very addictive little game for me, I would love to play this on my Android Phone.