(17.0) Der PHOST-Befehlsinterpreter

Der PHOST der Version 3.2.2.12 bietet den Spielern eine Möglichkeit, den aktuellen Programmablauf zu beeinflussen. Ein Programmodul des PHOST, der Befehlsinterpreter, wertet bestimmte Nachrichten der Spieler aus und verändert die aktuellen Programmeinstellungen ohne direkte Eingriffe am PHOST. Dieses Modul ermöglicht es den Spielern, formelle Allianzen zu bilden und zu ändern, die Namen ihrer Rassen abzufragen und zu ändern, sowie weitere entsprechende Funktionen. Am PHOST kann eingestellt werden, welche Funktionen für Spieler verfügbar sind.
Wichtig: Der PHOST funktioniert nicht zusammen mit dem Computer-Spieler DOMINATE !

(17.1) Nachrichten an den Befehlsinterpreter des PHOST schicken

Um eine Nachricht an den Befehlsinterpreter des PHOST zu schicken, benutzt der Spieler die "write message" Funktion im Programmenü von Planets zum erstellen und adressiert die Nachricht an sich selbst.
Erkennt der PHOST, daß Absender und Adressat der Nachricht identisch sind, so wertet er den Inhalt als PHOST-Befehle aus.
Ist das erste nicht-Leerzeichen der Nachricht ein "<", so bricht der Befehlsinterpreter sofort ab, denn es könnte sich dann um eine Universal-Nachricht des Spielers handeln (die ja immer mit "<<< Universal Message >>>" beginnt), die dann als normale Nachricht zugestellt wird. Spieler können sich also auch selbst Nachrichten schicken, die dann lediglich mit einem "<" beginnen müssen.
Mit einem Zug können beliebig viele Befehlsnachrichten von einem Spieler an den PHOST geschickt werden. Eine Befehlsnachricht kann mehrere völlig verschiede PHOST-Befehle enthalten. Leerzeilen werden ignoriert.

(17.2) Die PHOST-Befehle

Jede Befehlszeile ist wie folgt aufgebaut:

Befehl [Parameter] [Parameter] ....

wobei "Befehl" einer der gültigen Befehle des PHOST ist. Die Anzahl der vom PHOST akzeptierten Parameter variiert. Wird eine falsche Anzahl von Parametern angegeben, so ignoriert der PHOST den Befehl und schickt mit dem nächsten Zug eine Fehlermeldung an den Spieler zurück. Unbekannte Befehle beantwortet der PHOST ebenfalls mit einer Fehlermeldung an den Spieler.
Jeder Befehl muß vollständig in einer Zeile stehen. Ein Befehl kann nicht über mehrere Zeilen verteilt werden. Parameter werden jeweils durch mindestens ein Leerzeichen voneinander getrennt. Eine Befehlszeile kann aus bis zu maximal 15 Zeichenketten bestehen (Befehle und Parameter). Es gibt keine Sonderzeichen, wie "’" oder "/".
Die nachfolgenden Befehle sind derzeit auf dem PHOST verfügbar. Die Befehle bewirken nichts, solange die entsprechenden Funktionen am PHOST nicht freigegeben sind, so funktioniert der Befehl "alliance" erst, nachdem "CPEnableAlliance = ON" am PHOST konfiguriert wurde.
Diese Befehle können die Einstellungen des PHOST ändern. Dabei können Dateien im Spieleverzeichnis des Host verändert werden, niemals jedoch im Hauptverzeichnis des Host. Die jeweils durch den Befehl möglichweise veränderten Dateien sind im Kopf der ausführlichen Befehlsbeschreibung aufgeführt.

