Croco – ein Tool zum Testen von Rätseln

Beispiel

Angenommen, man hat nebenstehendes Beispielrätsel von Hand erstellt und möchte dieses nun mit croco weiterverarbeiten. Dazu erstellt man sich zuerst einmal mit dem Befehl croco create starbattle -s 9 ein leeres Doppelsternrätsel des Größe 9x9. Die Ausgabe dieses Befehls lautet: croco: Wrote file 'starbattle.spf'.

Nun öffnet man mit einem Texteditor diese Datei. In der Datei findet man nach dem Schlüssel /puzzle ein leeres Rätselgitter:

/puzzle [
(+-+-+-+-+-+-+-+-+-+)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+ + + + + + + + + +)
(|                 |)
(+-+-+-+-+-+-+-+-+-+) ]

Hier kann man nun das selbsterstellte Rätsel eintragen und abspeichern:

/puzzle [
(+-+-+-+-+-+-+-+-+-+)
(| |       |   |   |)
(+ +-+-+-+-+ + +-+ +)
(|     |         | |)
(+ + + + + + +-+-+ +)
(|     |     | |   |)
(+ + + + +-+-+ + + +)
(|     | |     |   |)
(+ + + + + +-+-+ + +)
(|     | | |   |   |)
(+ + +-+ +-+ + +-+-+)
(|   | | |     |   |)
(+-+ + + + + +-+ + +)
(| | | | |   |     |)
(+ +-+ +-+ + +-+ + +)
(|   |   |     |   |)
(+ + + + + + + +-+-+)
(|   |   |         |)
(+-+-+-+-+-+-+-+-+-+) ]

Mit dem Befehl croco check starbattle.spf lässt sich nun das Rätsel auf Korrektheit überprüfen. Die Ausgabe lautet in diesem Fall:

starbattle.spf                          : Ambiguous. (0.0066s)

.*.*.....
......*.*
..*.*....
......*.*
*...*....
..*....*.
*....*...
...*...*.
.*...*...

..*.*....
......*.*
.*.*.....
......*.*
*...*....
..*....*.
*....*...
...*...*.
.*...*...

Ups, das Rätsel hat noch mehrere Lösungen. Zwei unterschiedliche Lösungen werden angezeigt, wobei bei der zweiten Lösung die Unterschiede zur ersten Lösung rot eingefärbt sind. Dadurch kann man das Problem leicht ausfindig machen und den Fehler korrigieren, beispielsweise wie folgt:

/puzzle [
(+-+-+-+-+-+-+-+-+-+)
(| |       |   |   |)
(+ +-+-+-+-+ + +-+ +)
(|     |         | |)
(+ + +-+ + + +-+-+ +)
(|   |       | |   |)
(+ + +-+ +-+-+ + + +)
(|     | |     |   |)
(+ + + + + +-+-+ + +)
(|     | | |   |   |)
(+ + +-+ +-+ + +-+-+)
(|   | | |     |   |)
(+-+ + + + + +-+ + +)
(| | | | |   |     |)
(+ +-+ +-+ + +-+ + +)
(|   |   |     |   |)
(+ + + + + + + +-+-+)
(|   |   |         |)
(+-+-+-+-+-+-+-+-+-+) ]

Damit erhält man die Ausgabe:

starbattle.spf                          : OK. (0.0065s)

..*.*....
......*.*
.*.*.....
......*.*
*...*....
..*....*.
*....*...
...*...*.
.*...*...

Nun ist das Rätsel eindeutig und wir können Aufgaben- und Lösungsdiagramm berechnen lassen, indem wir den Befehl croco ship starbattle.spf eingeben. Dieser Befehl erzeugt drei Dateien, Astarbattle.eps, Lstarbattle.eps und Tstarbattle.txt. Erstere ist das Aufgabendiagramm, zweitere das Lösungsdiagramm und drittere enthält Zusatzinformationen, in diesem Fall einfach nur Stars: 2.

Die beiden Diagramm-Dateien sind Postscript-Dateien, die mit entsprechenden Programmen weiterbearbeitet werden können. Beispielsweise können sie mit GIMP in ein anderes Grafikformat umgewandelt werden, etwa in PNG, wie das bei den beiden nachfolgenden Bildern geschehen ist:

 

Die Postscript-Dateien kann man aber mittels unseres Applets Teka-Teki auch direkt in eine Webseite einbinden: