What is it?
Above is a screenshot of the pretty 2.5D Decachess-playing GUI. You can see more screenshots with thinking hints overlaid.
Hundred Square Chess, aka Decachess, as coined by SethK, is simply regular chess played on a 10x10 (hundred-square) chess board. The pieces start on the furthest ranks, and play in the center, leaving two files open on either side.
How Decachess Differs from Standard Chess
The overall position change and larger board changes strategy and piece scoring. Now knights seem to be less valuable, and bishops more valuable. Similarly to bishops, the queen seems she'd be more valuable.
There is some argument to be made that leaving the opponents' pawns in place hampers their movement more, and so there might be a positional advantage in NOT taking a free pawn, if it's offered to you. In any case, it becomes very hard in the end-game to protect all your pawns if you've got several.
The advantage of castling is almost completely negated (you only do it in extraordinary circumstances). The Sjeng10x10 engine seems to've largely figured this out itself. It will sometimes castle, but only if it has ways of protecting that open file.
Perhaps opening move dictionaries are obsoleted with the larger board size, but after playing Owen at Digg a number of times, I am not certain of this. Owen has played a couple typical opening move sequences, and it seems to do his game well.
Playing Decachess Yourself
If you would like to play Decachess on Linux (SethK is working on an OS/X port), do this:
- Here's a precompiled Linux binary.
- Either download the Sjeng 10x10 Source Code with 2.5D GUI - 3.3MB - On Debian-based systems, you need gdbm-devel and SDL. After that, it will build fine.
- ...or Download the modified xboard10x10 that knows how to communicate with the Sjeng10x10 engine: Modified Xboard+Sjeng for Decachess - 1.5MB. You'll need X and Xaw development libs to compile xboard. Also, get the original xboard sources, because the "pixmap" and "bitmap" directories have been removed from this version, and you'll need them to see chess pieces. Then you need to modify the "runsj" script in the xboard10x10 script to point to your 10x10 Sjeng binary. Then run xboard by doing "cd xboard10x10 ; ./runsj". You can also choose deeper levels of thinking by doing "./runsj 9" for, eg, 9 levels of thought.
Installing the Pretty 2.5D GUI
You need SDL installed. On my Ubuntu (Debian) system, these are the libs I have installed:
libsdl-console (1.3-3)
libsdl-gfx1.2 (2.0.9-4)
libsdl-image1.2 (1.2.4-1)
libsdl-mixer1.2 (1.2.6-1.1)
libsdl-net1.2 (1.2.5-3)
libsdl-ttf2.0-0 (2.0.6-5)
libsdl1.2-dev (1.2.7+1.2.8cvs20041007-5.3ubuntu2)
libsdl1.2debian (1.2.7+1.2.8cvs20041007-5.3ubuntu2)
libsdl1.2debian-oss (1.2.7+1.2.8cvs20041007-5.3ubuntu2)
libsmpeg0c2 (0.4.5+cvs20030824-1.3)
I believe you install the libsdl1.2-debian and it'll install all the others as dependencies, but I'm not sure.
Digg vs. Skynet
There is a game of Decachess going on with DiggEmployeesVsTheComputer. If you want to follow the progress, follow that link.
Chess Engines
The Future GUI
The goal is a cartooney-artistic look. SethK had convinced me that we should try doing a highpoly 3D version first. However, I think I've given up on that. Rather, I modelled the pieces in 3D, created 16 views of each piece in various places on the board, and use simple transforms to get the remaining views of the piece.
To decide what a piece should look like that hasn't been rendered consider that each piece "controls" a space around it of (up to) 8 squares. I will probably create a rotation and stretch array for each piece defining what it should look like if it's placed in one of those other squares. Since most pieces aren't in true perspective, which a normal viewer will notice (probably subliminally), it looks cartooney.
Here's an AC3D export of the board plus pieces: http://faemalia.net/CoolStuff/allchesspieces.ac.gz
Here's the original .blend: http://faemalia.net/CoolStuff/cp.blend.bz2
I would like to have a couple of UI elements:
- When hovering over a piece, it grows by ~10% (configurable?)
- Ability to have straight top-down view of board with pieces not in perspective, lying on their sides, to mimic the 2D chessboard
- A mode where when you hover your mouse over a piece, it zooms in on that part of the board so you can see what's going on there
- A mode that shows the legal moves for the piece you're hovering over