[PHost Logo]

Host-Ablauf
Der Portable Host
Version 4.0j

Inhalt

Einleitung

Während des Hostlaufes passieren Dinge in einer bestimmten Reihenfolge: Missionen, Produktion, Bewegung, und so weiter. Spieler sollten diese Reihenfolge kennen. Beispielsweise werden Minenfelder vor der Bewegung gelegt, so dass das Minenfeld an der Position entsteht, an der das Schiff sich momentan aufhält, nicht an der Position, wo es hinfliegt. Dieses Dokument beschreibt den kompletten Ablauf der Aktionen in PHost. Außerdem wird beschrieben, wie du deine eigenen Schritte in den Ablauf integrieren kannst.

Nach oben


Host-Reihenfolge

PHost besteht aus drei Phasen; die mittlere Phase ist in Schritte (stages) unterteilt. Die Reihenfolge dieser Teile ist konstant. Hosts können jedoch einige Teile deaktivieren und an jeder Stelle zwischen zwei Schritten oder Phasen Addons laufen lassen.

Phase 1 - Verarbeitung der Turns

(v3.4c:) Bis PHost 3.4b werden Allianzbefehle am Anfang von Phase 2 verarbeitet, Remote-Control-Aufträge werden in der Reihenfolge ihres Erscheinens in den Turndateien abgearbeitet. Außerdem senden diese PHost-Versionen anonyme Nachrichten in der Reihenfolge aus den Turndateien, und garantieren somit keine Anonymität.

Phase 2 - Host-Ablauf

Anmerkung zum Tarnen: Alle Stellen, an denen die Tarnung versagen kann, sind in dieser Liste aufgeführt. Allerdings können auch Addon-Programme die Tarnung aufheben. Außerdem kann die Tarnung nach jedem Addon-Aufruf versagen, wenn das Schiff zu wenig Sprit oder zu viel Schaden hat.

(v4.0e:) Befehle, die mit auxcmds.txt gegeben wurden, werden am Anfang von Phase 2 verarbeitet.

Schiffs-/Planeten-Übergaben
Name des Schrittes: TransferOwner

Alle give-Befehle und gsX-Kommandocodes werden überprüft und danach gleichzeitig ausgeführt. Damit können insbesondere zwei Spieler Schiffe tauschen und dennoch die Anforderung "Partner muss ein Schiff an der selben Position haben" erfüllen.

Enttarnen: (v4.0j:) Schiffe, die den Besitzer wechseln, müssen enttarnen.

Große Meteore
Name des Schrittes: LargeMeteors

Wenn LargeMeteorsImpacting nicht Null ist, gehen entsprechend viele große Meteore nieder. Ansonsten wird ein Meteor mit der Wahrscheinlichkeit RandomMeteorRate generiert.

Meteoriten-Hagel
Name des Schrittes: MeteorShowers

Für jeden Planeten wird mit Wahrscheinlichkeit MeteorShowerOdds ein kleiner Meteoritenhagel niedergehen.

Enttarnen
Name des Schrittes: AntiCloak_1

Anti-cloak-Schiffe enttarnen Schiffe in Reichweite. Die Anti-Cloak-Schiffe werden in Id-Reihenfolge verarbeitet, so dass ein Schiff in Reichweite mehrerer Lokis von dem mit der niedrigsten Id enttarnt wird.

Enttarnen: Schiffe, die von einem Anti-Cloak-Schiff beeinflusst wurden, müssen sofort enttarnen.

Super Spy Deluxe
Name des Schrittes: DeluxeSuperSpy

Auf allen betreffenden Planeten werden die Kommandocodes geändert. Der neue Code wird von dem Schiff mit der jeweils niedrigsten Id bestimmt.

Enttarnen: Wenn der Ionenpuls ausgelöst wird, werden Schiffe sofort enttarnt.

Neue Eingeborene
Name des Schrittes: NewNativesAppear

Wählt NewNativesPerTurn-mal einen Planeten aus, der eine neue eingeborene Bevölkerung erhält, falls er noch keine hat.

"Rob"-Mission der Privateers
Name des Schrittes: RobMission

