# Das Handbuch zu &killbots;

## Einleitung

### Spielart:

Strategie

### Anzahl der Spieler:

Einer

&killbots; ist ein einfaches Spiel, in dem man Killermaschinen entkommen muss. Wer die Roboter erschuf und warum diese zum Zerstören programmiert wurden ist niemandem bekannt. Alles was über sie bekannt ist, ist ihr zahlreiches Vorkommen und das einzige Ziel, den Helden zu töten. Hilfreich ist, dass der Erschaffer mehr Wert auf die zahlenmäßige Stärke und nicht auf die Intelligenz legte. Die geistige Überlegenheit des Spielers und die Möglichkeit des Teleportierens sind die einzigen Waffen gegen den immerwährenden Angriff der sinnlosen Automaten.

### Anmerkung:

Alle Bezeichnungen in diesem Handbuch beziehen sich u. a. auf Roboter, Müllhalden, usw. Jedoch können für &killbots; abweichende Designs erstellt werden und somit die angezeigten Animationen von den beschriebenen abweichen. Die Spielweise und -strategie bleibt jedoch immer gleich (auch wenn der Held eine von Hasen gejagte Karotte ist).

### Anmerkung:

&killbots; unterstützt mehrere Spielarten zur Kontrolle der Spiel-Parameter und der enthaltenen Spiel-Funktionen. Dieses Handbuch versucht allgemein und nicht spezifisch für bestimmte Spielarten zu sein. Für weitere Informationen über den aktuellen Regelsatz sollten immer dessen Information und Beschreibung ... in &killbots; einrichten ... für die Informationen über die Spielfeldgröße, Runden, Punkte, Energie, ... verwendet werden.

## Spielanleitung

### Grundlagen des Spieles

#### Spielziel:

Die Gegner in den aufeinanderfolgenden Runden überleben und dabei Punkte für einen Bestwert sammeln.

Bildschirmfoto des Spielfeldes

&killbots; ist ein rundenbasiertes Spiel, das auf einem rechteckigen Gitter gespielt wird. Die Anzahl der Zellen in jeder Zeile und Spalte des Gitters wird durch die verwendete Spielart bestimmt. Jede Zelle kann Folgendes enthalten:

Held

- Der Held ist die unglückliche Seele, die in einem Raum mit einer Menge von Killermaschinen steckt. Die Aufgabe des Spielers ist es sicherzustellen, dass er solange wie möglich am Leben bleibt.

  Am Anfang jeden Zuges kann der Held eine der drei Aktionen ausführen: Er kann stehen bleiben, sich in eine angrenzende unbesetzte Zelle bewegen oder einen Spezialzug ausführen. Weitere Informationen hierzu können dem Abschnitt und entnommen werden.

Roboter

- Die Roboter sind die mechanischen Gegenspieler mit dem Wunsch, den Helden mit ihrem metallenen Mantel zu zermalmen. Sie haben noch nie etwas von den Drei Regeln der Roboter gehört und würden wahrscheinlich jeden zermalmen, der versucht ihnen diese zu erklären.

  Jeder Roboter bewegt sich in jedem Zug um einen Schritt auf den Helden zu. Falls der Roboter über dem Helden ist, bewegt er sich um einen Schritt nach unten. Ist der Roboter links vom Helden, bewegt er sich um einen Schritt nach rechts. Ist der Roboter rechts-unterhalb vom Helden, bewegt er sich schräg um einen Schritt nach links-oben. Sollte es einem Roboter gelingen, die Zelle des Helden zu erreichen, wird der Held getötet und das Spiel ist zu Ende.

Schneller Roboter

- Schnelle Roboter sind eine Weiterentwicklung der Roboter. Mit jeder Bewegung des Helden bewegen sie sich zwei Felder weiter. Mit ihrer gesteigerten Geschwindigkeit erhielten sie jedoch keine höhere Intelligenz - sie zerstören sich oftmals genauso schnell wie ihr Vorgängermodell.

  Nicht alle Spielarten enthalten schnelle Roboter.

Müllhalde

