Vorlage DokumentationAufruf
Allgemeines
   Aufruf
   Einleitung
   Installation
   Konfiguration
   Syntax
Einführung
   MetabefehlsAusdruecke
   MetabefehlsSyntax
   RegulaereAusdruecke
   VordefinierteVariablen
Funktionen
   abs()
   after()
   and()
   antoi()
   before()
   ceil()
   change()
   close()
   crop()
   equals()
   exp()
   flatten()
   float()
   floor()
   int()
   isnothing()
   itoan()
   length()
   log()
   log10()
   match()
   not()
   open()
   or()
   random()
   read()
   readline()
   sign()
   status()
   statustext()
   substr()
   system()
   time()
   tolower()
   toupper()
   typeof()
   write()
   writeline()
   xname()
   xor()
Metabefehle
   #after
   #array
   #break
   #call
   #config
   #const
   #debug
   #default
   #dict
   #else
   #every
   #forever
   #func
   #if
   #ifregion
   #ifunit
   #include
   #input
   #message
   #next
   #notrace
   #proc
   #return
   #sort
   #table
   #tag
   #trace
   #var
   #while
Rückruf-Prozeduren
   CalcUnitCapacities
   CreateRegionHeader
   CreateUnitHeader
   EndRegion
   EndUnit
   OnBuilding
   OnExit
   OnInit
   OnRegion
   OnShip
   OnUnit
   OutputLineFilter
Report-Objekte
   building
   grenze
   partei
   preise
   races
   region
   report
   ship
   things
   unit
Anhang
   Danksagungen
   SkriptDebugger
   VorlageFAQ

Aufruf

Syntax

vorlage [Optionen] [CR-Datei1] [CR-Datei2] [...] [CR-DateiXY]

Für nicht so konsolenerfahrene:

Optionen, CR-Datei1 usw. sind sogenannte Parameter, sprich zusätzliche Informationen die man dem Programm mitteilen will, das man gerade aufruft. Das Programm in diesem Fall ist vorlage. Die Schreibweise in eckigen Klammern bedeutet dass der Parameter optional ist, also dass er angegeben werden kann aber nicht muss. In diesem Fall könnte ich also Vorlage starten ohne irgendwelche Parameter angeben zu müssen.

Beschreibung

Vorlage ist für die Benutzung von einer Konsole (Kommandozeile oder Eingabeaufforderung, unter Win32 fälschlicherweise auch oft "DOS-Fenster" genannt) aus gedacht. Es gibt aber alternative Benutzungsmöglichkeiten, auf die weiter unten noch eingegangen wird.

Die CR-Dateien (Computer-Report-Dateien) können in nahezu beliebiger Reihenfolge angegeben werden, da Vorlage sie intern eh nach Bedarf sortiert und verwendet. Einzige Einschränkung ist: Wenn der erste CR keinen gültigen VERSION-Kopf mit einer Angabe des Spiel-Namens (z.B. "Eressea";Spiel) enthält, muß das Spiel mit der Option '-cfg' festgelegt werden.

Optionen