Befehl Kurzform Funktion
allies a Allianzen mit anderen Spielern schließen/aufheben
bigtargets b mehr als 50 Ortungsmeldungen übertragen
client c Client am PHOST identifizieren (nicht für Spieler!)
extmission e erweiterte Mission starten
give g Schiffe oder Planeten an andere Rassen übergeben
language l Sprache der PHOST-Meldungen ändern
mess m Nachrichten verschicken
rumor r Gerüchte verbreiten
racename ra Rassenname ändern
send s Konfiguration des PHOST abfragen
xtern x Schnittstelle zu externen Zubehörprogrammen


(17.3) Der "allies"-Befehl des PHOST

Befehl "allies"
Abkürzung "a"
Syntax allies {Config R CP CP...} | {Add|Drop R R...}
Aktivierung CPEnableAllies
geänderte Dateien AUXDATA.HST

Dieser Befehl erlaubt es Spielern, formale Allianzen zu schließen (und zu brechen). Der PHOST erlaubt es sogar, die Allianzen im Detail zu definieren.
Um eine Allianz zu schließen, schicken beide Seiten private Nachrichten an sich selbst, in denen der jeweiligen Gegenseite die vereinbarten Rechte angeboten werden. Diese Nachricht beginnt mit einer Kommandozeile:
allies add <Nummer der Rasse> um eine Allianz zu schließen
allies drop <Nummer der Rasse> um eine Allianz zu beenden
Es ist möglich, mehrere Allianzen mit einer Kommandonachricht zu bearbeiten. Dazu werden die Nummern der jeweiligen Rassen gemeinsam, durch Leerzeichen voneinander getrennt, angegeben.
In der zweiten Zeile kann die Allianz dann definiert werden:
allies config [Nummer der Rasse] [Option]s [Option]p [Option]m [Option]c [Option]v
Alle Optionen sind durch ein Leerzeichen getrennt. Mit "+" wird eine Option gewährt, mit "-" verweigert und mit "~ " auf Gegenseitigkeit angeboten. Mögliche Optionen sind:

s ship der Verbündete kann meine Sternenbasen mit benutzen
p planet der Verbündete kann meine Planeten mit benutzen
m mines der Verbündete kann meine Minenfelder gefahrlos durchfliegen
c combat in Kampfsituationen agieren meine Einheiten gemeinsam mit dem Verbündeten
v vision der Verbündete erhält alle meine Ortungsergebnisse

Die Optionen sollten in genau dieser Reihenfolge und vollständig angegeben werden.

Beispiel:
Die Föderation (Spieler 1) möchte den Cyborg eine Allianz anbieten und ihm auf jeden Fall seine Ortungs-ergebnisse zugänglich machen, sowie ihm auf Gegenseitigkeit zu erlauben, Föderations-Minenfelder zu durch-fliegen und gemeinsame Kampfhandlungen auszuführen. Dazu schickt die Föderation folgende Nachricht an die Föderation:

allies add 6
allies config 6 -s -p ~ m ~ c +v

Mit dem nächsten Zug wird Spieler 6 (Cyborg) eine Meldung bekommen, in der ihm vom PHOST mitgeteilt wird, daß die Föderation ihm eine Allianz angeboten hat und welche Rechte ihm erteilt wurden.

(17.4) Der "bigtargets"-Befehl des PHOST

Befehl "bigtargets"
Abkürzung "b"
Syntax bigtargets "Yes"/"No"
Aktivierung CPEnableBigTargets
geänderte Dateien  PCONFIG.HST

Mit diesem Kommando kann ein Spieler einstellen, ob der PHOST ihm mehr als 50 Ortungsmeldungen von Schiffen anderer Rassen in seinen künftigen .RST-Files schicken soll oder nicht.
Warnung: Diese Option niemals aktivieren, wenn die eigenen Programme nicht sicher damit umgehen können!
Normalerweise wird die Anzahl der Ortungsmeldungen vom Host auf maximal 50 begrenzt. Das mit VGA-Planets v3.0 für DOS ausgelieferten Zubehörprogramm UNPACK.EXE kann maximal 50 Ortungsmeldungen verarbeiten.
Für diese Option ist ein Programm wie VPUTIL ab Version 3.0 oder VPUNPACK ab Version 3.0 erforderlich.
Win-Planets 3.5 ignoriert diese Option und entpackt nur die ersten 50 Ortungsmeldungen.

