PHost - Was ist neu in PHost 4

PHost 4.1h


Inhalt

Einleitung

Dieses Dokument enthält die wichtigsten Änderungen von PHost 4.x verglichen mit PHost 3.x und eher. Möglicherweise sind jedoch nicht alle Änderungen aufgeführt. PHost 4 enthält ein paar größere Änderungen, so dass man PHost 4.x fast als ein neues Programm bezeichnen könnte. Allerdings basieren PHost 3.x und 4.x auf der selben Codebasis; wenn technisch möglich sind neue Funktionen auch in Version 3.x eingeflossen. Wir werden die 3.x-er Serie noch so lange pflegen, wie das möglich ist.

Als Faustregel gilt: PHost 4 enthält all das, was ihn zu verschieden von PHost 3 macht, als dass beide dieselbe Nummer tragen könnten.

Um es gleich vorwegzunehmen: PHost 4 ist ein Programm für VGA Planets 3.0 oder 3.5, als Ersatz für das Host-Programm 3.x. Mit dem Spiel "VGA Planets 4" hat PHost nichts zu tun, das ist ein komplett anderes Spiel.

Nach oben


Für Spieler sichtbare Änderungen

Versionsnummern

Frühere PHost-Versionen hatten Nummern der Form 3.2.1.9, wobei 3.2 die Version des Wisseman-Hosts ist, die dieser PHost emulieren soll, 1.9 ist die eigentliche Versionsnummer. Da das zu Verwirrung führt (auf welchen Teil von "3.2.3.2" bezieht sich die Bezeichnung "PHost 3.2"?), und da die beiden Hosts sich sowieso auseinander-entwickelt haben, haben wir die ersten beiden Teile der Versionsnummer entfernt.

PHost kann konfiguriert werden, um fast jeden 3.xer-Host zu emulieren, aber dennoch bleiben Unterschiede bestehen.

999 Schiffe

PHost 4.x unterstützt bis zu 999 Schiffe. Das genaue Limit kann in pconfig.src eingestellt werden (NumShips). Wenn alle Spieler ein entsprechendes Client-Programm verwenden, kann damit das Schiffslimit etwas herausgezögert werden. Siehe NumShips für weitere Informationen.

Wenn es weniger als 500 Schiffe gibt, erzeugt PHost Daten, die mit allen Clients kompatibel sind.Genauer gesagt erzeugt PHost 4.x immer Result-Dateien im "Host999-Format". Keine der bekannten Unpack-Programme stören sich daran. Allerdings gehen aktuelle Winplan-Versionen davon aus, immer mit Host999 zu tun zu haben, und erzeugen gelegentlich falsche Scannerergebnisse. Dieses Problem wird damit umgangen. Schiffs-Ids größer 500 werden erst vergeben, wenn mehr als 400 Schiffe im Spiel sind. Damit können Spieler das Spiel mit einem "alten" Client beginnen und später umsteigen.

Schiffsfunktionen

PHost 4 führt Schiffsfunktionen ein, die einzelnen Schiffen zugeordnet sind. Ursprünglich waren die Funktionen direkt den Schiffstypen zugeordnet (also Typ 105 ist immer das Alchemieschiff). In PHost 3.x konnten die Zuordnungen auf einzelne Spieler beschränkt werden (also der kleine Frachter kann nur dann hypfen, wenn er den Rebels gehört). In PHost 4 können die Eigenschaften nun sogar einzelnen Schiffen zugeordnet werden.

Wenn entsprechend eingestellt (AssignTo=Ship in hullfunc.txt) ist ein realistischeres Verhalten möglich: wenn du ein Rebel-Schiff kaperst, kann es auch für dich hypfen. Wenn die Rebels dir einen Frachter stehlen, kann dieser nicht springen. Außerdem wird dadurch ein Addon, mit dem man zusätzliche Funktionen für ein Schiff kaufen kann, erst möglich.

