Posts

Copy to Clipboard (PGN/FEN)

Image
Version 1.2.9 of Chess for Android will enable users to export a game to another application, such as an editor, email, or another chess program:

copy all moves to the clipboard as PGN (Portable Game Notation)
copy the position to the clipboard as FEN (Forsyth–Edwards Notation)

To use these options, long-press anywhere in the move list area. Then, the following menu appears.


Select one, then exit the chess application and go to the application where you want to paste the game. For example, I picked Copy Moves as PGN and went to messaging and long-pressed the text area.


Then Paste the contents of the clipboard into the message, and the game appears in PGN format (note that, for convenience, I use a slightly more elaborate algebraic chess notation than strictly required; readers should still accept that format though).


Likewise, using Copy Position as FEN, the contents would look as follows.

Opening Book

Image
I added an opening book to Chess for Android. The opening book is small (slightly over 150 opening lines) and simple (transpositions are not recognized, unless the line is explicitly stored). Nevertheless, since the engine picks a matching line at random during the opening, the variety of play will increase. Version v1.2.8 (and onwards) supports the opening book, as well as a new copy-to-clipboard feature (more about that later).

While still in an opening line, the message "opening" appears at the position that usually shows the engine evaluation, as shown below.

One Star Ratings

I don't mind constructive criticism. Really, I don't. But take two recent one-star reviews for Chess for Android:

Stupid cant start a new game after youve lost
greg Fri, Mar 12 01:31:00 UTC 2010

This game cheats. Pawns shouldnt be able to capture pieces next to them and then move diagonally.
Eyal Wed, Mar 10 02:35:00 UTC 2010

Really, my game gets one star because you cannot find the menu button on your own phone, or because you don't know the en-passant rule (see also previous posting)? Please, if you don't like the game for a good reason, by all means give one star. But this?

Too Many Updates?!

While browsing through some recent comments posted on the Android market, I was surprised to read that some users complain that I am pushing too many updates. I usually work on these games in spurts, i.e. a lot of improvements in a short time followed by a period of relative quiet. Another problem is that the Android market does not enable me to push updates to specific platforms or builds only. So, for example, when I fix a bug for Android 1.1, some users will not see a change, but others may be happy to receive an update. Last, the Android market does not support a good way to show revision history.

Luckily not all users feel that way, as reflected in the comment:

Updates are a pain? Really? its wonderful when developers continually work on their FREE app to improve it. Be thankful not frustrated.
Vin Fri, Feb 12 11:47:00 PST 2010

Thanks Vin!

Android 1.1 Bug Fix

I always test new releases on emulators for Android 1.5 and higher (api 3 and up), for various screen sizes and other settings, as well as on the two actual Android devices that I have. However, I found out there was a bug on Android 1.1 (api 2), which I fixed in the latest releases of Chess, Checkers, and Reversi for Android. Users with an "older" phone that have never updated to more recent builds may have experienced problems (apologies for that!). The games should work again for all platforms. Needless to say, I added the Android 1.1 emulator to my mandatory release criteria.

Explanation of Levels

Image
Since I just got some questions on the different levels in my Android games, I hope the following posting on this topic is helpful.

To change the level in either Chess, Checkers, or Reversi for Android, first press the Menu button on your phone, then pick the Level option, which gives you something that looks like the following screenshot.



Then select any of these levels. Here, Free Play means that the game engine will never compute a reply. Instead, the phone can be used as a "magnetic board" to study games or play a game up to a position for further play with the engine. In Random, the engine will instantaneously pick a valid next move at random. Pick this level if you like to win! The next Level 1 through Level 5 select different normal playing levels, increasing in both strength as well as time taken by the engine to compute its next move.

Finally, Chess for Android also has an Auto Play option where the engine plays against itself. After selecting this level, either make a…

Chess for Android Update

Image
I just released a new version of Chess for Android that, like the previous updates of the other games, improves the text size on larger screens. On the Nexus One, for example, the notation window in previous versions was barely readable. This is now hopefully resolved for all current phones.

Next planned updates consist of adding a small opening book and an option to export a game to some external format.

More Updates

Image
I just released new versions of Checkers and Reversi for Android that improve the text size on larger screens. The reversi application now also uses a randomized opening for variety of play (see below).

Checkers for Android Update

Image
I just released v1.2.2 of Checkers for Android with the following improvements:

+ improved endgame play
+ randomized opening for variety
+ announces win/loss

The latter feature is illustrated in the screenshot below. Please let me know if you encounter any issues with the new features.

Miscellaneous Updates

Just a few unrelated updates.

First, the Android App Review Source website posted a brief online interview with me on developing Android applications.

Also, version 2.01 of BikJump ended at second place in the CCC 17th Amateur Series (Division 8), which opens the possibility of promotion to a higher division. Many thanks to Graham Banks for running this tournament!

Finally, Martin Fierz published Checkers Tutor for Android, a strong checkers program for Android.