Okay this is my first entry for java4k comp. First, really first ever.

If you ever look up HTML5 demo there's a game called Chain Reaction. And this one is remake of it, with more rules but less difficult. And different name.

All you have to do is just choose a point and start making a growing ball. React all balls by make them collide to an exactly same level of reacted ball (same color)or to a reacting ball for white ball. A reacted ball can increase its level by one by causing one reaction on other balls (white or same level one).

Fact: I didn't compress it with anything, just jar and shrinked 40% to 3kB. There's still lot of bytes left. I'm still looking for creating procedural sound to add. I tried Synth4k but it won't compile. Further all, I hope I can reach 1,000 downloads at comp's end.

I am completely confused on how to play. Plus I think there are rendering issues where the screen doesn't refresh at all. There was nothing going on until i scrolled the page and some little green particles moved a bit.

I don't see the point of this game too I confirm the problem with the game. The white ball move but when I continusly scroll down/up, the yellow/blue ball grow far quickly. On level2, the movement of some white ball was not stable too.

Thx for replies. I'd blame myself if everything went well on my first try

@ra4kingthe gameplay is quite creepy, you click anywhere to start the first growing ball to make chain reaction.

@Bonbon-Channot stable? every ball has different dx and dy speed. I don't know why scroll up/down would do something to the applet if you mean blinking, yes it happens when you scroll the webpage but I can't solve it.

No we mean that the applet itself doesn't do anything unless we scroll/resize the window/minimize and maximize, which is the sign of system-triggered repainting. This means you are not calling repaint() every frame.

What? no animation? I tested it on my windows which has jre1.7 (default) and jre1.6. I tested it on eclipse which I set to use jre1.6. Everything work as should. Sorry but I think the problem not on code.

However there're 3 ppl reporting same problem. If the applet really works only on me, then how can it be approved and how about the mad of 200 ppl out there?

+ra4kingthanks for still reporting. what did you mean by "looks like"? To play you go click anywhere you like to start reaction, that simple. How about your fps? I got 65-80 here depends on ball counts.

Nothing happening here either after the first dot has been place. ~700FPS. It seems like ppl w high FPS have less action. Makes me wonder if it could be a problem with a timebased movement. Could it be that your delta tick get so small that you round it off to 0 and therefore no movement is done? Just an idea.

Yep I was suspecting the same thing as jojoh and that suspicion has been confirmed: I went on my old laptop which ran the game at 100-150FPS and the balls were moving fast and I could see collisions and reactions. #1 rule of any physics game is a steady FPS so it should be fine if you limit it at 60FPS.

It played well for me. I'm on Windows XP Home, using Firefox 8.0. Once or twice the screen got a little weird, for example when clicking on it and then moving down to see the instructions. I'm not sure exactly what I did. But only a portion of the screen would animate. This went away a soon as I reloaded.

It took a long time for the Level 20 to succeed. I felt like there was a lot of luck involved, that there was little I could do to affect the outcome. It was fun to watch the chain reactions.

One suggestion is to allow the last explosion to complete before moving on to the next level. The levels seem to end so abruptly. If the explosion is allowed to play out, one has time to glance at the various scores before they get cleared/set back to zero.

I didn't have my headphones on. Was there sound? (Checking. Nothing there.) This could really use some nice sounds for the collisions and pops, nice musical tones. How much room do you have left? Ahh, this is a 4K competition.

"We all secretly believe we are right about everything and, by extension, we are all wrong." W. Storr, The Unpersuadables

For weird screen, I find small glitch on it. However until now I can't find the problem. I have double buffering by simply create a bufferimage before drawed to container's. Should I try using canvas? or has it something to do with renderinghints for anti-alias? I'll check it out.

Yes it really needs luck. The original also. I played CR for many times and realised that skill has nothing to do here For tips, start your first ball on empty place so it can grow to max.

Thanks for the suggestion. Current level change is trigerred by last ball removal. Will change it to last particle out.

No sound for now. It only 3K without proguard, just simply jar. I save so many bytes for sound. Still can't find any good sound for growing ball. It shouldn't creepy because we have to hear it soooo many times. I created one with sfxr but it has 23KB

The collision/creation of sphere could be bell-like, maybe a little crystalline sounding. (I am partial to windchimes, after all.) It should have a crisp start, then fade to a low level until the pop. (Or a slight increase in volume before the pop.) The pop could be a second cue, started as the bell is turned off.

If you could vary the rate of playback of a single bell-like cue, you could get many different pitches, creating a very colorful mass of sound.

I can think of a couple different approaches to coding this, but not in 4k! and not before 2012. I made a variant of the Java Clip that allows multiple playbacks, concurrently, AND pitch variation. If you can find a way to adapt the code, you are welcome to it.http://www.java-gaming.org/topics/audiomixer/24999/msg/214001/view.html#msg214001You'd probably want to eliminate the stereo, use a cheaper audio resolution, and you'd have to handle going directly to a SourceDataLine output rather than to the AudioMixer output.

Anyway, your game is fascinating to watch, and not every game has to be for brainiac strategizers. There is a definite nice, artistic "generative" aspect that I like a lot.

"We all secretly believe we are right about everything and, by extension, we are all wrong." W. Storr, The Unpersuadables

Anyway, your game is fascinating to watch, and not every game has to be for brainiac strategizers. There is a definite nice, artistic "generative" aspect that I like a lot.

Thanks, that encourages me a lot especially after I feel not success on LD22 yesterday.

Quote

I can think of a couple different approaches to coding this, but not in 4k! and not before 2012. I made a variant of the Java Clip that allows multiple playbacks, concurrently, AND pitch variation. If you can find a way to adapt the code, you are welcome to it.http://www.java-gaming.org/topics/audiomixer/24999/msg/214001/view.html#msg214001You'd probably want to eliminate the stereo, use a cheaper audio resolution, and you'd have to handle going directly to a SourceDataLine output rather than to the AudioMixer output.

Difficult to write a better comment than philfrei's one, who shared a lot of my feelings about your game. My first thought was that it would fit well in some interactive exibition of modern art...

But I persisted, and when I understood how it worked, I passed the first levels without too much difficulty. Then, I literally flew over level 5 to 19, but I had to restart many times level 20 before winning. At this point, it seemed that I was playing to some kind of new age casino game, as I had the feeling I didn't control anything.

I also searched and played to the HTML5 original game, and found your remake almost as good. A better feature of the original game, is that it anticipates sooner when the game is lost. Thus the rythm of the game seems better.

Interesting work anyway, as I didn't feel as I was wasting entirely my time !

Still haven't find a way to fit sound into 4KB. However I did update on gameplay. Now you can choose between two modes, original or skill. Skill mode is same, except - higher number of balls to pass- balls don't bounce on wall hit, but translated to opposite wall- you can click any small ball to change its direction randomly (either change dx or dy)

@ra4king:I also change the sleep value as you suggested, and it works like charm!

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org