Es gibt ein paar neue Schiffsfunktionen, die die Möglichkeit der Zuweisung an einzelne Schiffe benötigen: CloneOnce (Schiff wird Unclonable nach dem klonen), und entsprechend GiveOnce und Ungiveable. Damit können Schiffe wertvoller gemacht werden oder neue Regeln durchgesetzt werden (z.B. "kein Handel mit Schiffen über 400 kt"). Außerdem gibt es nun eine Schiffsfunktion Level2Tow, das die Schiffe beim Schleppen stärker macht.

(v4.0i:) Mit PHost 4.0i kommt ein weiterer Stoß Schiffsfunktionen dazu. Es gibt nun kleinere Versionen der Chunnel-Funktion: ChunnelSelf, ChunnelOthers und ChunnelTarget. Einige altbekannte Schiffseigenschaften können nun explizit zugewiesen werden: Tow, PlanetImmunity, Boarding. Du kannst diese Fähigkeiten damit jedem Volk geben, und sie auch direkt Schiffen zuweisen (so dass z.B. alle vom Rebel gebauten SDSFs immun gegen Angriffe von Planeten sind). Es gibt eine neue Terraforming-Funktion sowie einige neue Defensiv-Funktionen (AntiCloakImmunity, FullWeaponry, HardenedEngines, HardenedCloak, IonShield, Commander). Schließlich gibt es noch ein Reparatur-Schiff sowie ein Akademie-Schiff für das neue Erfahrungs-System.

Sensoren-Abtastung (sensor sweep)

Ursprünglich musstest du Sensor Sweep benutzen, um gegnerische Planeten zu finden, Mine Sweep, um Minen zu finden, und WRS, um Wurmlöcher zu finden. Die Mission Sensor Sweep macht nun alles auf einmal.

(v4.0e:) Die Suche nach Wurmlöchern findet nun zur gleichen Zeit wie die Sensorenabtastung statt.

Hiermit soll das Spiel vereinfacht werden. Einige Dinge siehst du sogar, ohne ausdrücklich danach zu suchen, also ist es nicht sehr sinnvoll, drei verschiedene andere Aufträge ausführen zu müssen, um den Rest zu sehen.

Wenn du das nicht magst, kannst du es mit der ExtendedSensorSweep-Option ausschalten. Die alten Missionen bleiben weiter vorhanden. Um tatsächlich Minen zu räumen, brauchst du immer noch Mine Sweep.

Anonyme Spiele

Es können nun alle Kommunikationsmittel verboten werden. Es war schon immer möglich, Nachrichten, Allianzen, Remote Control usw. zu deaktivieren. Die letzte Möglichkeit, Informationen zu übermitteln, nämlich die Schiffsnamen, können nun ebenfalls deaktiviert werden. Wenn AllowShipNames auf No steht, sehen Spieler nur ihre eigenen Schiffsnamen, fremde Schiffsnamen werden ausgeblendet.

Diese Funktion steht auch in PHost 3.4 zur Verfügung.

Abschleppen (Towing)

Die Regeln für das Alternative Towing wurden geändert. Die zurückgelegte Distanz spielt nun eine größere Rolle. Bisher war die Stärke eines Schiffes 163*(Engine Contribution) + (Distance Factor). Jetzt lautet die Formel (Engine Contribution) + 19*(Distance Factor). Insbesondere können damit Schiffe mit beispielsweise 3 Antrieben auch mal Schiffe mit 4 Triebwerken schleppen. In den Distance Factor geht nun auch der verfügbare Treibstoff ein. Wenn du nur Sprit für 40 ly hast, ist der Distance Factor also 40, auch wenn du ein gravitonisches Schiff mit Warp 9 hast.

Die Faktoren können geändert werden, um die alte Formel zu simulieren (TowStrengthEngineScale, TowStrengthDistanceScale); die Tatsache, dass Treibstoff berücksichtigt wird, kann nicht geändert werden.

Die Fähigkeit, andere Schiffe abzuschleppen, kann nun frei einzelnen Schiffen zugewiesen werden anstatt nur von der Anzahl der Triebwerke (eins oder mehrere) abzuhängen. Damit kannst du z.B. großen Kampfschiffen diese Fähigkeit entziehen und kleinen Aufklärern geben.

