Jarbles

Unfortunately Java applets died in 2018. Plugin systems such as NPAPI introduce complexity and security problems so browser vendors (including Mozilla and Google) have taken aggressive steps to eliminate them. This is understandable but also frustrating. JavaScript has been better way to deliver web applications for quite some time but not everyone has the time or resources to rewrite everything every ten years. Many useful web resources are now practically unavailable due to short sighted vendor practices (mainly I mean making plugins available in the first place, but to a lesser extent because they were withdrawn).

Jarbles itself isn't dead just yet: it's still possible to download the jar file and run it from a command line:

java -jar ripple.jar jarbles

Jarbles is an implementation of Abalone in Java. The program divides available space into three sections. The largest is the game board itself on the left. Clicking the start, end and target positions makes a move. The top right section is a move pane. A piece of the color which must make the next move is in the center. When something is selected on the board additional pieces will appear to indicate which directions are currently legal moves. Clicking one of these will make that move and might be more intuitive for some players. When one color wins the game, either by forcing six pieces off the board or running the opponent out of time, the center of the move pane will be empty and all other cells will show the winning color. Finally, on the bottom right is the score pane which shows all captured pieces as well as the current timers. The program has limited support for themes (there's an alternative theme called Aqua) and a simplistic computer opponent that uses alpha-beta pruning.

Jarbles determines the sizes of everything from pieces to text dynamically so it can scale smoothly. The board is made as large as possible within the given dimensions so the program is usable in most reasonable sizes. (When made small enough it becomes difficult to visually distinguish different cells and eventually individual pixes will cover more than one cell.)


Copyright © 2006-2018 by Jeff Gold. All rights reserved.