Rip Van Winkle
This Java applet is based on a puzzle created by 19th century puzzle author Sam Loyd. You and the computer take alternate turns to knock down either a single skittle or two skittles immediately next to each other. The winner is the first player to leave no skittles standing. The first level recreates the starting line up in Loyd's original puzzle; subsequent levels are variations on this. The are seven levels to win it. The riddle is whether you can win at all seven levels. Best of luck.
Java Source Code
MinimaxAlphaBeta.java | An abstract class for any board game wishing to use the Minimax algorithm. It uses the Alpha-beta algorithm to speed up searches. |
RipVanWinkleApplet.java | Provides the puzzle's user interface. |
RipVanWinkleBoard.java | An abstract class that maintains the row of skittles but does not deal with their layout on the screen. Subclasses can then implement their own layout, in this case straight line. |
RipVanWinkleBoardClassic.java | Extends the RipVanWinkleBoard class to lay the pins out in a straight line. |
Complete source (5kb, zipped)
This applet was created using Eclipse.