Räuber schlagen in per-player Id order zu. Jedes Schiff raubt seine Opfer in Id-Reihenfolge aus (wenn die Piraten also nicht genug Frachtkapazität haben, um deine Flotte zu leeren, behalten die Schiffe mit den hohen Ids Fracht übrig; wenn die Opfer weniger haben, als die Räuber tragen können, gehen die Räuber mit den hohen Id-Nummern leer aus).

Kasino-Schiffe
Name des Schrittes: GamblingShips

Kasino-Schiffe generieren Geld, in Id-Reihenfolge.

Fracht abladen kann nicht übersprungen werden
Name des Schrittes: CargoDump

Schiffe laden, in Id-Reihenfolge, Frachtgut auf Planeten ab. Hier findet der normale Schiffs/Fremdplanet-Transfer statt, sowie die Aktionen des bdm-Kommandocodes und der Mission Beam Down Credits.

Dieser Schritt kann nicht übersprungen werden (während des restlichen Zuges müssen die Frachttransporter leer sein).

Fracht übergeben kann nicht übersprungen werden
Name des Schrittes: CargoTransfer

Schiffe transferieren, in Id-Reihenfolge, Fracht an andere Schiffe (Schiff/Feindschiff-Transfer). Wenn der Frachttransfer fehlschlägt, wird das Frachtgut an das ursprüngliche Schiff zurückgegeben. Frachttransfers zwischen Schiffen desselben Besitzers werden schon vom Client aufgelöst. Frachttransfers, die eine Mission erfordern, werden später ausgeführt.

Dieser Schritt kann nicht übersprungen werden (während des restlichen Zuges müssen die Frachttransporter leer sein).

Fracht von überladenen Schiffen abwerfen kann nicht übersprungen werden
Name des Schrittes: TrimShipCargo

Schiffe können aus verschiedenen Gründen überladen sein. In diesem Schritt wird entsprechend Fracht über Bord geworfen, so dass wieder alles in den Frachtraum passt.

Dieser Schritt kann nicht übersprungen werden (während des restlichen Zuges dürfen Schiffe nicht überladen sein).

Crew-Austausch mit Akademieschiffen Seit: PHost 4.0i
Name des Schrittes: CrewExchange

Akademieschiffe tauschen, in Id-Reihenfolge, Mannschaft aus (Mission Crew Exchange).

Training Seit: PHost 4.0
Name des Schrittes: Training

Die Training-Mission wird in Id-Reihenfolge ausgeführt.

Frachttransfers
Name des Schrittes: BeamTransfers

Die folgenden Aktionen werden in Id-Reihenfolge für jedes Schiff ausgeführt:

Wenn ein Schiff sowohl eine Beam-Transfer-Mission, als auch einen Kommandocode nutzt, wird zuerst die Mission und dann der Kommandocode ausgeführt (in PHost 3.4c und eher wurde nur die Mission ausgeführt).

Frachtgut laden per Mission
Name des Schrittes: GatherMission

Die folgenden Aktionen werden in Id-Reihenfolge für jedes Schiff ausgeführt:

Planeten beamen Geld hoch
Name des Schrittes: BeamUpCredits

Der planetare bum-Kommandocode wird in Id-Reihenfolge abgearbeitet. Der Code con wird ebenfalls hier behandelt (der Befehl send config wird bereits in Phase 1 verarbeitet und ist unabhängig von diesem Schritt).

Enttarnen: Nach diesem Schritt (und denen davor) können Schiffe genug Treibstoff verloren haben, um nicht mehr tarnen zu können. Schiffe verlieren Treibstoff durch Rob, können aber von Freunden aufgetankt werden (Frachttransfer zwischen Völkern), um die Tarnung aufrecht zu erhalten.

Minenfelder verfallen
Name des Schrittes: MinefieldDecay

Minenfelder verfallen. Da dieser Verfall vor dem Minenlegen und Minenräumen stattfindet, können Schiffe, die vorher in einem Minenfeld waren, nachher außerhalb sein.

Minenlegen
Name des Schrittes: MineLaying