- Beim Zusammenprall zweier oder mehrerer Roboter werden diese zerstört und produzieren eine Müllhalde. Die Gegner können die Müllhalden auf ihrem Weg nicht erkennen und werden beim Zusammenprall mit diesen zerstört. Die Müllhalden sind extrem wertvoll, da sie Sperren zwischen dem Helden und seinen Angreifern bieten.

  Manche Spielarten ermöglichen es dem Helden die Müllhalden innerhalb des Gitters zu schieben. Dadurch wird der Bau von schützenden Bunkern möglich. In manchen Spielarten können die Müllhalden zum Angriff verwendet werden, indem sie auf einen Gegner geschoben werden und diesen erdrücken. Meist erhält man hierfür sogar zusätzliche Punkte oder Energie.

### Runde, Punkte und Energie

Die Statusanzeige

#### Runde

Der Spielablauf in &killbots; ist in Runden unterteilt. Jede Runde beginnt mit dem Helden in der Mitte des Spielfeldes und zufällig platzierten Gegnern um ihn herum. Die Runde endet wenn alle Gegner zerstört sind. Mit Beginn einer neuen Runde erhöht sich die Anzahl der Gegner um der Spielart festgelegten Werte (Art und Anzahl).

Das Spielfeld füllt sich mit Gegnern bis einer der folgenden Fälle eintritt: Die Gegner belegen mehr als 50 Prozent der Zellen oder ein Sicheres Teleportieren soll durchgeführt werden, ist aber mangels sicherer Zellen nicht möglich. Sobald einer dieser Fälle eintritt wird die Runde abgebrochen und die Anzahl der Gegner geht auf den Wert der ersten Runde zurück.

#### Punkte

In &killbots; kann man nicht gewinnen. Vielmehr versucht der Held zu überleben bis ihn sein Glück verlässt. Daher ist das Spielziel in &killbots; die meisten Punkte bis zum Eintritt des Unvermeidbaren zu erreichen. Die zehn höchsten Punktestände werden zusammen mit der erreichten Runde in der Bestenliste aufgeführt.

Punkte erhält man für das Zerstören der Gegner. Für Schnelle Roboter gibt es meist mehr als für reguläre Roboter. Zusätzliche Punkte kann es möglicherweise für das Zerstören der Gegner mit einer Müllhalde oder während dem Aussitzen geben.

#### Energie

Zusätzlich zu den Punkten kann Energie gesammelt werden. Diese ermöglicht Sicheres Teleportieren und/oder Zerstäuben. Abhängig von der gewählten Spielart kann die Energie für verschiedene Aktionen gewährt werden (z. B. für Verschieben einer Müllhalde oder zerstören der Gegner während dem Aussitzen).

Die maximale Energie ist durch die Spielart festgelegt und erhöht sich in machen Spielarten mit den erfolgreich beendeten Runden. Die Engerieanzeige erscheint nur, wenn die aktuelle Spielart Energie und Sicheres Teleportieren unterstützt.

### Spezialzüge

Zusätzlich zu den einfachen Bewegungen von Zelle zu Zelle können bis zu vier Spezialzüge durchgeführt werden.

#### Teleportieren

Auf wunderbare Art und Weise schafft der Held seine Hände auf einen persönlichen Teleporter zu bekommen. Leider ist dieser ohne Energieverbrauch nicht sehr zuverlässig. Das aktivieren des Teleporters befördert den Helden zu einer zufällig gewählten Zelle auf dem Spielfeld. Für die Anzahl des Teleportierens gibt es keine Begrenzung.

Die neue Zelle ist garantiert unbesetzt, jedoch besteht die Möglichkeit, dass diese von einem Roboter leicht zu erreichen ist. Durch diese Unsicherheit sollte das Teleportieren nur als letztes Mittel für das Entkommen der Roboter gewählt werden, wenn kein Sicheres Teleportieren mehr möglich ist.

#### Sicher teleportieren

Der Teleporter bietet noch einen zweiten Modus, mit dem der Held zu einer zufällig gewählten aber sicheren Zelle befördert wird. Sicheres Teleportieren benötigt mangelnde Energie. Natürlich kann die Fähigkeit des Sicheren Teleportierens die Lebensdauer des Helden erheblich verlängern.

Nicht alle Spielarten ermöglichen Sicheres Teleportieren und die aufzuwendende Energie unterscheidet sich zwischen den Spielarten.

#### Zerstäuber

