Compellingly Beautiful Software
Products Programming Contact
This is a game of deductive inference.
Your goal is to locate the five blue boxes hidden under the black buttons. The game ends when you find all five blue boxes and then explicitly tell the game that you are finished. If you want to guess which buttons contain the hidden blue boxes, simply click on them. If the button you click contains a blue box, that button turns blue.
But there's a catch: if the button you click does not contain a blue box, the button turns yellow and it costs you five points.
Of course, you'd like to be able to find these blue boxes without using sheer guesswork. That's what the gray buttons around the periphery are for. Click on a gray button, and it turns green. Also, an invisible (to you) beam of light is emitted straight away from the button. If the beam of light reaches the other side of the box, the button it strikes turns red. You can think of this as Green = Where It Starts and Red = Where It Stops. Whenever one of these peripheral buttons changes from gray to green or red, it costs you one point. The total number of points possible equals the number of gray peripheral buttons. You want to find all of the blue boxes using the least number of buttons.
If the beam of light runs straight into one of the blue boxes, it stops there and never reaches the other side. This helps you locate the blue boxes. But the beam of light interacts with the blue boxes in other ways, too. If the light approaches the corner of a blue box in an adjacent row or column, the beam is deflected away at 90 degrees. And if two blue boxes straddle the beam's path, the beam turns completely around and goes back where it came from. If this happens, the green start button turns red, because that's where the beam of light stopped.
There's one more subtle issue of light/button behavior: if a blue box is at the edge of the black region, clicking an edge button adjacent to it causes that edge button to turn green, as you would expect, with no corresponding red button appearing anywhere. But clicking a second edge button on either side of this green button causes that second button to turn red. That's because the beam couldn't escape the edge button and stopped there, trapped by the blue box off its corner.
Remember to click the finish button when you've found all five blue boxes. If you continue to click other buttons, you'll also continue to lose points.
Your score in the current game, the number of games you've played, and your average score are all displayed for you. For a single game, 20 is a really good score. For multiple games, keeping your average score positive can be quite a challenge.
This game is a Java applet, originally compiled for JDK/JRE 1.4.2. You may have to obtain a Java plugin for your browser before you can view and use it. No information of any kind is collected here.
This game was originally proposed to me by one of my web acquaintances, who sent me some code that he hoped I could improve. I didn't really do that: I redesigned the whole implementation from the ground up. The implementation you see here is factored into six classes: a JApplet subclass, a JPanel subclass containing 100 buttons, three subclasses of JButton, and a Photon class that provides the behavior of the beam of light. The entire solution is quite small.
When you're reading, remember that we use an effective Hungarian dialect here at brising.com.