Schiffe legen Minen. Die genaue Reihenfolge hängt von der PHost-Version ab.

Wenn AlternativeMinesDestroyMines aktiviert ist, explodieren Minen aus überlappenden Feldern hier. In PHost 4.0a/3.4e und eher passiert dies immer.

Überlappende Minenfelder explodieren Seit: PHost 4.0b/3.4f
Name des Schrittes: MinesDestroyMines

(v4.0b:) Überlappende feindliche Minenfelder explodieren.

Dieser Schritt steht in PHost 3.4e/4.0a und älter nicht zur Verfügung; in diesen Versionen explodieren überlappende Minenfelder nur, wenn jemand versucht, eins der Minenfelder zu vergrößern. Siehe auch den vorigen Schritt.

Minen räumen
Name des Schrittes: MineSweeping

Schiffe suchen nach Minen und räumen diese, in Reihenfolge der Schiffs-Ids.

Meldungen vom Minen-Scan
Name des Schrittes: MinefieldScan

Hier werden die Berichte über die Minenfelder gesendet, die im vorigen Schritt gescannt wurden.

Suche nach Wurmlöchern veraltet

In PHost bis Version 4.0d, findet der Wormhole-Scan hier statt. In Version 4.0e und neuer findet er nach dem Terraforming statt.

Fangminen entziehen Sprit
Name des Schrittes: WebDraining

Schiffe innerhalb eines Crystal-Fangminenfeldes verlieren Treibstoff (mehrfach, wenn die Minenfelder überlappen).

Enttarnen: Nach diesem Schritt (und denen davor) können Schiffe genug Treibstoff verloren haben, um nicht mehr tarnen zu können.

Ionenstürme bewegen sich Seit: PHost 4.0j
Name des Schrittes: MoveIonStorms

Wenn mehr Stürme existieren, als IonStormActivity angibt, löst sich der schwächste Sturm auf.

Ionenstürme, in Reihenfolge der Id-Nummer...

Zum Schluss können Stürme unter bestimmten Bedingungen verschmelzen.

Ionenstürme beeinflussen Schiffe Seit: PHost 4.0j
Name des Schrittes: IonStormEffects

In Reihenfolge der Sturm-Id werden Schiffe enttarnt und die jetzt ungetarnten Schiffe beeinflusst (bewegt, beschädigt, Crewverlust). Schiffe, die in mehreren Ionenstürmen sitzen, werden von allen beeinflusst.

Ionenstürme bewegen sich Seit: PHost 4.0j
Name des Schrittes: NewIonStorms

Wenn die Anzahl Ionenstürme IonStormActivity unterschreitet, entstehen neue Stürme. Es entstehen zufällig bis zu drei Stürme.

Beachte, dass hierbei das Limit IonStormActivity überschritten werden kann. Das ist durchaus beabsichtigt; nächsten Zug wird dann ein schwacher Sturm verschwinden.

Ionensturm-Berichte Seit: PHost 4.0j
Name des Schrittes: IonStormReports

Sendet Nachrichten über alle Ionenstürme an die Spieler.

Spezialmissionen I
Name des Schrittes: SpecialMissions_1

Zuerst, in Reihenfolge der Schiffs-Id

Danach, in Reihenfolge der Schiffs-Id

Schiffe bauen Raumjäger
Name des Schrittes: BuildFighters

Schiffe der Robots/Rebels/Colonies bauen in Id-Reihenfolge Raumjäger. Hier wird der Kommandocode lfm, die Missionen Build Fighters und Gather-build Fighters sowie der automatische Raumjäger-Bau der Rebels behandelt.

Schiffe bauen Torpedos
Name des Schrittes: BuildTorpedoes

In Id-Reihenfolge werden der mkt-Kommandocode und die Missionen Build Torpedoes und danach die Mission Gather-build Torpedoes abgearbeitet.

==> Bis PHost-Version 4.0h/3.4j hat "Gather-build Torpedoes" Priorität und verhindert, dass mkt ausgeführt wird.

Alchemy
Name des Schrittes: Alchemy