-b
Gibt alle Beschreibungen (Einheit/Region/Gebäude/Schiff) aus.
-cfg spiel
Vorlage besorgt sich Konfigurationsinformationen in Abhängigkeit vom Spiel aus dem der Computer-Report stammt. Dies ist im Report bei neueren Versionen eingetragen. Hat der erste Report aus irgendeinem Grund keine solchen Infos, so kann der Spielname (und damit der Basisname der Konfiguration) mit dieser Option gesetzt werden. Unter Windows wird der Name der Konfigurationsdatei aus dem Spielnamen und der Endung '.cfg' erzeugt, unter Linux aus '.', dem kleingeschriebenenen Spielnamen sowie 'rc'. Die Option '-cfg Eressea' erwartet unter Windows eine Konfigurationsdatei namens 'eressea.cfg' und unter Linux eine Datei '.eressearc'.
--cfgpath
Überschreibt den Pfad, unter dem nach Konfigurationsdateien gesucht wird. Dieser ist standardmäßig unter Windows der Pfad von vorlage.exe und unter den anderen Systemen $HOME.
-cr
Auswertung der Metabefehle und Ausgabe eines neuen Computer-Reports, der die erzeugten Befehle enthält. Dies ist vor allem für Anwender anderer Tools gedacht, die gerne auch die Metabefehlsfunktionalität von Vorlage nutzen würden.
-cl e
Vorlage gibt durch diese Option eine Warnung aus, wenn ein Behälter mehr als e Elemente enthält.
-e file
Fehlermeldungen und (falls sonst keine Parameter angegeben werden) Optionserklärung von Vorlage in eine Datei ausgeben lassen.
-d
Schaltet die #table und #debug Ausgaben ein, sonst werden sie unterdrückt.
-do file
Eingebaute Optionserklärung von Vorlage in eine Datei ausgeben lassen.
-e file
Lenkt die Fehlermeldungen in eine Datei um.
-et
Vorlage springt beim Auftreten von Fehlern in den Skriptdebugger.
-f
Dieser Schalter bewirkt, dass Vorlage eine bereits existierende Zugvorlage bzw. einen bestehenden Computerreport mit dem durch -o bzw. -ox festgelegten Namen überschreiben wird. Ohne diese Option würde Vorlage statt dessen mit einer Fehlermeldung abbrechen.
-fd
Fordert das Deklarieren von Variablen vor deren erstem Gebrauch, ansonsten gibt es eine Fehlermeldung.
-fr
Erzwingt das Generieren der Nachrichtentexte durch Vorlage, anstatt die "rendered"-Tags des CRs zu verwenden.
--fullcom
Übernehmen aller persistenten Kommentare in UNIT.OUTPUT vor Ausführung der Skripte, um auch diese aus Skripten heraus ändern zu können.
--fullregs
Es wird nicht nur für Regionen mit eigenen Einheiten, sondern für alle Regionen des Basis-Reports, sowie alle Regionen aus anderen Reports die das Attribut visibility enthalten, OnRegion aufgerufen.
-g
Bewirkt, dass die Einheitenkommentare um eine Gegenstandsliste erweitert werden, es wird also ausgegeben, was die Einheit alles mit sich führt.
-gr namensteil
Mit dieser Option kann man erreichen, dass nur für Einheiten einer bestimmten Gruppe eine Zugvorlage erstellt wird. Es werden die anderen Einheiten der Partei als verbündete Einheiten angezeigt, falls man fremde Einheiten anzeigen lässt. Allerdings werden alle Berechnungen die die Region betreffen weiterhin auf Basis der Partei ausgeführt, d.h. Einnahmen, Ausgaben, Personenzahlen oder Materialpool sind weiter die der ganzen Partei. Dieses Feature funktioniert nicht für die CR-Ausgabe.
-hb
Diese Option bewirkt zu Beginn der Zugvorlage die Ausgabe des Gesamteinkommens, sowie der Gesamtausgaben der letzten Runde. Des Weiteren werden diese beiden Werte auch für jede Region berechnet und dort ausgegeben.
-i file
Mit dieser Option werden Skriptdateien, die Sammlungen von Funktionen und/oder Unterprogrammen enthalten können, eingebunden und stehen den Metabefehlen zur Verfügung. Die Option kann mehrfach verwendet werden, um mehr als eine Skriptdatei einbinden zu können. Wenn folgende Skriptdateien Funktionen oder Unterprogramme definieren, die bereits von einer geladenen Datei definiert wurden, so werden die jeweils vorherigen von den neuen verdeckt, also nur die jeweils letzten verwendet.
-k
Die Angabe dieser Option bewirkt die Ausgabe einer Umgebungskarte und von Regionsinfos zu Beginn jedes Regionsbereiches, und es wird etwa folgendes erzeugt:
        
 ;  H S  |Bauern:   453|Silber: 17278|Unterhalt:  810|
 ; S B . |Rekruten:  22|Eisen:    513|Gewinn:    1812|
 ;  E .  |Pferde:    13|Laen:       0|Baeume:       0|