Die dritte Verwendung des Teleportier-Geräts befördert den Helden nicht. Dieser etwas ungewöhnliche Betriebsmodus befördert die Roboter in den angrenzenden Zellen um den Helden herum. Niemand weiß genau, wohin sie befördert werden, aber es scheint weit genug entfernt zu sein, dass sie den Helden nicht mehr belästigen. Da sich die Roboter in dünne Luft auflösen und keine Müllhalde zurück lassen, wird dieser Modus als „Zerstäuber“ bezeichnet und die durch das Zerstäuben entfernten Gegner als getötet gewertet.

Genauso wie Sicheres Teleportieren benötigt das Verwenden des Zerstäubers Energie. Nicht alle Spielarten unterstützen den Zerstäuber und die benötigte Energie unterscheidet sich zwischen in den Spielarten.

#### Aussitzen

Möglicherweise gelangt man im Laufe einer Runde an einen Punkt, zu dem alle Roboter zerstört werden können, ohne dass sich der Held weiterhin bewegen muss. In einer solchen Situation kann man die Runde einfach Aussitzen.

##### Eine Möglichkeit zum Aussitzen

Beim Aussitzen bleibt der Held für den Rest der Runde an Ort und Stelle stehen, während die Gegner weiterhin ihre regulären Bewegungen durchführen. Dies geschieht so lange bis eine der beiden Möglichkeiten eintritt: Die Gegner zerstören sich selbst und die Runde ist beendet oder ein Gegner zerstört den Helden und das Spiel endet. Sobald das Aussitzen gewählt wurde kann es nicht mehr rückgängig gemacht werden und sollte daher nur gewählt werden, wenn sich der Held an einer sicheren Stelle befindet.

Warum würde jemand eine Aktion wählen, mit der die Möglichkeit zur Meinungsänderung genommen wird? Es fügt ein bisschen Schnörkel und Dramatik zum Ende einer Runde hinzu, bietet jedoch auch Zusätzliches für jede Zerstörung eines Gegners während dem Aussitzen. Die Zusätze (Punkte oder Energie) werden durch die Spielart festgelegt.

## Die Benutzeroberfläche

### Ausführung der Bewegungen

Die Bewegungen können mit der Tastatur, der Maus oder beidem zusammen durchgeführt werden.

#### Bewegungen mit der Tastatur

Die Bewegungen können in neun verschiedene Richtungen erfolgen: links, rechts, oben, unten, diagonal (4x) und stehen bleiben. Jede dieser Aktionen kann zwei Tasten auf der Tastatur zugeordnet werden. Standardmäßig sind diese neun Aktionen den neun Ziffern vom Ziffernblock und den Tasten um S (QWE, ASD und YXC) zugeordnet. Diese Tastenzuweisungen können im Dialog „Kurzbefehle festlegen“ geändert werden.

Jeder Spezialzug (z. B. Teleportieren) kann auch mit der Tastatur ausgeführt werden. Weitere Informationen hierzu können dem Abschnitt Zug entnommen werden.

#### Bewegungen mit der Maus

Die Maus (oder ein ähnliches Eingabegerät) kann für eine unbefangene und unmittelbare Steuerung verwendet werden. Sobald sich der Mauszeiger über dem Spielfeld befindet, ändert er sich und es zeigt - ausgehend vom Helden - ein Pfeil in die Richtung des Mauszeigers. Befindet sich zum Beispiel der Mauszeiger oberhalb des Helden, so zeigt der Pfeil nach oben. Befindet sich der Mauszeiger über dem Helden, so wird Stehenbleiben signalisiert.

Mit einer einfachen Betätigung der linken Maustaste bewegt sich der Held in die entsprechende Richtung (sofern diese Bewegung erlaubt ist). Zur Erweiterung der bequemen Steuerung können zusätzliche Aktionen der linken und rechten Maustaste mittels &killbots; einrichten ... zugeordnet werden. Es ist die Auswahl der im Menü Zug enthaltenen, sowie zusätzlich Bewegung wiederholen möglich. Bewegung wiederholen bewirkt, dass sich der Held solange in die entsprechende Richtung bewegt, bis er auf ein Hindernis trifft oder eine weitere Bewegung in diese Richtung zum Tod führen würde. Die Aktion kann angehalten werden, indem die Maustaste nochmals gedrückt wird.

### Menüeinträge

&Ctrl;N Spiel Neu

- Hiermit wird ein neues Spiel gestartet. Aktuell laufende Spiele werden verworfen.