Beispiel:  bigtargets y


(17.5) Der "client"-Befehl des PHOST

Befehl "client"
Abkürzung "c"
Syntax client [Identifikation]
Aktivierung immer aktiv
geänderte Dateien  REG.LOG

Dieser Befehl ist nicht für den Gebrauch durch Spieler gedacht, sondern zur Identifizierung von Client-Programmen am PHOST. Ist das vom Spieler benutzte Programm dem PHOST bekannt, so kann dieser Einstellungen vornehmen, um bekannte Fehler zu umgehen oder spezielle Sonderfunktionen zu unterstützen.
Bekommt der PHOST einen Client-Befehl, so fügt er den Eintrag in der REG.LOG-Datei ein.
Nochmal, dieser Befehl ist nicht zur Benutzung durch Spieler gedacht. Es wird erwartet, daß ein Client-Programm direkt eine Meldung in die Liste der ausgehenden Nachrichten in der .TRN-Datei einfügt.
Der PHOST erkennt derzeit alle Client-Namen, die mit "VPA" beginnen, als "VGA-Planets Assistant" von Alex Ivlev.

Beispiel:  client VPA 3.49a
c Yoyodyne 1.11


(17.6) Der "extmission"-Befehl des PHOST

Befehl "extmission"
Abkürzung "e"
Syntax extmission Schiff Missionscode [Intercept-Parameter [Tow-Parameter]]
Aktivierung immer aktiv
geänderte Dateien  keine

Dieser Befehl ist dafür gedacht, Benutzern der DOS-Version 3.0 die erweiterten Missionen des PHOST zugänglich zu machen. WinPlanets-Spieler können diese Missionen über die "M.I.T."-Schnittstelle unter "ship missions" erreichen.
Der "extmission"-Befehl benötigt immer mindestens zwei Parameter. Die Nummer des Schiffes, dessen Mission geändert werden soll, und die Nummer der erweiterten Mission. Die Nummern der erweiterten Missionen, wie sie in der MISSION.INI-Datei definiert sind (für WinPlanets-Spieler), beginnen normalerweise mit 20 und gehen so weit, wie Missionen für den PHOST aktuell definiert sind. Beachte, daß die Basisnummer der externen Missionen am Host geändert werden kann, so daß sich ein Spieler, der den "extmission"-Befehl verwenden möchte, vorher die Basisnummer vom Host holen sollte.
Einige erweiterte Missionen benötigen zusätzliche Parameter. Bei WinPlanets sind dies der "Intercept"- und der "Tow"-Parameter. Beim PHOST folgen sie einfach nach der Schiffs- und Missionsnummer. Sind nicht alle notwendigen Parameter für eine angeforderte Mission angegeben, so wird der "extmission"-Befehl nicht ausgeführt.
Dieser Weg zum Aufruf von erweiterten Missionen ist mit Sicherheit nicht elegant, aber für die Spieler, die nicht WinPlanets benutzen, stellt er den einzigen Weg dar, an diese Missionen heranzukommen.

Beispiel:  extmission 123 20
ext 235 21 100 0
e 301 24 30


Liste der derzeit unterstützten erweiterten Missionen des PHOST:

 Code  Name der Mission Intercept-Parameter Tow-Parameter
20 Torpedos bauen aus Fracht - -
21 Minenfeld legen Anzahl der zu legenden Torpedos  Nummer der Eignerrasse 
22 Web-Minenfeld legen Anzahl der zu legenden Torpedos Nummer der Eignerrasse
23 Torpedos aus Minenfeld sammeln  Anzahl der zu sammelnden Torpedos  -
24  Lade Mineralien und baue Torpedos  Anzahl der zu bauenden Torpedos -
25 Geld entladen auf Planet Geldmenge in MC -
26 Torpedos auf Schiff transferieren empfangendes Schiff Anzahl Torpedos
27 Raumjäger auf Schiff transferieren empfangendes Schiff Anzahl Raumjäger
28 Geld auf Schiff transferieren empfangendes Schiff Geldmenge in MC


(17.7) Der "give"-Befehl des PHOST

Befehl "give"
Abkürzung "g"
Syntax give {Ship|Planet} NNN [To] R
Aktivierung CPEnableGive
geänderte Dateien  keine

Dieser Befehl dient der Übergabe von Schiffen oder Planeten an eine andere Rasse. Die beiden Rassen müssen dazu nicht alliiert sein.
Die Übergabe erfolgt nur, wenn die nehmende Rasse mindestens ein Schiff mit wenigstens einem Clan Kolonisten an Bord an der selben Position wie das zu übergebende Objekt hat oder sich das zu übergebende Objekt im Orbit um einen von der nehmenden Rasse kontrollierten Planeten befindet.
Die Übergabe erfolgt sofort, d.h. nach der Auswertung der .TRN-Dateien und bevor der Host gestartet wird, jedoch erst nachdem alle "give"-Befehle gefunden wurden. Damit ist es für zwei Rassen möglich, ihre Schiffe innerhalb eines Zuges zu tauschen.
Der "give"-Befehl hat die gleiche Wirkung, wie der Friendly Code "gs[N]".
Der Friendly Code "gs[N]" hat immer Vorrang vor dem PHOST-Befehl "give".
Wird ein Schiff weggegeben, so wird sein Zielpunkt gelöscht (das Schiff wird sich diese Runde nicht bewegen), seine Mission und sein primärer Feind gelöscht und sein Friendly Code auf einen Zufallswert gesetzt.
Wird ein Planet weggegeben, so wird sein Friendly Code zufällig verändert. Befindet sich eine Basis über dem Planeten, so werden alle Hüllen im Lager recycled und alle anstehende Bauaufträge gelöscht.
Werden in einer Runde mehrere "give"-Befehle für ein Objekt erteilt, so wird immer der letzte Befehl ausgeführt.
Der auf den Befehl "give" folgende Parameter muß "ship" (Schiff) oder "planet" (Planet) sein. Beide Wörter können abgekürzt werden, mindestens jedoch "s" oder "p" sein. Der nächste Parameter enthält die Nummer des Schiffes oder Planeten (1..500) Als nächstes kann ein "to" (auf "t" kürzbar) eingefügt werden. Der letzte Parameter enthält die Nummer der Rasse, die das Schiff oder den Planeten bekommen soll. Mögliche Werte sind hier 1 bis 11 (nicht "A" oder "B").

Beispiele:  give ship 123 to 5
g p 321 4
give sh 2 t 11


(17.8) Der "language"-Befehl des PHOST

Befehl "language"
Abkürzung "l"
Syntax language English / German / French / Spanish / Italian / Dutch
Aktivierung CPEnableLanguage
geänderte Dateien  PCONFIG.HST

Mit diesem Kommando kann ein Spieler die Sprache auswählen, in der er die Meldungen vom PHOST bekommt. Die derzeit unterstützten Sprachen sind "English", "German", "French", "Spanish", "Italian", und "Dutch".

Beispiel:  1 ger


(17.9) Der "message"-Befehl des PHOST

Befehl "message"
Abkürzung "m"
Syntax message {R [R R...] | Universal}
Aktivierung CPEnableMessage und AllowPlayerMessages
geänderte Dateien  keine

Dieser Befehl ermöglicht es dem Spieler, eine Nachricht an eine frei wählbare Gruppe von anderen Spielern zu schicken.
Der Befehl funktioniert genauso, wie das Absenden einer Nachricht im Planets-Programm, nur das es hier möglich ist, die Zielgruppe frei zu wählen, während Nachrichten beim Planets-Programm nur an einzelne Spieler oder an alle geschickt werden können.
Die Parameter des "message"-Befehls sind die Nummern der Völker von 1 bis 12. Beachte, daß die Nummern allein aus Zahlen bestehen. Die Völker 10 und 11 sind NICHT als "a" oder "b" definiert.
Als Sonderfall ist das Schlüsselwort "universal" (kurz: "u") definiert und bezeichnet alle 11 Völker.
Die Nummer 12 definiert die HOST.LOG-Datei. Wenn der HostOp nach dem Durchlauf des Host die HOST.LOG-Datei kontrolliert, dann wird er als Einziger die Nachricht erhalten. Dies ist ein möglicher Weg, eine Nachricht an den Host zu schicken.

Nummer Rasse / Empfänger
1  Spieler 1 - Die Solar Federation 
2 Spieler 2 - Die Lizards
3 Spieler 3 - Die Birdmen
4 Spieler 4 - Die Fascists
5 Spieler 5 - Die Privateers
6 Spieler 6 - Die Cyborg
7 Spieler 7 - Die Crystals
8 Spieler 8 - Das Evil Empire
9 Spieler 9 - Die Robots
10 Spieler 10 - Die Rebels
11 Spieler 11 - Die Lost Colonies
12 Host - HOST.LOG-Datei
u universal - an alle Spieler

Beachte; daß für diesen Befehl sowohl "CPEnableMessage" als auch "AllowPlayerMessages" aktiv sein müssen. Einzige Ausnahme: Nachrichten an Volk 12 (den Host) sind auch ohne aktives "AllowPlayerMessages" möglich.
Nachrichten, die mit diesem Befehl erzeugt werden, müssen nicht mit "<" beginnen, wenn der Spieler auch zu den Empfängern gehört, da sie nicht weiter durch den Befehlsprozessor des PHOST laufen.

Beispiele: mess 2 3 4 11
Hallo Freunde, nächste Runde geht’s gegen die Fed

Die Cyborgs


(17.10) Der "rumor"-Befehl des PHOST

Befehl "rumor" oder "rumour"
Abkürzung "ru"
Syntax rumor {R [R R...] | Universal}
Aktivierung CPEnableRumor und AllowPlayerMessages
geänderte Dateien  keine

Dieser Befehl gleicht dem "message"-Befehl bis auf eine Kleinigkeit. Der Absender der Nachricht ist für den empfangenden Spieler nicht zu sehen. Dieser Befehl kann benutzt werden, um anonyme Nachrichten (Gerüchte) an einen oder mehrere Spieler zu schicken.
Denk daran, daß der Urheber des Gerüchtes unter gewissen Umständen ermittelt werden kann. Da Nachrichten vom Host grundsätzlich in der eingehenden Reihenfolge bearbeitet werden, ist der Urheber eines Gerüchtes sehr deutlich zuzuordnen, wenn er zunächst eine Universalnachricht abschickt, dann sein Gerücht verbreitet und danach noch eine weitere Universalnachricht verbreitet.
Dieser Befehl ist hauptsächlich dazu gedacht, das Spiel interessanter zu gestalten, und nicht, die Anonymität des Absenders um jeden Preis zu wahren.

Beispiel:  rumor 1 10
Ich habe ein Gerücht gehört,
daß Du nächste Runde geplättet wirst!

Deep Throat


(17.11) Der "racename"-Befehl des PHOST

Befehl "racename"
Abkürzung "ra"
Syntax racename <langer Name> <kurzer Name> <Adjektiv
Aktivierung CPEnableRaceName
geänderte Dateien  RACE.NM