-kk
Erzeugt eine Karte zu Beginn der Vorlage, die alle Regionen des Basis-Reports enthält und bei der die Lücken durch evtl. vorhandene Infos aus anderen CRs ergänzt wurden.
--kkall
Karte aller Regionen aller Reports in den Beginn der Zugvorlage einfügen.
-kl
Diese Option hat die Funktion von -k, aber zusätzlich werden auch noch die Preise für Luxusgüter ausgegeben.
-l
Bei Benutzung dieser Option wird erreicht, dass die Einheitenkommentare um eine Gewichtsübersicht erweitert werden. Hierbei wird das Gesamtgewicht der Einheit, wenn möglich die freie Kapazität und die theoretisch mögliche Kapazität (ohne Kutscher/Reiter) beim Reiten, sowie die freie und die theoretisch mögliche Kapazität beim Gehen angezeigt.
-m
Diese Option bewirkt die Ausgabe des Materialpools der eigenen Partei in einer Region. Die Informationen werden hinter dem regulären Regionsinfo-Bereich ausgegeben. In Verbindung mit -up wird auch bei den Parteizusammenfassungen am Regionsende der Materialpool der Parteien ausgegeben.
-map file
Die Option erzeugt eine Karte mit dem gesammelten geographischen Wissen der CRs die angegeben wurden. Es werden von den Regionen nur Terrain, Name sowie evtl. Insel ausgegeben.
--mapr file
Die Option gibt wie '-map' ein Karten-CR aus, in diesem werden aber auch die Runden-Infos eingetragen.
-mi n
Bewirkt die Aktivierung der Multi-Pass-Unterstützung von Vorlage, d.h. die Auswertung der Einheiten sowie der Rückruf-Prozeduren erfolgt n -fach. Außerdem wird die vordefinierte Variable $MINPASSES mit dem übergebenen Wert n belegt.
-more
Die Option aktiviert das Verhalten, nach jeder durch Bildschirmausgaben gefüllten Bildschirmseite anzuhalten und auf die Eingabetaste zu warten (ab Build 440).
-mr xo yo
Sorgt dafür, dass in allen folgenden Regionen xo und yo zu den Koordinaten addiert wird. Dies ist die einzige Option die auch zwischen den CRs übergeben werden darf.
-n
Mit dieser Option werden Nachrichten aus dem Computer-Report, die eine Region betreffen, dieser zugeordnet und mit den Regionsinfos ausgegeben. Nachrichten, die Einheiten betreffen, diesen (auch mehreren) zugeordnet und dort ausgegeben.
-nrzv
Erzeugt eine Zugvorlage, die sich möglichst nah an der originalen im NR orientiert.
-nv
Die Option unterdrückt die Ausgabe der Zugvorlage komplett.
-o file
Diese Option legt fest, dass die Ausgabe (Zugvorlage oder Computer-Report) in die hier (bei Bedarf mit Pfad) angegebene Datei ausgegeben wird. Existiert diese schon, so wird sie nur überschrieben, wenn -f verwendet wird, sonst abgebrochen. Im Dateinamen für die Option -o können nun generisch Daten des Reports eingefügt werden, indem man @p für die dezimale Parteinummer, @P für die Parteinummer im derzeit gültigen Format, @r für die Runde, @j für das Jahr, @m für den Monat (dezimal) und @w für die Woche einfügt; so ergibt z.B. '-o @p2@j@m@w.er' einen Namen wie ich ihn benutze (4920221.er für Partei 49 (1d), zweites Zeitalter, zweites Jahr, zweiter Monat und erste Woche); Bei alter Zeitrechnung ist der Monat, wie das Jahr auch, mit evtl. führender Null zweistellig.
-ox ext
Ähnlich wie -o sorgt diese Option für die Ausgabe in eine Datei. Dabei wird als Dateiname der Name und Pfad des Basis-Computer-Reportes verwendet, die Endung hingegen durch ext ersetzt. Existiert diese schon, so wird sie nur überschrieben, wenn -f verwendet wird, sonst abgebrochen.
ALERT! Achtung: Zusammen mit Option -cr und dem Parameter cr für die Option -ox hat dies ein Überschreiben des Ausgangs-Reportes zur Folge, wenn Überschreiben erlaubt ist. Daher ist bei Benutzung von -ox zusammen mit -cr Vorsicht geboten!
--output-encoding e
Legt den Zeichensatz für Ausgaben fest, erlaubt sind iso-8859-1, macroman sowie cp437 und cp850, wobei iso-8859-1 der Default ist.
-p n
Diese Option legt fest, für welchen Spieler die Vorlage erstellt wird, wenn Computer-Reports von verschiedenen Spielern übergeben werden. Wird sie nicht verwendet, erstellt Vorlage für jeden Spieler, von dem ein Report aus der aktuellen Runde übergeben wurde, auch eine Zugvorlage. Dies macht nur Sinn, wenn die Option -ox verwendet wird, da sonst alle Zugvorlagen in eine Datei geleitet werden und von Hand zerlegt werden müssten.
-pb
Hiermit wird erreicht, dass zu jeder Einheit evtl. vorhandene BESCHREIBE-PRIVAT-Texte mit als Kommentar eingebaut werden.
--pedantic
Mittels der Option werden Zugriffe auf Objekte oder Attribute, die weder intern, noch im CFG-File (unter '[CRTags]' oder '[CRHierarchy]') codiert sind, mit einer Fehlermeldung quittiert um z.B. Tippfehler leichter zu finden.
-pi
Dadurch wird die Ausgabe von 'Progress-Informations', also Fortschritts-Informationen aktiviert. Sie kosten etwas zusätzliche Zeit, aber helfen u.a. bei der Suche nach Endlosschleifen.
-pm
Diese Option bewirkt, dass Vorlage in BESCHREIBE-PRIVAT-Texten nach Metabefehlen sucht und sie ausführt. Diese Option dient dazu, Metabefehle in Spielen zu ermöglichen, in denen keine persistenten Kommentare ('//') vorhanden sind, also vor allem für Empiria.
-pw p
Fügt das Passwort p in die Zugvorlage ein.
-q
Die Angabe dieser Option bewirkt, dass die Arbeitsmeldungen und Zeitmessungen von Vorlage unterbleiben.
-rc
Unterdrückt das Löschen von im CR vorhandenen Befehlen bei der Metabefehlsauswertung.
--rseed
Ermöglicht die Übergabe eines festen Startwertes für den Zufallsgenerator, um Probleme zu debuggen, der jeweils bei einem Lauf verwendete wird ausgegeben, wenn die erste Zufallszahl erzeugt wird.
-si
Mit diesem Schalter bewirkt man, dass Vorlage die Regionen so sortiert, dass Regionen die gemeinsam auf einer Insel liegen, oder die (bei Verwendung von Insel-Attribut-Karten) Regionen, die in einer gleich benannten Region liegen, in der Zugvorlage auch zusammen erscheinen.
-sb
Wird diese Option aktiviert, so sortiert Vorlage die Einheiten nach Bauwerken/Schiffen und gibt zudem für jedes Bauwerk/Schiff einen Info-Kommentar aus.
-sk
Durch diese Option wird dafür gesorgt, dass der Kommandoinhaber eines Gebäudes oder Schiffes unabhängig von anderen Sortierungen zu Beginn steht.
-st
Diese Option bewirkt, dass Einheiten einer Region nach Talenten sortiert werden. Wird es zusammen mit -sb verwendet, so werden die Einheiten innerhalb eines gemeinsamen Aufenthaltsortes (Burg, Schiff, etc.) nach Talenten sortiert.
--strip-duplicate-descr
Mehrzeilige Einheitenbeschreibungen die in der gleichen Region doppelt oder mehrfach vorkommen, nach dem ersten Auftreten auf eine Zeile kürzen.
-t
Um die Talentwerte der Einheiten in der Zugvorlage sehen zu können, muss diese Option verwendet werden.
-td
Diese Option bewirkt (wie -t) die Anzeige der Talentwerte, aber zusätzlich werden, falls auch ein Report der Vorrunde übergeben wurde, auch die Änderungen angezeigt. Dies ist vor allem für Dämonen und Orks interessant.
-u
Durch Angabe dieser Option gibt Vorlage auch die fremden Einheiten in einer Region in einem dem Normal-Report nachempfundenen Kommentar aus.
-un
Diese Option bewirkt, dass nicht alle fremden Einheiten, sondern nur neue Einheiten oder Einheiten mit neuem Besitzer in der Region angezeigt werden.
-up
Mit dieser Option kann man am Ende des Regionsabschnittes eine Zusammenfassung der Informationen über fremde Parteien in einer Region bekommen. Es werden Parteiname, Anzahl der Personen sowie in Kombination mit -m auch der Materialpool der jeweiligen Partei in der Region ausgegeben.
-uq
Dieser Schalter unterdrückt alle Daten außer den Regionskommentaren und ist für Regionsreports sinnvoll.
-us
Normalerweise werden die fremden Einheiten bei Verwendung von -u nach den eigenen Einheiten ausgegeben. Durch diese Option zusammen mit -sb werden sie hingegen wie die eigenen Einheiten in die Bauwerke/Schiffe mit einsortiert und man erkennt so ihren tatsächlichen Aufenthaltsort, ohne erst nochmal einen Blick in den Normalreport werfen zu müssen.
-uv
Dies ist eine Alternative zu -u die bewirkt, dass die Gegenstände und Beschreibungstexte der fremden Einheiten ebenfalls angezeigt werden.
-v
Vorlage gibt eine Versionsinfo aus und beendet sich.
--version2
Für Konstrukte die ab Version 2 nicht mehr unterstützt werden wird eine Warnung erzeugt.
-w len
Hiermit wird Vorlage angewiesen, beim Erzeugen der Zugvorlage die Info-Zeilen auf len Zeichen Länge zu begrenzen und im Zweifelsfall umzubrechen. Die angegebene Länge darf 40 nicht unterschreiten.
-wait
Vorlage wartet bei Angabe dieser Option am Ende der Ausführung auf einen Druck auf die Eingabetaste. Dies ist vor allem interessant für fernbediente Aufrufe (z.B. aus WinVorlage), um dort Gelegenheit zu erhalten, die Ausgaben von Vorlage zu lesen.
-wall
Alle Warnungen werden unterdrückt.
-wfirst
Fehlermeldungen nur einmal pro auftretender Stelle ausgeben.
-ws
Warnungen über unbekannte Feldkennungen im CR unterdrücken, sie können für die meisten Blöcke, auch wenn Vorlage sie nicht kennt, über die Attribute abgefragt werden.
-xn file
Mittels der Option können xNamer-Regel-Dateien importiert werden.