Die neue Formel für die Tow-Stärke steht auch in PHost 3.4b zur Verfügung.

Kampf

Die Kampfreihenfolge (numerischer Kommandocode) wird nun auch für Intercept Attack berücksichtigt. Bisher kämpften diese Schiffe in Id-Reihenfolge, beginnend mit der höchsten Id. Diese Änderung ist auch in PHost 3.4b verfügbar.

PHost kann nun so konfiguriert werden, dass auf einem Planeten Kolonisten überleben, wenn er in einem Kampf übernommen wird. Die meisten von ihnen sind schließlich Zivilisten. Mit ColonistCombatSurvivalRate wird der Prozentsatz eingestellt. Die Zufriedenheit sinkt dabei nach dem Kampf aber um ColonistCombatSurvivalRate / 2 Punkte. Da diese Option das Spielverhalten nachhaltig verändern kann, gibt es sie nur in PHost 4.0 und folgenden Versionen. (In PHost 4.1d kann diese Einstellung für alle Spieler verschieden sein, sowohl in Abhängigkeit vom Planeten-Besitzer, als auch in Abhängigkeit vom Schiffs-Besitzer; siehe die Beschreibung der Option)

Schiffslisten-Designer können nun Todesstrahlen (death rays) bauen. Dieser Waffentyp ignoriert alle Schilde und tötet nur Crew. Damit ist ein Todesstrahl gut geeignet, um gegnerische Schiffe zu kapern. Ein Todesstrahl hat einen "Bang"-Wert von 0. Gleiches gilt für Torpedos.

Im Kampf zahlt sich Erfahrung aus. Erfahrene Schiffe kämpfen besser als unerfahrene.

Ansonsten haben sich die Mechanismen des Kampfes nicht geändert. Wenn du weder Todesstrahlen noch das Erfahrungs-System benutzt, kannst du die Kämpfe weiterhin mit einem alten VCR-Programm anschauen.

Erfahrung

Schiffe und Planeten sammeln Erfahrung, während sie verschiedene Dinge tun. Erfahrene Einheiten sind bei gewissen Tätigkeiten besser als unerfahrene. Zusammengefasst:

  • Erfahrene Einheiten kämpfen besser
  • Erfahrene Schiffe haben ein geringeres Risiko, eine Mine zu treffen.
  • (v4.0i:) Schiffsfunktionen können eine bestimmte Erfahrungsstufe erfordern.
  • Schiffe sammeln Erfahrung durch Bewegung, Alchemie, Kampf, und Training.
  • Planeten erhalten Erfahrung durch Kampf
  • Fürs Rumsitzen und Nichtstun gibt's auch ein bißchen Erfahrung
  • (v4.0i:) Akademieschiffe bilden Mannschaft schneller aus als andere Schiffe

Die genauen Details stehen auf der Seite über Erfahrung.

Designer-Völker

Um mehr Möglichkeiten für selbst entworfene Völker zu lassen, ist die Spezialmission nicht länger an die anderen Rasseneigenschaften gekoppelt. Mit der Einstellung PlayerSpecialMission kannst du jedem Spieler jede Mission zuweisen.

Viele andere Optionen wurden arrayized und können damit nun für alle Spieler separat eingestellt werden. Damit können interessante neue Völker konfiguriert werden.

Fairness

Während der 4.0er-Linie hat PHost einiges über Fairness gelernt.

Per-Player Id Order (Per-Player Id-Reihenfolge): Oftmals haben Schiffe, die zuerst kommen, einen Vorteil. Und oftmals werden Schiffe mit niedrigen Id-Nummern zuerst ausgewählt. Um die Auswirkungen der Id-Nummern auf das Spiel zu verringern, werden nun einige Dinge in Per-Player Id-Reihenfolge ausgeführt: die Schiffe jedes Spielers arbeiten in Id-Reihenfolge, allerdings sind die Folgen aller Spieler zufällig verwoben. Damit bleibt die Fairness gewahrt, obwohl das Verhalten für einzelne Spieler immer noch so vorhersagbar bleibt wie vorher.