Dieser Befehl ermöglicht es einem Spieler, die Namen seiner Rasse abzufragen und zu ändern. Der Unterbefehl "get" benötigt keine weiteren Parameter und generiert eine Nachricht mit den drei Namen der eigenen Rasse (Langform, Kurzform und Adjektiv des Namens), wie in der aktuellen RACE.NM-Datei des PHOST vorhanden.
Die Unterbefehle "long", "short" und "adjective" ermöglichen es dem Spieler, die Komponenten des Namens der eigenen Rasse zu ändern. Jeder dieser drei Unterbefehle fügt alle ihm folgenden Zeichen in einer Zeichenkette zusammen, um den aktuellen Namenseintrag zu bilden.
Die Länge der Namen der Rassen ist begrenzt. Sind die übermittelten Namen länger, so werden diese gekürzt. Folgende Längenbeschränkungen bestehen:

Langform des Namens der eigenen Rasse  1 bis 30 Zeichen
Kurzform des Namens der eigenen Rasse 1 bis 20 Zeichen
Adjektiv des Namens der eigenen Rasse 1 bis 12 Zeichen

 

Beispiel:  ra lo The Federation of Planets
ra short The Fed
ra a Fed
rac get


(17.12) Der "send"-Befehl des PHOST

Befehl "send"
Abkürzung "s"
Syntax send {Config|Racenames}
Aktivierung CPEnableSend
geänderte Dateien  keine

Dieser Befehl wird benutzt, um den PHOST zu bitten, die PCONFIG.SRC-Datei oder die RACE.NM-Datei des Host in die UTIL.DAT-Datei für den Spieler einzufügen. Zubehörprogramme des Spielers können dann die Komponenten aus der UTIL.DAT-Datei auspacken und als getrennte Datei in das System des Spielers einfügen.
Der Befehl "send config" hat die gleiche Wirkung wie der FriendlyCode "con". Beide haben den gleichen Effekt und werden mit CPEnableSend aktiviert.
Ist die angeforderte Datei nicht im Spielverzeichnis verfügbar, so ist dieser Befehl wirkungslos und es tritt kein Fehler aus.

Beispiele:  send config
  s r


(17.13) Der "xtern"-Befehl des PHOST

Befehl "xtern"
Abkürzung "x"
Syntax xtern Parm Parm ...
Aktivierung immer aktiv
geänderte Dateien  keine

Der "xtern"-Befehl erlaubt es Spielern, Eingaben an externe Zubehörprogramme zu machen und diese anzupassen.
Dieser Befehl kann als eine Art "Esc"-Mechanismus zur Kommunikation mit anderen Zubehörprogrammen genutzt werden.
Der Befehl schreibt eine Zeile in die "xterncmd.ext"-Datei im Spielverzeichnis. Eine eventuell bestehende Datei dieses Namens wird überschrieben. Die erste Zeile dieser Datei enthält die Zugnummer ("turn-number") gefolgt vom 18 Zeichen langen Zeitmerker ("timestamp") des aktuellen Zuges. Die weiteren Zeilen in der Datei sind wie folgt aufgebaut:

P: Parameter_1 Parameter_2 ...

wobei "P" für die Spielernummer [1..11] steht und die folgenden Parameter die vom Spieler an den "xtern"-Befehl angefügten Parameter sind. Hat Spieler 3 zum Beispiel folgende Zeile an den Befehlsinterpreter des PHOST geschickt

xtern buy a vowel

dann wird der PHOST folgende Zeile in die "xterncmd.ext"-Datei schreiben:

3: buy a vowel

Der "xtern"-Befehl hat keine weitere Funktion außer dem Schreiben dieser Datei. Der Befehl hat keinen weiteren Einfluß auf den PHOST und erzeugt grundsätzlich keine Fehlermeldungen.
Beachte außerdem, daß die "xterncmd.ext"-Datei nicht geschrieben wird, wenn der PHOST im "read-only"-Modus ausgeführt wird (mit "-r"- oder "-c"-Parameter).

Beispiel:  xtern cmd parm parm


Diese Seite wurde zuletzt am 05.08.2000 18:47:17 geändert.