Log File
04.01.2006 von Berry
Log File
Die BT2 Engine hat einigeDebugging Features von denen eine ein Log File ist., die ihr wärend eines Spiels erzeugen könnt. Diese notiert verschiedene Informationen, die bei einer Fehlersuche nützlich sein können.
Information:
Der Code von DICE umfaßt eine debugging Logfile Ausgabe die von der BT2 Engine via host.log gesendet wird. Er tut dies, indem er das stdout (Standardausgang) und die des stderr (Standardfehleranzeige) I/O neu definiert, anstatt diese zur Konsole zu verlegen, werden sie auf host.log umgeleitet, in dem alle möglichen Log File Informationen von der BF2 Engine notiert werden. Sobald dies erfolgt ist, schickt Python eine einfache Druckaussage als Ausgang zum Log File.Die Parameter, die benutzt werden, um diese Ausgangsumlenkung zu vollenden, werden in bf2.__init __, definiert, aber die tatsächliche Umlenkung selbst geschieht nicht, bis die BF2 Engine das bf2.init_module() benennt. . So gehen alle möglichen Informationen, die vor diesem durchgeführt werden, nirgendwo hin.
Wir müssen also einige Parameter neu zuweisen, damit ein Logfile ausgegeben wird. Wir adressieren also die stdout und stderr um, damit unser eigenes Logfile ausgegeben wird.
Diesen Code ist im __init__ definiert. Ihr findet die __init__.py unter:
...............\Battlefield 2\python\bf2
öffnet diese Datei und sucht euch den Code:
sys.stdout = fake_stream('stdout')
sys.stderr = fake_stream('stderr')
diesen ersetzt ihr durch folgenden Code:
logFile = open('mylogfile.log', 'a')
sys.stdout = logFile
sys.stderr = logFile
Mit diesen Code werden alle Fehlermeldungen als Log File im BT2 Verzeichnis abgelegt. Diese heisst mylogfile.log und wird automatisch angelegt.
Im __init__File befindet sich kurz am Anfang ein eine Zeile :
g_debug = 0
Der Wert 0 heisst deaktiviert. Stellen wir den Wert auf 1, werden alle debug Informationen in das mylogfile.log ausgegeben.
Autor: Berry
© 2004 – 2005 by B&B Mapping Designs
|
|