---------------------------------------------------------------------- gInform Previewversion 0.5 by Tinic Urou in 1996 German libraries and parser for the Inform 6 compiler Deutsche Bibliotheken und Parser fuer den Inform 6 compiler ---------------------------------------------------------------------- Sorry, but this documentation is in german, since this package is only interesting for authors who want to build an interactive story in german. Inform is copyright by Graham Nelson. This package can be freely used and distributed. Einleitung ---------------------------------------------------------------------- Textadventures sind in unseren Zeiten von Multimedia mit seinen Massen an Animationen uns Sounds etwas besonderes. Trotzdem faszinieren diese Spiele durch gute Stories und dem guten Gameplay und es lohnt sich meiner Meinung nach weitere Spiele dieser Art zu schreiben. Infocom Interpreter sind fuer fast jedes System erhaeltlich, somit sind die Spiele voellig plattformunabhaengig. Leider waren sie in den meisten Faellen englisch, ebenso wie die Standardbibliotheken, die natuerlich unbedingt benoetigt werden. Viele meiner Bekannten hat das Englische immer vom Spielen abgehalten, obwohl sie das Prinzip mochten. Vielleicht ist dies ein kleiner Beitrag dazu, mehr deutschsprachige "Interaktive Romane" zu schreiben. Das es moeglich ist, zeigt mein sehr kleines Beispiel. Als naechstes werde ich wohl versuchen, das beruehmte Advent umzusetzen, damit ich die Bibliotheken vollstaendig austesten kann und perfektionieren kann. Wenn ich dann mal so weit bin moechte ich auch eigene Werke schreiben, trotz meines schlechten Deutsch. ;-)) Kontakt zum Autor ---------------------------------------------------------------------- Wer Fragen zu diesem Paket hat oder Bugreports schicken moechte, ich bin immer ueber EMail erreichbar: 5uro@informatik.uni-hamburg.de Meine SnailMail: Tinic Urou Gaertnerstr. 15 20253 Hamburg Geschichte ---------------------------------------------------------------------- 0.1 first test version. Quick'n Dirty translation. 0.2 changed some verbs, added g_artikel_xxx 0.3 changed method using g_artikel_xxx completly. They are now entries in the dictionary. In standard Names only g_artikel_was is needed. The other articles are calculated. Additionally, Capitals can now be printed. Added g_pronomen for pronouns. Very useful 8)) Added g_plural for Objects which does appear only in plural form. IstSind() now prints the needed verb for some messages. This is also missing in the english version. E.g. "The flies *are* ...", "The flie *is*..." ... 0.4 Added a Peparse recursing function to remove all german articles. Even in the english version, something like "squeeze the stone" does not work execpt for verbs using the multi token... Now "Oeffne die Pforten" works without problem. 0.5 Again adjusted some verbs. Enhanced translation in some cases. Wie benutze ich das Paket? ---------------------------------------------------------------------- Diese Libraries unterscheiden sich fuer den Programmierer zu den englischen Versionen nur minimal. Die englischen Dokumentationen gelten bis auf ganz wenige Ausnahmen weiter. Diese Libraries werden einfach als Ersatz zu den Alten benutzt. Am besten kopiert man sie ins selbe Verzeichnis in dem man seine enlischen Libraries hat. Im Source benutzt man dann anstatt: Include "Parser"; Include "VerbLib"; Include "Grammar"; einfach diese Zeilen: Include "gParser"; Include "gVerbLib"; Include "gGrammar"; Als Beispiel habe ich "Ruine.inf" dem Paket beigefuegt. Es zeigt, wie man ein deutsches Spiel aufzieht. Unterschiede zwischen den englischen und deutschen Bibliotheken. ---------------------------------------------------------------------- ALLGEMEIN ------------- So weit sind fast alle englischen Anzeigetexte uebersetzt. Viele sind mehr oder weniger gelungen und klar, ich werde sie beim Schreiben eigener Spiele austesten und anpassen. Die Debuggermeldungen wurden nicht uebersetzt. VERBEN ---------- Fast alle Verben wurden auf deutsch uebersetzt. Ich denke ich habe da eine gute Auswahl getroffen, das eine oder andere wird wohl noch dazukommen, einige Formulierungen muessen noch klarer und manche verboten werden. Ein paar Beispiele zu was der Parser faehig ist: "> breche die kette auf" "> nimm alles aus der kiste" "> lege die kohle in die nische Du legst das Holzkohlenstueck in die Nische." Es sind hier noch viele Dinge zu machen. So funktionieren "und" und Punkte noch nicht. PROPERTIES -------------- Alle neuen deutschen Properties werden durch ein "g_" eingeleitet. Folgende Properties wurden eingefuehrt: · g_artikel_was Es ist der wichtigste neue Property. Er sollte JEDEM Objekt beigefuegt werden, da er den Artikel bestimmt, der benutzt werden soll. Erkannt werden 'der', 'die' und 'das'. Bitte keine Gaensefuechschen ("") verwenden, es sind aus Programmiertechnischen Gruenden Eintraege im Dictionary! 8)) Die weiteren Artikel und Pronomen werden normalerweise aus g_artikel_was bestimmt, in Ausnahmefaellen wie z.B. bei einem Plural muessen die weiteren Artikel "von Hand" angegeben werden: · g_artikel_wen Anwendungsbsp.: Wen oder was? *Den* Schuh. · g_artikel_ind Anwendungsbsp.: *Ein* Schuh · g_artikel_wem Anwendungsbsp.: Wen oder was? *Dem* Schuh. · g_pronomen Anwendungsbsp.: Der Schuh. *Er* ist schoen. Folgende Artikel und Pronomen sind bisher in Dictionary aufgenommen und duerfen allen hier genannten Properties beigefuegt werden: ein zwei eine das der die sie er es dem den Das Property "article" wurde entfernt und sollte nicht mehr benutzt werden. · g_plural Definiert, dass das Objekt selber im Plural ist, z.B. "Fliegen" oder "Chips". Es wird benutzt um Saetze wie "Sie sind..." oder "Sie ist..." bilden zu koennen. Dieses Property ist dafuer auf einen Wert >0 zu setzen. Hier noch zwei Beispielobjekte: Object kalkstein "Kalkbrocken" with g_artikel_was 'der', name "kalkstein" "brocken", description "Der Kalkbrocken ist gross, \ schneeweiss und sehr kantig.", has edible; Hier einen solchen Ausnahmefall: Object Tor_Pforten "Pforten" with g_artikel_ind 'zwei', ! '' waere hier auch moeglich, falls g_artikel_was 'die', ! nichts angzeigt werden soll g_artikel_wen 'die', g_artikel_wem 'den', g_pronomen 'sie', g_plural 1, name "pforte", description "Sie sind aus massiver Eiche, \ einfach aber sehr stabil gehalten."; FUNKTIONEN -------------- Auch hier beschaeftigen sich fast alle neuen Macros mit den Artikeln. Die folgenden vier zeigen den entsprechen Artikel + den Namen des Objekts. Also z.B. "das Haus". Das alte DefArt() gibt es NICHT mehr: InDefArt(objekt); WasDefArt(objekt); WenDefArt(objekt); WemDefArt(objekt); Um einen Grossbuchstaben am Anfang eines Satzes zu bekommen gibt es diese hier: CInDefArt(objekt); CWasDefArt(objekt); CWenDefArt(objekt); CWemDefArt(objekt); Diese zeigen das Pronomen des Objekts: Pronomen(objekt); CPronomen(objekt); Ermittelt ob das Objekt in der Pluralform ist, und zeigt dann ein "ist" oder "sind": IstSind(objekt); Enfernt alle Artikel aus einem Parsing table: RemoveArtikel(table,1,1); ----------------------------------------------------------------------