Login
Newsletter
Werbung

Sa, 7. Februar 2004, 00:00

Schachbrett-Programme unter Linux

Vorwort

In diesem Artikel wird eine Übersicht über Schachbrett-Programme unter Linux gegeben. Ein Schachbrett-Programm stellt ein Schachbrett grafisch dar, kann aber nicht selbst Züge berechnen. Xboard ist der Klassiker dieser Kategorie.

Somit taugt das Schachbrett eigentlich nur, um zwei menschliche Spieler am Computer spielen zu lassen. Nicht sehr sinnvoll, sollte man meinen. Doch weit gefehlt: Es gibt ein Protokoll, bezeichnenderweise Xboard-Protokoll genannt, über den Schach-Engines mit Schachbrett-Programmen kommunizieren können. Die Figuren bewegen sich anhand der Züge, die die Engine berechnet, die Zeitmessung wird erledigt usw. Mit diesem Feature können Menschen gegen Schachprogramme spielen, oder auch zwei Schachprogramme gegeneinander. Ich könnte mir sogar vorstellen, daß man ein Schachbrett, auf dem zwei Engines gegeneinander Blitzschach spielen, als Bildschirmschoner installiert. Die Einbindung der Schachprogramme erfolgt auf einfache Weise, bei allen Schachbrettern außer Xboard mit einem Konfigurations-Dialog.

Ein weiteres Feature, das von vielen Schachbrettern unterstützt wird, ist das Online-Schach. Hierbei verbindet man sich über das ICS-Protokoll (Internet Chess Server) mit einem Server. Dann kann man Partien gegen andere Online-Benutzer spielen, gelegentlich auch gegen Schachprogramme.

Die verfügbaren Programme

Xboard 4.2.7

Xboard

hjb

Xboard

Xboard merkt man sein Alter an. Es ist mit den Athena Widgets geschrieben. Aber hier geht Funktionalität vor Optik. Wobei man zumindest zugestehen muß, daß die Figuren sehr gut aussehen. Sie könnten in einem Schachbuch für Profis nicht besser sein.

Wer Xboard aus den Quellen compilieren will, kann dies problemlos mit den üblichen Kommandos ./configure; make; make install tun.

Startet man Xboard ohne Argumente, wird man sehr wahrscheinlich einen Fehler erhalten, weil standardmäßig GNU Chess als Engine konfiguriert ist. Mit der Option -ncp kann man das umgehen.

Außerdem ist das Board riesig und kann nicht dynamisch verändert werden. Dazu benötigt man die Option -size und eine Angabe wie Huge, Small oder dergleichen. Nur das Lesen der Manpage fördert diese Option zutage. Damit ist Xboard eines der am wenigsten benutzerfreundlichen Programme, die ich kenne.

Natürlich unterstützt Xboard das Online-Schach. Dazu muß man es mit der Option -ics starten. Weitere relevante Optionen werden in der Manpage aufgeführt.

Während ich längst nicht alle Features von Xboard getestet habe, war es problemlos, zwei Schachprogramme gegeneinander spielen zu lassen. Das ist nur mit der Kommandozeile möglich, beispielsweise:

xboard -fcp crafty -scp phalanx -size large -tc 30

Wählt man dann im Menü Mode die Option Two Machines, startet Xboard beide Programme, und das Match beginnt. Mit der Option -tc 30 hat jeder Kontrahent 30 Minuten Bedenkzeit für jeweils 40 Züge. Die Programme crafty und phalanx müssen im Suchpfad (PATH) zu finden sein.

Xboard läßt sich noch ein bißchen aufwerten:

  • Bei Thomas Katsampes gibt es drei alternative Sätze von Spielfiguren.
  • Die Erweiterung dboard ist interessant, wenn man sich mit einem Schachserver verbindet. So erhält man Spieler- und Spielelisten, Befehlshistory usw.

Weiteres erfährt man (natürlich) auf der Xboard-Homepage. In jüngster Zeit hat die Entwicklung von Xboard wieder Fahrt aufgenommen. Das Programm ist jetzt als Savannah-Projekt eingetragen.

JChessBoard 1.3.2

JChessBoard

hjb

JChessBoard

JChessBoard kommt mit einem vorgefertigten JAR-File, das man einfach mit jre -jar JChessBoard.jar oder java -jar JChessBoard.jar starten kann. Leider meldete sich nach dem Aufruf ein jre in Version 1.1.8 und war der Ansicht, daß die Option -jar ungültig sei. Da ich JDK 1.3 installiert hatte, rief ich das Board schließlich folgendermaßen auf (man muß dazu im Installationsverzeichnis von JChessBoard sein):

/usr/local/jdk1.3.0_02/jre/bin/java -jar JChessBoard.jar

JChessBoard enthält eine einfache Schach-Engine für ein kleines Übungsspiel. Außerdem kann es über einen Menüpunkt Connect Verbindung zu einem anderen JChessBoard aufnehmen. Dies funktioniert auch, wenn der Rechner, zu dem verbunden wird, localhost ist. In diesem Fall öffnet sich nach dem Connect ein zweites Fenster mit dem Schachbrett. Leider kann man in diesem Fall nicht die beiden Schach-Engines gegeneinander spielen lassen. Weitere Features hat JChessBoard leider auch nicht.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung