![]() |
PVCR Benutzerhandbuch
|
PHost-Kampf muss mut PVCR abgespielt werden, dem PHost-Kampf-Recorder. Die eingebauten Recorder in planets.exe und Winplan können PHost-Kampf nicht wiedergeben, sie zeigen Fehler an oder stürzen ab.
Informationen zur Installation von PVCR für deinen Client findest du im Abschnitt Kampf des Dokumentes Das Erste Mal mit PHost. Dieses Dokument beschreibt die Benutzung von PHost.
PVCR ist ein 16-bit-DOS-Programm. PVCR kann alle Kämpfe wiedergeben, die mit einer öffentlichen PHost-Version erzeugt wurden, daher ist es nicht nötig, alte Versionen aufzuheben.
Die Aufrufsyntax für PVCR ist ähnlich der des PHosts:
|
Wenn du DOS-Planets benutzt, ist PVCR üblicherweise als
vcr.exe installiert.
PVCR ist so konzipiert dass du, wenn du ihn für deine
planets.exe oder dein VPA korrekt
eingerichtet hast, die normale VCR-Funktion deines Clients nutzen
kannst. Wenn du PVCR für Winplan eingerichtet hast, kannst du ihn
normal starten, ohne größere Verrenkungen anstellen zu müssen.
Wenn du keine Option angibst, die etwas anderes besagt, macht PVCR folgendes, wenn er gestartet wird:
-h | Hilfetext anzeigen und Programm beenden. |
-v | PVCR's Versionsnummer anzeigen und Programm beenden. |
-pspieler | Die Kämpfe von spieler anzeigen. Wenn diese Option angegeben ist, liest PVCR weder vcrinit.tmp noch gamestat.dat. Wenn du ein Host-Verzeichnis hast, kannst du mit -p0 (Spieler 0) alle Kämpfe dieses Zuges ansehen (vcr.hst). |
-s | Standalone-Modus. Nach dem Aufruf von PVCR wird nicht automatisch planets.exe geladen. Wenn du PVCR per Hand startest, solltest du diesen Schalter benutzen. |
-rprogramm | Rückkehr zu angegebenem Programm (reload) anstelle von planets.exe. Diese Option könnte für Programmierer von Clients und Kampfsimulatoren interessant sein. |
-bN | Nur den N-ten Kampf anzeigen, dann Rückkehr. Diese Option ist für Client-Programme interessant. Diese Option funktionierte in PVCR vor Version 3.3e(2) nicht. |
-f | Erzwingen (force). Gibt die Kämpfe mit PVCR wieder, auch wenn sie von HOST erzeugt wurden. Damit erhältst du nicht das gleiche Ergebnis wie der Host, allerdings bekommst du vielleicht einen Eindruck von den Unterschieden zwischen HOST-Kampf und Alternative Combat. |
-F | Fehler bei der Schriftanzeige umgehen. Auf einigen Systemen werden die laufenden Daten der Einheiten ("noch 10% Schilde") falsch oder gar nicht angezeigt. Mit diesem Schalter wird das Problem umgangen. Das ist ein Fehler in der verwendeten BGI-Bibliothek, nicht in PVCR, so dass wir das Problem nicht einfach beheben können. |
-tzeit | Zeitparameter. Diese Option beeinflusst die Wiedergabe-Geschwindigkeit. Standardwert ist 15. Mit kleineren Werten erfolgt die Wiedergabe schneller. Dieser Parameter sollte im Bereich [1,20] liegen. |
-Xseg:ofs | Liefert Kampfergebnisse in dem angegebenen Datenbereich zurück. Diese Option ist für Programmierer von Hilfsprogrammen gedacht. Siehe weiter unten für mehr Informationen. |
Die Spielauswahl gibt es in Version 4.0e und später.
In der Spielauswahl werden zwei Menüs angezeigt. Links stehen die verfügbaren Spiele (entsprechend den 8 Spiel-Slots von Winplan), rechts stehen alle Spieler, die in diesem Zug Kämpfe sehen.
Du siehst Informationen über einen Kampf. Du kannst durch die Kämpfe blättern und sie abspielen. Nach jedem Kampf gelangst du in die Kampfauswahl zurück.
Der Kampf wird in der oberen Hälfte des Bildschirmes angezeigt: die Schiffe als Rechtecke, Raumjäger als Dreiecke usw. In der unteren Hälfte stehen laufende Daten zu den Einheiten, wie der aktuelle Schaden, Ladezustand der Waffen, und so weiter.
Dieser Abschnitt ist nur für Programmierer von Interesse.
Diese Schnittstelle ist vermutlich nicht besonders nützlich,
aber sie existiert und wird daher hier beschrieben. Wenn du Kämpfe
simulieren möchtest, ist es vermutlich einfacher, das PDK oder die
Datei combat.log zu verwenden.
Wenn du die Option -Xseg:ofs angibst, liefert PVCR Informationen über die angesehenen Kämpfe an das aufrufende Programm. Die Adresse wird im üblichen hexadezimalen Format für Real-Mode-Adressen (also z.B. 12CF:038E) angegeben.
Der Ergebnisbereich muss mit den folgenden zwei Elementen beginnen:
long Signature word Number of Results |
Das erste Feld muss auf den Wert 1033FE51h gesetzt werden; damit prüft PVCR, dass er nicht versehentlich uninitialisierten Speicher überschreibt.
Der Header wird von einer Anzahl Ergebnis-Strukturen gefolgt. Die Anzahl ist im Header angegeben. PVCR speichert nicht mehr Ergebnisse als angegeben im Ergebnis-Bereich.
Die Ergebnis-Strukturen haben folgendes Format:
word Valid word[2] Shields word[2] Damage word[2] Fighters word[2] Torps word[2] Crew word[2] Outcome |
Das erste Feld wird von PVCR auf 1 gesetzt, wenn die folgenden Werte
gültig sind (also den korrekten Ausgang des Kampfes wiedergeben).
PVCR speichert die Ergebnisse nur, wenn der Kampf tatsächlich
angesehen wurde. Es werden die Ergebnisse zu dem Zeitpunkt gespeichert,
zu dem die Wiedergabe beendet wurde. Wenn der Kampf also bis zu Ende
angeschaut wurde, steht hier der korrekte Kampfausgang. Wenn der Nutzer
vorzeitig abgebrochen hat, wird der Zustand zum Zeitpunkt des Abbruchs
gespeichert.
Die restlichen Felder sollten selbsterklärend sein. Das Feld Outcome ist das gleiche wie in util.dat:
0 | Sieger: diese Einheit hat den Kampf gewonnen |
1 | Gekapert: diese Einheit wurde gekapert (trifft niemals für Planeten zu) |
2 | Zerstört: diese Einheit wurde zerstört (bei Planeten wurde die komplette Verteidigung zerstört und der Planet gekapert) |
3 | Kampfunfähig: diese Einheit hatte kein weiteres Offensivpotenzial mehr |
Sobald PVCR beendet wird, wird das Feld Valid auf den Wert 51FE3310h. Damit wird verhindert, dass der Übergabe-Bereich versehentlich noch einmal verwendet wird; außerdem wird dem Aufrufer damit signalisiert, dass die Ergebnisse korrekt ausgefüllt wurden (PVCR also ohne Fehler beendet wurde).
Letzte Aktualisierung 31 May 2015.