Überlappende Minenfelder: Überlappende Minen explodieren nun alle gleichzeitig, nicht nur, wenn sie gelegt werden. Damit funktionieren nun nicht nur Starbase+ und ACP korrekt, sondern wir erhalten auch mehr Fairness. Es hängt nicht mehr von den Id-Nummern ab, wieviele Minen du verlierst, wenn jemand ein paar Torpedos in deinen Minenfeld-Teppich legt.

Ionenstürme

PHost unterstützt nun Ionenstürme. Dies war die letzte größere Funktion des HOST, die dem PHost noch fehlte. Unsere Stürme ähneln denen des HOST, sind aber nicht vollständig identisch.

Ionenstürme sind ein Naturphänomen, welches Schiffe beeinflusst - positiv oder negativ -, ähnlich wie Meteore Planeten beeinflussen.

Wenn du Ionenstürme verwenden möchtest, setze IonStormActivity auf einen Wert ungleich 0 (in HOST wird 5 gerne genommen). Standardmäßig ist dieser Parameter 0, was die Ionenstürme deaktiviert. PHost erzeugt, verwaltet und zerstört Ionenstürme automatisch, du musst beim Mastern nichts ändern.

Nach oben


Änderungen für Hosts

Konfiguration bereinigt

Die Konfiguration wurde aufgeräumt. Die riesige Konfigurationsdatei war schon recht abschreckend. Man kann PHost auch ohne Universitäts-Abschluss spielen, nur glaubt das jemand bei über 300 Konfigurationseinstellungen?

Einige der selten benutzten Optionen wurden entfernt. Andere sind nun optional, so dass sich durchschnittliche Hosts nicht damit herumärgern müssen. Die schiffslisten-spezifischen Teile der Konfiguration können in eine separate Datei ausgelagert werden, die zur Schiffsliste gehört. Insgesamt werden damit wesentlich kürzere Konfigurationsdateien möglich.

Einige Optionen werden nicht länger akzeptiert:

  • Optionen, die schon länger veraltet sind (ColonialFighterSweepRate, ColonialFighterSweepRange, RaceTaxRate) ergaben bisher nur eine Warnung, nun werden sie nicht länger erkannt und ergeben einen Fehler.
  • AllowMeteorMessages war nicht sinnvoll; wenn ein Meteor auf einem Planeten einschlägt, gibt es keinen Grund, das nicht zu melden. Außerdem wurden die util.dat-Meldungen sowieso immer versendet.
  • CPEnableMessage wird nicht mehr unterstützt. Die Möglichkeit, Nachrichten zu versenden, wird nun einzig und allein von AllowPlayerMessages gesteuert. Es macht keinen Unterschied, ob eine Nachricht mit dem message-Befehl oder normal verschickt wurde. Das Ausschalten von AllowPlayerMessages deaktiviert die anonymen Nachrichten nicht länger; wenn CPEnableRumor weiter aktiv ist, können immer noch anonyme Nachrichten gesendet werden.

Während der 4.1er-Reihe werden wir die Anzahl Konfigurationsoptionen weiter verringern. Beispielsweise gibt es keine Notwendigkeit für einen Schalter zum Deaktivieren von Hiss, wenn man auch einfach dem entsprechenden Spieler eine andere Mission zuweisen kann - wenn man einmal davon absieht, dass vermutlich sowieso niemand überhaupt erst einmal Hiss abschalten will.

PControl

Änderungen am Host-Ablauf sind nun einfacher. Die Anweisungen im pcontrol-Abschnitt haben einiges dazugelernt: es können nun mehrere zu einem Schritt angegeben werden, der Befehl kann direkt angegeben werden, es können Platzhalter für Verzeichnisnamen verwendet werden, und es ist möglich, einen Befehl nach einem Schritt auszuführen, nicht nur davor. Der neue Befehl Addon erlaubt eine einfache, modulare Konfiguration für komplexe Add-ons.

Diese Funktionen wurden auch in der 3.4er Serie eingeführt.

