Posts

Chess for Android as Client of a Chess Server

User PJ+ at the OpenChess forum implemented a nifty client utility that converts Chess for Android to a client for a remote chess server. To make this work (assuming you already have a remote chess server running at some hostname and port), simply do the following steps. Download the version of Chess for Android that grants network permission to its UCI clients (the default version at the market does not do this for obvious security reasons). Download PJ+'s client-android-cli utility. Construct a file, for example uci_client , that contains the single line ./client-android-cli <hostname > < port > for the hostname and port of the remote chess server. Copy 2. and 3. to SD card, then install these from SD just like the first-time install of UCI engines. Finally, the single line file uci_client can now be imported as any other UCI engine, and will connect to the remote chess server. I tried this method myself connecting Chess for Android as client to a remote c

Rotor on Android

Jan Brouwer ported his UCI engine Rotor  to Android. Below the results of a few matches against other engines on a Nexus One (1GHz Snapdragon), one second-per-move, 16MB hash, and Nalimov/Gaviota/Scorpio endgame tablebases on SD card. Rotor 0.6a - Stockfish 2.0           0.0 - 10.0    +0/-10/=0      0.00% Rotor 0.6a - Toga II 1.4.1SE         0.5 -  9.5    +0/-9/=1       5.00% Rotor 0.6a - gaviota v0.80.0.107     5.5 -  4.5    +5/-4/=1      55.00% Rotor 0.6a - GNU Chess 5.07.170.7b   7.0 -  3.0    +7/-3/=0      70.00% Rotor 0.6a - BikJump v2.1P          10.0 -  0.0    +10/-0/=0    100.00% Rotor 0.6a - ZCT-0.3.2500           10.0 -  0.0    +10/-0/=0    100.00%

Tablets are Coming!

Image
I don't have a tablet myself yet, but Roel from Belgium kindly emailed me this picture of Chess for Android running on a 7 inch tablet. As you can see, he was running an engine-engine match between UCI engines at the time. Thanks Roel!

Direct Downloads

Because not all Android devices support the Android Market yet, I decided to made my Android applications available as direct downloads: Chess for Android Checkers for Android Reversi for Android After the download completes, simply click the apk to start the install (make sure to check "unknown sources" under settings=>applications).

GNUChess Match on Android

Image
I ran an engine-engine match between Michel Van den Bergh's two latest GNUChess engines in Chess for Android , playing 100 games (50 fixed book opening lines from both sides) on a Nexus One (1GHz Snapdragon), one second-per-move, Hash 16MB, TB cache 8MB, complete 3- and 4-piece Gaviota endgame tablebases on SD card (only  5.07.170.7b  supports Gaviota).              1   GNU Chess 5.07.153.3b-32        +42/-33/=25 54.50%   54.5/100 2   GNU Chess 5.07.170.7b-libgtb-3  +33/-42/=25 45.50%   45.5/100

Auto Rotate Chess Pieces

Several folks who use Chess for Android to play against another human have requested a feature to auto rotate pieces towards the side to move, so that they can use the phone or tablet as a chess board without constantly having to pass the device around. I have added this feature and also made cautious steps towards some animation in the application. The following clip shows the results. Expect this feature in an update soon. Comments welcome. Auto Rotation Clip

Chess for Android 2.6

Image
Version 2.6 of Chess for Android adds some choices of board colors and piece sets. To change, press menu, then options, and select either board color or piece set. This brings up another dialog with the choices in colors or piece sets.

Improving Graphics

Image
I got a couple of requests to improve the graphics in Chess for Android, especially now that tablets are becoming more widespread. I found a public domain chess piece set that looks nice and increased the resolution of the wood texture (really just a picture of my coffee table!). I also added a few more board colors. This is how it looks now (click for the full resolution picture). And this is how it may look soon (again click for the full resolution picture). Comments welcome, of course.

Chess for Android 2.5.5

Image
Version 2.5.5 of Chess for Android introduces the following new features. Ability to save games to SD card. Games are appended in PGN format to file  /sdcard/games.pgn  on the SD card, so that users can examine these later, for example, in a chess application on the desktop. Ability to define common UCI engine options in a pop-up window: hash table size ELO strength restriction  endgame tablebases formats (Nalimov, Gaviota, or Scorpio) and cache size The options are populated with the engine's defaults.

Chess for Android 2.5.1

Version 2.5.1 of Chess for Android simplifies installing third party UCI engines quite a bit. Most importantly, it is no longer required to install the Android SDK in order to push binaries to the Android device. Instead, UCI engines can simply be copied to the SD card and, from there, installed into internal memory. A few important links: Updated instructions on installing UCI engines Chess for Android manual   List of UCI engines that can be imported   A big thank you to Michel Van den Bergh for inspiring me to simplify the installation process in Chess for Android!

Chess for Android 2.5

I just released version 2.5 of Chess for Android at the Android market. Besides a few minor improvements, this release introduces the ability to play engine-engine matches automatically. To perform a match: (1) Long-press, import UCI engine, and select primary engine (or skip this step to play against the built-in Java engine), (2) Long-press, engine-engine match, and select secondary engine to start the match. This will play 10 games from random openings at the moves-per-second level selected. During the match, current standing is displayed and engine analysis output is shown at the bottom of the window. Afterwards, the full match annotated with engine analysis is stored in a PGN file.

UCI Engines for Android

I have setup a webpage with  UCI engines for Android . Each entry is either a link to the engine's website, or a direct download of a binary that I compiled myself, posted with explicit permission of the engine authors. Please drop me an email if you know about other UCI engines that have been compiled "natively" for Android.

Engine-Engine Matches on Android

I am extending Chess for Android with a feature to run automatic engine-engine matches between UCI engines that have been "natively" compiled for Android. After importing two UCI engines, or using the built-in Java engine for one, a fixed number of games is played using random openings from the built-in book while allocating a fixed time per move. All games are saved in a "match.pgn" file, which can be used by another chess program, such as Arena or Chessbase. A Chessbase-generated cross-table for a 1-second-per-move tournament between some UCI engines compiled for Android is shown below. I hope to release this feature sometimes early in January.                  1          2          3          4          5 1 Stockfish 1.9  ********** 11½0100101 111111½111 1111111111 1111111111 35.0/40 2 Crab 1.0 beta  00½1011010 ********** 111½1½1111 1111111111 1111111111 33.5/40 3 GNU Chess 5.07 000000½000 000½0½0000 ********** ½½11111110 1111111111 19.5/40 4 BikJump v2.1

Racing during the Holidays

Image
The vacation just started, and Karina and her friend Ella are enjoying 50 lap races on our Carrera racetrack. Nice to see the difference between a year ago, when the girls crashed the cars most of the time, and now, when they actually understand braking before and accelerating in a curve. Still, lots of repairs to be done on the cars when this race is over. I like the Carrera Digital 132 race track. Cars have regular and braking lights, can switch lanes on designated lane change sections, and the speed, braking power, and fuel tank capacity can be set individually for each car. When cars run out of gas, lights are blinking as they slow down, and a visit to the pit stop is required first. Moreover, up to six cars can race together, or autonomous cars can be programmed to make racing harder while an electronic lap counter keeps track of interesting statistics.

Merry Christmas and a Happy New Year

Image
A merry Christmas and a happy 2011 for all my blog readers. In the picture, you see the snow covered city hall of my home town Gouda in the Netherlands. In "sunny" California we just get rain :-)