Vorlage DokumentationKonfiguration
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

Konfiguration

Allgemeines

Vorlage verwendet zum Ablegen von Konfigurationsdaten eine Textdatei in der die Daten in Kapiteln gegliedert abgelegt sind. Der Aufbau dieser Dateien ist Zeilenorientiert, d.h. eine Zeile kann nicht umgebrochen werden.

Zeilen die mit einem Semikolon beginnen sind Kommentarzeilen und werden ebenso wie Leerzeilen ignoriert und können zur Strukturierung und Dokumentation der Konfigurationsdatei verwendet werden.

Kapitel zeichnen sich durch einen Kapitelnamen in eckigen Klammern aus. Der Name muss dabei ohne weitere Kommentare oder Leerzeichen solo in einer Zeile stehen.

Je nach Art des Kapitels können danach eine oder mehrere Zeilen mit Nutzdaten folgen.

Kapiteltypen

Um den Ansprüchen verschiedener Konfigurationsdaten gerecht zu werden können die Daten in den Kapiteln auf unterschiedliche Weise strukturiert werden. Dabei werden im Allgemeinen folgende Typen unterschieden:

Zuweisungskapitel ist ein Kapitel das zur Zeit nur für das Kapitel [Options] Verwendung findet. Hier wird dann in jeder Zeile ein Konfigurationswert gesetzt. So wird zum Beispiel mit

Passwort = "Foobar"

ein Default-Passowort für Computer-Reporte ohne Passwort festgelegt (z.B. Eressea). Folgende Einträge sind zur Zeit möglich:

Passwort Default-Passwort für Reports ohne gesetztes Passwort. (Der Wert muss in Anführungszeichen angegeben werden)
EBase Zahlenbasis für Einheitennummern (wird i.d.R. automatisch ermittelt)
BBase Zahlenbasis für Gebäudenummern sowie Schiffsnummern (normalerweise ebenfalls automatisch)
PBase Zahlenbasis für Parteinummern (s.o.)

TABH ist eine Objekt-Tabelle die auf eine horizontale Anordnung der Objekte spezialisiert ist. Jede Spalte enthält dabei ein bestimmtes Attribut und jede Zeile ein Objekt. In der Standard-Konfiguration ist [Terrains] ein Beispiel für diese Art von Tabellen. Die Namen der Attribute werden dabei nicht aus der Datei gelesen, sondern intern vergeben, bzw. beim Einlesen mittels #config als Parameter übergeben. Die erste Spalte dient als Index bzw. Schlüssel für die Tabelle.

TABV ist eine Objekt-Tabelle, bei der jede Spalte ein Objekt darstellt und die Zeilen die Attribute enthalten. Hierbei sind die Objektschlüssel die Einträge in der ersten Zeile, d.h. das erste Attribut eines Objektes ist sein Schlüssel und auch als Attribut NAME zu erreichen. Die erste Spalte enthält die Namen der Attribute, so dass hier alle Information in der Tabelle untergebracht sind.

NESTED ist eine Objekt-Tabelle die komplexere Objekte abbildet, indem sie eine Schachtelung in einer Ebene ermöglicht. Jede Zeile enthält ein Objekt, Spalten gibt es in dem Sinne keine. Der Aufbau einer Objektzeile ist dabei:

Schlüssel|  numer. Attribute  | 1. Subobjekt mit Attributen    | etc.
---------+--------------------+--------------------------------+-----
"<Key>",  [<num>, "Name", ...] ["SubObj", <num>, "Name", [...]] [...]

Spielspezifische Konfiguration

Vorlage liest bei der Ausführung spielspezifische Daten aus Konfigurationsdateien deren Name sich nach dem Spiel richtet. Der Name wird i.d.R. aus dem Computer-Report ermittelt. Die Konventionen haben sich dabei inzwischen etwas geändert:

  Vorlage bis V1.6rc4
  Win Unix
Eressea eressea.cfg .eressearc
Sitanleta gav62mod.cfg .gav62modrc
Vinyambar I vinyambar i.cfg .vinyambar irc
Vinyambar II vinyambar ii.cfg .vinyambar iirc

  Vorlage ab V1.6rc5
  Win default Win user
Eressea eressea.cfg eressea-user.cfg
Sitanleta gav62mod.cfg gav62mod-user.cfg
Vinyambar I vinyambari.cfg vinyambari-user.cfg
Vinyambar II vinyambarii.cfg vinyambarii-user.cfg
  Unix default Unix user
Eressea .eressearc .eressea-user-rc
Sitanleta .gav62modarc .gav62mod-user-rc
Vinyambar I .vinyambarirc .vinyambari-user-rc
Vinyambar II .vinyambariirc .vinyambarii-user-rc

Dabei wird ab V16.rc5 immer erst geschaut, ob es das entsprechende Kapitel in der User-Datei gibt, und wenn das nicht der Fall ist, oder es diese User-Datei nicht gibt, wird die Default-Datei verwendet. Auf diese Weise kann man dann Änderungen in der User-Datei machen und sie werden nicht durch neue Versionen der Default-Dateien überschrieben und diese müssen nicht immer wieder auf die eigenen Bedürfnisse angepasst werden.

Revision 26 Jul 2005

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