Lektions Generator Hilfe
Mit dem Lektionsgenerator können Sie ihre eigenen Schachlektionen gestalten und einschicken. Damit helfen Sie anderen Schachspielern ihr Können zu verbessern. Die Lektionen können später in der online Version unserer Seite mit dem Chess Teacher Applet abgespielt werden.
Eine Lektion hat die Form einer reinen Textdatei, in der die Anweisungen zeilenweise aufgeführt sind. Eine Anweisung besteht aus einem Befehl in spitzen Klammern und den direkt nachfolgenden Parametern (Beispiel:
<reset>newgame). Es gibt insgesamt 8 verschiedene Befehle, mit denen Sie ihre Lektion zusammensetzen können:Natürlich müssen Sie diese Anweisungen nicht auswendiglernen und alles eintippen. Wir haben eine graphische Oberfläche (ein sogenanntes GUI) geschrieben, dass es Ihnen ermöglicht, Lektionen zu schreiben ohne direkt die Befehle einzutippen. Diese Hilfedatei soll Ihnen die Befehle des Lektionsinterpreters und die Bedienung der graphischen Oberfläche näher bringen.
Wichtiger Hinweis: Der Lektionsgenerator fügt neue Anweisungen immer am Ende der Lektion ein. Es ist nicht ohne weiteres Möglich, Code in der Mitte der Lektion mit dem Lektionsgenerator zu ändern. Sollten Sie Code einfügen müssen, benötigen Sie den Quelltexteditor. Markieren Sie alle Befehle ab der Stelle, an der Sie neue Befehle einfügen, und schneiden Sie sie mit Ctrl + X aus. Sobald Sie die neuen Befehle eingefügt haben setzen Sie den Cursor ans Ende der Lektion und fügen mit Ctrl + V die Befehle wieder ein.
Das folgende Bildschirmfoto zeigt das Hauptfenster des Lektionsgenerators (Englische Version).
Neues Beispiel ("
<newsample>")Eine Lektion ist in Beispiele unterteilt. Jedes Beispiel sollte in sich abegeschlossen sein. Der Anwender kann zwischen den einzelnen Beispielen navigieren, sie überspringen oder wiederholen. Der Befehl hat keine Parameter. Jede Lektion beginnt mit einem
<newsample>Befehl.
Befehl <newsample>Parameter Dieser Befehl hat keine Parameter Beispiel <newsample>
Zurück zur Übersicht
Aufgabe stellen ("
<exercise>")Mit diesem Befehl können Sie den Besuchern eine Aufgabe stellen. Dabei wird eine Künstliche Intelligenz geladen, gegen die der Besucher spielt. Sie können festlegen, ob ein Remis genügt, um die Aufgabe zu bestehen. Die Startaufstellung einer Aufgabe ist immer die aktuelle Stellung. Während der Aufgabe wird die Stellung durch die Züge des Besuchers und der künstlichen Intelligenz verändert. Nach der Aufgabe wird die Stellung gelöscht, d.h. alle Figuren werden entfernt. Sollte der Besucher die Aufgabe nicht korrekt lösen, wird das aktuelle Beispiel neu gestartet. Wir empfehlen, jede Aufgabe in ein eigenes Beispiel zu packen. Dabei sollten Sie beachten, dass Sie die benötigte Stellung mit
<put>und<move>Befehlen aufbauen, bevor Sie die Aufgabe stellen. Auch ein paar erklärende Worte sind sicher hilfreich.
Befehl <exercise>Parameter Abbruchbedingung (1,2) Beispiel <exercise>2
Zurück zur Übersicht
Text anzeigen ("
<textout>")Mit diesem Befehl wird Text ausgegeben. Dabei führt jeder Aufruf von <textout> zu einem eigenen Abschnitt. Der Befehl wartet für jeden Buchstaben 65 Millisekunden (bei normaler Lektionsgeschwindigkeit), so dass der Besucher immer genügend Zeit hat, den Text zu lesen. Beim anklicken des "Text anzeigen" Knopfes wird ein Texteingabefenster angezeigt, in dem sie den Text eingeben können.
Befehl <textout>Parameter Der Text, der angezeigt werden soll. Der Text darf keine expliziten Zeilenumbrüche enthalten. Beispiel <textout>hello from switzerland!
Zurück zur Übersicht
Start Position ("
<reset>")Mit diesem Befehl können Sie sehr schnell die Stellung auf dem Brett löschen, um eine neue aufzubauen. Sie können wählen, ob der Interpreter die normale Startaufstellung generieren soll oder ob alle Figuren entfernt werden.
Befehl <reset>Parameter " empty" für leeres Brett, "newgame" für StartaufstellungBeispiel <reset>newgame
Zurück zur Übersicht
Warten ("
<wait>")Dieser Befehl lässt den Interpreter eine gewisse Zeit pausieren. Die Zeitangabe erfolgt in Millisekunden. 1000 Millisekunden entsprechen einer Sekunde.
<wait>4000wartet also 4 Sekunden.
Befehl <wait>Parameter Wartezeit in Millisekunden, 1000 Millisekunden = 1 Sekunde Beispiel <wait>1000
Zurück zur Übersicht
Figuren setzen ("
<put>")Mit diesem Befehl werden Figuren auf das Schachbrett gesetzt. Der Befehl hat immer dieselbe Form: <put> + Feld + Figurencode. Das Feld wird in Algebraischer Notation angegeben, z.B. e4. Der Figurencode besteht aus drei Dezimalzahlen. Wir wollen uns nun die einzelnen Stellen des Figurencodes anschauen.
Die 1 Zahl des Figurencodes: Spezialinformationen
Bei König und Turm steht an dieser Stelle eine 1, wenn sie noch Rochieren dürfen. In allen anderen Fällen gilt der Wert 0. Die 0 muss geschrieben werden.
Die 2 Zahl des Figurencodes: Die Figurenfarbe
- weisse Figur
- schwarze Figur
Die 3 Zahl des Figurencodes: Der Figurentyp
Beispiele
- Bauer
- Springer
- Läufer
- Turm
- Dame
- König
<put>e8126setzt auf e8 einen schwarzen König, der noch Rochieren darf<put>f3012setzt auf f3 einen weissen Springer<put>e3014setzt auf e3 einen weissen Turm, der das Rochaderecht verloren hatDie graphische Oberfläche für diesen Befehl ist sehr komplex, daher beschäftigt sich eine Seite des Hilfesystems speziell mit ihr.
Befehl <put>Parameter Feld in Algebraischer Notation + 3 Stelliger Figurencode Beispiel <put>e4124
Zurück zur Übersicht
Figuren Bewegen ("
<move>")Mit diesem Befehl werden Figuren auf dem Schachbrett bewegt. Das Format ist sehr simpel. Zuerst wird das Herkunftsfeld in Algebraischer Notation angegeben, dann das Zielfeld. Auch für diesen Befehl existiert eine leistungsfähige graphische Oberfläche, die auf einer eigenen Seite behandelt wird.
Befehl <move>Parameter Ausgangsfeld + Zielfeld Beispiel <move>e2e4
Zurück zur Übersicht
Felder Markieren ("
<mark>")Manchmal werden Sie die Besucher ihrer Lektion besonders auf gewisse Felder hinweisen wollen, um ihre Ausführungen zu verdeutlichen. Mit dem Befehl
<mark>können Sie Felder in drei verschiedenen Farben (Rot, Grün und Dunkelgelb) einfärben oder diese Markierungen wieder entfernen. Als Parameter geben Sie dem Befehl zuerst die Feldbezeichnung in Algebraischer Notation an. Das zweite Argument ist der Code für die Markierung. Dabei gelten folgende Markierungscodes:
- (zum Löschen der Markierungen)
0für ein leeres Feld1für Rot (schlechtes Feld)2für Grün (gutes Feld)3für Dunkelgelb (positionel wichtiges Feld)Da die Eingaben der Feldnamen und Codes sehr unpraktisch ist, hat der Lektionsgenerator eine graphische Oberfläche für den Befehl. Auch diese Oberfläche wird, wie alle anderen komplexen Oberflächen, getrennt behandelt.
Befehl <mark>Parameter Feld und Code für Farbe Beispiel <mark>e21
Zurück zur Übersicht
Lektionseigenschaften
Wenn Sie diese Funktion anwählen wird ein Fenster eingeblendet, in dem Sie die Lektionseigenschaften setzen können. Jede Lektion hat folgende Eigenschaften:
- Der Lektionsname
- Der Lektionsname wird in den Auswahllisten des Chess Teacher Applets angezeigt. Er indendifiziert ihre Lektion.
- Der Autor
- Wenn Sie wollen, können sie ihren Namen bekannt geben, damit die zufünftigen Besucher ihrer Lektion wissen, wer sie geschrieben hat. Wenn sie lieber anonym bleiben möchten, geben Sie einfach irgendeinen Fantasienamen ein.
- Die Sprache
- Sie können sowohl englische als auch deutsche Lektionen schreiben. Mit der deutschen Version des Chess Teachers können nur deutsche Lektionen abspielt werden, mit der englischen nur englische.
- Das Sachgebiet
- Die Lektionen werden in Anfänger-, Endspiel-, Mittelspiel-, Eröffnungs- und Partielektionen eingeteilt. Anfängerlektionen behandeln sehr simplen Stoff wie das Mattsetzen mit zwei Türmen oder die Figurenzüge. Endspiel-, Mittelspiel- und Eröffnugnslektionen enthalten Theorie zu den endsprechenden Phasen eines Schachspiels. Die Partielektionen behandeln eine oder mehrere Partien berühmter Schachspieler.
- Der Schwierigkeitsgrad
- Anhand dieser Angabe können zukünftige Besucher entscheiden, ob die Lektion ihren Fähigkeiten entspricht. So hat es Beispielsweise keinen Sinn, dass ein Anfänger etwas über Positionelles Spiel lernt. Beim Schwierigkeitsgrad gelten folgende Grössen als Richtwert:
- Anfänger < 1400 ELO
- Fortgeschrittene < 1800 ELO
- starke Spieler > 1800 ELO
- Die Beschreibung
- Die Beschreibung gibt weitere Informationen über die Lektion, so dass der Besucher entscheiden kann, ob ihn die Lektion interessiert.
- Zurück zur Übersicht
Lektion einsenden
Wenn ihre Lektion fertig geschrieben ist, können Sie sie mit diesem Button einsenden. Dabei wird sie abgespeichert und in die Lektionsliste eingetragen. Sie haben später keinen Zugriff mehr auf diese Lektion. Wenn die Lektion aber syntaktische Fehler enthält, wird das bemängelt und Sie können die Fehler korriegieren, d.h. Sie müssen nicht wieder bei Null anfangen. Sollten Sie vergessen haben, die Lektionseigenschaften zu setzen, werden sie dazu aufgefordert, die fehlenden Daten zu ergänzen. Ist das erledigt müssen sie "Lektion einsenden" erneut aufrufen. Sie sehen die Antwort des Servers im Übertragungsreport
Das Hilfesystem
Mit dieser Funktion wird das Hilfesystem angezeigt. Zurzeit befinden Sie sich im Hilfesystem. Die Ausgabe erfolt in einem neuen Fenster, so dass Sie einfach zwischen dem Lektionsgenerator und der Hilfe hin und her schalten können.
Vorschau anzeigen
Bevor Sie ihre Lektion einschicken, werden Sie sie wahrscheinlich zuerst einmal "live" erleben wollen. Dazu gibt es die Vorschau Funktion. Wenn Sie sich eine Vorschau anzeigen lassen, wird der Chess Teacher gestartet. Sie werden in einem zweiten Fenster dazu aufgefortert, zu warten, bis der Chess Teacher vollständig initialisiert hat. Das ist immens wichtig. Der Chess Teacher ist vollständig initialisiert sobalt sich die graphische Oberfläche aufgebaut hat. Dann können Sie im zweiten Fenster auf OK klicken und der Chess Teacher zeigt ihre Lektion an.
Der Quelltext Editor
Dieses Element zeigt den Quelltext ihrer Lektion an, so wie er später vom Interpreter gelesen wird. Sie können Änderungen direkt in den Code schreiben. Allerdings ist Vorsicht geboten, denn falls Sie ungültige Befehle eingeben, kann das Verhalten des Lektionsgenerators beeinträchtigt werden.