All About MiniChess

The term "minichess" is these days used by many as a generic term for chess-like games played on smaller boards. There are good descriptions of various minichess games here and here.

For our purposes, MiniChess is a specific cut-down variant of Speed Chess, designed to be extremely simple to learn, extremely quick for humans to play, and extremely easy for machines to play. How…extreme. This wiki is MiniChess central, and is intended to contain information on all things MiniChess.

Rules Of MinitChess

There are currently three variants of MiniChess that are treated on this site. The rules for the current variant, MinitChess, are given here.

An older variant, MiniChess 2009, is identical except that if a player has no legal move, they draw rather than losing. This makes the internal bookkeeping of programmatic players a bit more of a pain, and never happens in real games anyway. The name change is also probably beneficial in distinguishing MinitChess as described here from the broader category of minichess games.

An older variant, MiniChess 2007, is identical to MiniChess 2009 except that the bishop moves as a normal chess bishop. This makes the bishop fairly useless given the limited mobility of the MiniChess board and the two sides' bishops being stuck on opposite colors from each other and from the opposing king.

Note that MiniChess 2007 was covered by this ridiculous patent that expired in January 2013. The thing should never have been granted due to the huge amount of prior art, but there you go. One of my former students was forced to take his iPhone app that played MiniChess 2007 off the market after being threatened with legal action by the holder of this patent, who had licensed it to the maker of a competing program. (Since the student basically hadn't sold any, there was no plausible reason for expensive and risky legal action to invalidate the patent.) Later versions of MiniChess inadvertently work around the patent by changing the moves afforded the bishop.

The standard time controls for MiniChess are 5 minutes per side per game.

Online Play

The Internet MinitChess Server (IMCS) is currently running on port 3589. You can telnet there to play as a human, or have your program connect there to play; use the "help" command to find out how. This is all primitive and a bit fiddly, although it has been upgraded substantially over time.

  • IMCS is, of course, open source. See the IMCS GitHub page for source code information.

  • Max Goodman has written a client wrapper script to make it easier to connect computer MinitChess clients to IMCS. See the skirmish page at BartForge for source code and instructions.

  • Some sample C code from one of my players for connecting to IMCS directly and playing a game is here. Sample Java code is here. Javadoc is also provided. I can provide some sample Haskell code, but I suspect Haskellers are smart enough to figure it all out. :-)

  • For logs of all games played on IMCS, please see

History of MiniChess

MiniChess was created for Bart Massey's 2006 short course on adversary search taught during International Week at Fachhochschule Würzburg-Schweinfurt (FHWS) in Germany, and was taught again at FHWS April 2009. It was subsequently turned into a 10-week course at Portland State University. In 2011, Fachhochschule Würzburg-Schweinfurt became Hochschule für Angewante Wissenschaften Würzburg-Schweinfurt, but seems to have retained its old abbreviation.

December 2006FHWS3-day
Spring 2007PSU10-week
April 2009FHWS3-day
Spring 2009PSU10-week
April 2010FHWS5-day
Spring 2011PSU10-week
April 2012FHWS5-day
April 2013FHWS5-day
Spring 2013PSU10-week
April 2014FHWS5-day
April 2015FHWS5-day
Spring 2016PSU10-week
June 2016FHWS5-day

The students involved in all of these courses have had a major impact on MiniChess. There are too many to credit individually, but Bart is extremely grateful to all of them for their insights, improvements and hard work.

Computer MiniChess Tournaments

There have been Computer MiniChess tournaments at the end of each of the course offerings described above. The contestants and winners should be listed here, but Bart is too lazy to look them up.

Computer Play Tutorial

Bart has written a tutorial on how to do adversary search, in the form of instructions on how to build a MiniChess player.

XBoard patches

In May 2009 Bart submitted patches to XBoard 4.2.7 to enable it for MiniChess 2007 and 2009. However, the XBoard folks were in the middle of a huge XBoard / Winboard merge and update. By the time things had settled down, Bart had lost interest. It would be nice for somebody to try a patch against current sources.

  • MiniChess 2007 patch
  • MiniChess 2009 patch (requires previous patch)
  • XBoard 4.2.7 for Minichess tarball (patched with above patches)