Nach oben


Technische Änderungen

PHost 4 verwendet leicht geänderte Dateiformate. Ältere PDK-Addons funktionieren erst, wenn sie mit Hilfe eines PDKs, welches PHost 4 unterstützt, neu übersetzt wurden. Sobald das getan wurde, funktioniert das Addon sowohl mit PHost 3 und PHost 4. Addons, die das PDK nicht verwenden, müssen portiert werden, falls die auxdata.hst verwenden.

Neues AUXDATA-Format

Das Format der auxdata.hst wurde geändert. Das ist der Hauptgrund für die neue Versionsnummer: neue Informationen in der auxdata.hst erfordern eine neue Nummer, und um 999 Schiffe oder schiffsspezifische Eigenschaften implementieren zu können, benötigen wir neue Informationen.

auxdata.hst besteht nun aus getrennten Abschnitten, ähnlich der utilx.dat. Damit kann die Datei erweitert werden, ohne dass alle existierenden Programme aktualisiert werden müssen. Sobald ein Programm PHost 4 unterstützt, wird es sicherlich mit allen folgenden Versionen laufen.

Neue UTIL.DAT-Einträge

Wir haben viele neue util.dat-Datensätze hinzugefügt. Das Ziel ist es, für jede Subraumnachricht einen Eintrag zu haben.

Neuer TRN-Befehl

PHost akzeptiert nun einen neuen Turn-Befehl, Nummer 62 "SendBack". Dieser Befehl enthält einen util.dat-Datensatz, den PHost einfach zurücksendet. Client-Programme können mit dieser Funktion Daten speichern. Siehe Technische Informationen für mehr Informationen.

Nach oben


Kleinere Änderungen

Befehlsnachrichten

Der Befehlsprozessor wurde tiefergelegt: die Hauptziele waren die Vereinfachung von Nachrichten an Addons, und die Vereinfachung des automatischen Sendens von Nachrichten.

  • Es gibt nun eine besondere Notation, um Nachrichten an ein Addon zu adressieren (foo: command). Wir hoffen, dass neue Addons dieses Format auch benutzen. Aktuelle PDK-Versionen enthalten dementsprechend eine Funktion, die die Implementation entsprechender Parser vereinfacht.
  • Es gibt kein Limit für die Zeilenlänge mehr. Dieses Limit steht nur im Weg, wenn Programme die Nachrichten schreiben.
  • Du kannst selbst lange Befehle schreiben, indem du den Befehl mit einem Pluszeichen auf der nächsten Zeile fortsetzt.
  • Einige Befehle können extern behandelt werden.

Diese Funktionen gibt es auch in PHost 3.4b (Externalisierung: 3.4d).

Sprachen

Viele der Nachrichten von PHost sehen etwas holprig aus, da sie historisch gewachsen sind und denen von Tim Wort für Wort gleichen sollen. Das ist wichtig für Programme, die Message-Parsing betreiben. Leider sind das einige nicht unbedeutende Programme wie VPA 3.51 (VPA 3.61 verwendet endlich util.dat).

Deswegen gibt es in PHost 4 eine neue Sprachdatei NewEnglish, in der die meisten Nachrichten überarbeitet und dabei Tippfehler und Grammatik-Schnitzer behoben sowie der Textsatz verbessert wurden. Du kannst diese Sprache mit der Konfigurationsoption Language oder dem language-Befehl auswählen. Im Gegensatz zu der standardmäßigen Sprache English muss hier nicht auf Kompatibilität geachtet werden.

Piotr Winiarczyk hat eine polnische Sprachdatei beigesteuert.

Diese Änderungen sind auch in PHost 3.4c verfügbar.

In PHost 4.1 (und 3.5) wurde das Dateiformat der Sprachdatei geändert. Mit dem neuen Format können auch andere Entwickler die Datei bearbeiten und so z.B. neue Übersetzungen erstellen.

Nach oben


Letzte Aktualisierung 31 May 2015.


Mail support@phost.de for support, ideas, bug reports, questions. Contact Details