Thursday, May 20, 2010

Android 2.2

I am excited that Android 2.2 (aka Froyo) has been announced at Google I/O. Especially the Dalvik JIT compiler directly benefits all my game engines with deeper search. And yes, the 5x improvement reported for checkers in the Android 2.2 highlights page refers to Checkers for Android!

Tuesday, May 18, 2010

Replay Buttons

I am working on extending Chess for Android with full replay buttons. This will remove the somewhat arbitrary restriction of only an 8 half-move undo. Furthemore, it allows replaying older saved games and experimenting with different continuations.



Here is already a quick preview of the new landscape and portrait layout I am planning to use. Early feedback welcome!

Friday, May 7, 2010

Loading and Saving Games

I added a much requested feature to Chess for Android: the ability to load and save games (other than just the one in progress). To use this feature, long-press anywhere in the notation window to get to a menu for exporting the game to clipboard as PGN or FEN or, the new feature, for loading and saving games as file.

As illustrated below, after pressing "Save Game to File", a pop-up window asks the user to pick a file. Initially files are empty, but after saving they get marked with the date and time of the last stored game. Simply pick a marked file to overwrite or pick an empty file, as done below for file 3. Loading a game is done in a similar manner.

Tuesday, May 4, 2010

Perft for Checkers (again)

Today I was prototyping a distributed worker pool at work which needed some test input, and this gave me a good excuse to compute perft for checkers for depth 21 (one deeper than results I posted a while back). The perft breakdown per move (called "divide") from the start position for depths 18 up to 21 is shown below.

move divide(18) divide(19) divide(20) divide(21)
-----------------------------------------------------------------
12-16: 550829166472 2517202147314 11531470109861 52945190026737
11-16: 566149929068 2564849953998 11736729175821 53527954221225
11-15: 435063007630 2041959240377 9515983205474 44775005468548
10-15: 472279451484 2180656975018 10055597639275 46574865098865
10-14: 402570639569 1859042884028 8600202424158 39822944739732
9-14: 441590753001 2068865301476 9698986164172 45530585259776
9-13: 625398758917 2881467090588 13406062152792 61923979665936
-----------------------------------------------------------------
3493881706141 16114043592799 74545030871553 345100524480819