Die drei Alchemie-Funktionen.

Vorbereitung der Bauliste
Name des Schrittes: ShipBuildOrders

Durchläuft alle Sternenbasen in Id-Reihenfolge, beginnend mit einer zufällig gewählten Basis, und stellt die Bauaufträge in die Bauliste.

Die Kommandocodes für Priority Builds werden ebenfalls hier verarbeitet, falls durch den Modus der Baureihenfolge nötig.

Schiffsbau
Name des Schrittes: ShipBuilding_1

Führt Schiffsbau-Aufträge aus, in der Reihenfolge der Bauliste, solange freie Schiffsslots vorhanden sind.

Sternenbasen verschrotten Teile
Name des Schrittes: DumpOldBaseParts

Der Kommandocode dmp.

Tech-Downgrades auf Sternenbasen kann nicht übersprungen oder verändert werden

Hier werden die Techlevels von Sternenbasen herabgesetzt. Eine Sternenbasis, die einem unregistrierten Spieler gehört, darf maximal Tech 7 für Triebwerke und Tech 6 für die anderen Gebiete haben, es sei denn, beim Bau der Basis waren die richtigen Eingeborenen anwesend. Diese Prüfung schlägt nur dann an, wenn ein unregistrierter Spieler den Platz eines registrierten Spielers einnimmt.

Sternenbasis-Missionen I
Name des Schrittes: BaseMissions_1

In Reihenfolge der Sternenbasen-Ids...

Supply Repair
Name des Schrittes: SupplyRepair_1

Schiffe reparieren sich mit Vorräten.

Boarding (Entern, Tow-Capture)
Name des Schrittes: BoardingParties

Entern (Tow-Capture), in Id-Reihenfolge der schleppenden Schiffe.

Enttarnen: (v4.0j:) Schiffe, die den Besitzer wechseln, müssen enttarnen.

Sternenbasen bauen Raumjäger
Name des Schrittes: FreeFighters

Sternenbasen bauen kostenlose Raumjäger (verbrauchen nur Mineralien, kein Geld).

Bestimmung der Tow-Missionen
Name des Schrittes: TowResolution

Alle Tow-Missionen, die gemäß der Regeln zur Konfliktauflösung fehlschlagen, werden gelöscht.

Movement kann nicht übersprungen werden
Name des Schrittes: Movement

Schiffe, die sich bewegen, können auf eine Mine laufen und beschädigt werden. Schiffe, die eine Fangmine treffen, verlieren Treibstoff. Dadurch kann die Tarnung versagen. Schiffe laufen nicht auf Minen während...

Enttarnen: Nach diesem Schritt können Schiffe genug Treibstoff verloren haben, um nicht mehr tarnen zu können. Genauer gesagt enttarnen Schiffe sofort, wenn sie von einem Minentreffer zu stark beschädigt werden oder der Treibstoff alle wird. Schiffe enttarnen ebenfalls sofort, wenn sie ein Wurmloch passieren. Neu v4.0i/3.4k: Schiffe, die einen Hypersprung ausführen, müssen sich ebenfalls enttarnen.

Glory Devices platzen
Name des Schrittes: GloryDevices

Glory Devices werden in Id-Reihenfolge ausgelöst. Wenn ein Glory-Device-Schiff zusätzlich eine funktionierende Enttarn-Funktion hat, wird diese noch vor der Detonation ausgelöst.

Enttarnen: Schiffe, die von einem Anti-Cloak-Schiff beeinflusst wurden, müssen sofort enttarnen. Nach dieser Phase müssen Schiffe, die das Schadenslimit erreicht haben (durch ein Glory Device) ebenfalls enttarnen.

Chunneling
Name des Schrittes: Chunneling

Chunneling in aufsteigender Id-Reihenfolge der Initiatoren.

Enttarnen: Neu v4.0i/3.4k: Schiffe, die einen Chunnel initiieren oder als Partner dienen, müssen sich enttarnen.

Enttarnen
Name des Schrittes: AntiCloak_2

