Das Spiel Reversi (bzw. Othello) ist in der Datei reversi.py
implementiert. Neben den üblichen Methoden der Klasse Game
stellt die Klasse Reversi
die folgenden Attribute und Methoden bereit:
all_tiles
speichert die Felder des Spielbretts als Array von Zeichenketten der Länge eins zurück. Jede Zeichenkette enthält entweder ein Leerzeichen oder den Anfangsbuchstaben eines Spielernamens.count_discs(player, tiles)
liefert die Anzahl der Spielsteine des übergebenen Spielers zurück. Dabei werden nur die übergebenen Felder durchsucht, die das selbe Format haben müssen wie der Wert von all_tiles
.Definieren Sie eine Unterklasse ReversiPlayer
von PruningPlayer
, die die Methode eval_on_stop
mit einer für Reversi spezialisierten Implementierung überschreibt. Falls Sie Reversi nicht kennen, folgen Sie dabei den folgenden Grundsätzen:
Können Sie eine Bewertungsfunktion angeben, die besser ist als die zufällige Standard-Implementierung, die Sie überschreiben?