sind Hilfestellungen zur Spiellösung (auch Hinweise, Tipps oder neudeutsch ,,Hints'' genannt), die zu einem bestimmten Rätsel des Spiels mehrere Antworten - von ansteigender Deutlichkeit und Ausführlichkeit - vorsehen, die der Spieler nacheinander aufrufen kann. Als Beispiel die Hilfestellung zu einem der ersten Rätsel eines Klassikers51:
Wie komme ich in die Höhle?
Der Eingang ist im Haus.
Falltüren können versteckt liegen.
Schau' unter den Teppich.
Es ist möglich, dies mit einer der Bibliotheken menus.h, hints.h, branch.h zu schreiben.52 So richtig automagisch funktioniert es aber erst mit dem Codegenerator slag, einem Perlscript53 von BRIAN 'BEEJ' HALL, in der Release 8 mit Beispieldateien (Lösungen einiger Infocom-Adventures) zu finden bei http://www.piratehaven.org/~beej/slag/oder http://if-archive/solutions/slag. Hier erstellen wir in einem ersten Schritt eine Quelldatei mit den Hints, die wir haben wollen; hier mit einem vorgeschalteten, zwei Ebenen umfassenden Menüsystem:
.LINK Über der Erde
.LINK Im Keller
.LINK Der Irrgarten
.LINK Der Runde Raum
.MENU Über der Erde
.LINK Wo finde ich ein Machete?
.LINK Wie überquere ich das Gebirge?
.LINK Wie komme ich in die Höhle?
.HINT Wie komme ich in die Höhle?
.CLUE Der Eingang ist im Haus.
.CLUE Falltüren können versteckt liegen.
.CLUE Schau' unter den Teppich.
.HINT Was ist ein Graus?
.CLUE Frage ZORK I.
Anschließend ,,übersetzen'' wir mit dem Perlscript54 slag die Quelldatei in inform-Code:
SLAG_RunMenus();
];
verb meta 'hinweis' 'hilf' 'hint'
* -> Hint;
Das slag-Format ist nicht frei; jeder Hinweis muss auf eine Zeile passen. Dafür sind die aus Inform bekannten ^ und ~ - Zeichen einsetzbar.
Wir kennen bis jetzt die slag-Direktiven .MENU, .LINK, .HINT und .CLUE. Statt der abschnittweisen Preisgabe von Information mit .HINT und .CLUE kann auch ein zusammenhängender, über mehrere Zeilen reichender Text gezeigt werden, der zwischen die Direktiven .TEXT und .ENDTEXT zu stellen ist. .TEXT entspricht dabei der Zeile .HINT, d.h. der in dieser Zeile nachfolgende Text muss mit einem .LINK übereinstimmen. Zwischen .TEXT und .ENDTEXT können einzelne Zeilen mit .CENTER zentriert werden und ganze Bereiche können zwischen .FIX und .UNFIX gestellt und so vorformatiert mit fixem Zeichensatz ausgegeben werden.
Ohne den Schalter -s baut slag eine selbständig kompilierbare Inform-Quelldatei, in der dann nur die Hinweismenüs drin sind. Mit den Direktiven .INTRO und .ENDINTRO - die sonst wie .TEXT und .ENDTEXT funktionieren - kann für diesen Zweck ein Vorspann geschrieben werden.
Kein Problem. Ein paar kleine Änderungen in slag, dann ist alles deutsch; zu diesem Zweck wird von mir mit der Datei Gslag.patch ein Patch55 bereitgestellt:
GRAHAM NELSON für Inform, die originale Library und das ,,Inform Designers Manual''.
ROGER FIRTH für seine englische Kurzreferenz (und damit der Idee für dieses Machwerk).
TONI ARNOLD, RALF HERRMANN und MAX KALUS für die deutsche Übersetzung der Library.
FLORIAN EDLBAUER und MARTIN OEHM für Korrekturen.
JESSE BURNEKO für Info.h.
BRIAN 'BEEJ' HALL für slag.
ELLEN SCHRAMM, die alle meine anderen Texte tippt.
GNU Free Documentation License
Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.