&Ctrl;H Spiel Bestenliste anzeigen

- Hiermit wird die Bestenliste mit den bisher erreichten Höchstpunkten angezeigt.

&Ctrl;Q Spiel Beenden

- Hiermit wird &killbots; beendet.

R Zug Teleportieren

- Hiermit wird der Held in eine leere zufällig gewählte Zelle teleportiert. Weitere Informationen hierzu können dem Abschnitt entnommen werden.

T Zug Sicher Teleportieren

- Hiermit wird der Held in eine leere und für diesen Spielzug sichere Zelle teleportiert. Weitere Informationen hierzu können dem Abschnitt entnommen werden.

Leertaste Zug Sicher Teleportieren (falls möglich)

- Soweit genügend Energie zur Verfügung steht wird Sicheres Teleportieren ansonsten Teleportieren durchgeführt.

F Zug Zerstäuber

- Zerstört alle Roboter in den anliegenden Zellen um den helden. Weitere Informationen hierzu können dem Abschnitt entnommen werden.

V Zug Aussetzen

- Der Held bleibt bis zum Ende der Runde an Ort und Stelle stehen. Weitere Informationen hierzu können dem Abschnitt entnommen werden.

Einstellungen&killbots; einrichten ...

- Hiermit wird der Einrichtungsdialog von &killbots; zum Einstellen der Spielparameter, Regelsätze und des Spieldesigns aufgerufen.

Zusätzlich hat &killbots; die bekannten &kde;-Einträge im Menü Einstellungen und Hilfe, weitere Informationen dazu finden Sie in den Abschnitten über die Menüs Einstellungen und Hilfe der &kde;-Grundlagen.

## Entwicklerhandbuch zu &killbots;

Interessierte Spieler können eigene Designs und Regeln für &killbots; erstellen.

### Designs für &killbots; erstellen

Wie die meisten anderen &kde;-Spiele bestehen die Designs von &killbots; aus drei Dateien.

#### Die Datei `.desktop`

Die `.desktop`-Datei folgt dem `.ini`-Standard. In ihr werden die Informationen zum Design und die Verweise auf die dazu gehörenden Dateien gespeichert. Das folgende Beispiel stammt vom standardmäßigen Design.

##### Ein Beispiel für eine `.desktop`-Datei

    [KGameTheme]
    Name=Beispiel für ein Design
    Description=Ein Beispiel für ein Designs mit Piraten.
    Author=Der Verfasser
    AuthorEmail=verfasser@beispiel.de
    Type=SVG
    FileName=beispiel.svg
    Preview=beispiel.png

Die ersten vier Parameter enthalten die Metadaten zum Design und sind selbsterklärend. Bei Designs für &killbots; sollte der Parameter `Type` immer auf `SVG` gesetzt werden. Die beiden letzten Parameter enthalten die Dateinamen der beiden anderen Dateien für das Design. Es ist nicht unbedingt notwendig allen Dateien den gleichen Basisnamen zuzuordnen und ist somit nur aus Gründen der Einheitlichkeit empfehlenswert.

#### Die `.png`-Datei

Die `.png`-Datei enthält die Vorschau des Designs. Sie sollte eine Größe von 240 x 140 Pixel haben und der Vorschau des standardmäßigen Designs entsprechen, damit die Designs im Auswahldialog leichter verglichen werden können.

#### Die `.svg`-Datei

Die `.svg`-Datei ist eine Skalierbare Vektorgrafik mit den grafischen Elementen für das Design und kann entweder im unkomprimierten `.svg`- oder komprimierten `.svgz`-Format verwendet werden. Jedes Element wird durch ein einzigartige Identifikationsnummer in der `.svg`-Datei bestimmt. Beim Erstellen eines neuen Designs ist es der einfachste Weg die Elemente eines bestehenden Designs nacheinander auszutauschen bis das neue Design fertig gestellt ist. Die `.svg`-Datei muss die folgenden Elemente enthalten:

`background`

- Das hinter dem Spielfeld angezeigte Bild.

`status`

- Der Kasten für die Anzeige der Runde, Punkte, Gegneranzahl und Energie.

`textcolor`

- Dieses Element sollte ein einfarbiges Rechteck sein und wird für den Text in der Statusanzeige verwendet.

`cell`

- Eine einzelne Zelle des Spielfeldes.

