Pitboss (Civ4): Unterschied zwischen den Versionen

Aus CivWiki
Wechseln zu: Navigation, Suche
(Probleme auf Client/Spielerseite)
K (Abschaltung der Gamespy-Server)
 
(24 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
(In Arbeit) In diesem Artikel wird die Konfiguration eines Pitboss-Servers (PB-Server) und häufige Fehlermeldungen beschrieben.
+
[[Kategorie:Civ4]]
 +
In diesem Artikel wird die Konfiguration eines Pitboss-Servers (PB-Server) und häufige Fehlermeldungen beschrieben.
 
Die meisten Dinge wurden von Redarg bereits zusammengefasst und in [http://www.civforum.de/showthread.php?64908-Pitboss-Serverbetrieb diesem Thread] gebündelt.
 
Die meisten Dinge wurden von Redarg bereits zusammengefasst und in [http://www.civforum.de/showthread.php?64908-Pitboss-Serverbetrieb diesem Thread] gebündelt.
 
In dem PDF im ersten Beitrag dieses Threads sind weitere Details zu finden, die bisher nicht auf diese Seite übertragen wurden
 
In dem PDF im ersten Beitrag dieses Threads sind weitere Details zu finden, die bisher nicht auf diese Seite übertragen wurden
  
= Allgemeine Konfiguration =
+
== Allgemeine Konfiguration ==
== Nützliche Parameter der Civilization.ini ==
+
=== Nützliche Parameter der Civilization.ini ===
== Linux ==
+
=== Linux ===
== Erweiterte Administration ==
+
=== Erweiterte Administration ===
 
  Siehe PB Mod
 
  Siehe PB Mod
== Benutzung auf entfernten Rechnern (Headless) ==
+
=== Benutzung auf entfernten Rechnern (Headless) ===
  
= Verwendung des Altroot-Parameters =
+
== Verwendung des Altroot-Parameters ==
== Unerwünschtes Verhalten beim ersten Start ==
 
== Einrichtung mehrerer Spiele ==
 
  
= Hinweise zum Betrieb des Servers =
+
Um mehrere Instanzen des PB-Servers auf einem Rechner laufen zu lassen, kann man beim Start einen Pfad übergeben.
== Fernwartung eines Servers ==
+
Dieses Verzeichnis übernimmt dann die Funktion des „My Games“-Verzeichnises bei einem normalen Start.
 +
 
 +
Beispiel-Skript (startPB.bat):
 +
 
 +
  SET ALTROOT=C:\PBs\PB1
 +
  SET CIV4BTS_PATH=C:\Civ4\Beyond the Sword\
 +
  SET MODNAME=YOURMOD
 +
 
 +
  rem Use new exe if possible
 +
  SET CIV4BTS_EXE=%CIV4BTS_PATH%\Civ4BeyondSword_PitBoss2014.exe
 +
  IF not exist "%CIV4BTS_EXE%" (
 +
    SET CIV4BTS_EXE=%CIV4BTS_PATH%\Civ4BeyondSword_PitBoss.exe
 +
  )
 +
  IF not exist "%CIV4BTS_EXE%" (
 +
    echo.Exe not found. Is the Path %CIV4BTS_PATH% correct?
 +
    goto exit
 +
  )
 +
 
 +
  "%CIV4BTS_EXE%" mod= "%MODNAME%"\" /ALTROOT=%ALTROOT%
 +
  :exit
 +
 
 +
Das Leerzeichen hinter „mod= “ darf nicht weggelassen werden, da anderenfalls der erste Buchstabe des Modnames verloren geht.
 +
 
 +
=== Unerwünschtes Verhalten beim ersten Start ===
 +
 
 +
Achtung, falls die Pitboss-Exe beim Start feststellt, dass bestimmte Dateien/Unterordner nicht in dem angegebenen Ordner gefunden werden können, verschiebt er den gesamten Inhalt des „My Games/Beyond the Sword“-Ordners in das neue Verzeichnis!
 +
Falls also plötzlich alle Spielstände, etc verschwunden sind sollte man in den Ordnern nachschauen, die man als Altroot-Argument angegeben hat. Am besten erstellt man ein Backup des My Games-Ordners, bevor man mit dem Altroot-Argument experimentiert.
 +
 
 +
=== Einrichtung mehrerer Spiele ===
 +
 
 +
Wählt man beim Start unterschiedliche ALTROOT-Parameter, kann man mehrere Instanzen gleichzeitig starten. Die Spielstände
 +
werden dann in den jeweiligen Unterverzeichnissen ([...]/Saves/Multi) angelegt. Die Auto-Speicherstände werden (sofern dass nicht per Mod geändert wurde) nur beim Rundenwechsel und dem Login der Spieler angelegt.
 +
 
 +
=== Login der Spieler beschleunigen ===
 +
Der PB-Server überträgt seine Daten mit maximal 10kB/s. Das führt in fortgeschrittenen Spielen zu einer minutenlangen Wartezeit, weil der Spielstand auf mehrere MB anwächst. Um dieses Problem zu lösen wurde eine Modifikation der BTS-Exe entwickelt mit der die Spielstände per HTTP(S) übertragen werden:
 +
[https://github.com/YggdrasiI/PBStats/tree/master/tests/GetSaveOverHttp Binaries, Anleitung & Quellcode].
 +
Als Pitboss-Host muss neben dem PB-Server dann auch einen (simplen) Webserver laufen lassen, damit die Spielstände auf dem neuen Weg erreichbar sind!
 +
 
 +
Für das PB73 wurde [http://www.civforum.de/showthread.php?92689-PB-73-40-Teams-auf-der-Weltkarte&p=6739657&viewfull=1#post6739657 in diesem Beitrag] ein Zip + Installationsanleitung für den Schnelllader veröffentlicht.
 +
 
 +
== Hinweise zum Betrieb des Servers ==
 +
=== Fernwartung eines Servers ===
 
RDP, VNC
 
RDP, VNC
== Feste Serveradresse für dynamische IPs ==
+
=== Feste Serveradresse für dynamische IPs ===
 
Will man seinen Server im Heimnetz mit häufig wechselnder IP betreiben kann man einen der
 
Will man seinen Server im Heimnetz mit häufig wechselnder IP betreiben kann man einen der
 
zahlreichen DynDNS-Dienste nutzen. Man erhält eine URL, welche man den Spielern mitteilt.
 
zahlreichen DynDNS-Dienste nutzen. Man erhält eine URL, welche man den Spielern mitteilt.
Zeile 24: Zeile 64:
 
Es gibt viele freie sog. DynDNS-Dienste  
 
Es gibt viele freie sog. DynDNS-Dienste  
  
== Adminpasswort ändern ==
+
=== Adminpasswort ändern ===
 
Wenn man als Spieler eingeloggt ist, kann man das Adminpasswort, welches man beim Einrichten des Spieles definiert hat ändern.
 
Wenn man als Spieler eingeloggt ist, kann man das Adminpasswort, welches man beim Einrichten des Spieles definiert hat ändern.
 
Dazu geht man ins Hauptmenü („Esc“ drücken) und wählt dort „Spieldetails“ aus. Bei der Frage nach dem Passwort
 
Dazu geht man ins Hauptmenü („Esc“ drücken) und wählt dort „Spieldetails“ aus. Bei der Frage nach dem Passwort
Zeile 32: Zeile 72:
  
  
= Häufige Probleme =
+
== Häufige Probleme ==
== Cpu-Auslastung ==
+
=== Cpu-Auslastung ===
 
Auch wenn kein Spieler eingeloggt ist verursacht der PB-Server eine nicht unerhebliche Last auf der CPU. Ursache ist das häufige Neuzeichnen des Fensters, was leider eine reative sinnlose Stromverschwendung darstellt und außerdem verhindert, dass man viele Spiele auf alter Hardware laufen lassen kann.
 
Auch wenn kein Spieler eingeloggt ist verursacht der PB-Server eine nicht unerhebliche Last auf der CPU. Ursache ist das häufige Neuzeichnen des Fensters, was leider eine reative sinnlose Stromverschwendung darstellt und außerdem verhindert, dass man viele Spiele auf alter Hardware laufen lassen kann.
  
Zeile 40: Zeile 80:
 
Die [https://github.com/YggdrasiI/PBStats PB Mod] enthält die radikale Option, das PB-Fenster gleich komplett auszublenden.  
 
Die [https://github.com/YggdrasiI/PBStats PB Mod] enthält die radikale Option, das PB-Fenster gleich komplett auszublenden.  
  
== Netzwerk-Auslastung & Upload-Problem ==
+
=== Netzwerk-Auslastung & Upload-Problem ===
 
Das sogenannte „Uploadproblem“ ist die gefährlichste Fehlfunktion des
 
Das sogenannte „Uploadproblem“ ist die gefährlichste Fehlfunktion des
 
Pitboss. Es macht den Betrieb eines PB-Servers sehr betreuungsintensiv. Mittlerweile gibt es
 
Pitboss. Es macht den Betrieb eines PB-Servers sehr betreuungsintensiv. Mittlerweile gibt es
Zeile 63: Zeile 103:
 
Das Tool ist Teil einer Mod, läuft aber auch ohne diese.
 
Das Tool ist Teil einer Mod, läuft aber auch ohne diese.
  
== Speicherproblem beim Login ==
+
=== Speicherproblem beim Login ===
 
Bei jedem Login eines Spielers wird ein Spielstand erzeugt. Manchmal schlägt das fehl und der Server ist solange nicht erreichbar, bis die Fehlermeldung weggeklickt wurde. Diese Meldung erscheint auch, wenn man die Python-Fehlermeldungen deaktiviert hat.
 
Bei jedem Login eines Spielers wird ein Spielstand erzeugt. Manchmal schlägt das fehl und der Server ist solange nicht erreichbar, bis die Fehlermeldung weggeklickt wurde. Diese Meldung erscheint auch, wenn man die Python-Fehlermeldungen deaktiviert hat.
  
Zeile 69: Zeile 109:
  
  
== Einfrieren des PB-Fensters ==
+
=== Einfrieren des PB-Fensters ===
  
 
Die meisten Sonderzeichen (z.B. Umlaute) im Spielernamen oder Titel des Spieles frieren das Adminfenster des PB-Servers ein. Dann kann das Spiel auch nicht mehr im Adminfenster gespeichert werden.
 
Die meisten Sonderzeichen (z.B. Umlaute) im Spielernamen oder Titel des Spieles frieren das Adminfenster des PB-Servers ein. Dann kann das Spiel auch nicht mehr im Adminfenster gespeichert werden.
Zeile 78: Zeile 118:
  
  
== Blockade durch Popup mit Python-Fehler ==
+
=== Blockade durch Popup mit Python-Fehler ===
 
Vor allem bei der Benutzung von Mods löst der Pythoncode manchmal einen Fehler aus. Das Popup der Fehlermeldung blockiert dann das Spiel.
 
Vor allem bei der Benutzung von Mods löst der Pythoncode manchmal einen Fehler aus. Das Popup der Fehlermeldung blockiert dann das Spiel.
  
Zeile 84: Zeile 124:
  
  
== Abschaltung der Gamespy-Server ==
+
=== Abschaltung der Gamespy-Server ===
Auch das Pitboss Hosting ist vom Fehlen der Gamespy NatNeg Server beeinträchtigt. Dabei kann es zu langen Wartezeiten (Timeout) beim Starten des Pitboss kommen, nachdem man auf "Direct IP" geklickt hat. Hierfür gibt es eine eine [https://github.com/YggdrasiI/PBStats/raw/master/tests/Civ4BeyondSword_PitBoss2014.exe gepatchte EXE] oder man editiert die Hosts-Datei um auf einen neuen NatNeg Server zu verweisen.
+
Auch das Pitboss Hosting ist vom Fehlen der Gamespy NatNeg Server beeinträchtigt. Dabei kann es zu langen Wartezeiten (Timeout) beim Starten des Pitboss kommen, nachdem man auf "Direct IP" geklickt hat. Hierfür gibt es eine eine [https://github.com/YggdrasiI/PBStats/raw/master/tests/Civ4BeyondSword_PitBoss2015.exe gepatchte EXE] oder man editiert die Hosts-Datei um auf einen neuen NatNeg Server zu verweisen.
 
Weitere Informationen sind [http://civ-wiki.de/wiki/Mehrspieler_(Civ4) hier] zu finden.
 
Weitere Informationen sind [http://civ-wiki.de/wiki/Mehrspieler_(Civ4) hier] zu finden.
  
 
+
=== Weltraumrennen ===
== Weltraumrennen ==
 
 
Kurz nachdem ein Spieler das Raumschiff gestartet hat, stürzt der PB-Server immer ab.
 
Kurz nachdem ein Spieler das Raumschiff gestartet hat, stürzt der PB-Server immer ab.
 
Mit folgender Methode kann man das Spiel wieder zum Laufen bekommen:
 
Mit folgender Methode kann man das Spiel wieder zum Laufen bekommen:
Zeile 97: Zeile 136:
 
# Der Serverbetreiber läd das neue Save und das Spiel geht normal weiter.
 
# Der Serverbetreiber läd das neue Save und das Spiel geht normal weiter.
  
== Korrupte Savegames unter Linux ==
+
=== Korrupte Savegames unter Linux ===
Siehe http://www.civforum.de/showthread.php?p=3691873#post3691873
+
Erster Kommentar im Forum http://www.civforum.de/showthread.php?p=3691873#post3691873
Bug ist recht selten und keine Lösung bekannt.
 
  
 +
Während dem Spiel 'PB73' trat der Fehler wiederholt auf. Die Spielstände waren unter Windows
 +
ladbar, wurden aber unter Wine als korrupt bemängelt.
 +
Es wurde die Vermutung aufgestellt, dass es mit den Alt+S-Schildertexten zusammenhängen kann ( http://www.civforum.de/showthread.php?93932-PB73-Thread-f%FCr-Server-und-Verbindungsprobleme&p=6456478&viewfull=1#post6456478 ). Verändert man diese, so kann der Spielstand wieder ladbar werden.
  
= Benutzen von Mods =
+
Später wurde folgende Lösung gefunden: Damit die Wine-Version einer bestimmten Bibliothek verwendet wird, müssen die DLLs „msvcp71.dll“ und „msvcr71.dll“ innerhalb der Civ4-Verzeichnisse entfernt werden.
== Einrichtung der PB Mod ==
 
  
 +
Update Juli 2015: Die obige Lösung hilft bei unserem derzeitigen Spiel nicht mehr. Entweder
 +
die Wine-DLLs haben sich mittlerweile geändert oder es war Zufall, dass diese Lösung geholfen hatte. Derzeit wird vermutet, dass die Fehlerursache in einem Bufferoverflow bei der Erzeugung der Checksumme liegt. Wenn man die Überprüfung der Prüfsumme aus der Pitboss-Exe patcht kann man die Spiele wieder starten.
  
 +
== Benutzen von Mods ==
 +
=== Einrichtung der PB Mod ===
  
= Probleme auf Client/Spielerseite =
+
Im PB73 kommt zum ersten mal eine Mod zum Einsatz, welche einige der obigen Probleme beseitigt und außerdem die Spieleranzahl auf 52 erhöht. Derzeit wird mit der vierten Version der Mod gespielt, welche hier herunter geladen werden kann: http://civ.zulan.net/misc/PB_Mod_v4.zip
== Absturz beim Verbinden mit dem Server ==
 
Dieser Fehler tritt meist dann auf, wenn man keine (bzw. die falsche) Mod geladen hat. Es darf auf Client- und Server-seite kein Unterschied bestehen. Auch der Speicherpfad der Mod darf nicht abweichen.
 
  
== Blockieren anderer Spieler ==
+
Um die Mod zu installieren, muss sie in das Verzeichnis
Damit die Spieler sich untereinander verbinden können, wenn sie gleichzeitig eingeloggt sind, müssen sie einen sogennannten NATNEG-Server nutzen. Seit der Pleite von Gamespy muss man einen Server aus der Community nutzen. Dafür kann man entweder eine gepatche EXE nutzen oder die Hosts-Datei seines Computers ändern, siehe [http://civ-wiki.de/wiki/Mehrspieler_(Civ4)#Direkte_IP Alternative Exe].
+
  [Civ Installationsverzeichnis]/Beyond the Sword/Mods/
 +
entpackt werden. Achtung dabei darf beim Entpacken kein weiterer Unterordner erstellt werden. Auf dem Server und Client muss das Setup identisch sein, damit es nicht zum Absturz kommt. Die richtige Struktur (Leerzeichen nach dem PB!) wäre
 +
  [Civ Installationsverzeichnis]/Beyond the Sword/Mods/PB Mod_v4/Assets
 +
Falsch ist beispielsweise
 +
  [Civ Installationsverzeichnis]/Beyond the Sword/Mods/PB_Mod_v4/PB Mod_v4/Assets
 +
und zum Absturz kommt es auch, wenn die Mod innerhalb der Eigenen Datein (My Games-Verzeichnis…) installiert wird.
  
Außerdem muss man weiterhin die Portweiterleitung im Router einrichten. Fuer Civ4 sind vor allem die Ports 2056-2107 UDP wichtig.  
+
Um Civ gleich mit Mod zu Starten kann man eine neue Verknüpfung anlegen. In den Eigenschaften schreibt man dann hinter den Pfad zur Exe noch das Argument „mod=\PB Mod_v4“.
  
== Pausen-Bug ==
+
== Probleme auf Client/Spielerseite ==
Mit Hilfe der Pause-Taste kann man den Timer eines Spieles anhalten. In der Pause werden alle Aktionen ( Bewegen von Einheiten, Sklavrei-Button klicken, Feldbelegung ändern) zwischengespeichert und erst ausgeführt, wenn das Spiel fortgesetzt wird.
+
=== Andere Spieler werden geblockt, während man im Spiel ist ===
 +
Für Hinweise zur Portweiterleitung und Umstellung auf einen neuen NatNEG-Server, siehe http://www.civ-wiki.de/wiki/Mehrspieler_(Civ4)#Pitboss
  
Aktiviert man allerdings bei offenem Diplomenü die Pause, so ist man im Menü gefangen. Andererseits kann man die Pause auch nicht mehr entfernen. Es kann auch sein, dass man beim Login vom Diploscreen eines Mitspielers begrüßt wird, aber wegen einer aktiven Pause nichts machen kann. Schließt man Civ4, weil man im Diplomenü gefangen ist, löst man außerdem das Upload-Problem aus.
+
=== Absturz beim Verbinden mit dem Server ===
 +
Dieser Fehler tritt meist dann auf, wenn man keine (bzw. die falsche) Mod geladen hat. Es darf auf Client- und Server-seite kein Unterschied bestehen. Auch der Speicherpfad der Mod darf nicht abweichen.
 +
Nutzt man den BUG-Mod, welcher das Interface erweitert, kann es auch zu Abstürzen kommen. Man sollte diese Mod daher lieber so installieren, dass man sie während der PB-Partien deaktivieren kann.
  
Lösungsmöglichkeiten:
+
=== Absturz nach dem Laden / Spielstand schreibgeschützt ===
* Spieler ohne offenen Diploscreen können die Pause für gefangene Spieler entfernen.
+
Man kann sich mit dem Server verbinden aber nachdem der Spielstand vom PB-Server geladen wurde, erscheint sehr kurz eine Fehlermeldung und das Programm schließt sich.
* Es gibt Mods, in denen man die Pause auch im Diplomenü entfernen kann: [http://www.civforum.de/showthread.php?93048-Mod-für-PB-Spiele-PB-Mod_v1 PB Moda], [http://www.civforum.de/attachment.php?attachmentid=1033194&d=1390330691 Pitboss Mod] (Vorgänger von PB Mod, welcher nur diesen Pausenbug beseitigt) (unvollständige Liste?!)
 
 
 
== Spielstand schreibgeschützt ==
 
Nachdem man sich eingeloggt hat und der Spielstand vom PB-Server geladen wurde, erscheint sehr kurz eine Fehlermeldung und das Programm schließt sich.
 
 
Der genaue Wortlaut der Fehlermeldung ist: „Ladevorgang gescheitert. Der von Ihnen gewählte Spielstand ist schreibgeschützt, um sicherzustellen, dass die Daten in Ihrem Mod-Verzeichnis nicht verändert wurden.“
 
Der genaue Wortlaut der Fehlermeldung ist: „Ladevorgang gescheitert. Der von Ihnen gewählte Spielstand ist schreibgeschützt, um sicherzustellen, dass die Daten in Ihrem Mod-Verzeichnis nicht verändert wurden.“
 
[[Datei:MeldungSpielstandSchreibgeschützt.jpg|200px|thumb|right|Fehlermeldung]]
 
[[Datei:MeldungSpielstandSchreibgeschützt.jpg|200px|thumb|right|Fehlermeldung]]
Zeile 133: Zeile 179:
  
 
Um die eigene Installation zu reparieren, ist sicherzustellen, dass die Daten mit denen des Servers übereinstimmen, kann man folgende Dinge probieren:
 
Um die eigene Installation zu reparieren, ist sicherzustellen, dass die Daten mit denen des Servers übereinstimmen, kann man folgende Dinge probieren:
* Umbennenen des My Games-Verzeichnisses (oder der Unterordner Sid Meier's Civilization, Warlords und Beyond the Sword). Beim nächsten Start wird eine frische Variante ohne modifizierte Dateien erzeugt.
+
* Umbenennen des My Games-Verzeichnisses (oder der Unterordner Sid Meier's Civilization, Warlords und Beyond the Sword). Beim nächsten Start wird eine frische Variante ohne modifizierte Dateien erzeugt.
 
* Bei der Verwendung von Mods:
 
* Bei der Verwendung von Mods:
 
:Mods können an zwei unterschiedlichen Orten abgelegt werden:
 
:Mods können an zwei unterschiedlichen Orten abgelegt werden:
 
:# [Installationsverzeichnis von Civ]\Beyond the Sword\Mods
 
:# [Installationsverzeichnis von Civ]\Beyond the Sword\Mods
 
:# Eigene Dateien\[...]\My Games\Beyond the Sword\Mods
 
:# Eigene Dateien\[...]\My Games\Beyond the Sword\Mods
:Man muss sicherstellen, dass die Mod nur(!) in dem Verzeichnis installiert ist, welches auch auf dem Server verwendet wird. Es wird empfolen immer die erste Variante zu nutzen.
+
:Man muss sicherstellen, dass die Mod nur(!) in dem Verzeichnis installiert ist, welches auch auf dem Server verwendet wird. Es wird empfohlen immer die erste Variante zu nutzen.
 +
:Außerdem sollte man überprüfen, ob beim Entpacken eine Ebene zu viel angelegt wird. Falsch wäre "[...]\Modname\Modname".
 +
* Einigen Spielern half es die FPK-Dateien einer Mod [http://www.civforum.de/showthread.php?96902-PB-74-BASE-PB-die-Zweite&p=6750599&viewfull=1#post6750599 zusammenzu fassen].
 
* Neuinstallation von Civ + Addons. Danach unbedingt auch den [http://civilized.de/www/content/index.php?cat=civ4_downloads Patch 3.19] einspielen.
 
* Neuinstallation von Civ + Addons. Danach unbedingt auch den [http://civilized.de/www/content/index.php?cat=civ4_downloads Patch 3.19] einspielen.
  
 +
=== Blockieren anderer Spieler ===
 +
Damit die Spieler sich untereinander verbinden können, wenn sie gleichzeitig eingeloggt sind, müssen sie einen sogennannten NATNEG-Server nutzen. Seit der Pleite von Gamespy muss man einen Server aus der Community nutzen. Dafür kann man entweder eine gepatche EXE nutzen oder die Hosts-Datei seines Computers ändern, siehe [http://civ-wiki.de/wiki/Mehrspieler_(Civ4)#Direkte_IP Alternative Exe].
 +
 +
Außerdem muss man weiterhin die Portweiterleitung im Router einrichten. Fuer Civ4 sind vor allem die Ports 2056-2107 UDP wichtig.
 +
 +
=== Pausen-Bug ===
 +
Mit Hilfe der Pause-Taste kann man den Timer eines Spieles anhalten. In der Pause werden alle Aktionen ( Bewegen von Einheiten, Sklavrei-Button klicken, Feldbelegung ändern) zwischengespeichert und erst ausgeführt, wenn das Spiel fortgesetzt wird.
 +
 +
Aktiviert man allerdings bei offenem Diplomenü die Pause, so ist man im Menü gefangen. Andererseits kann man die Pause auch nicht mehr entfernen. Es kann auch sein, dass man beim Login vom Diploscreen eines Mitspielers begrüßt wird, aber wegen einer aktiven Pause nichts machen kann. Schließt man Civ4, weil man im Diplomenü gefangen ist, löst man außerdem das Upload-Problem aus.
 +
 +
Lösungsmöglichkeiten:
 +
* Spieler ohne offenen Diploscreen können die Pause für gefangene Spieler entfernen.
 +
* Es gibt Mods, in denen man die Pause auch im Diplomenü entfernen kann: [http://www.civforum.de/showthread.php?93048-Mod-für-PB-Spiele-PB-Mod_v1 PB Mod], [http://www.civforum.de/attachment.php?attachmentid=1033194&d=1390330691 Pitboss Mod] (Vorgänger von PB Mod, welcher nur diesen Pausenbug beseitigt) (unvollständige Liste?!)
  
== Langes Warten auf Liste der Anführer ==
 
Falls die Liste der Anführer erst nach einigen Minuten erscheint ist man von diesem Fehler betroffen.
 
  
[http://www.civforum.de/showthread.php?93048-Mod-f%FCr-PB-Spiele-PB-Mod_v1&p=6348610&viewfull=1#post6348610 Vermutete Ursache]:
+
=== Leere Diploschirme beim Login ===
:Kurz nach dem Aufbau der Verbindung zum PB-Server sendet dieser eine Liste der Anführer und weiterer Metainformationen an den Client.
+
Sofern in den Spielregeln die direkte Kommunikation nicht untersagt ist, verfassen Spieler oft auch Textnachrichten zu ihren
 +
Handelsangeboten. Wenn man beim Login von einem leeren oder ungewöhnlichem Handelsbildschirm begrüßt wird, hat der andere Spieler wahrscheinlich einen Fehler beim Absenden begangen.
 +
(Das ist vor allem im Krieg unangenehm, denn in dem Fall wird das Handelsangebot immer mind. einen Waffenstillstand beinhalten, siehe nächsten Punkt.)
 +
Damit die Textnachrichten nicht verloren gehen, *muss man darauf achten, dass die Textzeile selektiert ist, wenn man Enter drückt.*
 +
Achtung, wenn man die Maus bewegt können andere GUI-Elemente den Focus erhalten und dann wird das Diploangebot beim Druck auf Enter abgesendet. Dann fehlt der Text! D.h. man sollte vorm Absenden des Textes die Maus ins Textfeld bewegen. (Man kann es an dem hellen Rahmen erkennen.)
 +
 
 +
 
 +
=== Ungewollter Waffenstillstand ===
 +
Versendet man im Krieg Diplonachrichten, enthalten sie mindestens einen Waffenstillstand als Angebot. D.h. wenn sich der Absender  verklickt und im Diplomenu unabsichtlich einen Handel anbietet(siehe vorigen Punkt), kann es zu Problemen kommen.
 +
Andererseits kann man auch unabsichtlich einen Waffenstillstand annehmen, wenn man beim Login mehrere Diploschirme erhält!
 +
Klickt man bei einem Angebot von Spieler A auf Annehmen/Ablehnen, kann die Entscheidung unabsichtlich auch gleich noch auf
 +
das Angebot von Spieler B übernommen werden, welches danach aufploppt. (Man sieht dann nur ganz kurz einen zweiten Bildschirm.)
 +
 
 +
Um dieses Problem zu vermeiden, sollte man im Krieg eher über externe Kanäle (Forum) kommunizieren.
 +
 
 +
 
 +
=== Langes Warten auf Liste der Anführer ===
 +
Falls die Liste der Anführer erst nach einigen Minuten oder nie erscheint, ist man von diesem Fehler betroffen.
 +
[[Datei:WiresharkLongNames.png|200px|thumb|right|Paket zu lang]]
 +
[[Datei:WiresharkShortNames.png|200px|thumb|right|Paket kurz genug]]
 +
[[Datei:LoginScreenLongNames.jpg|200px|thumb|right|Normaler Auswahlbildschirm]]
 +
[[Datei:LoginScreenShortNames.jpg|200px|thumb|right|Gekürzte Namen durch PB Mod_v2]]
 +
 
 +
[http://www.civforum.de/showthread.php?93048-Mod-f%FCr-PB-Spiele-PB-Mod_v1&p=6348610&viewfull=1#post6348610 Ursache]:
 +
:Kurz nach dem Aufbau der Verbindung zum PB-Server sendet dieser die Liste der Anführer und weitere Metainformationen an den Client.
 
:Unter ungünstigen Bedingungen ist dieses Paket zu groß, um von allen Netzwerk-Zwischenstationen im Ganzen übertragen zu werden ( siehe [http://de.wikipedia.org/wiki/IP-Fragmentierung IP-Fragmentierung] ) und es kommt zur Fragmentierung.
 
:Unter ungünstigen Bedingungen ist dieses Paket zu groß, um von allen Netzwerk-Zwischenstationen im Ganzen übertragen zu werden ( siehe [http://de.wikipedia.org/wiki/IP-Fragmentierung IP-Fragmentierung] ) und es kommt zur Fragmentierung.
 
:In den meisten Fällen, ist die Fragmentierung kein Problem und die Teile werden fehlerfrei zusammengesetzt, aber vor allem in stark beanspruchten Netzwerken oder hoher Distanz zum Server treten dabei Probleme auf.
 
:In den meisten Fällen, ist die Fragmentierung kein Problem und die Teile werden fehlerfrei zusammengesetzt, aber vor allem in stark beanspruchten Netzwerken oder hoher Distanz zum Server treten dabei Probleme auf.
:Es kann auch sein, dass das Paket komplett geblockt wird und den Spieler nie erreicht.
+
:Es kann auch sein, dass das Paket vom Provider immer herausgefiltert wird und den Spieler nie erreicht.
 +
: Auf den zwei Bildern werden beide Situationen in Wireshark dargestellt. Im ersten ist da Paket zu groß. Hier war es kein Problem und wurde empfangen, aber bei anderen würde es nicht ankommen. Im zweiten blieb die Größe unter 1500 Bytes.
 +
 
  
 
Lösungsvorschläge:
 
Lösungsvorschläge:
 
* Eigene Netzwerkverbindung entlasten
 
* Eigene Netzwerkverbindung entlasten
* Alle Spielernamen und Zivilisationsnamen kürzen, um unter der kritischen Paketgröße (meist 1024 Bytes) zu bleiben.
+
* Alle Spielernamen und Zivilisationsnamen kürzen, um unter der kritischen Paketgröße (meist 1500 Bytes) zu bleiben.
 +
* Auch hier kann die PB Mod helfen, die ab Version 'v2' die Option enthält, das kritische Datenpaket zu verkleinern. Durch wird allerdings die Darstellung im Anmeldebildschirm gekürzt. Der Vorteil der Mod-Variante im Unterschied zum manuellen Verkürzen den Namen liegt darin, dass innerhalb des Spiels die langen Namen zum Einsatz kommen.
  
= Links =
+
== Links ==
  
 
* [http://www.civforum.de/showthread.php?64908-Pitboss-Serverbetrieb Pitboss Serverbetrieb]
 
* [http://www.civforum.de/showthread.php?64908-Pitboss-Serverbetrieb Pitboss Serverbetrieb]
 
* [http://www.civforum.de/forumdisplay.php?261-Civ4-Pitboss Pitboss MP Spiele des Civforums]
 
* [http://www.civforum.de/forumdisplay.php?261-Civ4-Pitboss Pitboss MP Spiele des Civforums]

Aktuelle Version vom 21. Juli 2015, 13:39 Uhr

In diesem Artikel wird die Konfiguration eines Pitboss-Servers (PB-Server) und häufige Fehlermeldungen beschrieben. Die meisten Dinge wurden von Redarg bereits zusammengefasst und in diesem Thread gebündelt. In dem PDF im ersten Beitrag dieses Threads sind weitere Details zu finden, die bisher nicht auf diese Seite übertragen wurden

Allgemeine Konfiguration

Nützliche Parameter der Civilization.ini

Linux

Erweiterte Administration

Siehe PB Mod

Benutzung auf entfernten Rechnern (Headless)

Verwendung des Altroot-Parameters

Um mehrere Instanzen des PB-Servers auf einem Rechner laufen zu lassen, kann man beim Start einen Pfad übergeben. Dieses Verzeichnis übernimmt dann die Funktion des „My Games“-Verzeichnises bei einem normalen Start.

Beispiel-Skript (startPB.bat):

 SET ALTROOT=C:\PBs\PB1
 SET CIV4BTS_PATH=C:\Civ4\Beyond the Sword\
 SET MODNAME=YOURMOD
 
 rem Use new exe if possible
 SET CIV4BTS_EXE=%CIV4BTS_PATH%\Civ4BeyondSword_PitBoss2014.exe
 IF not exist "%CIV4BTS_EXE%" (
   SET CIV4BTS_EXE=%CIV4BTS_PATH%\Civ4BeyondSword_PitBoss.exe
 )
 IF not exist "%CIV4BTS_EXE%" (
   echo.Exe not found. Is the Path %CIV4BTS_PATH% correct?
   goto exit
 )
 
 "%CIV4BTS_EXE%" mod= "%MODNAME%"\" /ALTROOT=%ALTROOT%
 :exit

Das Leerzeichen hinter „mod= “ darf nicht weggelassen werden, da anderenfalls der erste Buchstabe des Modnames verloren geht.

Unerwünschtes Verhalten beim ersten Start

Achtung, falls die Pitboss-Exe beim Start feststellt, dass bestimmte Dateien/Unterordner nicht in dem angegebenen Ordner gefunden werden können, verschiebt er den gesamten Inhalt des „My Games/Beyond the Sword“-Ordners in das neue Verzeichnis! Falls also plötzlich alle Spielstände, etc verschwunden sind sollte man in den Ordnern nachschauen, die man als Altroot-Argument angegeben hat. Am besten erstellt man ein Backup des My Games-Ordners, bevor man mit dem Altroot-Argument experimentiert.

Einrichtung mehrerer Spiele

Wählt man beim Start unterschiedliche ALTROOT-Parameter, kann man mehrere Instanzen gleichzeitig starten. Die Spielstände werden dann in den jeweiligen Unterverzeichnissen ([...]/Saves/Multi) angelegt. Die Auto-Speicherstände werden (sofern dass nicht per Mod geändert wurde) nur beim Rundenwechsel und dem Login der Spieler angelegt.

Login der Spieler beschleunigen

Der PB-Server überträgt seine Daten mit maximal 10kB/s. Das führt in fortgeschrittenen Spielen zu einer minutenlangen Wartezeit, weil der Spielstand auf mehrere MB anwächst. Um dieses Problem zu lösen wurde eine Modifikation der BTS-Exe entwickelt mit der die Spielstände per HTTP(S) übertragen werden: Binaries, Anleitung & Quellcode. Als Pitboss-Host muss neben dem PB-Server dann auch einen (simplen) Webserver laufen lassen, damit die Spielstände auf dem neuen Weg erreichbar sind!

Für das PB73 wurde in diesem Beitrag ein Zip + Installationsanleitung für den Schnelllader veröffentlicht.

Hinweise zum Betrieb des Servers

Fernwartung eines Servers

RDP, VNC

Feste Serveradresse für dynamische IPs

Will man seinen Server im Heimnetz mit häufig wechselnder IP betreiben kann man einen der zahlreichen DynDNS-Dienste nutzen. Man erhält eine URL, welche man den Spielern mitteilt. Der eigene Server (oder Router, je nach Konfiguration) meldet sich dann bei beim entsprechendem Anbieter, sobald sich die eigene IP ändert. Es gibt viele freie sog. DynDNS-Dienste

Adminpasswort ändern

Wenn man als Spieler eingeloggt ist, kann man das Adminpasswort, welches man beim Einrichten des Spieles definiert hat ändern. Dazu geht man ins Hauptmenü („Esc“ drücken) und wählt dort „Spieldetails“ aus. Bei der Frage nach dem Passwort gibt man das Alte ein. Im nächsten Fenster kann das neue Passwort vergeben werden. Nun kann man (innerhalb des Spieles oder im Pitboss-Fenster) das Spiel speichern und erhält einen Spielstand mit dem neuen Passwort.


Häufige Probleme

Cpu-Auslastung

Auch wenn kein Spieler eingeloggt ist verursacht der PB-Server eine nicht unerhebliche Last auf der CPU. Ursache ist das häufige Neuzeichnen des Fensters, was leider eine reative sinnlose Stromverschwendung darstellt und außerdem verhindert, dass man viele Spiele auf alter Hardware laufen lassen kann.

Man kann den Pythoncode des PB-Servers ändern und die Anzahl der Draw-Calls reduzieren. Leider müssen aber auch alle Spieler die geänderten Dateien benutzen, damit sie dem Spiel beitreten können. Daher sollte man seine Änderungen innerhalb einer Mod durchführen.

Die PB Mod enthält die radikale Option, das PB-Fenster gleich komplett auszublenden.

Netzwerk-Auslastung & Upload-Problem

Das sogenannte „Uploadproblem“ ist die gefährlichste Fehlfunktion des Pitboss. Es macht den Betrieb eines PB-Servers sehr betreuungsintensiv. Mittlerweile gibt es aber einen Lösungsansatz, bei dem die neg. Auswirkungen stark reduziert werden.

Problembeschreibung: Normalerweise tauschen Client (Spieler-PC) und Server so lange Datenpakete aus, bis der Spieler die Partie verlässt. Unter bestimmten Umständen erkennt der Server aber nicht, dass der Spieler die Partie verlassen hat und beginnt mit dem Senden von Daten ins Internet (an einen nicht vorhandenen Empfänger). Am Anfang wird man diesen Vorgang nicht bemerken, aber die dadurch verbrauchte Bandbreite nimmt kontinuierlich zu und zwingt auch starke Internetanschlüsse in die Knie.

Es wurden schon rekordverdächte 450 Gigabyte innerhalb einer Woche berichtet. Weiterhin waren auch schon PB-Server die mit 100 Mbit am Netzwerk hingen, aufgrund des Uploadproblems nicht mehr über das Netzwerk zu erreichen, da der PB-Server die komplette Bandbreite beansprucht hat.

Lösungsmöglichkeiten:

  • Man kann das Problem eindämmen, indem man den PB-Server häufig neu startet. Das ist allerdings sehr umständlich, wenn man das Laden der Spielstände nicht automatisiert hat (nur mit PB Mod mgl.)
  • Man kann die Bandbreite des PB-Servers mit Programmen wie z.B. NetLimiter begrenzen. Wenn die Bandbreite dann aber schon durch den Upload-Bug belegt wird, können sich Spieler nur noch schwer verbinden.
  • Man kann seinen Netzwerkverkehr analysieren und dem PB-Server UDP-Pakte der Spieler vorgaukeln, damit dieser die Verbindung schließt. Dafür wurde folgendes Tool entwickelt: fix_upload_bug.

Das Tool ist Teil einer Mod, läuft aber auch ohne diese.

Speicherproblem beim Login

Bei jedem Login eines Spielers wird ein Spielstand erzeugt. Manchmal schlägt das fehl und der Server ist solange nicht erreichbar, bis die Fehlermeldung weggeklickt wurde. Diese Meldung erscheint auch, wenn man die Python-Fehlermeldungen deaktiviert hat.

Lösungsmöglichkeiten: Keine bekannt.


Einfrieren des PB-Fensters

Die meisten Sonderzeichen (z.B. Umlaute) im Spielernamen oder Titel des Spieles frieren das Adminfenster des PB-Servers ein. Dann kann das Spiel auch nicht mehr im Adminfenster gespeichert werden.

Lösungsmöglichkeiten: Die Spieler mit den Sonderzeichen müssen sich mit einem unkritischen Namen einloggen. Danach sollte das Fenster wieder reagieren. (Falls nicht muss man ausnutzen, dass beim Login die Recovery-Spielstände angelegt werden. Man muss das Spiel dann mit einem Spielstand ohne kritische Sonderzeichen laden.

Thread zu diesem Thema: http://forums.civfanatics.com/showpost.php?p=6830192&postcount=16


Blockade durch Popup mit Python-Fehler

Vor allem bei der Benutzung von Mods löst der Pythoncode manchmal einen Fehler aus. Das Popup der Fehlermeldung blockiert dann das Spiel.

Lösung: In der Civilization.ini des PB-Servers können die Pythonfehlermeldungen deaktiviert werden.


Abschaltung der Gamespy-Server

Auch das Pitboss Hosting ist vom Fehlen der Gamespy NatNeg Server beeinträchtigt. Dabei kann es zu langen Wartezeiten (Timeout) beim Starten des Pitboss kommen, nachdem man auf "Direct IP" geklickt hat. Hierfür gibt es eine eine gepatchte EXE oder man editiert die Hosts-Datei um auf einen neuen NatNeg Server zu verweisen. Weitere Informationen sind hier zu finden.

Weltraumrennen

Kurz nachdem ein Spieler das Raumschiff gestartet hat, stürzt der PB-Server immer ab. Mit folgender Methode kann man das Spiel wieder zum Laufen bekommen:

  1. Spielstand kurz vor dem Raumschiffstart laden
  2. Spieler loggt sich ein und startet sein Raumschiff.

Danach drückt er schnell Str+S und speichert das Spiel lokal. Dieser Spielstand wird dem Admin des PB-Spieles übermittelt.

  1. Der Serverbetreiber läd das neue Save und das Spiel geht normal weiter.

Korrupte Savegames unter Linux

Erster Kommentar im Forum http://www.civforum.de/showthread.php?p=3691873#post3691873

Während dem Spiel 'PB73' trat der Fehler wiederholt auf. Die Spielstände waren unter Windows ladbar, wurden aber unter Wine als korrupt bemängelt. Es wurde die Vermutung aufgestellt, dass es mit den Alt+S-Schildertexten zusammenhängen kann ( http://www.civforum.de/showthread.php?93932-PB73-Thread-f%FCr-Server-und-Verbindungsprobleme&p=6456478&viewfull=1#post6456478 ). Verändert man diese, so kann der Spielstand wieder ladbar werden.

Später wurde folgende Lösung gefunden: Damit die Wine-Version einer bestimmten Bibliothek verwendet wird, müssen die DLLs „msvcp71.dll“ und „msvcr71.dll“ innerhalb der Civ4-Verzeichnisse entfernt werden.

Update Juli 2015: Die obige Lösung hilft bei unserem derzeitigen Spiel nicht mehr. Entweder die Wine-DLLs haben sich mittlerweile geändert oder es war Zufall, dass diese Lösung geholfen hatte. Derzeit wird vermutet, dass die Fehlerursache in einem Bufferoverflow bei der Erzeugung der Checksumme liegt. Wenn man die Überprüfung der Prüfsumme aus der Pitboss-Exe patcht kann man die Spiele wieder starten.

Benutzen von Mods

Einrichtung der PB Mod

Im PB73 kommt zum ersten mal eine Mod zum Einsatz, welche einige der obigen Probleme beseitigt und außerdem die Spieleranzahl auf 52 erhöht. Derzeit wird mit der vierten Version der Mod gespielt, welche hier herunter geladen werden kann: http://civ.zulan.net/misc/PB_Mod_v4.zip

Um die Mod zu installieren, muss sie in das Verzeichnis

 [Civ Installationsverzeichnis]/Beyond the Sword/Mods/

entpackt werden. Achtung dabei darf beim Entpacken kein weiterer Unterordner erstellt werden. Auf dem Server und Client muss das Setup identisch sein, damit es nicht zum Absturz kommt. Die richtige Struktur (Leerzeichen nach dem PB!) wäre

 [Civ Installationsverzeichnis]/Beyond the Sword/Mods/PB Mod_v4/Assets

Falsch ist beispielsweise

 [Civ Installationsverzeichnis]/Beyond the Sword/Mods/PB_Mod_v4/PB Mod_v4/Assets

und zum Absturz kommt es auch, wenn die Mod innerhalb der Eigenen Datein (My Games-Verzeichnis…) installiert wird.

Um Civ gleich mit Mod zu Starten kann man eine neue Verknüpfung anlegen. In den Eigenschaften schreibt man dann hinter den Pfad zur Exe noch das Argument „mod=\PB Mod_v4“.

Probleme auf Client/Spielerseite

Andere Spieler werden geblockt, während man im Spiel ist

Für Hinweise zur Portweiterleitung und Umstellung auf einen neuen NatNEG-Server, siehe http://www.civ-wiki.de/wiki/Mehrspieler_(Civ4)#Pitboss

Absturz beim Verbinden mit dem Server

Dieser Fehler tritt meist dann auf, wenn man keine (bzw. die falsche) Mod geladen hat. Es darf auf Client- und Server-seite kein Unterschied bestehen. Auch der Speicherpfad der Mod darf nicht abweichen. Nutzt man den BUG-Mod, welcher das Interface erweitert, kann es auch zu Abstürzen kommen. Man sollte diese Mod daher lieber so installieren, dass man sie während der PB-Partien deaktivieren kann.

Absturz nach dem Laden / Spielstand schreibgeschützt

Man kann sich mit dem Server verbinden aber nachdem der Spielstand vom PB-Server geladen wurde, erscheint sehr kurz eine Fehlermeldung und das Programm schließt sich. Der genaue Wortlaut der Fehlermeldung ist: „Ladevorgang gescheitert. Der von Ihnen gewählte Spielstand ist schreibgeschützt, um sicherzustellen, dass die Daten in Ihrem Mod-Verzeichnis nicht verändert wurden.“

Fehlermeldung

Der Fehler nur auf, wenn sich die Daten des Servers von den eigenen unterscheiden. Nutzt man des CustomAssets-Ordner um beispielsweise die BUG-Mod in normalen Civ4:BTS-Spielen zu benutzen, kann das zu Problemen führen. Auch Rückstände von anderen Mods oder minimal andere Dateien reichen aus, um den Fehler auszulösen. Interessanterweise wird der Fehler nicht immer ausgelöst so dass Spieler sich manchmal verbinden können und manchmal der Fehler auftritt.

Um die eigene Installation zu reparieren, ist sicherzustellen, dass die Daten mit denen des Servers übereinstimmen, kann man folgende Dinge probieren:

  • Umbenennen des My Games-Verzeichnisses (oder der Unterordner Sid Meier's Civilization, Warlords und Beyond the Sword). Beim nächsten Start wird eine frische Variante ohne modifizierte Dateien erzeugt.
  • Bei der Verwendung von Mods:
Mods können an zwei unterschiedlichen Orten abgelegt werden:
  1. [Installationsverzeichnis von Civ]\Beyond the Sword\Mods
  2. Eigene Dateien\[...]\My Games\Beyond the Sword\Mods
Man muss sicherstellen, dass die Mod nur(!) in dem Verzeichnis installiert ist, welches auch auf dem Server verwendet wird. Es wird empfohlen immer die erste Variante zu nutzen.
Außerdem sollte man überprüfen, ob beim Entpacken eine Ebene zu viel angelegt wird. Falsch wäre "[...]\Modname\Modname".
  • Einigen Spielern half es die FPK-Dateien einer Mod zusammenzu fassen.
  • Neuinstallation von Civ + Addons. Danach unbedingt auch den Patch 3.19 einspielen.

Blockieren anderer Spieler

Damit die Spieler sich untereinander verbinden können, wenn sie gleichzeitig eingeloggt sind, müssen sie einen sogennannten NATNEG-Server nutzen. Seit der Pleite von Gamespy muss man einen Server aus der Community nutzen. Dafür kann man entweder eine gepatche EXE nutzen oder die Hosts-Datei seines Computers ändern, siehe Alternative Exe.

Außerdem muss man weiterhin die Portweiterleitung im Router einrichten. Fuer Civ4 sind vor allem die Ports 2056-2107 UDP wichtig.

Pausen-Bug

Mit Hilfe der Pause-Taste kann man den Timer eines Spieles anhalten. In der Pause werden alle Aktionen ( Bewegen von Einheiten, Sklavrei-Button klicken, Feldbelegung ändern) zwischengespeichert und erst ausgeführt, wenn das Spiel fortgesetzt wird.

Aktiviert man allerdings bei offenem Diplomenü die Pause, so ist man im Menü gefangen. Andererseits kann man die Pause auch nicht mehr entfernen. Es kann auch sein, dass man beim Login vom Diploscreen eines Mitspielers begrüßt wird, aber wegen einer aktiven Pause nichts machen kann. Schließt man Civ4, weil man im Diplomenü gefangen ist, löst man außerdem das Upload-Problem aus.

Lösungsmöglichkeiten:

  • Spieler ohne offenen Diploscreen können die Pause für gefangene Spieler entfernen.
  • Es gibt Mods, in denen man die Pause auch im Diplomenü entfernen kann: PB Mod, Pitboss Mod (Vorgänger von PB Mod, welcher nur diesen Pausenbug beseitigt) (unvollständige Liste?!)


Leere Diploschirme beim Login

Sofern in den Spielregeln die direkte Kommunikation nicht untersagt ist, verfassen Spieler oft auch Textnachrichten zu ihren Handelsangeboten. Wenn man beim Login von einem leeren oder ungewöhnlichem Handelsbildschirm begrüßt wird, hat der andere Spieler wahrscheinlich einen Fehler beim Absenden begangen. (Das ist vor allem im Krieg unangenehm, denn in dem Fall wird das Handelsangebot immer mind. einen Waffenstillstand beinhalten, siehe nächsten Punkt.) Damit die Textnachrichten nicht verloren gehen, *muss man darauf achten, dass die Textzeile selektiert ist, wenn man Enter drückt.* Achtung, wenn man die Maus bewegt können andere GUI-Elemente den Focus erhalten und dann wird das Diploangebot beim Druck auf Enter abgesendet. Dann fehlt der Text! D.h. man sollte vorm Absenden des Textes die Maus ins Textfeld bewegen. (Man kann es an dem hellen Rahmen erkennen.)


Ungewollter Waffenstillstand

Versendet man im Krieg Diplonachrichten, enthalten sie mindestens einen Waffenstillstand als Angebot. D.h. wenn sich der Absender verklickt und im Diplomenu unabsichtlich einen Handel anbietet(siehe vorigen Punkt), kann es zu Problemen kommen. Andererseits kann man auch unabsichtlich einen Waffenstillstand annehmen, wenn man beim Login mehrere Diploschirme erhält! Klickt man bei einem Angebot von Spieler A auf Annehmen/Ablehnen, kann die Entscheidung unabsichtlich auch gleich noch auf das Angebot von Spieler B übernommen werden, welches danach aufploppt. (Man sieht dann nur ganz kurz einen zweiten Bildschirm.)

Um dieses Problem zu vermeiden, sollte man im Krieg eher über externe Kanäle (Forum) kommunizieren.


Langes Warten auf Liste der Anführer

Falls die Liste der Anführer erst nach einigen Minuten oder nie erscheint, ist man von diesem Fehler betroffen.

Paket zu lang
Paket kurz genug
Normaler Auswahlbildschirm
Gekürzte Namen durch PB Mod_v2

Ursache:

Kurz nach dem Aufbau der Verbindung zum PB-Server sendet dieser die Liste der Anführer und weitere Metainformationen an den Client.
Unter ungünstigen Bedingungen ist dieses Paket zu groß, um von allen Netzwerk-Zwischenstationen im Ganzen übertragen zu werden ( siehe IP-Fragmentierung ) und es kommt zur Fragmentierung.
In den meisten Fällen, ist die Fragmentierung kein Problem und die Teile werden fehlerfrei zusammengesetzt, aber vor allem in stark beanspruchten Netzwerken oder hoher Distanz zum Server treten dabei Probleme auf.
Es kann auch sein, dass das Paket vom Provider immer herausgefiltert wird und den Spieler nie erreicht.
Auf den zwei Bildern werden beide Situationen in Wireshark dargestellt. Im ersten ist da Paket zu groß. Hier war es kein Problem und wurde empfangen, aber bei anderen würde es nicht ankommen. Im zweiten blieb die Größe unter 1500 Bytes.


Lösungsvorschläge:

  • Eigene Netzwerkverbindung entlasten
  • Alle Spielernamen und Zivilisationsnamen kürzen, um unter der kritischen Paketgröße (meist 1500 Bytes) zu bleiben.
  • Auch hier kann die PB Mod helfen, die ab Version 'v2' die Option enthält, das kritische Datenpaket zu verkleinern. Durch wird allerdings die Darstellung im Anmeldebildschirm gekürzt. Der Vorteil der Mod-Variante im Unterschied zum manuellen Verkürzen den Namen liegt darin, dass innerhalb des Spiels die langen Namen zum Einsatz kommen.

Links