Posts Tagged ‘Chess’

Last Month in Knights

It’s almost a full month since the 2.2 release, and I’m proud to say there are some new features in your future favourite chess program.

The first thing I did was to add support for the different dialect of the XBoard protocol that is spoken by some engines. Knights now supports GnuChess, Crafty, Sjeng, Sloppy, Phalanx, Fruit, and probably many more which I didn’t test.

Another is the introduction of several protocol-dependent actions such as Undo-Redo, proposing Draws and Resigning.

Time control got some little love too, so you can specify either conventional Fischer-style timing or FICS-style incremental clock. I’m sure the usability of the dialog could be improved, I’d be grateful for any suggestions here.

There is also the oft-requested feature from eBoard: The Seek Graph. I used a KPlotWidget, much better than trying to figure out label placement by hand.

And last but not least, both chat and console interaction with the chess server

Unfortunately, due to lack of an exposed API, I could not use the Konsole widget for the console and had to come up with my own.

As usual, comments from any usability experts and/or chess player are welcome.

Knights in shining armor

Since there was some negative commentary about the looks of Knights in my previous post, I took the popular advice and used Plasma’s clock in Knights. And you were correct: it looks much more pleasing to the eye now. The Plasma guys know what they’re doing.

And here is a shot with the KDE default widget style and colors. The theme is a variation of the previous one, again from the XBoard program. It doesn’t really fit in either, I know.

This unfortunately introduces a new dependency: You need at least one Plasma theme, and those reside in kdebase-runtime-data. This should not be needed for a chess game, so I plan to add a check for a theme and fall back to the previous solution if none is found. As noted by Aaron in the comments, hard-depending on kdebase-runtime is fine. Thanks for clearing that up, and sorry for spreading FUD.

The second thing was the horrible white background. The easy solution is to use a dark theme, all programs looks better that way. Really, be sure to try it if you haven’t already. Unfortunately, this is not so good on laptops (at least not on mine) because it does not mix well with lower screen brightness. Anyway, the proper way to do it is to allow the theme to specify its own background. I’m no artist, so no themes have it yet, but adding a simple mono-color rectangle that matches the board colors can make a big difference. I did check it though, with an even more horrible blue rectangle, so I’m sure it works. You just don’t want to see my tests, believe me.

The third thing is a kde-styled theme. There are six themes available now, but most are copies from other program and none of them looks kde-ish. I have wrote to kde-artists, but got little response (only about using the Plasma clock, big thanks for that). So if anyone is interested in making a nice kde-theme set of chess pieces, you’re very welcome 🙂

Knights 2.1

Today I decided to release the next version of Knights 2, the KDE4 port/rewrite of Troy Corbin’s great chess program. For this release I have to thank Dave Kaye, who not only added, fixed and improved themes, but also bugged motivated me to support his new features in the code. Also, a thank you goes to Thomas Kamps and his rendered clock.

Markers and the XBoard theme

It can be downloaded from kde-apps or directly from Dropbox.

It took quite a lot of time to get here, because I had other obligations, but I hope you’ll be satisfied with the result. These are the main new features:

  • Support for playing on the Free Internet Chess Server
  • Markers on the board for legal moves, last opponent’s move and danger to your king
  • Graphical clock display
  • Several new fully-scalable themes
  • Some animation changes, now it’s also possible to animate the entire board.
  • Small fixes: victory dialogs, configuration icons, …

There have also been some more technical changes:

  • Port to KGameRenderer, which is now an optional compile-time dependency.
  • Changed element names in themes. Anyone interested in theming please take a look at some of the existing ones, for example the XBoard one.

Please test the new version, either against trunk (will use KGameRenderer) or with any other KDE version. The part about which I’m the most curious is playing on FICS, because I’m not a regular player there and don’t know what king of games are played there. Any input about it will be appreciated. If there aren’t any major flaws found, I will try to move to kdereview before 4.6 is released.

Share and Enjoy!

Knights and FICS

As of yesterday, Knights 2.0 is able to connect to freechess.org and play a complete game there. I committed to playground today, feel free to compile it from there.

I wasn’t able to test it completely, and the code is probably missing some error checking, as well as cleanup, but the functionality is there.

Screenshots follow soon, I hope.

Knights in the playground

Knights, the KDE 4 chess board, is now in KDE playground.

The code part is pretty much ready to be reviewed and released, however the default theme is only in the PNG format, while KDE’s themes are usually in the scalable SVG. This leaves some artifacts on the board, like black lines between tiles. As I’m far (very far) from being an artist, I’ll need some help there.

There have also been some changes since the last release on kde-apps.org, notably the introduction of clocks and time limits. I’m still unsure how to implement them for computer engines, to make them realize they have a limit and play accordingly. Also, I will have to include network play some time, and I don’t have any ideas about what to do with time limits there. I might just as well enable them for local play only.

I also just committed the change to use Knights’ old application icons. It looks nice, although it would fit in better with some more transparency.

=-=-=-=-=
Powered by Blogilo

KChess first beta released

I decided to release the first test version of KChess to the public.

http://kde-apps.org/content/show.php/KChess?content=122046

=-=-=-=-=
Powered by Blogilo

Castling and en-passant moves in KChess

I finally completed the code reqiured for these special move rules in KChess.

Next up in line: Pawn promotions, and two-player hotseat mode.

Introducing KChess

In KDE3, there was a great chess board program called Knights that could talk to Gnuchess, Crafty or almost any other chess engine with the XBoard protocol. Now, 2 years into KDE SC 4, there’s still no KDE4 eqiuvalent.

So I decided to write one. It’s qiute a simple task actually. A board, some pieces, moving them, and passing them to the engine to process is all there is to it. I made great progress in the last two month and the result is almost playable (castling and en passant still don’t work).

It is completely themable and supports the KDE Games standard .desktop and .svg files. However, the original artwork for Knights is in the raster png format which can’t be converted to vector graphics. Png files don’t scale as nicely, so I’m currently wondering whether to leave the theming to the artwork team or to include support for png files.