`hero`

- Die vom Spieler kontrollierte Figur.

`enemy`

- Die Figur für den einfachen Gegner.

`fastenemy`

- Die Figur für den schnellen Gegner.

`junkheap`

- Die Figur für die Reste zerstörter Gegner (= Müllhalde).

`cursor0`

- Der Cursor für die Bewegung nach rechts.

`cursor1`

- Der Cursor für die schräge Bewegung nach rechts-oben.

`cursor2`

- Der Cursor für die Bewegung nach oben.

`cursor3`

- Der Cursor für die schräge Bewegung nach links-oben.

`cursor4`

- Der Cursor für die Bewegung nach links.

`cursor5`

- Der Cursor für die schräge Bewegung nach links-unten.

`cursor6`

- Der Cursor für die Bewegung nach unten.

`cursor7`

- Der Cursor für die schräge Bewegung nach rechts-unten.

`cursor8`

- Der Cursor für das Stehenbleiben.

#### Designs installieren

Damit &killbots; neue Designs erkennen und verwenden kann, müssen sich die Dateien in einem geeigneten Ordner befinden. Um das Design nur einem bestimmten Benutzer zugänglich zu machen, müssen die `.desktop`-, `.png`- und `.svg`-Datei in `killbots/themes` in the local folder in ``qtpaths` `--paths GenericDataLocation`` installiert werden. Für die Bereitstellung für alle Benutzer des Systems müssen die Dateien in `killbots/themes`in the system folder in ``qtpaths` `--paths GenericDataLocation`` installiert werden (Rechte des Systemverwalters notwendig).

### Eigene Spielarten erstellen

#### Die `.desktop`-Datei der Regelsätze

Das Erstellen neuer Spielarten für &killbots; ist extrem einfach (besonders auf Grundlage bereits bestehender). Die Parameter und Metadaten der Regelsätze werden als einfache Schlüsselwerte in einer `.desktop`-Datei niedergeschrieben.

##### Die standardmäßigen Spielarten von &killbots;

    [KillbotsRuleset]
    Name=Killbots
    Name[de]=Standard
    Author=Parker Coates
    AuthorContact=parker.coates@kdemail.net
    Description=<qt><p>The default Killbots game type.</p><p>Includes a medium size grid, safe teleports, fast enemies and pushable junkheaps.</p></qt>
    Description[de]=<qt><p>Die Standard-Spielart von Killbots.</p><p>Sie enthält ein mittelgroßes Spielfeld und unterstützt „Sicheres Teleportieren“, „Schnelle Roboter“ und verschiebbare „Müllhalden“.</p></qt>
    Rows=16
    Columns=16
    EnemiesAtGameStart=8.0
    EnemiesAddedEachRound=4.0
    FastEnemiesAtGameStart=-2.0
    FastEnemiesAddedEachRound=2.0
    EnergyEnabled=true
    EnergyAtGameStart=0
    EnergyAddedEachRound=0
    MaxEnergyAtGameStart=12.0
    MaxEnergyAddedEachRound=0.0
    SafeTeleportEnabled=true
    CostOfSafeTeleport=1
    VaporizerEnabled=false
    CostOfVaporizer=0
    PushableJunkheaps=Many
    SquaskKillsEnabled=true
    JunkheapsAtGameStart=0.0
    JunkheapsAddedEachRound=0.0
    PointsPerEnemyKilled=5
    PointsPerFastEnemyKilled=10
    WaitKillPointBonus=0
    WaitKillEnergyBonus=1
    SquashKillPointBonus=0
    SquashKillEnergyBonus=1

Alle Text-Parameter sollten in amerikanischen Englisch verfasst sein. Wie das obige Beispiel zeigt, können die Übersetzungen mittels eckigen Klammern (`[de]` für Deutsch) eingefügt werden. Weiterhin kann der Klartext im Feld `Description` innerhalb von `<qt> ... </qt>` eingegeben werden.

Die Datei eines Regelsatzes sollte die folgenden Parameter enthalten:

`Name`

- Der Name des Regelsatzes - wie er im Auswahldialog und der Bestenliste erscheint.

`Author`

- Der Verfasser des Regelsatzes.

`AuthorContact`

- Die Kontaktinformationen zum Verfasser (meist E-Mail-Adresse).

`Description`

