Dokumentationsversion 1.0d ,
2003-10-31
Der folgende Text gibt einen guten Überblick über die Funktionsweise von TavernMaker. Es ist ein guter Startpunkt um das Programm besser zu verstehen.
Für detailierte Informationen können sie direkt
zur Algorithmusbeschreibung übergehen.
Datenbanken vs. Reine ZufallsgeneratorenTavernMaker "generiert" eigentlich keine Grafik und keinen
Text. Statt dessen benützt es verschiedene Datenbanken und Grafik-Vorlagen
(templates) und erstellt daraus nach den Angaben des Users
seine Ausgabe. Der Nachteil: Damit das ganze sinnvoll ist, müssen
die Datenbanken und Vorlagen ausreichend vielfältig sein. Der
Vorteil: Alle Arbeit wird von kreativen Köpfen "händisch"
erledigt und garantiert so für Qualität, die reine Zufallsgeneratoren
nie erreichen können, da diese nur Adjektive & Nomen mehr
oder wenig zufällig zusammen würfeln. Anschauen - ein
schematischer Überblick
Die folgende Grafik
zeigt schematisch, wie die verschiedenen Programm von TavernMaker
zusammenwirken. Keine Angst, wenn sie es nicht auf Anhieb verstehen.
Es ist etwas kompliziert... Bild Verschiedene System
- das RPS
Um TavernMaker für verschiedene Sprachen, Rollenspielsystem
& -welten offen zu halten, und um es auch als vollständig
andersartigen Generator verwenden zu können, ist es notwendig,
das Grundprogramm zu konfigurieren. Die Konfigurationsdateien, die
das erledigen, heißen "Role-Playing-System"-Dateien
oder kurz RPS. Jedes RPS hat seine eigenen Datenbanken, Grafikvorlagen,
Icons, seine eigene Sprache und mehr. Das Original-RPS von TavernMaker
ist "AD&D - English" bzw. sein deutscher Mitläufer
"AD&D - Deutsch". Ein erster Schritt
- Entscheidungen
Neben der Wahl des RPS benützt WinTavern auch User-Eingaben.
Allgemein gesprochen kann der User fogendes festlegen: Was genau durch diese Einstellungen geregelt wird, steht im RPS.
(Die Angaben in den Klammen entsprechen der Bedeutung im Standard-Tavernen-Generator) Grafik –
Erzeugen der Karte
Im ersten Generierungs-Schritt wird aus dem Basistyp und der Größe bestimmt, welche Grafik-Vorlage verwendet werden soll. Diese Vorlage ist mehr oder weniger ein "leerer Raum" mit verschiedenen möglichen "Hintergründen" und sogenannten Hotspots. Zunächst wird einer der Hintergründe gewählt und anschließend werden die Hotspots mit Icons gefüllt (Tische, Türen, Bars, Fenster...) Die fertige Karte wird an das Programm zurück gegeben. Text – Die
Karte wird belebt
Der Kartengenerator
liefert nicht nur die Karte, sondern auch eine Liste von "befüllten
Hotspots" (gefüllt mit einem Icon). Einige dieser "gefüllten
Hotspots" bekommen nun eine Textbeschreibung. Wieviele das sind,
hängt von der User-Einstellung Füllunggrad ab. (Wieviele
Gäste sind in der Taverne, d.h. wieviele der vorhandenen Tische
sind besetzt.) Abhängig vom Hotspot-Typ (Tisch? Bar?..) und der
Größe des verwendeten Icons (2 Sessel? 5 Sessel?) wird
die Beschreibungsdatenbank nun gefiltert. Die geählte Einschränkung
(zB.die Preisklasse der Taverne) schränkt die Datenbank weiters
ein. Ebenso die Klassenwahrscheinlichkeit (Welche Rassen sind
in der Taverne). Schlußendlich liefert auch die Karte selbst
noch Beschränkungen, so können Beschreibungen von "Ecktischen"
nur für Icons verwendet werden, die tatsächlich in der "Ecke"
sind. Nachdem die Datenbank vollständig gefiltert wurde, wird
für jeden "belebten" Hotspot eine Beschreibung zufällig
ausgewählt. Beschreibungen
- für alle, oder nicht?
Jede "Beschreibung" besteht nun aus zwei Teilen, einem
öffentlichen und einen geheimen. Der öffentliche
Teil ("Die Beschreibung") kann den Spielern direkt vorgelesen
werden ("An diesem Tisch sitzt..."). Der geheime Teil (die
Gegenstandsliste) ist nur für den Spielleiter bestimmt ("Der
Mann trägt einen magischen Ring..."). Menüs –
Essen & Trinken gefällig ?
Dieser Teil von TavernMaker ist in der ersten Version noch nicht implementiert. Er wird jedoch ähnlich dem Beschreibungsteil ablaufen. Abhängig von der User-Einstellung werden verschiedene Getränke und Speisen aus einer Datenbank zufällig gewählt. Qualität und Preisangaben werden danach berechnet. Formatierung –
einfach hübscher
Die Textausgabe
von TavernMaker ist nicht einfach nur ASCII Text. Statt dessen kann
der User sogenannte Formatierungs-Vorlagen wählen/erstellen,
die die Ausgabe in einem Rich-Text-Format (*.RTF) formatieren. Damit
wird es einfach schöner und kann in den Spielen als Handout besser
benutzt werden. Ausserdem erlauben diese Formatierungsvorlagen die
Einbeziehung zusätzlicher Information, die in Addon-Skripten
erzeugt wurde. (zB ein "Wetterbericht")
Skriptis –
einfache Programmierung innerhalb des Programs
Alle Dinge bisher erzeugen bereits ein nettes Programm mit dem sich unzählige Dinge anstellen lassen. Wie auch immer, wir haben das Projekt von Anfang an einen Schritt weiter geplant, und zusätzliche Flexibilität eingebaut. Alle Beschreibungen in den Datenbanken erlauben eine einfache Skript-Programmierung. Gewisse Textteile können so "variabel" gestaltet werden. Zufallszahlen und Berechnungen sind möglich. Auch einfache Variablen und darauf basierende Berechnungen. Die Flexibilität wird noch maximiert, indem man zusätzliche "Gegenstand-Datenbanken" einfügen kann, die Unabhängig erweitert werden können! Ein einfaches Beispiel:
"Der Mann hier erzählt gegen etwas Geld das neueste Gerücht:
Der König wurde ermordet!" |