## Information

DroidFish ist ein Schachprogramm mit vielfältigen Funktionen und der sehr spielstarken Schach-Engine Stockfish.

A full manual is available here (html) and here (pdf).

### Funktionen

- Eröffnungsbuch
- Unbegrenzte Rücknahme und Wiederholung
- Kopieren und Einfügen über die Zwischenablage
- Analyse-Modus
- Zwei-Spieler-Modus
- Computer-gegen-Computer-Modus
- Stellungseingabe
- Umfangreiche PGN-Unterstützung
- Einstellbare Spielstärke
- Unterstützung für UCI-Engines von Drittanbietern
- Nutzung von Gaviota-Endspieldatenbanken
- Nutzung von Syzygy-Endspieldatenbanken

### Hinweise

- Langes Drücken auf die Links- und Rechts-Schaltflächen aktiviert zusätzliche Kommandos zur Navigation.
- Beim Nachspielen einer Partie ermöglicht der Spielmodus Partie bearbeiten/ nachspielen das Zurücknehmen und Wiederholen von Halbzügen.

### Eröffnungsbücher

DroidFish enthält ein kleines internes Eröffnungsbuch. Wenn Sie ein größeres Eröffnungsbuch verwenden möchten, können Sie die Verwendung externer Eröffnungsbücher (Polyglot oder CTG) wie folgt konfigurieren:

1. Kopieren Sie eine oder mehrere Polyglot-Eröffnungsbuch-Dateien in das Verzeichnis DroidFish/book auf der SD-Karte. Diese müssen die Dateiendung .bin aufweisen. Beachten Sie dabei bitte, dass das Android-Dateisystem zwischen Groß- und Kleinbuchstaben unterscheidet. Die Datei muss also mit .bin enden, nicht mit .Bin oder .BIN.
2. Kopieren Sie eine oder mehrere CTG-Eröffnungsbuch-Dateien in das Verzeichnis DroidFish/book auf der SD-Karte. Diese bestehen aus drei Dateien mit den Endungen .ctg, .ctb und .cto. Sie müssen alle drei Dateien kopieren.
3. Aktivieren Sie im Programm-Menü die Funktion Eröffnungsbuch auswählen.
4. Wählen Sie das Eröffnungsbuch aus, das Sie verwenden möchten.

### PGN-Dateien

DroidFish kann Partien aus PGN-Dateien laden.

1. Kopieren Sie eine oder mehrere PGN-Dateien in das Verzeichnis DroidFish/pgn auf der SD-Karte.
2. Drücken Sie lange auf das Spielfeld und aktivieren Sie im darauf folgenden Menü den Punkt Datei sowie anschließend die Funktion Partie aus einer PGN-Datei laden.
3. Wählen Sie die Datei und danach innerhalb der Datei die Partie aus, die Sie laden möchten.

Um Partie-Informationen wie die Spielernamen zu ändern, drücken Sie lange auf die Zugliste und wählen Informationen. Um Kommentare für einen Zug zu bearbeiten, drücken Sie lange auf die Zugliste und wählen Kommentare.

Um eine veränderte Partie zu speichern, drücken Sie lange auf das Spielfeld. Im darauf folgenden Menü aktivieren Sie den Punkt Datei sowie anschließend die Funktion Partie in eine PGN-Datei speichern. Wählen Sie danach die Datei und innerhalb der Datei die Position aus, an der die neue Partie gespeichert werden soll.

Hinweis: Wenn das Programm OI File Manager installiert ist, kann jedes Verzeichnis zum Laden und Speichern von Partien verwendet werden.

Um die Computer-Analyse zum Spielbaum hinzuzufügen, drücken Sie auf die Analyse-Informationen, während der Computer rechnet, und wählen Analyse hinzufügen. Die aktuelle Hauptvariante wird dann als Variante zum Spielbaum hinzugefügt.

Im Analyse-Modus ist es möglich, Null-Züge zum Spielbaum hinzuzufügen. Denken Sie aber daran, dass Null-Züge nicht Teil des PGN-Standards sind und möglicherweise nicht in anderen Programmen mit PGN-Unterstützung funktionieren.

### Scid-Dateien

Wenn Sie das Programm Scid on the go installiert haben, können Sie in DroidFish Scid-Datenbank-Dateien direkt einlesen. Drücken Sie dazu lange auf das Spielfeld und wählen Sie die Funktion Partie aus einer Scid-Datei laden.

### FEN/EPD-Dateien

DroidFish kann Positionen aus FEN/EPD-Dateien laden.

1. Kopieren Sie eine oder mehere FEN/EPD-Dateien in das Verzeichnis DroidFish/epd auf der SD-Karte.
2. Drücken Sie lange auf das Spielfeld. Im darauf folgenden Menü aktivieren Sie den Punkt Datei sowie anschließend die Funktion Position aus Datei laden.
3. Wählen Sie die Datei und danach innerhalb der Datei die Position aus, die Sie laden möchten.

Sie können Positionen auch von anderen Programmen laden, zum Beispiel ChessOcr (kostenpflichtig). Mit diesem Programm ist es möglich, ein Foto eines Schach-Diagramms aufzunehmen und die Stellung automatisch nach DroidFish zu übernehmen.