- Eine Beschreibung des Regelsatzes. Sie soll eine kurze Übersicht über die Spielart enthalten aber keine Auflistung der Parameter, die in Beschreibung ... enthalten sind.

`Rows`

- Die Anzahl der Zeilen des Spielfeldes.

`Columns`

- Die Anzahl der Spalten des Spielfeldes.

`EnemiesAtGameStart`

- Die Anzahl der regulären Gegner (Roboter) zu Beginn der ersten Runde.

`EnemiesAddedEachRound`

- Die Anzahl der zusätzlichen regulären Gegner (Roboter) zu Beginn einer neuen Runde.

`FastEnemiesAtGameStart`

- Die Anzahl der schnellen Gegner (schnelle Roboter) zu Beginn der ersten Runde.

`FastEnemiesAddedEachRound`

- Die Anzahl der zusätzlichen schnellen Gegner (schnelle Roboter) zu Beginn einer neuen Runde.

`EnergieEnabled`

- Wird hier der Wert `false` gesetzt, kann der Held Energie gewinnen oder verbrauchen.

`EnergyAtGameStart`

- Die zur Verfügung stehende Energie am Anfang der ersten Runde.

`EnergyAddedEachRound`

- Die zusätzliche Energie zu Beginn einer neuen Runde.

`MaxEnergyAtGameStart`

- Die maximale Energie zu Beginn der ersten Runde.

`MaxEnergyAddedEachRound`

- Die Veränderung der maximalen Energie zu Beginn einer neuen Runde.

`SafeTeleportEnabled`

- Wird hier der Wert `false` gesetzt, ist Sicheres Teleportieren nicht verfügbar.

`CostOfSafeTeleport`

- Der Energieverbrauch für Sicheres Teleportieren.

`VaporizerEnabled`

- Wird hier der Wert `false` gesetzt, ist der Zerstäuber nicht verfügbar.

`CostOfVaporizer`

- Der Energieverbrauch für den Zerstäuber.

`PushableJunkheaps`

- Die Anzahl der maximal verschiebbaren Müllhalden. Möglich sind `None` (keine), `One` (eine) und `Many` (beliebig).

`SquashKillsEnabled`

- Bei Aktivierung können die Müllhalden auf die Gegner geschoben werden und diese damit „erdrücken“.

`JunkheapsAtGameStart`

- Die Anzahl der Müllhalden zu Beginn der ersten Runde.

`JunkheapsAddedEachRound`

- Die Anzahl der zusätzlichen Müllhalden zu Beginn einer neuen Runde.

`PointsPerEnemyKilled`

- Die Punkte für die Zerstörung eines regulären Gegners (Roboter).

`PointsPerFastEnemyKilled`

- Die Punkte für die Zerstörung eines schnellen Gegners (schneller Roboter).

`WaitKillPointBonus`

- Die zusätzlichen Punkte für die Zerstörung von Gegnern während dem Aussitzen.

`WaitKillEnergyBonus`

- Die zusätzliche Energie für die Zerstörung von Gegnern während dem Aussitzen.

`SquashKillPointBonus`

- Die zusätzlichen Punkte für die Zerstörung eines Gegners durch „Erdrücken“ mit einer Müllhalde.

`SquashKillEnergyBonus`

- Die zusätzliche Energie für die Zerstörung eines Gegners durch „Erdrücken“ mit einer Müllhalde.

#### Eigene Spielarten installieren

Damit &killbots; neue Spielarten erkennen und verwenden kann müssen sich die Dateien in einem geeigneten Ordner befinden. Um die Spielarten nur einem bestimmten Benutzer zugänglich zu machen, muss die `.desktop`-Datei in `killbots/rulesets` in the local folder in ``qtpaths` `--paths GenericDataLocation`` installiert werden. Für die Bereitstellung für alle Benutzer des Systems müssen die Datei in `killbots/rulesets` in the system folder in ``qtpaths` `--paths GenericDataLocation`` installiert werden (Rechte des Systemverwalters notwendig).

## Danksagungen und Lizenz

&killbots;

Programm © 2007 – 2009, Parker Coates parker.coates@kdemail.net

Dokumentation © 2008 – 2009, Parker Coates parker.coates@kdemail.net

Übersetzung: Johannes Obermayr johannesobermayr@gmx.de

&underFDL; &underGPL;
&documentation.index;