Will man sehr viele Optionen verwenden, so empfiehlt sich die Verwendung eines Options-Files in dem man einfach die Optionen wie bei einem Aufruf durch Leerzeichen getrennt einträgt. Man darf auch mehrere Zeilen verwenden. Das File bindet man dann mittels '@optionsfile.txt' ein, und Vorlage behandelt die Parameter so als ob sie in der Kommandozeile stünden. Damit kann man dann auch u.U. bestehende Betriebssystemgrenzen bei der Länge eines Aufrufes umgehen.

Beispiel

Hier nun ein Beispielaufruf unter Windows. Unter Linux sind Aufruf und Ausgaben identisch, einzig die Pfadtrenner sind '/' statt '\' und das Prompt (die Eingabeaufforderung) sieht anders aus.

C:\Eressea>vorlage -kl -sb -t -uv -up -o Vorlage.txt r187\0815.cr r188\0815.cr
lese r187\0815.cr ... done. (1.35 sek.)
lese r188\0815.cr ... done. (1.43 sek.)
erstelle Regions- und Einheitendatenbank ... done. (1.05 sek.)
erstelle Zugvorlage ... done. (1.23 sek.)
Zeit ueber alles: 5.87 sek.
C:\Eressea>_

Referenzen

-

Revision 04 Oct 2005

Page design, graphics and contents (c) copyright 1999-2004
by S.Schümann and contributing authors