Loki-Schiffe enttarnen erneut, in Id-Reihenfolge. Hierbei werden die neuen Positionen der Lokis und der getarnten Schiffe benutzt. Ein getarntes Schiff, welches von A nach B fliegt, wird damit nicht von einem Loki enttarnt, der von B nach A fliegt (solange A und B mehr als 10 ly entfernt sind).

Enttarnen: Schiffe, die von einem Anti-Cloak-Schiff beeinflusst wurden, müssen sofort enttarnen. Nach dieser Phase müssen Schiffe, die das Schadenslimit erreicht haben (durch ein Glory Device) ebenfalls enttarnen.

Colonize-Mission
Name des Schrittes: ColonizeMission

Die Colonize-Mission, in Reihenfolge der Schiffs-Ids.

Supply Repair
Name des Schrittes: SupplyRepair_2

Schiffe reparieren sich noch einmal.

Sternenbasis-Missionen II
Name des Schrittes: BaseMissions_2

In Reihenfolge der Sternenbasen-Ids...

Combat
Name des Schrittes: Combat

Jede Gruppe aus Schiffen und Planeten wird anhand der Regeln der Kampfreihenfolge aufgelöst.

Enttarnen: (v4.0j:) Schiffe, die DamageLevelForCloakFail erreichen oder ihren Treibstoff verlieren, müssen sich sofort enttarnen. Ebenso müssen alle Schiffe enttarnen, die den Besitzer wechseln.

Supply Repair
Name des Schrittes: SupplyRepair_3

Schiffe reparieren sich noch einmal.

Terraforming
Name des Schrittes: Terraforming

Terraforming-Schiffe arbeiten in Id-Reihenfolge.

Enttarnen: Nach diesem Schritt (und denen davor) können Schiffe genug Treibstoff verloren haben, um nicht mehr tarnen zu können. Da Schiffe sich nun direkt im Kampf enttarnen, hat diese Stufe nicht mehr allzu viele Auswirkungen, allerdings ist sie noch nützlich, wenn ein anderes Kampfsystem eingesetzt wird.

Suche nach Wurmlöchern Seit: PHost 4.0e
Name des Schrittes: WormholeScan

Schiffe suchen nach Wurmlöchern, in Id-Reihenfolge.

==> In PHost bis Version 4.0d wird dieser Schritt direkt nach dem Minenfeld-Scan durchgeführt.

Sensoren-Abtastung
Name des Schrittes: SensorSweep

Normaler Sensor Sweep und Bioscanner, in Id-Reihenfolge.

Wenn ExtendedSensorSweep aktiviert ist, besteht Sensor Sweep aus mehreren Teilen. Das Minen-Suchen findet vor der Bewegung in MineSweeping statt. Die Suche nach Wurmlöchern passiert in WormholeScan.

Spezialmissionen II
Name des Schrittes: SpecialMissions_2

Erst werden die Missionen Pillage und Rebel Ground Attack in Per-Player Id-Reihenfolge ausgeführt. Danach werden Dark Sense-Nachrichten gesendet.

Planeten produzieren
Name des Schrittes: PlanetaryProduction

Minen und Fabriken produzieren. Danach bilden sich neue Mineralien im Planetenkern (TransuraniumDecayRate).

Zufriedenheit auf Planeten
Name des Schrittes: PlanetaryHappiness

Änderungen der Zufriedenheit entsprechend der gewählten Steuersätze. Wenn die Zufriedenheit (Happiness) unter 30 liegt, wird der Steuersatz auf 0 gesetzt (und die Änderung mit diesem Wert berechnet).

Besteuerung auf Planeten
Name des Schrittes: PlanetaryTaxation

Steuereinnahmen.

Wachstum auf Planeten
Name des Schrittes: PlanetaryGrowth

Kolonisten und Eingeborene vermehren sich.

Limitierungen auf Planeten
Name des Schrittes: PlanetaryLosses

Für jeden Planeten:

Schiffsbau
Name des Schrittes: ShipBuilding_2

Führt verbleibende Schiffsbau-Aufträge aus, um durch Kampf freigewordene Schiffsslots zu füllen.

Assimilation
Name des Schrittes: Assimilation