1. Drücken Sie lange auf das Spielfeld und wählen Sie im darauf folgenden Menü den Punkt Position auslesen.
2. Folgen Sie den Anweisungen des externen Programms.

### UCI-Engines

DroidFish kann UCI-Engines von Drittanbietern einbinden.

1. Kopieren Sie eine oder mehrere UCI-Engines als ausführbare Dateien in das Verzeichnis DroidFish/uci auf der SD-Karte. Hinweis: Die ausführbaren Dateien müssen für Android kompiliert worden sein.
2. Wählen Sie aus dem Programm-Menü Schach-Engines verwalten und anschließend Schach-Engine auswählen. Wählen Sie dann die zu verwendende Engine aus.

### UCI-Engines auf einem Netzserver

DroidFish kann UCI-Engines einbinden, die auf Netzservern laufen.

1. Installieren Sie ein Schach-Netzwerk-Serverprogramm auf dem Netzserver.
   1. Für Windows installieren Sie das Serverprogramm von der DroidFish-Seite.
   2. Für Linux kann `mini-inetd` aus dem Paket `tcputils` verwendet werden.
2. Wählen Sie Schach-Engines verwalten aus dem Programm-Menü aus. Erstellen Sie eine neue Netzserver-Engine und geben den Hostnamen sowie den Port des Netzservers an.
3. Wählen Sie aus dem Programm-Menü Schach-Engines verwalten und anschließend Schach-Engine auswählen. Wählen Sie dann die zu verwendende Engine aus.

### Gaviota-Endspieldatenbanken

Die Nutzung von Gaviota-Endspieldatenbanken ist folgendermaßen möglich:

1. Kopieren Sie die entsprechenden GTB-Dateien in das Verzeichnis DroidFish/gtb auf der SD-Karte.
2. Konfigurieren Sie die Nutzung der Endspiel-Datenbanken mit Hilfe der entsprechenden Optionen im Menü Einstellungen.

### Syzygy-Endspieldatenbanken

Zur Nutzung von Syzygy-Endspieldatenbanken gehen Sie wie folgt vor:

1. Kopieren Sie die entsprechenden RTBW-Dateien, und optional die RTBZ-Dateien, in das Verzeichnis DroidFish/rtb auf der SD-Karte.
2. Konfigurieren Sie die Nutzung der Endspiel-Datenbanken mit Hilfe der entsprechenden Optionen im Menü Einstellungen.

### Lizenz

GNU GPL v3. Der Quellcode ist bei GitHub verfügbar.

### Entwickler

- DroidFish wird entwickelt von Peter Österlund.
- Das Schachprogramm Stockfish wird entwickelt von Tord Romstad, Marco Costalba, Gary Linscott und Joona Kiiski.
- Von Aaro Korhonen stammen Verbesserungen der Benutzeroberfläche.
- Gaviota-Datenbank-API: Copyright © 2010 Miguel A. Ballicora.
  - LZMA-Datenkomprimierung: Igor Pavlov.
  - ZLIB-Datenkomprimierung, Copyright © 1995-2005 Jean-loup Gailly und Mark Adler.
  - LZF-Datenkomprimierung, Copyright © 2000-2007 Marc Alexander Lehmann.
- Die SVG-Darstellung kommt vom Projekt androidsvg.
- Die Figurensätze stammen vom PyChess-Projekt.
- Color picker, Copyright © 2010 Daniel Nilsson sowie Copyright © 2011 Sergey Margaritov.
- Die Implementierung der Open-Exchange-Schnittstelle für Chess Engines erfolgte durch Gerhard Kalab (Apache 2.0 license).
- Quellcode zum Zugriff auf Syzygy-Endspieldatenbanken, Copyright © 2011-2013 Ronald de Man.
- TourGuide-Biobliothek, Copyright © 2015 Tan Jun Rong.
- Floating action button-Bibliothek, Copyright © 2014 str4d und Jerzy Chalupski.
- cpu_features library, Copyright © 2017 Google Inc., Apache 2.0 license.

### Lokalisierung

Die Übersetzungen erfolgen mit Hilfe von crowdin.net.

- Die deutsche Übersetzung erfolgte durch Uwe Walschus und Christoph Heilmann.
- Die spanische Übersetzung erfolgte durch Amador Cuesta.
- Die russische Übersetzung erfolgte durch SWEN и dfuk (allBlackBerry).
- Die portugiesische Übersetzung erfolgte durch C. R. Zamana.
- Die französische Übersetzung erfolgte durch Eric Weibel (Thanvillé).
- Die italienische Übersetzung erfolgte durch Michele Carfora (suessola).
- Die niederländische Übersetzung erfolgte durch David Pront.
- Die polnische Übersetzung erfolgte durch Rafał Smyka.
- Die ukrainische Übersetzung erfolgte durch Mix Gerder und Toru Hasegawa.
- Die belarussische Übersetzung erfolgte durch Mix Gerder.
- Die koreanische Übersetzung erfolgte durch Hyobeom Ahn.
- Die türkische Übersetzung erfolgte durch Emrullah Ertürk.