! NPCs in Raumbeschreibungen - Beispiel 1 ! ! Der Schmnied bekommt eine eigene Zeile in der Raumbeschreibung. Das ! wird ganz einfach mit 'Erst' gemacht. Diese Beschreibung kommt ! immer, da der Schmied ja nie aufgehoben wird. Alle anderen ! Gegenstände im Raum werden gesondert aufgeführt. ! ! Der Schmied führt eine dämonengesteuerte Handlung durch, er ! schmiedet ein Hufeisen. Wenn der Befehl 'Lage' ist, wird diese ! Aktion direkt in 'Erst' erwähnt, ansonsten nach dem Zug in einer ! 'Aktion*'. Das vermeidet holperige Beschreibungen wie: ! ! Der Schmied ist hier. ! ! Der Schmied härtet das Hufeisen in einem Bottich mit Öl. Es ! gibt ein zischendes Geräusch. ! ! Wenn der Befehl eine direkte Interaktion mit dem Schmied erfordert, ! führt der Schmied keine Aktion durch, er hält einen Zug lang inne. ! !----------------------------------------------------------------------- #DAT 'normal.adv' Raum Vor_der_Schmiede Name 'Vor der Schmiede' Besch 'Du stehst vor einer kleinen Schmiede, deren Eingang im Norden liegt. Ein Weg führt nach Westen auf einen Lagerplatz und nach Osten aus dem Spiel.' N Schmiede W Lagerplatz Rein Schmiede O Spiel_verlassen Raus Spiel_verlassen Weg Spiel_verlassen Ausf Ausf #ende EndeAusf Aktion * Ausf wenn (aRaum = Vor_der_Schmiede) dann jenach Schmied_Arbeitsschritt (0) Text 'In der Schmiede hörst du ein Fauchen.'; (2) Text 'Aus der Schmiede hörst du schwere metallische Schläge.'; (3) Text 'Die Schläge in der Schmiede werden schneller, federnder.'; (5) Text 'Aus der Schmiede dringen regelmäßige Schläge.'; (6) Text 'Die Schläge sind jetzt kurz und in schneller Abfolge.'; (7) Text 'Jetzt sind die Schläge nur noch vereinzelt zu hören.'; (8) Text 'Aus der Schmiede kommt ein Zischen.'; (9) Text 'Ein federnd metallisches Geräusch kommt aus der Schmiede.'; Ende Ende EndeAusf Raum Lagerplatz Name 'Lagerplatz' Besch 'ieser Lagerplatz ist eigentlich eher eine trostlose, teilweise mit Gras bewachsene Ansammlung von Schrott und Schutt. Ein Weg führt nach Osten.' O Vor_der_Schmiede Raus Vor_der_Schmiede Deko Schutt Name 'Lagerplatz' m Subst 'schrott' m Subst 'schutt' m Subst 'lager' n Subst 'gras' n Subst 'ansammlung' f VorAusf (untersuchen) Ausf Lage stop (sonst) stop 'Der Schutt ist nicht wichtig.' EndeAusf Obj Flasche Name 'Plastikflasche' f Ort Lagerplatz Adj 'grün' 'blass' 'blassgrün' 'blind' Vor 'plastik' Subst 'flasche' f Besch 'Eine weggeworfene blassgrüne Plastikflasche, ohne Verschluss und schon etwas blind.' Erst 'Am Rande des Schutthaufens, noch nicht vom Gras bedeckt, siehst du eine grüne Plastikflasche.' Raum Schmiede Name 'Schmiede' Besch 'Die Schmiede ist ein kleiner, dunkler Raum, der weniger vom Tageslicht, das durch die verschmierten Fenster fällt, als vom rötlichen Licht der Glut im Ofen erhellt wird. Der Mittelpunkt der Schmiede ist der schwere Amboss. Eine Tür führt im Süden nach draußen.' S Vor_der_Schmiede Raus Vor_der_Schmiede !----------------------------------------------------------------------- ! ! Der Schmied, das Kernstück dieses Beispiels. Er hat, wie ! versprochen, ein eigenes 'Erst'. Er ist das erste Objekt in der ! Schmiede, das getrennt gelistet wird. Der Hammer, der ebenfalls ein ! 'Erst' hat, taucht erst später auf. ! ! Das eigentlich Interessante ist, dass die Beschreibung der Tätigkeit ! des Schmieds in zwei Fällen aus der Aktion* ausgelagert wird, um ! einen (hoffentlich) schöneren Textfluss zu haben. Dies passiert für ! 'Lage', wo die Tätigkeit in 'Erst', und für 'untersuche Schmied', wo ! sie in 'Besch' ausgelagert wird. Mit der Flagge 'Schmied_still' wird ! dann die Ausgabe in der Aktion * unterdrückt. Der Text wird ausge- ! lagert in eine neu definierte Aktion, in der 'Schmied_still' als ! Indikator dafür verwendet wird, ob eine neue Zeile angefangen wird ! und der Schmied mit seinem vollen Namen genannt wird (weil der ! Kontext in der Aktion* unklar ist) oder ob ein Pronomen verwendet ! wird, um unschöne Doppelnennungen zu vermeiden. Das Hochzählen der ! Arbeitsschritte wird in einer weiteren Aktion* vorgenommen, die ! unbedingt als letzte der Aktionen*, die mit dem Schmied zu tun haben, ! definiert werden muss ! ! Ein weiteres Gimmick ist, dass der Schmied seine Arbeit unterbricht, ! wenn er etwas gefragt wird oder eine andere ihn direkt betreffende ! Aktion ausführen soll. ! !----------------------------------------------------------------------- Flagge Schmied_still 0 Flagge Schmied_Pause 0 Flagge Schmied_Arbeitsschritt Obj Schmied Name 'Schmied' m Ort Schmiede Subst 'schmied' m Subst 'hufschmied' m Subst 'herr' m Subst 'schmidt' m Subst 'mann' m Besch Ausf setze Schmied_still Text 'Der Schmied ist ein kräftiger, ruhiger Mann.' Ausf Schmied_Arbeitsbesch EndeAusf Erst Ausf setze Schmied_still Text 'Der Schmied ist hier.' Ausf Schmied_Arbeitsbesch EndeAusf VorAusf lokal x (fragen erzählen reden) setze Schmied_Pause Text 'Der Schmied hält inne und überlegt.' Zufall x 1 3 jenach x (1) Text '"Ja, so etwas gibt%s",' (2) Text '"Nein, davon habe ich noch nichts gehört",' (3) text '"Darüber kann ich Ihnen leider nichts sagen",' Ende stop 'sagt er schließlich.'; (gegeben gezeigt) setze Schmied_Pause stop 'Der Schmied hält inne und schaut sich [den aObj] an. "Das [ist aObj] [ein]", sagt er nachdenklich.' (angreifen aufwecken küssen) setze Schmied_Pause stop 'Verwundert blickt der Schmied von seiner Arbeit auf und schaut dich ruhig an.' EndeAusf Attr Person Aktion * Ausf wenn (Schmied hier) dann wenn /(Schmied_still) Ausf Schmied_Arbeitsbesch lösche Schmied_still Ende EndeAusf Aktion * Ausf wenn (Schmied_Pause) dann lösche Schmied_Pause sonst inkr Schmied_Arbeitsschritt mod Schmied_Arbeitsschritt 10 Ende EndeAusf Aktion gerade Ausf wenn /(Schmied_still) stop lokal x Zufall x 1 3 jenach x (1) Text ' gerade/' (2) Text ' im Moment/' (3) Text ' im Augenblick/' Ende EndeAusf Aktion Schmied_Arbeitsbesch Ausf wenn (Schmied_Pause) stop wenn (Schmied_still) dann wenn /(Schmied_Arbeitsschritt = 6) Text 'Er'; sonst wenn /(Schmied_Arbeitsschritt = 6) Text '[Der Schmied]'; Ende jenach Schmied_Arbeitsschritt (0) Text 'facht[gerade] das Feuer mit dem Blasebalg an und die Glut im Ofen glüht hell.'; (1) Text 'holt[gerade] mit einer Zange einen der glühenden Rohlinge aus dem Ofen.'; (2) Text 'hämmert mit schweren Schlägen auf dem Rohling herum und biegt ihn so um einen Dorn auf dem Amboss in die Form eines Hufeisens.'; (3) Text 'flacht[gerade] das Hufeisen ab, indem er den gebogenen Rohling mit schweren Schlägen treibt.'; (4) Text 'hält das Hufeisen noch einmal kurz in die Glut.'; (5) Text 'schlägt[gerade] mit einem Dorn die Löcher für die Hufnägel ein.'; (6) Text 'Mit schnellen, federnden Schlägen richtet'; wenn (Schmied_still) dann Text 'er jetzt' sonst Text 'der Hufschmied' Ende Text 'das Hufeisen auf dem Amboss.'; (7) Text 'bearbeitet[gerade] die letzten Details des Hufeisens. Dabei benutzt er einen spezielle Form auf dem Amboss.'; (8) Text 'betrachtet[gerade] das fertige Hufeisen. Dann schreckt er es in einem Bottich mit Öl ab. Es zischt.'; (9) Text 'wirft[gerade] das fertige Hufeisen auf einen Haufen neben dem Amboss.'; Ende EndeAusf Obj Hufeisen Name 'Hufeisen' n Ort bei Schmied Subst 'hufeisen' n Subst 'eisen' n Besch 'Ein glühendes Stück Eisen, das sich nach und nach der Form eises Hufeisens annähert.' VorAusf (untersuchen) (sonst) Stop 'Glühende Hufeisen anzufassen bringt gewiss kein Glück.' EndeAusf Deko Amboss Name 'Amboss' m Ort Schmiede Subst 'amboss' m Subst 'dorn' m Subst 'block' m Subst 'form' f Besch 'Der Amboss ist ein massiver Block mit einer großen Arbeitsfläche, einem konischen Dorn auf der einen und einer Hufeisenform auf der anderen Seite.' VorAusf (untersuchen) (sonst )stop 'Besser nicht. Der Schmiede braucht den Amboss zum Arbeiten. Du machst nur seinen Akkord kaputt.' EndeAusf Deko Ofen Name 'Ofen' m Ort Schmiede Subst 'ofen' m Subst 'glut' f Subst 'feuer' n Subst 'rohling' m Besch 'Ein bulliger Ofen, in dem einige gerade Rohlinge in der Glut darauf warten, zu Hufeisen umgearbeitet zu werden.' VorAusf (untersuchen) (sonst) stop 'Der Ofen ist zu heiß, um sich ihm zu nähern. Außerdem störst du so gewiss den Arbeitsrhythmus des Schmieds.' EndeAusf Obj Vorschlaghammer Name 'Vorschlaghammer' m Ort Schmiede Subst 'hammer' m Subst 'vorschlaghammer' m Subst 'bello' m Subst 'mottek' m Besch 'Ein schwerer Hammer, der zum Schmieden von Hufeisen sicher nicht benötigt wird.' Erst 'In einer Ecke der Schmiede lehnt ein Vorschlaghammer an der Wand.' Obj Stock Name 'Stock' m Ort beimir Vor 'wander' Subst 'stock' m Subst 'stab' m Subst 'stecken' m Besch 'Dein Stock, ein treuer Gefährte auf deinen Wanderungen.' !----------------------------------------------------------------------- ! ! Anfangssituation ! !----------------------------------------------------------------------- Aktion Anfang Ausf Text '[#] [x][f]Jeder ist seines Glückes Schmied[n] [x]Ein Beispiel für NPCs in Raumbeschreibungen[#][#]' gehezu Vor_der_Schmiede EndeAusf