Cyborgs assimilieren Eingeborene.

Super Spy
Name des Schrittes: SuperSpyMission

Super Spy-Schiffe senden ihre Berichte in Id-Reihenfolge.

Forschung
Name des Schrittes: ShipExploration

Schiffe, die einen fremden Planeten umkreisen (und Treibstoff haben) erzeugen Forschungsberichte.

Erfahrungs-Aufstieg
Name des Schrittes: Erfahrung

(v4.0:) Schiffe und Planeten sammeln Erfahrung entsprechend ihrer Aktionen diesen Zug. Außerdem werden hier die Erfahrungsberichte erzeugt.

Phase 3 - Erstellen der Results

Nach oben


Den Host-Ablauf beeinflussen

Es gibt zwei Möglichkeiten, den Hostablauf zu beeinflussen. Beachte, dass es jedoch immer nur möglich ist, Aktionen hinzuzufügen (bzw. zu entfernen), nicht jedoch, die Reihenfolge der Aktionen zu ändern.

Wenn du ein Programm in den Hostablauf eingefügt hast, speichert PHost alle Daten ab, schließt alle Dateien, und ruft das Programm auf. Danach werden die Host-Daten wieder geladen, überprüft, und PHost läuft weiter.

Die Auxhost-Dateien

Seit Host 3.20 gibt es auxhost1.ini und auxhost2.ini; in Host 3.22.005 wurde auxbc.ini eingeführt. PHost unterstützt diese Mechanismen ebenfalls.

Die .ini-Dateien sind Textdateien, die im Spielverzeichnis abgelegt werden, jede Zeile enthält einen auszuführenden Befehl.

Die Datei auxbatt.ini wird standardmäßig nicht unterstützt (mittels PControl lässt sich das aber leicht nachrüsten). Andere Endungen als .ini werden ebenfalls nicht unterstützt (Tim's Host ruft auch auxhost1.exe und auxhost1.bat auf).

Der PControl-Abschnitt

Der Hostablauf wird über einen Abschnitt pcontrol in der pconfig.src festgelegt. Für jeden Schritt kannst du auszuführende Aktionen angeben.

==> Beachte bitte, dass die Reihenfolge der Schritte nicht verändert werden kann, egal, in welcher Reihenfolge die Namen in diesem Abschnitt auftauchen.

Jede Zeile im pcontrol-Abschnitt hat die Form

SchrittName = Aktion

dabei ist SchrittName der oben angegebene Name des Schrittes, Aktion ist eines der folgenden:

Die Namen der Aktionen können bis auf den ersten Buchstaben abgekürzt werden.

Jede anweisung kann eins der folgenden sein:

(v4.0c:) Du kannst mehrere Aktionen angeben, indem du mehrere Zuweisungen für den selben Schritt angibst. Die Aktionen werden dann in der angegebenen Reihenfolge ausgeführt. Wenn mindestens eine Aktion vom Typ Skip oder Replace angegeben ist, wird der Schritt übersprungen, ansonsten wird er ausgeführt. Damit ergibt sich folgende Reihenfolge für die Aktionen:

In PHost bis Version 3.4f/4.0b kann maximal eine Aktion pro Schritt angegeben werden.

INI-Dateien

Die .ini-Dateien, die bei den PControl-Aktionen angegeben sind, aber auch die auxhost-Dateien, sind normale Textdateien mit einem Befehl (DOS- oder Shellbefehl) pro Zeile. PHost führt diese Dateien Zeile für Zeile aus, daher sind mehrzeilige Befehle, goto und andere solcher interessanter Dinge nicht zulässig. Wenn du diese Funktionen benötigst, erstelle ein Shellscript bzw. eine Batchdatei und rufe diese auf.

Nach oben


Kurzübersicht

Hier sind nochmal alle Schritte von Phase 2 in der Reihenfolge ihrer Ausführung aufgelistet, mit Links zur jeweiligen Beschreibung:

Nach oben


Dieses Dokument wird vom Portable Host Projekt (support@phost.de) gepflegt.

Letzte Aktualisierung 15 October 2005.